登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

SIEMENS运动控制器/伺服驱动器

SIMOTION/S120——纯技术BLOG

 
 
 

日志

 
 

S7-200_6_Modbus通讯实验  

2008-11-10 19:59:04|  分类: AS_L |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

 

1学习目标

掌握通讯协议的概念

了解Modbus的通讯协议

能够使用Modbus协议库实现两台PLC之间的通讯

2实验目标

设置两台PLC使用Modbus进行通讯,一主一从。Modbus主站控制Modbus从站的输入、输出、保持寄存器。

3相关资料

S7-200系统支持的PPI、MPI和PROFIBUS-DP协议通常以RS-485电气网络为硬件基础。

RS-485串行通信标准采用平衡信号传输方式,或者称为差动模式。平衡传输方式可以有效地抑制传输过程中干扰。

S7-200系统中的RS-485端口是半双工的,不能同时发送和接收信号。

通过S7-200 CPU通信口的自由口模式实现Modbus通信协议,可以通过无线数据电台等慢速通信设备传输。这为组成S7-200之间的简单无线通信网络提供了便利。

Modbus是公开通信协议,其最简单的串行通信部分仅规定了在串行线路的基本数据传输格式,在 OSI 七层协议模型中只到1,2层。

Modbus具有两种串行传输模式,ASCII 和 RTU。它们定义了数据如何打包、解码的不同方式。支持 Modbus 协议的设备一般都支持RTU格式。

Modbus是一种单主站的主/从通信模式。Modbus网络上只能有一个主站存在,主站在Modbus网络上没有地址,从站的地址范围为0-247,其中0为广播地址,从站的实际地址范围为1-247。

Modbus通信标准协议可以通过各种传输方式传播,如RS232C、RS485、光纤、无线电等。 在 S7-200CPU通信口上实现的是RS485半双工通信,使用的是 S7-200 的自由口功能。

西门子在 Micro/WIN V4.0 SP5 中正式推出 Modbus RTU 主站协议库(西门子标准库指令)。使用 Modbus RTU 主站指令库,可以读写 Modbus RTU 从站的数字量、模拟量 I/O 以及保持寄存器。

4实验方案

通讯实验需要两台CPU,在两台CPU中下载不同的程序,完成Modbus通讯。从站CPU要首先处于接收状态,然后主站CPU开始对从站进行操作。

从站的程序如下:

编程时使用SM0.1调用子程序MBUS_INIT进行初始化,使用SM0.0调用MBUS_SLAVE,并指定相应参数。关于指令MBUS_INIT指令参数的说明,详见手册第351页。

在从站的程序中,需要指定从站的地址,数据传输速率,校验方式等。在设置完毕后,从站处于接收状态。

主站的程序如下:

(1)      使用SM0.0调用MBUS_CTRL完成主站的初始化,并启动其功能控制。在初始化时,需要指出从站的地址、数据传输速率、校验方式等,这些必须与从站的设置相一致。

(2)      调用 Modbus RTU 主站读写子程序MBUS_MSG,发送一个Modbus 请求。通过MBUS_MSG指令可以对从站的输入、输出、保持寄存器进行操作。

5实验总结

Ø        每一个新的读写请求必须使用脉冲触发。

Ø        在向从站写入数据时,要注意数据的地址,其表示方式如下:00001 至 0xxxx - 开关量输出;10001 至 1xxxx - 开关量输入;30001 至 3xxxx - 模拟量输入;40001 至 4xxxx - 保持寄存器

Ø        Modbus主站可读/写的最大数据量为120个字。

Ø        在通讯出现故障时,可以通过模块的故障代码可以对故障进行判断。

Ø        Modbus RTU Master协议指令库使通信口工作在自由口模式下,此时不能与 Micro/WIN软件通信。要在切换回PPI协议,可以将MBUS_CTRL指令的Mode输入端设置为逻辑“0”,或者将CPU的允许模式选择开关置为STOP位置。

Ø        向从站数字量输出点发送数据时,数据长度为1时,发送1位,数据长度为8时,发送8位,即1个字节。数据长度为16时,发送16位,即2个字节,数据长度不能设置为其他数值,否则会报错。

  评论这张
 
阅读(1142)| 评论(0)

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018