当前位置:网站首页 > 编程语言 > 正文

modbus报文解析(modbus报文解析0f)



该【Modbus报文详解 】是由【秋江孤影】上传分享,文档一共【8】页,该文档可以免费在线阅读,需要了解更多关于【Modbus报文详解 】的内容,可以使用淘豆网的站内搜索功能,选择自己适合的文档,以下文字是截取该文章内的部分文字,如需要获得完整电子版,请下载此文档到您的设备,方便您编辑和打印。实用标准文案


Modbus


协议概述


Modbus作为在工业设备通讯上使用最多,应用最广的国际标准协议,在应


用层的协议定义上我们对其进行简单的介绍:


类型描述


设备地址对应通讯设备设定的1-255的任意一个数字地址号。


功能码对应读取模拟量一般采用0304号功能码,对于读取开关


量一般采用0102号功能码。


起始地址数据在通讯设备中的寄存器定义,一般由厂家提供点表。


数据格式数据在寄存器中的格式,较多的为16位无符号,因为一个


寄存器就是一个16位的长度。


CRC校验经过CRC校验算法后,添加CRC计算的值在协议传输帧的


最后面,主要是防止串口误码导致数据错误。


举一个最简单的例子,我们在SymLink中查看报文的时候可以看到:


SymLink发送:095CB


01代表设备地址1


03代表读取保持寄存器的值


00代01表采集点对应的寄存器号


00代02表读取2个连续寄存器的值


95为CB010300计算01所得00的CRC02值


SymLink接收:000FA33


01代表设备地址1


03代表读取保持寄存器的值


04代表设备返回的数据个数,字节为单位


0000为数据00返回00的连续2个寄存器的值


FA为计算00所得的00CRC值00


SymLink在判断01、03、04这些反馈信息都合法,并且CRC校验无误的情况下,


就可以对000000所在的数据值进行00规定数据格式的解析。


目前支持Modbus协议的设备越来越多,包括PLC、智能仪表、通讯模块等等,


如果厂家设备支持的通讯协议为标准格式的Modbus协议,那么在选择厂家的时


候就直接选择国际标准的Modbus。


准备工作


序号名称数量备注


1厂家设备任意支持标准的Modbus协议



绞线,长度建议不要超过100米。


以太网通讯为带隔离保护的标准网


线,长度建议不要超过50米。


文档大全


实用标准文案


3Symlink工业智能机1任意型号


4设备说明书和点表1说明书指导设置设备地址、波特率


等通讯参数。点表用来配置采集点


信息。


设备连接


通讯,设备的端子对应连接的端子、设备的端子对应


RS485ASymLinkAB


连接SymLink的B端子,需要注意的是一根线上接多个IED的情况,一个是


设备地址要唯一、波特率和其他串口参数要一致,另外接线的时候需要从一


台IED的AB端子跳接到下一台IED的AB端子,防止并联分散传输信号。


通讯,设备的发送针对应连接的、设备的接收针对应连接


RS232SymLinkRX


SymLink的TX、设备的接地针对应SymLink的GND。


以太网通讯,设备的网口对应连接到同一网段的口,如果含多


SymLinkLAN


台以太网设备通讯,需要加交换机。


设备配置


参考实际的设备说明书:


)选择协议,如果设备支持多种协议,需要在配置里面选择为或


1ModbusRTU


者ModbusAscii协议。


)定义通讯接口参数。串口定义传输波特率,数据位,停止位,奇偶检验。


2


以太网通讯定义IP地址,TCP端口号。


)定义设备地址。


3


)用厂家提供的设备点表和设备面板显示的数据进行简单的对应。


4


)用厂家提供的测试软件,或者第三方测试软件(、等)


5modscanModbusPoll


对设备进行通讯测试。


通讯配置


选中工程下的“采集服务”,点右键后在菜单中选择“新建通道”。


在弹出的界面在定义通道名称,点击规约旁边的浏览按钮选择ModbusRTU驱动。


文档大全


实用标准文案


在左侧的分类中选择国标下的ModbusRTU,点确定按钮完成。


定义端口信息,ModbusRTU多采用串口通讯,在下方的端口参数中定义串口号,


波特率,数据位等通讯参数,定义完成后点击确定按钮完成。


文档大全


实用标准文案


通道的配置只是完成了协议选择及通讯的接口参数。还需要在通道下创建连接的


设备及设备参数后才算完成与具体设备的通讯配置。


选中新建的通道,点击右键,在右键菜单在选择“新建设备”


在设备配置面板中定义设备名称,设备地址(Modbus协议主要依靠设备地址来


识别一条总线上的多个设备)。


文档大全


实用标准文案


点击设备配置界面左下方的+号按钮,可以定义ModbusRTU协议的高级参数。


点击确定按钮就完成了通道及设备的通讯配置。


需要说明一下规约参数中的包最大长度,这里默认是32,代表组织协议的时候


一次最大可读取连续32个寄存器数据,如果点数较多并且通讯条件较好的情况


下,我们最大可以调整到128。



完成Modbus设备和通道的通讯配置后,并未采集到设备中具体的数据。如要对


设备的数据进行逐个的采集,需要在采集服务中的通道下的设备中创建一个一个


的IO点,并配置正确的IO连接参数。


在左侧导航中选择采集服务中的通道下的设备后,右侧视图为IO点的列表视图。


默认没有任何IO采集点。


文档大全


实用标准文案


在空白区域点击右键,在弹出的右键菜单在选择创建IO点。


弹出新建采集点对话框:


文档大全


实用标准文案


点击连接线右侧的浏览按钮,即可进入到具体的协议配置参数。


连接项说明


功能码参考厂家协议说明,一般读取模拟量用0304号命令,


读取开关量用0102号命令。区分是04和02是只读区,


03和01类型的寄存器支持用06和05的命令码回写操


作。


文档大全


实用标准文案


数据地址参考厂家点表,我们SymLink的数据地址从0开始,要


注意厂家的点表是否是从1开始的,如果是可能需要减


1,另外是否是16进制的描述,如果是16进制则需转换


成10进制的进行填写,如010A的十进制是266。


数据类型数据格式选择,一个寄存器代表16位长度的数据,两个


寄存器就能代表32位长度格式的数据。需要注意的是


32位长度的数据格式,有可能需要选择对应的高低位,


默认都是从高到低。


位偏移如果用0304号命令码读取一个寄存器的16位数据,并


且需要取这16位数据中的每一个位,则选择数据类型


位,然后偏移由低到高为0-15。


读写属性根据寄存器类型不同而自动设定。


文档大全

到此这篇modbus报文解析(modbus报文解析0f)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 广度优先搜索树(广度优先搜索树怎么画)2025-01-02 20:27:10
  • 2021越狱源(2021年越狱源)2025-01-02 20:27:10
  • 女神异闻录5战斗系统好玩吗(女神异闻录5战斗画面)2025-01-02 20:27:10
  • quilt怎么读(quilt怎么读怎么读)2025-01-02 20:27:10
  • bt601接口(bt656硬件接口)2025-01-02 20:27:10
  • 最终幻想7战斗系统(最终幻想7战斗系统怎么解锁)2025-01-02 20:27:10
  • 圈一圈,填一填(圈一圈填一填三年级上册数学)2025-01-02 20:27:10
  • 打开目录文件夹,打开目录文件夹(文档打开目录)2025-01-02 20:27:10
  • max3082中文资料(max3087esa)2025-01-02 20:27:10
  • 预适应训练仪真实效果(预适应训练仪对颈动脉斑块有用吗)2025-01-02 20:27:10
  • 全屏图片