电子开发网

电子开发网电子设计 | 电子开发网Rss 2.0 会员中心 会员注册
搜索: 您现在的位置: 电子开发网 >> 电子开发 >> 梯形图实例 >> 正文

主从站通讯MBUS_CTRL和MUBS_INIT 两台西门子PLC之间的MODBUS无线通信

作者:佚名    文章来源:本站原创    点击数:    更新时间:2023/6/12

在工业现场可能会遇到这样的情况,分布在不同地方(车间、控制室场所等)的PLC之间需要进行远程相互控制,通常是采用RS485总线,通过MODBUS协议完成此功能。

如果现场布线不方便的话,也可以采用无线方式进行通信。这里以达泰DTD433无线模组和西门子S7_200为例进行说明。

一、两台S7_200 西门子PLC之间的远程控制,主从站通讯

 两台S7_200 西门子PLC之间的远程控制,主从站通讯

 

 

实现的功能:

  • PLC1的8个开关量输入,I0.0~I0.7与PLC2的开关量输出Q0.0~Q0.7一一对应,也就是说上图中的A1开关按下时,PLC1的开关量输入I0.0闭合,PLC2的输出继电器触点Q0.0导通,L2点亮。
  • PLC2的8个开关量输入,I0.0~I0.7与PLC1的开关量输出Q0.0~Q0.7一一对应,也就是说上图中的A2开关按下时,PLC2的开关量输入I0.0闭合,PLC1的输出继电器触点Q0.0导通,L1点亮。
  • PLC1与PLC2之间的通信是通过S7_200 CPU22XP的Port0通信口的RS485总线连接的,其中采用了Modbus协议。

二、西门子PLC通信中的Modbus协议编程方法

假设把PLC1作为主站,PLC2作为从站,分别编写主站和从站程序,主要掌握以下要点:

Modbus 主站读写程序

  • Modbus RTU主站功能是通过指令库中预先编好的程序功能块实现的,该库只针对Port 0口有效;
  • 在程序中插入MBUS_CTRL指令,并在每次扫描时执行MBUS_CTRL。您可以使用MBUS_CTRL指令初始化或更改Modbus通讯参数。

MBUS_CTRL指令 

 

 

  • Modbus RTU主站使用了一些用户中断,在用户程序中不能禁止中断;
  • 读取从站数据在程序中插入MBUS_MSG指令,注意从站地址设置用一致;
  • 该例程访问的为一个从站,若访问不同的从站,可通过改变从站地址来实现。

MBUS_MSG指令 

 

 

 

 

Modbus 从站读写程序

  • 在第一个循环周期内插入MBUS_INIT指令初始化Modbus从站协议:

Mode:       模式选择,启动/停止MODBUS,1=启动;0=停止

Address:     从站地址,MODBUS从站地址,取值1~247

Baud:       波特率,可选1200,2400,4800,9600,19200,38400,57600,115200

Parity:       奇偶校验,0=无校验;1=奇校验;2=偶校验

Delay:       延时,附加字符间延时,缺省值为0

Done:        初始化完成标志,成功初始化后置1

Error:        初始化错误代码

 

 

  • 在本例子中,设置从站地址为8,Port0 通讯波特率为9600bps,无校验;
  • 本例子中Modbus RTU 从站指令使用的库存储为VB2000---VB2779,这段寄存器地址不能再被程序中的任何指令使用,包括MBUS_INIT 和MBUS_SLAVE 指令在内。

 MBUS_INIT指令,从站初始化指令

 

 

  • MBUS_SLAVE指令被用于为Modbus主设备发出的请求服务,并且必须在每次扫描时执行,以便允许该指令检查和回答Modbus请求。在每次扫描且EN输入开启时执行该指令。

三、无线Modbus通信的实现方法

    以上说明了采用有线RS485总线实现多台PLC之间的远程控制方法,有时由于现场条件的限制,重新布设通信线路很不方便,例如山上与山下,或者横跨马路的情况,尤其对于工程改造项目二次布线几乎是甲方无法接受的。在这种情况下,可以采用DTD433无线通信模组代替通信电缆,实现起来非常方便,不需要

