技术论坛

 西门子200smart modbus rtu通讯实例

返回主题列表
作者 主题
WWCWWC
至圣

经验值: 71965
发帖数: 8035
精华帖: 145
楼主    2019-01-29 09:24:17
主题:西门子200smart modbus rtu通讯实例 精华帖 

西门子200smart modbus rtu通讯实例

   前面几次modbus rtu通讯均用串口调试软件进行验证的,今天找到另一台200smart plc可以组成一个简单的modbus rtu的主、从通讯,以此来验证一下,主要是对通讯地址Addr的计算。

通讯材料:

1)  plc2台,分别是200smart 的CR60和SR20;

2)  2个DP插头(6ES7972-0BX12-0XA0)

3)  连接导线若干(plc电源及通讯)

验证内容:

令:CR60 plc为主站,发送plc系统时钟(8个字节的信息)给SR20从站;SR20从站发送一个双字的循环移位数据给主站,并由通讯数据VD100接收输出到QD0。

主站程序:


在验证过程中曾经出现一个错误,使MSG指令始终显示为6,表示从站无响应。我验证时,由于连接2台plc之间的3+、8-没有确认,造成接线错误,使MSG的error错误信息为6,检查后找到原因,重新接线后仍然报警6。最后检查为控制程序不完整,主要原因是没有给MB0一个初始化操作,造成错误值没有得到有效的刷新。于是,在程序段1中加入初始化操作得到解决。

主站MSG指令主要理解Addr地址的应用,下面有描述。

从站程序:从站通讯地址设置为1#

从站自VB31开始为读取主站VB11开始的8个字节主站系统时钟数据,指定VB31的起始地址是由Addr地址40011定义的,从站循环指令VD11运行结果,将由Mbus_init的Holdstart定义的起始地址发送和接收。

编写小结:

自简而深进行编写modbus rtu通讯程序,相对从站通讯程序比较简单,仅仅只是指定通讯种类由Mbus_init管脚指定maxIQ/maxAI/maxHOLD/Holdstart定义,其它管脚根据主站定义匹配进行,相对主站需要根据从站地址偏移量来确定。

通讯数据:

Modbus通讯程序相对的难点是通讯映射的地址关系。

主站读取从站的数据,起始地址是根据从站Holdstart管脚定义的起始地址开始算,而不是指从站的V区物理地址。在验证程序中,从站的Mbus_init起始地址为VB11,那么,主站MSG指令的Addr 40001,应该是指从站的VB11地址。

同理,从站读取主站系统时钟,主站的MSG指令的Addr 40011,对应到从站的地址相当于偏移了10个字(偏移量10word + 11byte = 31byte) ,即为VB31开始的8个字节中存放,Modbus通讯地址计算是40001开始的。


yyzx
奇侠

经验值: 6042
发帖数: 939
精华帖: 4
1楼    2019-01-29 09:57:33
主题:回复:西门子200smart modbus rtu通讯实例

不错的分享,适合新手入门,值得点赞!

不患无位,患所以立
WWCWWC
至圣

经验值: 71965
发帖数: 8035
精华帖: 145
2楼    2019-01-29 12:00:53
主题:回复:西门子200smart modbus rtu通讯实例

我想基于modbus rtu基本通讯,自己模拟一些故障错误,来演示通讯错误的出处。

昨天太晚了,没有继续测试。

真如我上面描述的那样,一开始就MSG指令报警6(接线错误),接线排除后仍然报警6,程序错误(不完善)那样的演示。

不断攀登
至圣

经验值: 12543
发帖数: 1843
精华帖: 0
3楼    2019-02-14 10:34:57
主题:回复:西门子200smart modbus rtu通讯实例

感谢分享!

邮箱 yongquancun@126.com
HUANGZE75
至圣

经验值: 63463
发帖数: 12670
精华帖: 121
4楼    2019-02-14 17:07:34
主题:回复:西门子200smart modbus rtu通讯实例

这样的手把手的教程很难得啊,王工辛苦了,谢谢分享啊、

WWCWWC
至圣

经验值: 71965
发帖数: 8035
精华帖: 145
5楼    2019-02-14 17:13:52
主题:回复:西门子200smart modbus rtu通讯实例

黄工新年好,新年开始作为维保人员是一年中比较忙的时段了。

最近工作比较忙,设备停产后,各种的通讯问题每天都在处理中。

HUANGZE75
至圣

经验值: 63463
发帖数: 12670
精华帖: 121
6楼    2019-02-15 09:25:59
主题:回复:西门子200smart modbus rtu通讯实例

王工,我还算好,开年后设备问题不多,小问题,往年也是问题多多。

WWCWWC
至圣

经验值: 71965
发帖数: 8035
精华帖: 145
7楼    2019-02-15 11:27:15
主题:回复:西门子200smart modbus rtu通讯实例

说明你年前准备工作做充分了。

我这边自己年前年保也做充分的,是兄弟工厂问题多,主要是几起profibus dp通讯,原因是没有按正确的dp电缆连接规范作业,造成通讯间断性中断,重新做dp头连接后正常了,还有一起是鼠害引起的dp电缆破损。

疯狂的蚕豆
游侠

经验值: 488
发帖数: 38
精华帖: 0
8楼    2019-02-16 12:01:18
主题:回复:西门子200smart modbus rtu通讯实例

感谢分享,新手马上就要用到modbus

拒绝浮躁,拒绝自以为
WWCWWC
至圣

经验值: 71965
发帖数: 8035
精华帖: 145
9楼    2019-02-16 12:19:00
主题:回复:西门子200smart modbus rtu通讯实例

希望能够帮助到你在项目中的应用。

您收到0封站内信:
×
×
信息提示
很抱歉!您所访问的页面不存在,或网址发生了变化,请稍后再试。