Modbus报文详解.doc

上传人:一*** 文档编号:2744075 上传时间:2020-05-02 格式:DOC 页数:8 大小:351.29KB
返回 下载 相关 举报
Modbus报文详解.doc_第1页
第1页 / 共8页
Modbus报文详解.doc_第2页
第2页 / 共8页
点击查看更多>>
资源描述

《Modbus报文详解.doc》由会员分享,可在线阅读,更多相关《Modbus报文详解.doc(8页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

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

2、:SymLink发送: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说明书指导设置设备地址、波特率等通讯参数。点表用来配置采集点信息。设备连接?R

4、S485通讯,设备的A端子对应连接SymLink的A端子、设备的B端子对应连接SymLink的B端子,需要注意的是一根线上接多个IED的情况,一个是设备地址要唯一、波特率和其他串口参数要一致,另外接线的时候需要从一台IED的AB端子跳接到下一台IED的AB端子,防止并联分散传输信号。?RS232通讯,设备的发送针对应连接SymLink的RX、设备的接收针对应连接SymLink的TX、设备的接地针对应SymLink的GND。?以太网通讯,设备的网口对应连接到同一网段的SymLink LAN口,如果含多台以太网设备通讯,需要加交换机。设备配置参考实际的设备说明书:1)选择协议,如果设备支持多种协议

5、,需要在配置里面选择为ModbusRTU或者ModbusAscii协议。2)定义通讯接口参数。串口定义传输波特率,数据位,停止位,奇偶检验。以太网通讯定义IP地址,TCP端口号。3)定义设备地址。4)用厂家提供的设备点表和设备面板显示的数据进行简单的对应。5)用厂家提供的测试软件,或者第三方测试软件(modscan、ModbusPoll等)对设备进行通讯测试。通讯配置选中工程下的“采集服务”,点右键后在菜单中选择“新建通道”。在弹出的界面在定义通道名称,点击规约旁边的浏览按钮选择Modbus RTU驱动。在左侧的分类中选择国标下的Modbus RTU,点确定按钮完成。定义端口信息,Modbus

6、 RTU多采用串口通讯,在下方的端口参数中定义串口号,波特率,数据位等通讯参数,定义完成后点击确定按钮完成。通道的配置只是完成了协议选择及通讯的接口参数。还需要在通道下创建连接的设备及设备参数后才算完成与具体设备的通讯配置。选中新建的通道,点击右键,在右键菜单在选择“新建设备”在设备配置面板中定义设备名称,设备地址(Modbus协议主要依靠设备地址来识别一条总线上的多个设备)。点击设备配置界面左下方的+号按钮,可以定义Modbus RTU协议的高级参数。点击确定按钮就完成了通道及设备的通讯配置。需要说明一下规约参数中的包最大长度,这里默认是32,代表组织协议的时候一次最大可读取连续32个寄存器

7、数据,如果点数较多并且通讯条件较好的情况下,我们最大可以调整到128。1.1.6.数据连接完成Modbus设备和通道的通讯配置后,并未采集到设备中具体的数据。如要对设备的数据进行逐个的采集,需要在采集服务中的通道下的设备中创建一个一个的IO点,并配置正确的IO连接参数。在左侧导航中选择采集服务中的通道下的设备后,右侧视图为IO点的列表视图。默认没有任何IO采集点。在空白区域点击右键,在弹出的右键菜单在选择创建IO点。弹出新建采集点对话框:点击连接线右侧的浏览按钮,即可进入到具体的协议配置参数。连接项说明功能码参考厂家协议说明,一般读取模拟量用0304号命令,读取开关量用0102号命令。区分是0

8、4和02是只读区,03和01类型的寄存器支持用06和05的命令码回写操作。数据地址参考厂家点表,我们SymLink的数据地址从0开始,要注意厂家的点表是否是从1开始的,如果是可能需要减1,另外是否是16进制的描述,如果是16进制则需转换成10进制的进行填写,如010A的十进制是266。数据类型数据格式选择,一个寄存器代表16位长度的数据,两个寄存器就能代表32位长度格式的数据。需要注意的是32位长度的数据格式,有可能需要选择对应的高低位,默认都是从高到低。位偏移如果用0304号命令码读取一个寄存器的16位数据,并且需要取这16位数据中的每一个位,则选择数据类型位,然后偏移由低到高为0-15。读写属性根据寄存器类型不同而自动设定。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com