7.3-MODBUS-RTU通信功能应用示例

上传人:hs****ma 文档编号:567309962 上传时间:2024-07-19 格式:PDF 页数:5 大小:548.99KB
返回 下载 相关 举报
7.3-MODBUS-RTU通信功能应用示例_第1页
第1页 / 共5页
7.3-MODBUS-RTU通信功能应用示例_第2页
第2页 / 共5页
7.3-MODBUS-RTU通信功能应用示例_第3页
第3页 / 共5页
7.3-MODBUS-RTU通信功能应用示例_第4页
第4页 / 共5页
7.3-MODBUS-RTU通信功能应用示例_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《7.3-MODBUS-RTU通信功能应用示例》由会员分享,可在线阅读,更多相关《7.3-MODBUS-RTU通信功能应用示例(5页珍藏版)》请在金锄头文库上搜索。

1、MODBUS RTU 通信功能应用示例 MODBUS RTU 通信功能应用示例 1. 控制要求 1. 控制要求 采用 MODBUS RTU 通信方式,实现 PLC 实时读取两台智能仪表检测的现场环境温度和湿度值。 2. 系统配置 2. 系统配置 系统选用型号为 S7-1200 CPU1215C DC/DC/DC 的 1 台 PLC, 并配有 CM 1241 RS485 通讯模块,作为 MODBUS RTU 通信系统的主站;选用两台智能仪表,型号分别为 KCM-91WRS 智能温度调节仪和 KCM-91WAS 智能湿度调节仪,作为 MODBUS RTU 通信系统的从站。系统结构如图 7-36 所

2、示。 图 7-36 系统结构图 3.硬件组态 3.硬件组态 1)创建新项目:在项目树下点击“添加新设备”,选择 CPU1215C DC/DC/DC,创建一个 PLC_1 站点;完成后,进入“设备视图”“硬件目录”,然后继续添加“通信模块”“点到点”“CM1241(RS422/485)”通信模块添加到 CPU 左边(101 插槽)的主机架,如图 7-37 所示。 图 7-37 硬件组态 2)在“属性”中设置 PLC_1 的 IP 地址为 192.168.0.1、子网掩码 255.255.255.0,如图 7-38;选择“系统和时钟存储器”,勾选“启用系统存储器字节”和“时钟存储器字节”,以便后需

3、编程时使用,如图 7-39。 图 7-38 IP 地址设置 图 7-39 启用系统及时钟存储器字节 3)组态“CM1241(RS422/485)”通信模块端口参数,保证与智能仪表通讯设置相同;在模块“属性”“常规”“端口组态”中,修改操作模式为半双工(RS485)、2 线制;将波特率设置为 9.6kbps,数据格式为 8 个数据位,1 个停止位,无奇偶校验;检查模块硬件标识符,本例中为 269。通信模块接口参数设置如图 7-40、7-41、7-42 所示。 图 7-40 通信端口操作模式 图 7-41 通信端口数据格式 图 7-42 硬件标识符界面 4.主站程序的编写 4.主站程序的编写 1)

4、调用并设置串口参数初始化函数“MB_COMM_LOAD” 打开 PLC_1 主程序块(Main),调用“通信处理器”“MODBUS”中的组态端口指令“MB_COMM_LOAD”,点击确认后自动生成其背景数据块“MB_COMM_LOAD_DB”,如图 7-43所示。 图 7-43 MB_COMM_LOAD 模块 “MB_COMM_LOAD”指令用于组态通信端口使用 Modbus RTU 协议通信,必须调用“MB_COMM_LOAD”一次。完成组态后,“MB_MASTER”和“MB_SLAVE”指令才可以使用该端口。 设置“MB_COMM_LOAD”指令输入管脚。 由于该指令只需调用一次, 所以

5、REQ 管脚可选择FirstScan 位信号的上升沿执行一次;其他参数设置保持与组态的“CM1241(RS422/485)”通信模块端口参数设置一致。PORT 为通信端口 ID,即通信模块的硬件标识符(269);BAND为波特率, 设为 9600; PARITY 为奇偶校验, 设为 0 (无校验) ; MB_DB 管脚链接“MB_MASTER”主站指令调用后生成的背景数据块(在主站指令编写时再进行连接)。 设置“MB_COMM_LOAD”指令输出管脚。DONE 表示指令的执行的完成情况,为 1 表示指令已完成且未出错; ERROR 为 0 表示未检测到错误, 为 1 表示检测到错误, 并在参数

6、 STATUS 中输出错误代码;STATUS 为端口组态错误代码,出错时可根据错误表查询出错原因。 2)读取智能温度仪(地址为 1)实时温度值 调用 “通信处理器” -“MB_MASTER”主站指令, 自动生成其背景数据块。 “MB_MASTER”管脚参数设置如图 7-44 所示,参数含义如下: REQ:请求输入;0 表示无请求,1 表示请求将数据发送到 MB_ADDR 指定的从站;本例选用 1Hz 时钟信号“CLOCK_1Hz”作为请求信号。 MB_ADDR:设置 Modbus RTU 站地址;默认地址范围为: 0 247;本例为 1。 MODE:模式选择,用来指定请求类型。0 为读取,1

7、为写入;本例设置为 0,用于读取Modbus 从站 1 的温度数值。 DATA_ADDR:指定 Modbus 从站中提供访问的数据的起始地址,可在 Modbus 功能表中找到有效地址为 4097,加上起始地址 40001,这里输入 44098。 DATA_LEN:数据长度,本例设置 1 个字。 DATA_PTR: 该参数是指向用来写入或读取数据的数据块或位存储器的指针。本例将读取到的数值放到%MW200 中,录入格式为 P#M200.0 WORD 1。 图 7-44 MB_MASTER 模块参数设置 1 3)读取智能湿度仪(地址为 2)实时湿度数值 右键点击已生成的“MB_MASTER”指令块

8、,选择“复制”并在下一个程序段进行“粘贴”操作,保证其背景数据块一致。“MB_MASTER”管脚参数设置如图 7-45 所示,参数含义如下: REQ:两个“MB_MASTER”指令之间采用交替方式,当温度值读取完成或出现错误时,开始读取湿度值;周期为 1s。 MB_ADDR:输入 2;MODE:输入 0(读取);DATA_ADDR:输入 44098; DATA_LEN:数据长度设为 1;DATA_PTR:将读取到的数值放到%MW202 中,录入格式为 P#M202.0 WORD 1。 图 7-45 MB_MASTER 模块参数设置 2 5.系统调试运行 5.系统调试运行 程序编写完成后,进行编译并下载到 PLC 中。 在 PLC 的“监控与强制表”条目下,添加一个监控表,监控读取到的实时温度、湿度数值(为实际数值的 10 倍),如图 7-46;智能仪表面板显示窗口显示的实时温度、湿度值如图 7-47。 图 7-46 PLC 在线获得的数据 图 7-47 智能仪表数据显示

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号