无线通信模组采用中心频率为433MHz开放的ISM频段,内部使用全数字RF通信芯片与单片机组成无线数传系统,外部通信接口与RS485总线完全一致,为了使用方便,通信实现所发即所得,也就是说数据通信是完全的透明方式,这样的话,用两个DTD433模组能够直接代替有线的RS485通信导线。需要注意的是:

  • PLC的Modbus通信速率要与无线数传模组的波特率设置一致,例如通信参数可以设置为9600bps,8位数据,无效验位。
  • S7_200的RS485+连接DTD433的RS485_B;
  • S7_200的RS485-连接DTD433的RS485_A;
  • 无线数传模组的供电电源为直流24V,与PLC可以共用电源;
  • 无线通讯距离在200米左右选用DTD433A模组;
  • 无线通讯距离在1000米左右选用DTD433B模组;
  • 无线通讯距离在3000米左右选用DTD433C模组;
  • 保证通信距离,提高通信质量要选择高增益的吸盘天线,天线安放高度离地面越高效果越好。

 

 

 西门子plc的主从站无线通讯的示意图

 

 

四、PLC与DTD433无线模组通讯成功的案例

  • 西门子PLC与DTD433C-S4   9600bps,8,N,1,RS485口        
  • 海为PLC与DTD433C-S4   9600bps,8,N,2,RS485口        
  • 台达PLC与DTD433A_S4   9600bps,7,E,1,RS485口    

PLC与DTD433无线模组通讯成功的案例 

编程。

 

Tags:主从站,西门子plc,MBUS_CTRL,MBUS_INIT  
责任编辑:admin
相关文章列表
西门子200SMART PLC间接寻址和指针实例详解
西门子plc的指针用法 _ 西门子PLC 间接寻址(指针)
西门子200SMART PLC电机运行时间累计及维保程序设计
西门子200SMART PLC关于FOR-NEXT指令使用技巧 循环指令梯形图实例
西门子200smart不同类型CPU的区别,西门子S7-200SMART  CPU主机型
西门子S7-200PLC CPU224XP模拟量输入AIW0和输出AQW0有什么关系?
西门子plc中的vb100,vw100,vd100有什么联系吗?寄存器知识
西门子plc 和modbusRTU对应关系_西门子S7-200和S7-200SMART的mod
西门子PLCS7-200/S7-200SMART Modbus地址问题应用解析
西门子S7-200SMART PLC使用modbus 读取仪表数据
西门子S7-200SMART两台PLC之间主从站,MODBUS主从站通信步骤设置
西门子S7-200 Smart PLC入门笔记8——电机控制子程序调用 子程序
西门子S7-200 Smart PLC入门笔记1——流水灯梯形图 MOV_B和SHL_B
西门子PLC程序控制指令  条件结束指令和子程序指令
西门子PLC设计 天塔之光实验  S7-200 SMART
西门子S7-300 PLC和MM440变频器控制吸尘风机案例 风机节能自动控
西门子plc  1分钟学会S7-1200基本指令——SR、RS
RS触发器与SR触发器的几点区别,复位优先触发器和置位优先触发器
西门子plc S7-200按下启动按钮指示灯点亮,按钮使用计数器和计时
S7-1200 PLC跑马灯程序设计,接线图和控制流程图
西门子S7-200SMARTPLC循环走马灯如何编写 plc跑马灯程序
使用S7-200编写的一个货物进出的梯形图实例编程 仓库进出货实例梯
基于S7-200组合式空调恒温恒湿的自动控制 温湿度控制
昆仑通态触摸屏TPC7062kx和西门子s7-200 cpu224cn通信设置
PLC200入门笔记1-软件安装和程序下载 STEP7软件下载和安装
西门子plc s7-200smart modbus-tcp通信实例编程详细指导,STEP7软
西门子PLC控制数码管显示,停车场PLC程序实例!七段编码指令SEG,
PLC编程经典实例,西门子 S7-200 SMART plc恒压供水系统
西门子S7-200 Smart PLC的扩展模块之数字量输入模块 EM DE08和EM
ATX电源实例电路图  两款ATX开关电源电路图
请文明参与讨论,禁止漫骂攻击,不要恶意评论、违禁词语。 昵称:
1分 2分 3分 4分 5分

还可以输入 200 个字
[ 查看全部 ] 网友评论
推荐文章
最新推荐
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 在线帮助 - 文章列表
返回顶部
刷新页面
下到页底
晶体管查询