基于SoMachine的PLC编程自由通讯口设置

2023-09-20  

本文以施耐德的SoMachine为例介绍以ICE61163-3为编程标准的PLC编程软件自由通讯口设置。这是以PLC作为数据采集对象常用的通讯方式。


1 设置自由口通讯参数

使用SL1端口,进行基本参数设置

例如M218PLC有SL1和SL2两个串行通讯口,我们选择其中的SL1作为目标对象。SL1采用RJ45接口,制作连接线时注意引脚关系以及电缆屏蔽。

0fb3d96a-e830-11ed-ab56-dac502259ad0.jpg

2接收数据帧格式选择

可以选择起始字符和结束符的方式;可以通过判断数据帧长度的方式;可以通过帧收到超时(例如设置超时时间为5MS,则在收到最后一个字符后如果5MS内没有收到其他字符,则判断本帧结束)的方式判断帧的结束(实例中通过接收10个字节为一帧)

0fbf741e-e830-11ed-ab56-dac502259ad0.jpg

ASCII管理器的配置参数介绍

0fcd6f4c-e830-11ed-ab56-dac502259ad0.jpg

3发送寄存器定义为字节的格式

程序及相关数据,使用SEND_RECV_MSG功能块。X5和X7定义为BYTE类型的数组。(ADDM和SEND功能块说明见对应文章)

0fd9be28-e830-11ed-ab56-dac502259ad0.jpg

4设置发送(示例格式为16进制)

X4=16#0A字节数,发送数据为X5数组里的10个字节

0fe0eab8-e830-11ed-ab56-dac502259ad0.jpg

5设备收到的数据

如下图所示,接收到的十个字节即为数组X5的十个字节

0fef7862-e830-11ed-ab56-dac502259ad0.jpg

6设备发送的十个字节数据

0ff87f8e-e830-11ed-ab56-dac502259ad0.jpg

7PLC收到的十个字节保存在接收区X7的是个寄存器中

10010514-e830-11ed-ab56-dac502259ad0.jpg

注意:如果将发送寄存器设置为INT格式,例如发送字寄存器数据16#1234,则设备收到的顺序为16#3412,即高低字节顺序问题。

文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。