Micrologix1400 ModbusTCP-Slave

网友投稿 576 2022-10-16

Micrologix1400 ModbusTCP-Slave

Micrologix1400  ModbusTCP-Slave

勿私放其他平台

在上一篇文章中《​​Micrologix1400 ModbusTCP通讯之master | 答题赠书​​》,我们配置了如何使用MSG指令将第三方ModbusTCP协议的数据读取到Micrologix1400 PLC内,但是只能传输整型数据。同样地,1400PLC作为ModbusTCP Slave(Server)时,也只能传输整型数据,那如果我们真的需要传输一些浮点数该怎么办呢?

Micrologix1400 PLC作为ModbusTCP Slave功能时配置​很简单,上文已经简单介绍过,再来回顾一下。

打开logix500软件里面的channel Configuration选项,勾选channel-1通道的ModbusTCP Enable 复选框,配置modbusTCP协议地址区在PLC里面对应的数据文件。本文中,0xxxx区对应B12数据文件,4xxx区地址对应N10文件。1xxxx和3xxxx我们一般很少用到,默认即可。

此时将程序-到PLC后,使用Modscan软件就可以连接到该PLC了。为了测试方便,可在N10文件里面模拟几个数值,在modscan里面查看。

再来看看浮点数的问题

在Micrologix系列 PLC内,数据类型不一样表示的数据范围也就不一样,如下表:

可以看出来,Integer类型是与标准modbus协议支持的3xxx和4xxx的WORD类型相匹配的,所以我们配置的时候一直选择Integer类型传输数据,但是其表示的数据范围时有限的,如果有更大的数据要传输该怎么办呢?

实际上,在实际的使用中,这种问题是经常遇到的,在MicrologixPLC内,我们只能将Float类型或Long类型的数据转换为2个Integer类型的数据,通过Modbus协议传输到第三方设备后再将这2个Integer类型数据经过换算转换为可识别的Float和Long。

公布上期获奖名

思考题:

如果PLC内有一些浮点数需要传输该怎么办

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:REST API 範例框架
下一篇:Flourish- PHP开发框架
相关文章

 发表评论

暂时没有评论,来抢沙发吧~