1

Пример работы по Modbus в режиме Slave для CoDeSys 3.5

Пример на языке ST реализует работу по интерфейсу RS-485: настройку модуля ModBus-Slave для трансляции в сеть массива переменных MB_Buffer.

Объявление переменных:

PROGRAM PLC_PRG

VAR

MB_func: MB_SLAVE;

MB_Buffer: ARRAY[0..3] OF WORD; (* буфер данных для обмена по ModBus *)

MB_NewData: BOOL; (* данные обновились *)

MB_Error: MB_ERROR_TYPE; (* ошибка обработки запроса *)

port_opened: BYTE := 0;

Settings: ComSerice.SysCom.COM_Settings; (*настройки последовательного порта *)

SettingsEx: ComSerice.SysCom.COM_SettingsEx;

COM_SERVICE1: COM_SERVICE;

END_VAR

Тело программы:

IF port_opened=0 THEN

Settings.sPort:=ComSerice.SysCom.SYS_COMPORT2; (*номер COM-порта*)

Settings.ulBaudrate:=9600; (*скорость*)

Settings.byParity:=0;

Settings.ulTimeout:=0;

Settings.byStopBits:=1;

Settings.ulBufferSize:=0;

SettingsEx.byByteSize:=8;

SettingsEx.bBinary:=TRUE;

COM_SERVICE1(Enable:=(port_opened=0) , Settings:=Settings,sets_ex:=SettingsEx , Task:=OPEN_TSK );

(*Если COM-порт открыт, то переходим к приему и передачи данных *)

IF COM_SERVICE1.ready THEN

port_opened:=2;

END_IF

MB_Buffer[0] := 16#1234;

MB_Buffer[1] := 16#5678;

MB_Buffer[2] := 16#ABCD;

MB_Buffer[3] := 16#5555;

END_IF

IF port_opened=2 THEN (*Удачно проинициализировали*)

MB_func(

ComHandle:=COM_SERVICE1.handle, (*номер COM-порта*)

DevAddr := 16,

pBuffer := ADR(MB_Buffer),

BufSize := SIZEOF(MB_Buffer),

NewData => MB_NewData,

Error => MB_Error

);

IF MB_Error <> MB_OK THEN

MB_NewData := FALSE;

END_IF

IF MB_NewData = TRUE THEN

MB_Error := MB_OK;

END_IF

END_IF

Раздел: CDS3 Метки: ,

1 комметарий к "Пример работы по Modbus в режиме Slave для CoDeSys 3.5"

  1. Дмитрий:

    А какой номер регистра будет выставлен в Slave? начиная с нулевого или с адреса указателя на массив?

Оставить комментарий

Отправить сообщение

CoDeSys GSM/GPRS модем Lectus OPC MasterSCADA Modbus MX110 Omron OPC-сервер owen OWEN Easy Logic owen logic PLC Configuration PROFIBUS s-200 SCADA scada системы siemens siemens plc SIMATIC Simplight SMS step7 TRACE MODE Динамизация ИП-320 ОВЕН ОВЕН ПЛК ОВЕН ПЧВ ПЛК ПЛК ОВЕН ПР 110 Панель оператора Программируемое реле Частотный преобразователь библиотека в CoDeSys визуализация диспетчеризация конфигурация панели программирование ПЛК серия NS сименс плк частотник частотное управление язык CFC язык ST
.