分享

西门子SMART PLC的Modbus RTU通信功能,主从站通讯MBUS

 网上资料_收藏 2023-12-13 发布于山东
Modbus RTU通信概述
        Modbus 是公开的通信协议,是一种单主站的主/从通信模式。Modbus 通信标准协议可以通过各种方式传播,如 RS232C、RS485、光纤、无线电等。Modbus基于串行传输时有两种模式,ASCII和RTU,两种模式针对数据打包、解码方式的定义不同,支持Modbus协议的设备一般都支持 RTU 模式。西门子plc S7-200SMART CPU通过硬件自带的RS485通信端口或扩展的通信信号板,和软件上开发的Modbus RTU通信标准指令库,可以帮助客户快速便捷的实现设备间的Modbus RTU通信。


Modbus RTU通信标准指令库
标准指令库-主站:主站初始化MBUS_CTRL指令&主站读写MBUS_MSG指令


● EN:使能参数,必须保证每个扫描周期都能开启(SM0.0)。
● Mode:模式参数,为1时使能Modbus协议功能。
● Baud:波特率参数,根据通讯两侧的协议和速度要求需设定为一致。
● Parity:校验方式参数,0=无校验,1=奇校验,2=偶校验。
● Port:端口号参数,0=使用集成的通讯口,1=CM01信号板。
● Timeout:超时时间参数,主站等待从站响应的时间,以ms为单位。
● Done:初始化完成位。
● Error:初始化错误代码(详见系统手册指令说明)。


● EN:使能参数,必须保证同一时刻只有一个读写功能处于使能状态。
● First:读写请求位,每一个新的读写请求需要用脉冲触发。
● Slave :从站地址参数,可选择的范围1-247。
● RW:读写参数,0=读,1=写。
● Addr:读写从站对应连续地址区域的起始地址。
● Count:读写从站对应连续地址的个数。
● DataPtr:读写操作对应主站连续地址区域的起始地址,用于存储准备写入的数据或要读回的数据。
● Done:读写功能完成位。
● Error:读写指令错误代码(详见系统手册指令说明)。



标准指令库-从站:从站初始化MBUS_INIT指令&从站响应请求MBUS_SLAVE指令


● EN:调用使能位,一般使用SM0.1。
● Mode:模式参数,启动停止Modbus,0=停止,1=启动。
● Addr:从站地址,Modbus从站地址,取值1-247。
● Baud :波特率参数,根据通讯两侧的协议和速度要求需设定为一致。
● Parity:校验方式参数,0=无校验,1=奇校验,2=偶校验。
● Port:端口号参数,0=使用集成的通讯口,1=CM01信号板。
● Delay:附加字符间延时,缺省值为0。
● MaxIQ:参与通信的
zui大IO点数,一般设为256。
● MaxAI:参与通信的
zui大AI通道数,zui多56个。
● MaxHold:zui大保持寄存器区,参与通讯的V区大小。
● HoldStart:保持寄存器区起始地址,以指针方式指定。
● Done:初始化完成位。
● Error:初始化错误代码(详见系统手册指令说明)。


● EN:调用使能位,一般使用SM0.0。
● Done:通讯完成位。
● Error:通讯错误代码(详见系统手册指令说明)。


应用实例
        通过Modbus标准指令库,实现主从站CPU之间的数据交换,其中主站IP地址为192.168.2.1,从站IP地址为192.168.2.2,主站Modbus地址为0,从站Modbus地址为1,将从站VB1000-VB1004中的数据读取至主站VB100-VB104中,数据交换区将主站中VB200-VB204的数据写入从站VB2000-VB2004。

主站程序:

从站程序:
执行结果:

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多