Доброго дня!
Уже несколько дней бьюсь над простейшей задачей - опросить 2ТРМ1 (свежий, новый) с ПЛК210.
Пересмотрел все видео по теме, читал документацию - не работает. В ответ всегда тайм-аут. ТРМ рабочий, его опросил с компа через преобразователь без проблем. На ПЛК пробовал оба интерфейса. Светодиод RS на ТРМ мигает в момент запроса и всё.
Версия OCL 3.5.11.7.
Настройки на трм: rtu, 10, 9.6, 8n1.
Сделал отдельный чистый проект, там только код для опроса:
Код:PROGRAM PLC_PRG VAR iStateCOM: BOOL := 0; fbComControl: OCL.COM_Control; // ФБ настройки и открытия порта COM fbMBRead: OCL.MB_SerialRequest; arrAI1: ARRAY [0..1] OF WORD; VAL: REAL; iError: INT := 0; END_VARПрошу помочь!Код:IF NOT iStateCOM THEN fbComControl ( xEnable := TRUE, udiComPort := 5, udiBaudrate := 9600, udiByteSize := 8, eParity := OCL.COM_PARITY.NONE, eStopBit := OCL.COM_STOPBIT.ONE ); IF fbComControl.xDone THEN iStateCOM := 1; END_IF END_IF IF iStateCom THEN fbMBRead ( xExecute := fbComControl.xActive, tTimeout := T#200MS, usiRetry := 0, hCom := fbComControl.hCom, xIsAsciiMode := FALSE , usiSlaveId := 10, eFuncCode := OCL.MB_FC.READ_HOLDING_REGISTERS, uiDataAddr := 4105, uiDataCount := 2, pData := ADR(arrAI1), szSize := SIZEOF(arrAI1) ); IF fbMBRead.xDone OR fbMBRead.xError THEN iError := fbmbread.eError; VAL := OCL.WORD2_TO_REAL(arrAI1[0], arrAI1[1], FALSE); fbMBRead(xExecute := FALSE); END_IF END_IF



