Modbus报文详解_第1页
Modbus报文详解_第2页
Modbus报文详解_第3页
Modbus报文详解_第4页
Modbus报文详解_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、modbus协议概述modbus作为在工业设备通讯上使用最多,应用最广的国际标准协议,在应用层的协议定义上我们对其进行简单的介绍:类型描述设备地址对应通讯设备设定的1-255的任意一个数字地址号。功能码对应读取模拟量一般采用0304号功能码,对于读取开关量一般采用0102号功能码。起始地址数据在通讯设备中的寄存器定义,一般由厂家提供点表。数据格式数据在寄存器中的格式,较多的为16位无符号,因为一个寄存器就是一个16位的长度。crc校验经过crc校验算法后,添加crc计算的值在协议传输帧的最后面,主要是防止串口误码导致数据错误。举一个最简单的例子,我们在symlink中查看报文的时候可以看到:s

2、ymlink发送:01 03 00 01 00 02 95 cb01代表设备地址103代表读取保持寄存器的值00 01代表采集点对应的寄存器号00 02代表读取2个连续寄存器的值95 cb为01 03 00 01 00 02计算所得的crc值symlink接收:01 03 04 00 00 00 00 fa 3301代表设备地址103代表读取保持寄存器的值04代表设备返回的数据个数,字节为单位00 00 00 00为数据返回的连续2个寄存器的值fa 33为01 03 04 00 00 00 00计算所得的crc值symlink在判断01、03、04这些反馈信息都合法,并且crc校验无误的情况下

3、,就可以对00 00 00 00 所在的数据值进行规定数据格式的解析。目前支持modbus协议的设备越来越多,包括plc、智能仪表、通讯模块等等,如果厂家设备支持的通讯协议为标准格式的modbus协议,那么在选择厂家的时候就直接选择国际标准的modbus。准备工作序号名称数量备注1厂家设备任意支持标准的modbus协议2连接电缆实际长度串口通讯为0.50.75规格的屏蔽双绞线,长度建议不要超过100米。以太网通讯为带隔离保护的标准网线,长度建议不要超过50米。3symlink工业智能机1任意型号4设备说明书和点表1说明书指导设置设备地址、波特率等通讯参数。点表用来配置采集点信息。设备

4、连接?  rs485通讯,设备的a端子对应连接symlink的a端子、设备的b端子对应连接symlink的b端子,需要注意的是一根线上接多个ied的情况,一个是设备地址要唯一、波特率和其他串口参数要一致,另外接线的时候需要从一台ied的ab端子跳接到下一台ied的ab端子,防止并联分散传输信号。?  rs232通讯,设备的发送针对应连接symlink的rx、设备的接收针对应连接symlink的tx、设备的接地针对应symlink的gnd。?  以太网通讯,设备的网口对应连接到同一网段的symlink lan口,如果含多台以太网设备通讯

5、,需要加交换机。设备配置参考实际的设备说明书:1)  选择协议,如果设备支持多种协议,需要在配置里面选择为modbusrtu或者modbusascii协议。2)  定义通讯接口参数。串口定义传输波特率,数据位,停止位,奇偶检验。以太网通讯定义ip地址,tcp端口号。3)  定义设备地址。4)  用厂家提供的设备点表和设备面板显示的数据进行简单的对应。5)  用厂家提供的测试软件,或者第三方测试软件(modscan、modbuspoll等)对设备进行通讯测试。通讯配置选中工程下的“采集服务”,点右

6、键后在菜单中选择“新建通道”。在弹出的界面在定义通道名称,点击规约旁边的浏览按钮选择modbus rtu驱动。在左侧的分类中选择国标下的modbus rtu,点确定按钮完成。定义端口信息,modbus rtu多采用串口通讯,在下方的端口参数中定义串口号,波特率,数据位等通讯参数,定义完成后点击确定按钮完成。通道的配置只是完成了协议选择及通讯的接口参数。还需要在通道下创建连接的设备及设备参数后才算完成与具体设备的通讯配置。选中新建的通道,点击右键,在右键菜单在选择“新建设备”在设备配置面板中定义设备名称,设备地址(modbus协议主要依靠设备地址来识别一条总线上的多个设备)。点击设备配置界面左下

7、方的+号按钮,可以定义modbus rtu协议的高级参数。点击确定按钮就完成了通道及设备的通讯配置。需要说明一下规约参数中的包最大长度,这里默认是32,代表组织协议的时候一次最大可读取连续32个寄存器数据,如果点数较多并且通讯条件较好的情况下,我们最大可以调整到128。1.1.6. 数据连接完成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位长度格式的数据。需要

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论