Сообщение от
Денис_Гуливатенко
Так на картинке весь код. А переменная S1 - это кнопочка.
Прочитать тоже ничего не получилось((.
Давайте по порядку, может я что-то не так понял.
В документации прописаны следующие настройки:
rtu.jpg
У меня в программе
При этом выскакивает ошибка err=255. В документации написано OxFF - Ошибка таймаута.
Может я неправильно ввожу адреса
adr.jpg
Для начала давайте пробежимся по настройкам. Проверьте скорость и адрес частотника. Остальное вроде как надо
Когда удостоверитесь в корректности настройки, перепишите кусок открытия порта вот так:
port_opened: BOOL:=FALSE;
***************************
IF NOT port_opened THEN
(****)
здесь настройка
(****)
COM_SERVICE1(Enable:=TRUE, Settings:=Settings, Task:=OPEN_TSK);
port_opened:=COM_SERVICE1.Ready;
END_IF
дальше сам обмен
IF port_opened THENread1modbus(Enable:=TRUE, Mode:=MB_RTU, DevAddr:=10, FirstAddr:=6, ComHandle:=Settings.Port, TimeOut:=500ms);
IF read1modbus.Complete THEN
IF read1modbus.Exception THEN
Здесь ставьте точку останова и просматривайте буфер
END_IF
END_IF
END_IF
Если не зафурычит - попробуйте увеличить время цикла контроллера