Цитата Сообщение от Спорягин Кирилл Посмотреть сообщение
Т.е., предположительно, проблема в некорректном вызове функций из библиотеки Modbus.lib.
Ошибки в коде программы нет, думаю есть проблема с функцией 04 в данной библиотеке в совокупности с ПЛК110 М02. Вот код получения данных этого модуля:

IF Mdl.Step = 1 THEN
Mdl.pDisp^.ReadInpRegs(Enable := NOT Mdl.pDisp^.ReadInpRegs.Read,
Mode := MB_RTU,
DevAddr := Mdl.Base.Adress,
FirstAddr := StartRegister,
Quantity:=RegisterCount, (*количество регистров*)
ComHandle := Mdl.pDisp^.Settings.Port,
TimeOut := Mdl.Base.TimeOut,
Buffer:= Mdl.pDisp^.ReciveBuffer);
IF Mdl.pDisp^.ReadInpRegs.Complete THEN
tmpReadError :=Mdl.pDisp^.ReadInpRegs.Exception;
IF tmpReadError =0 THEN
Mdl.reAI:=Mdl.pDisp^.ReciveBuffer[1]+Mdl.pDisp^.ReciveBuffer[0]*256;
Mdl.Step:=Mdl.Step +1;
ELSE
fcModuleAddAttempt(MdlBase := Mdl.Base);
IF Mdl.Base.CurrentAttempt > Mdl.Base.MaxAttempts THEN
Mdl.Step := CompleteStep;
END_IF
END_IF
END_IF
END_IF
Жаль. табуляция не сохраняется в сообщении