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

Тема: universal modbus divece и int16

  1. #1

    По умолчанию universal modbus divece и int16

    Здравствуйте! Нужна помощь! У меня ПЛК110 и CPU9440 с модулями AI, связанными по RS485 modbus. Необходимо прочитать переменные из устройства по modbus типа int16. В конфигураторе ПЛК - universal modbus divece варианты только word ( registr input modul) - 16 bit или real (real input modul) - 32 bit. Если читать word и потом преобразовать в int , то как быть с отрицательными значениями температуры? Извините, если на форуме плохо искал, у меня от немецких Даташитов голова распухла...

  2. #2
    Пользователь Аватар для _Mikhail
    Регистрация
    25.07.2013
    Адрес
    Ярославль
    Сообщений
    510

    По умолчанию

    используй registr input modul. возможно ничего преобразовывать не придется
    http://www.owen.ru/forum/showthread.php?t=25043&p=218520&viewfull=1#post218 520
    Последний раз редактировалось _Mikhail; 12.09.2016 в 21:49.

  3. #3

    По умолчанию

    Спасибо, на железе завтра испробую. Просто мне немец написал, что температура, например -17 ºС передается как -170 в формате int16, вот я и завис... так как registr input modul тип данных word, а это от 0 до 65535, тогда как int16 от -32768 до 32767.
    Последний раз редактировалось lelik76; 12.09.2016 в 17:03.

  4. #4

    По умолчанию

    Читай как word, а потом преобразуй в int и все будет нормально.

  5. #5
    Пользователь Аватар для smk1635
    Регистрация
    06.09.2010
    Адрес
    Брянск
    Сообщений
    1,241

    По умолчанию

    В программе не забудете преобразовать word в int.

    P.S. Вольд уже опередил. )
    Последний раз редактировалось smk1635; 12.09.2016 в 17:37.
    Теория и практика иногда сталкиваются. Когда это случается, теория проигрывает. Всегда. (Закон Линуса)

  6. #6

    По умолчанию

    Спасибо! Уже прописал всё, остался вердикт железяки!

    P.S. Завтра после опытов отпишусь.
    Последний раз редактировалось lelik76; 12.09.2016 в 17:55.

  7. #7
    Пользователь Аватар для smk1635
    Регистрация
    06.09.2010
    Адрес
    Брянск
    Сообщений
    1,241

    По умолчанию

    Цитата Сообщение от lelik76 Посмотреть сообщение
    -17 ºС передается как -170 в формате int16
    Кстати, в таком формате обычно передают данные если в значении есть десятые. Есть смысл, перед тем как делить полученное значение на 10, ещё раз преобразовать int но уже в real.
    Теория и практика иногда сталкиваются. Когда это случается, теория проигрывает. Всегда. (Закон Линуса)

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

    По умолчанию

    Цитата Сообщение от Вольд Посмотреть сообщение
    Читай как word, а потом преобразуй в int и все будет нормально.
    Цитата Сообщение от smk1635 Посмотреть сообщение
    В программе не забудете преобразовать word в int.

    P.S. Вольд уже опередил. )
    Ничего в программе преобразовывать не надо, и так все правильно работать будет
    Из-за неявного преобразования типов, результаты арифметических операций и операции присваивания, с использованием WORD в правой части выражений вместо INT, получаются правильными без дополнительных телодвижений
    http://www.owen.ru/forum/showthread....l=1#post182771

    http://www.owen.ru/forum/showthread....l=1#post218520
    Последний раз редактировалось petera; 13.09.2016 в 04:38.
    Мой канал на ютубе
    https://www.youtube.com/c/ПетрАртюков
    Библиотека ГМ для СП300
    https://disk.yandex.com/d/gHLMhLi8x1_HBg

  9. #9

    По умолчанию

    Большое спасибо!! Разобрался, но в программе оставил преобразование, главное работает! Программа лёгкая, пусть крутится

Похожие темы

  1. Адресация Universal Modbus device
    от super100 в разделе ПЛК1хх
    Ответов: 6
    Последнее сообщение: 04.10.2013, 14:05
  2. Modbus Universal MasterOPC сервер или Lectus MODBUS OPC?
    от Olegis в разделе Master SCADA 3
    Ответов: 11
    Последнее сообщение: 05.04.2013, 09:35
  3. Modbus Universal MasterOPC+ПЛК100
    от Адлан в разделе Master SCADA 3
    Ответов: 7
    Последнее сообщение: 08.11.2012, 08:09
  4. Universal device MODBUS ???
    от EFrol в разделе ПЛК1хх
    Ответов: 3
    Последнее сообщение: 17.01.2012, 10:43
  5. МВА8. Вес младшего разряда результата измерения в int16?
    от Владимир Чекин в разделе Эксплуатация
    Ответов: 8
    Последнее сообщение: 05.06.2008, 13:06

Ваши права

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