Показано с 1 по 10 из 10

Тема: CTUD_UDINT

  1. #1

    По умолчанию CTUD_UDINT

    Добрый день, подскажите пожалуйста почему codesys 2.3 не распознает тип CTUD_UDINT, в тоже время CTUD работает.

  2. #2
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,224

    По умолчанию

    Цитата Сообщение от Dmitrijb Посмотреть сообщение
    Добрый день, подскажите пожалуйста почему codesys 2.3 не распознает тип CTUD_UDINT, в тоже время CTUD работает.
    CTUD это возможно счетчик, но ни как не тип данных. Все что поддерживается из типов данных можно посмотреть здесь
    Последний раз редактировалось capzap; 15.01.2019 в 17:51.
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  3. #3

    По умолчанию

    а никто и не говорил про тип данных. ФБ CTUD это счетчик с накопительной переменной с типом int, а CTUD_UDINT соответственно с другим.

  4. #4
    Пользователь Аватар для petera
    Регистрация
    06.05.2011
    Адрес
    Минск
    Сообщений
    3,825

    По умолчанию

    Цитата Сообщение от Dmitrijb Посмотреть сообщение
    а никто и не говорил про тип данных. ФБ CTUD это счетчик с накопительной переменной с типом int, а CTUD_UDINT соответственно с другим.
    Счетчик CTUD входит в библиотеку Standard.LIB, только тип переменной для счета совсем не int, а WORD
    Захват-1.png

    Никакого счетчика "CTUD_UDINT" в этой библиотеке нет, а чего нет, того и распознать нельзя.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  5. #5

    По умолчанию

    просто в стандарте IEC 61131-3 описан как раз счетчик с CTUD_UDINT, а простой CTUD досчитает до 32767 и надо будет творить обнуление с сохранением предыдущего значения. что при CTUD_UDINT не надо бы было. Вот и хотел узнать, похоже не поддерживает.

  6. #6
    Пользователь Аватар для petera
    Регистрация
    06.05.2011
    Адрес
    Минск
    Сообщений
    3,825

    По умолчанию

    Цитата Сообщение от Dmitrijb Посмотреть сообщение
    просто в стандарте IEC 61131-3 описан как раз счетчик с CTUD_UDINT, а простой CTUD досчитает до 32767 и надо будет творить обнуление с сохранением предыдущего значения. что при CTUD_UDINT не надо бы было. Вот и хотел узнать, похоже не поддерживает.
    Счетчик CTUD из библиотеки Standard.LIB досчитает не до 32767, а до 65535 и обнулится сам.
    При этом Ваш мифический CTUD_UDINT тоже имеет предел счета 4294967295, т.е. не бесконечность и рано или поздно тоже "надо будет творить обнуление с сохранением предыдущего значения"
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  7. #7

    По умолчанию

    Вы сами то сначала проверьте обнулит ли он сам, и до скольки он досчитывает прежде чем говорить

  8. #8
    Пользователь Аватар для petera
    Регистрация
    06.05.2011
    Адрес
    Минск
    Сообщений
    3,825

    По умолчанию

    Цитата Сообщение от Dmitrijb Посмотреть сообщение
    Вы сами то сначала проверьте обнулит ли он сам, и до скольки он досчитывает прежде чем говорить
    А в чем сомнения Ваши?
    Захват-1.png
    Проверяйте!

    ЗЫ
    Выход счетчика CV имеет тип WORD по этому считает счетчик от 0 до 65535
    Захват-2.png

    ЗЫ
    Смотрим
    Запись_2019_01_15_15_29_26_145.gif
    нажми на картинку!
    Вложения Вложения
    Последний раз редактировалось petera; 15.01.2019 в 15:33.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  9. #9
    Пользователь Аватар для petera
    Регистрация
    06.05.2011
    Адрес
    Минск
    Сообщений
    3,825

    По умолчанию

    CTUD + CTUD = CTUD_UDINT
    Захват-1.png
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  10. #10

    По умолчанию

    Цитата Сообщение от petera Посмотреть сообщение
    CTUD + CTUD = CTUD_UDINT
    Захват-1.png
    Добрый день!

    petera, судя по выложенному Вами проекту, Вы запускали свой проект в режиме эмуляции. В эмуляции счетчики считают до 65535. Но при работе проекта в ПЛК счетчики работают не так, как в эмуляции - считают до 37767.
    Попробуйте запустить проект на ПЛК и слова ТС подтвердятся.

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •