设为首页
收藏本站
PLC技术网
开启辅助访问
切换到宽版
登录
注册哦
只需一步,快速开始
微信扫码登录
门户
Portal
论坛
BBS
导读
Guide
排行榜
Ranklist
搜索
搜索
本版
文章
帖子
用户
PLC论坛-全力打造可编程控制器专业技术论坛
»
论坛
›
工控技术交流区
›
『国外:三菱/西门子/欧姆龙/松下』
›
西门子smart200与仪表Modbus通讯实例
返回列表
发新帖
[西门子]
西门子smart200与仪表Modbus通讯实例
[复制链接]
29715
|
0
|
2024-1-12 22:18:52
|
显示全部楼层
|
阅读模式
1一台支持Modbus协议的称重仪表
支持Modbus协议的称重仪表
2设置好仪表的通讯参数
根据自己的要求可以调整,只要和PLC端统一就可以
波特率:9600
数据格式:8n1:8位数据/无校验位
通讯方式:Modbus协议
校验和:OFF
仪表通讯地址:1
3确定所要读取的变量地址
这里我们只需要读取仪表的当前实时重量即可
仪表实时重量的地址为0,对应Modbus通讯里的40001
4200smartPLC一台
200smartPLC
5连接端口
将仪表端的RS485接口A,B与PLC端的DB9接口相连(DB9接口的3为A,8为B)
我记得是3为A,8为B,不知此图为什么这样,不过不要紧,如果不同,将两根线颠倒一下
准备工作完毕,接下来就开始我们的PLC编程了,因为200smart软件自身就带了Modbus协议库,所以,不需要我们另外去添加了,下面就介绍下怎么编程的。
6初始化主站指令
“模式”(Mode) 输入的值用于选择通信协议。输入值为 1 时,将 CPU 端口分配给 Modbus 协议并启用该协议。
参数“奇偶校验”(Parity) 应设置为与 Modbus 从站设备的奇偶校验相匹配。0(无奇偶校验)
参数“端口”(Port)设置物理通信端口(0 = CPU 中集成的 RS-485)。
参数“超时”(Timeout) 设为等待从站做出响应的毫秒数。典型值是 1000 ms (1 s)。
当 MBUS_CTRL指令完成时,指令将“真”(TURE) 返回给“完成”(Done) 输出。
“错误”(Error) 输出包含指令执行的结果。
以上的参数设置与称重仪表端的对应
7两个仪表的轮询访问
参数“从站”(Slave) 是 Modbus 从站设备的地址。允许范围为 0 至 247。地址 0 是广播地址。仅将地址 0 用于写入请求。系统不会响应对地址 0 的广播请求。并非所有从站设备都支持广播地址。S7-200 SMART Modbus 从站库不支持广播地址。
使用参数 RW 指示是读取还是写入该消息。0(读取)
参数地址 (Addr) 是起始 Modbus 地址。寄存器地址为0,对应Modbus通讯里的地址40001
参数“计数”(Count) 用于分配要在该请求中读取或写入的数据元素数。读取仪表中保持寄存器字数。
参数 DataPtr 是间接地址指针,指向 CPU 中与读请求相关的数据的 V 存储器。将 DataPtr 设置为用于存储从 Modbus 从站读取的数据的第一个 CPU 存储单元。
地址1的仪表数据被存入到VW600中,地址2的仪表数据被存入到VW610中。
编程结束,下面我们看下监控效果。
主站初始化指令运行正常,没有报错
地址1仪表数据为131,地址2仪表数据为0
下方有私人微信号,我将统一给大家在微信实时分享知识,学有所获。
往期重点:电气工程及其自动化技术必备的表格,收藏好了!
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
注册哦
x
回复
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册哦
本版积分规则
发表回复
回帖后跳转到最后一页
shjjun
回复楼主
返回列表
『国外:三菱/西门子/欧姆龙/松下』
『国产:台达/汇川/信捷产品交流区』