通讯方式和协议有很多,但不额外增加模块(成本)情况下我们推荐利用MP自带以太网通讯。
这里说明 MP3000 系列之间进行数据通讯的设定(本案例以 MP3300 为例),MP2000系列稍有差别,但相差不大。
1、实验结构:
3台MP之间进行数据交换。
2、A 站的通讯设定
打开 MPE720 后,与 MP3300 建立连接之后,点击 Setup 下拉菜单中的 Moduleconfiguration 选项,设定选择模块 218IFD 后,对 218IFD 进行通讯设定,详情请参照下图:
1):A 站的 IP 地址设定:192.168.1.1
2):A 站通讯参数的设定:
I/O Message 只能对应 1 个从站作为主站的设定。
3站互为主从的数据通讯,使用 Message Communication,T 图中编写 SND 函数。
蓝色字体行为 A 站作从站时的自动授信通道,也就是使用 MP 内置 RCV 函数。
点击Setting,Automatically Reception 选择 Enable。
黑色字体行为 A 站作主站时的发信通道,需要在 T 图中编写 SND 函数。
点击Setting,Automatically Reception 选择 Disable。
Read 对应功能代码 03H,Write 对应功能代码 10H。SND 函数中需要交替进行读写。
在有协议通讯的情况下,SND 和 RCV 函数是指发送和接收功能代码。
在无协议通讯的情况下,SND 和 RCV 函数是指发送和接受通讯数据。
子站侧通讯参数需设定与此一致。
3、B 站,C 站的通讯设定
打开 MPE720 后,与 MP3300 建立连接之后,点击 Setup 下拉菜单中的 Moduleconfiguration 选项,对 218IFD 进行通讯设定,详情请参照下图:
3):B 站的 IP 地址设定:192.168.1.2
4):B 站通讯参数的设定(与 A 站设定同理,不在此赘述。)
5):C 站的 IP 地址设定:192.168.1.3
6):C 站通讯参数的设定(与 A 站设定同理,不在此赘述。)
4、SND 函数
作为从站有自动授信功能,无需编写 RCV,而作为主站没有自动发信功能,必须在 T 图中编写 SND 函数。在此重提,在有协议通讯的情况下,SND 和 RCV 函数是指发送和接收功能代码。在无协议通讯的情况下,SND 和 RCV 函数是指发送和接受通讯数据。此次通讯使用的是 Extended Memobus 协议。所以 SND 函数发送的是功能代码。本通讯实验案例以功能代码 03H 和 10H 为例。
同一个通道上不能同时既读出数据又写入数据,所以在 SND 函数中,03H 保持寄存器内容读出和 10H 向多个保持寄存器的写入需要交替进行,不能同时。
以 A 站为主站,B 站为从站为例,详细说明如下:
(1) A 站的通讯设定
CNO:传送缓冲通道编号01 通道:A 站(主站)发送给 B 站(从站)的通讯设定,IP 地址,端口号等
(2) B 站的通讯设定
(3)SND 函数编写
*:MSG-SND 函数更为详细的说明,请参考机器控制器通讯模块用户手册
*:MSG-SND 函数更为详细的说明,请参考机器控制器通讯模块用户手册
*:Extended Memobus 功能代码更为详细的说明,请参考机器控制器通讯模块用户手册
5、通讯数据
*:主站--->从站(W:写入;R:读取)
认真阅读到***后的小朋友分享个技巧:
上面讲到多台MP(3台及以上)之间以太网通讯,如果是2台MP之间以太网通讯的话是不需要写SND函数的,客户端MP只需I/O Message功能设定就可以通讯。
另外,除218IF-01模块只支持10Base-TX半双工外,其余100Base-TX的网口均支持全双工,所以需要同时收发信功能可以设置两个通道。
- 下一篇:医药行业---泡罩包装加热成形机
- 上一篇:直驱电机的介绍