下图显示了功能块 FB_EXCH 的引脚图:
M221 控制器可以与 Modbus 从设备通信,也可以按字符模式 (ASCII) 发送/接收消息。
Twido 和 EcoStruxure Machine Expert - Basic 提供以下功能来进行通信:
oEXCH 指令,用于传输/接收消息
o交换控制功能块 (MSG),用于控制数据交换
TwidoEmulationSupport 库处理与功能块 FB_EXCH 的通信。此功能块使用 SEN.SEND_RECV_MSG 库的功能块 PLCCommunication。此功能块具有发送和接收用户定义的消息的功能,并且等待响应。
下表描述了 TwidoEmulationSupport 库中功能块的输入变量:
输入 |
数据类型 |
描述 |
---|---|---|
i_xExecute |
BOOL |
功能在上升沿开始。 |
i_xReset |
BOOL |
当前消息传输在上升沿停止,并且通信重新初始化。 |
i_byPort |
BYTE |
[1..3] 通信端口 1 = 串行端口 1 2 = 串行端口 2 3 = 以太网 |
i_pbyBuffer |
POINTER TO BYTE |
用于发送和/或接收缓冲器的指针。前 2 个字是控制字。 前 2 个字:4 个控制字节: 1.控制字节长度:长度字节包含以字节表示的传输表长度(最大 250 字节),如果需要接收,则其将在接收结束时被收到的字符数覆盖。 2.控制字节命令:[0..2] 0 = 仅传输 1 = 发送/接收 2 = 仅接收 3.控制字节 SndBytePosDiscard:不发送字节位置。 4.控制字节 RcvBytePosDiscard:废弃接收的字节位置。 |
i_uiLengthInByte |
UINT |
发送/接收缓冲器的长度 + 2 个控制字 |
i_xAsciiMode |
BOOL |
真 = 已配置 ASCII 模式。 假 = 已配置 Modbus TCP。 |
下表描述了 TwidoEmulationSupport 库中功能块的输出变量:
输出 |
数据类型 |
描述 |
---|---|---|
q_xBusy |
BOOL |
如果功能正在执行,将 q_xBusy 设置为“真”。 |
q_xDone |
BOOL |
功能成功完成后,将 q_xDone 设置为“真”。 |
q_xError |
BOOL |
当功能由于检测到错误而停止时,将 q_xError 设置为“真”。 |
q_etExchDiag |
ET_ExchDiag |
诊断代码. |
q_sMsg |
STRING [80] |
诊断消息。 |
功能块 FB_EXCH 具有以下错误代码: