Вот пробный проект, хочу завтра съездить посмотреть что получилось, там все равно монтаж надо ещё доделывать.
Вот пробный проект, хочу завтра съездить посмотреть что получилось, там все равно монтаж надо ещё доделывать.
Ну вот опять двадцать пять
Уж и не знаю, что с Вами делать. Зачем я текст макроса выкладывал?
Поймите, что нельзя так сделать
WORD CurTemp=PSW[256];
.......
Read(PLC, 16, MODBUS_RTU_REG_3X, 0x01, 0, TYPE_WORD, &CurTemp);
..............................................
Потому, что в ТРМ значения текущей температуры в формате float, а не WORD
С таким подходом Вы ничего похожего на текущую температуру не прочитаете.
ЗЫ.
Например, если в ТРМ температура 123.456 градусов, то в CurTemp получите
либо 17142 либо 59769, в зависимости от некоторых нюансов
Последний раз редактировалось petera; 20.09.2017 в 15:25.
Мой канал на ютубе
https://www.youtube.com/c/ПетрАртюков
Мой канал на РУТУБЕ
https://rutube.ru/channel/23641433/
Библиотека ГМ для СП300
https://disk.yandex.com/d/gHLMhLi8x1_HBg
По адресу 0x01 таки в WORD (точнее, в INT, не суть):
20-09-2017 15-20-11.png
Мне логика paul-th понятна - ему же достаточно прибавать целое число (а не, например, 1.5).
Только прибавить, вероятно, надо 10, а не 1 (В ТРМ вроде для 25.5 в регистре 1 будет 255 и т.д.).
Последний раз редактировалось Rake Runner; 20.09.2017 в 15:38.
Мой канал на ютубе
https://www.youtube.com/c/ПетрАртюков
Мой канал на РУТУБЕ
https://rutube.ru/channel/23641433/
Библиотека ГМ для СП300
https://disk.yandex.com/d/gHLMhLi8x1_HBg