S7-300 CP341作主S7-200作从的Modbus通信

2025-06-03 20:51:29

1、CP341作Modbus主站的硬件组态

S7-300 CP341作主S7-200作从的Modbus通信

3、设置电气接口选择半双工RS 485,默认设置是 R(A)为- ,R(B)为+。此设置主要是与RS485 A、B两线正负定义有关,在CP341接线与通信对象A、B两线正负定义相反时,可无需修改硬件接线,可直接修改此处颠倒接线正负

S7-300 CP341作主S7-200作从的Modbus通信

5、实现CP341作Modbus主站的通信程序是“P_SND_RK”FB8负责发送控制字。编程如下:SF‘S’为发送,此处必须为大写的‘S’LADDR硬件组态中的起始逻辑地址,本例中为272REQ发送数据触发位,上升沿触发,本例中为M0.5,以1s为周期的脉冲信号DB_NO发送数据块号,本例中为1DBB_NO发送数据的起始地址,本例中为0LEN发送数据的长度,本例中暂时为6R_TYP‘X’为扩展的数据块,此处必须为大写的‘X’R取消通信,本例始终为初始值FALSEDONE发送完成位,无故障发送完成后为true,M100.0ERROR错误位,为true说明有错误,M100.1STATUS状态字,标识错误代码,查看Modbus Master和CP341手册其它参数

S7-300 CP341作主S7-200作从的Modbus通信

7、此处有几个注意事项:1) R_TYP必须为大写的‘X’,为小写"垓矗梅吒x"时,CP341 作为Modbus master时,调用FB8的状态字显示为 "0E4F" 错误。注意R_TYP必须为大写。且对于R_TYP可以写的值如下:’D’ DB 区’X’ DX 区,extended data block ’E’ I 区’A’ Q 区 ’M’ M 区 ’T’ T 区 ’C’ C 区2) LEN的长度要根据通信所需功能码来针对填写,如下表所示

S7-300 CP341作主S7-200作从的Modbus通信

9、S7-200作Modbus从站的设置S7-200作Modbus通信要用到自由口通信下的Modbus Slave库,对于此库的应用要注意的是􀁺 Modbus Slave库仅支持Modbus RTU通信模式,不支持ASCII 通信模式。􀁺目前的Modbus Slave库仅支持通信口Port0。􀁺 使用Modbus Slave库时一定要注意对库分配内存区空间。否则编译后出现很多错误。如图

S7-300 CP341作主S7-200作从的Modbus通信

11、上图中参数意义如下:a. 模式选择:启动/停止Modbus,1=启动;0=停止b. 从站地址:Modbus从站地址,取值1~247c. 波特率:可选1200,2400,4800,9600,19200,38400,57600,115200d. 奇偶校验:0=无校验;1=奇校验;2=偶校验e. 延时:附加字符间延时,缺省值为0f. 最大I/Q位:参与通信的最大I/O点数,S7-200的I/O映像区为128/128,缺省值为128g. 最大AI字数:参与通信的最大AI通道数,可为16或32h. 最大保持寄存器区:参与通信的V存储区字(VW)i. 保持寄存器区起始地址:以&VBx指定(间接寻址方式)j. 初始化完成标志:成功初始化后置1k. 初始化错误代码l. Modbus执行:通信中时置1,无 Modbus 通信活动时为 0m. 错误代码:0=无错误从程序截图中可见,S7-200作为Modbus从站,从站地址为10,接收存储区为VB0开始。

12、至此,CP341和S7-200双方的程序及物理连线已经做好。在调试S7-300时可通过CP343-1以太网模块,以便可以用以太网通信调试速度快且方便。S7-200站选用224XP,其中Port0作为Modbus通信口,Port1用于与笔记本的CP5512通信。在进行通信测试前还要明确Modbus通信的功能码。下表为Micro 'n Power中S7-200作为Modbus RTU从站通信功能码。

S7-300 CP341作主S7-200作从的Modbus通信

14、FC02主站读取从站多个DI点状态FC02功能下,“P_SND_RK”FB8的LEN为6,DB1的头两个字节分别是所要读取从站的地址10号站(16#A),和功能码02,如表6所示。图15为S7-200的I0.0-I0.3的四个位被传送到DB2的接收区。其中Reg_num位数为1-2040。

S7-300 CP341作主S7-200作从的Modbus通信

16、FC06主站写单字到从站内部寄存器FC06功能下,“P_SND_RK”FB8的LEN为6,DB1的头两个字节分别是所要读取从站的地址10号站(16#A),和功能码06,如表8所示。图17为DB1.DBW4传送到从站VW0的接收区。

S7-300 CP341作主S7-200作从的Modbus通信
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