设为首页
收藏本站
PLC技术网
开启辅助访问
切换到宽版
登录
注册哦
只需一步,快速开始
微信扫码登录
门户
Portal
论坛
BBS
导读
Guide
排行榜
Ranklist
搜索
搜索
本版
文章
帖子
用户
PLC论坛-全力打造可编程控制器专业技术论坛
»
论坛
›
控制专题
›
『数控/电机控制/运动控制/工业总线』
›
Modbus RTU通讯说明
返回列表
发新帖
Modbus RTU通讯说明
[复制链接]
79445
|
0
|
2024-3-22 21:09:55
|
显示全部楼层
|
阅读模式
73.1、引言
Modbus RTU协议是基于EIA RS485的串行通讯总线,是一种紧凑的,采用二进制表示数据的方式。通讯为半双工通讯,在一个通讯周期内,主站向指定从站发出查询,指定从站接收查询后执行指定功能,返回响应信息。即通讯从站设备只可被动受主站设备查询状态或者控制动作,不可主动发送数据。
73.2、电气配线
由于EPSON机器人控制器端串口为RS-232C的公头接口,故需要准备一个如下图的RS-232转RS485的转换模块。
73.3、数据格式
Modbus RTU通讯数据格式由以下组成:
①启动
3.5个字符以上的安静间隔(无通信时间)。
(1个字符 = 10 bit)
例:9600bps时 (10×3.5)bit×1/9600bps=3.65ms
②地址
指定已连接的从站设备的地址,有些设备地址存在偏移现象,需要+1或者-1。
③功能码
可具体查询从站设备说明书。
④数据
添加功能码所指示的数据时使用。功能码没有添加数据的指示时,也允许无数据。
⑤CRC校验
在Modbus RTU模式下,信息中自动添加可通过CRC方式对信息整体的内容进行检查的错误校验。CRC校验由16位二进制值构成。CRC值由在信息中添加CRC的发送侧计算。接收侧在接收信息的过程中重新计算CRC,将计算结果与发送来的值进行比较。如果两个值不一致,则结果为错误。
⑥结束
3.5个字符以上的安静间隔(无通信时间)。
73.4、示例程序
编写SPEL+语言程序时,需要Modbus RTU通讯的数据转为二进制的格式。故发送数据时,使用WriteBin指令。接收数据时,使用ReadBin指令。具体参考程序如下:
73.5、运行结果
video:
https://mp.weixin.qq.com/mp/readtemplate?t=pages/video_player_tmpl&action=mpvideo&auto=0&vid=wxv_2340132842929979393
本帖子中包含更多资源
您需要
登录
才可以下载或查看,没有账号?
注册哦
x
回复
举报
返回列表
发新帖
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
注册哦
本版积分规则
发表回复
回帖后跳转到最后一页
qingyu
回复楼主
返回列表
『数控/电机控制/运动控制/工业总线』
『机器视觉/AI/IoT/机器人论坛』
『高级语言/组态软件/触摸屏』
『操作系统xp/xin7/win10/linux』