modbus通讯协议详解RTU模式中的位序列
时间:2016-03-03 10:54 来源:未知 作者:admin 点击:次
一、关于Modbus组织
● 我们的使命
Modbus组织是一个由独立用户和自动化设备供应商组成的组织,旨在推动Modbus通讯协议族的采用和推进分布式自动化系统架构跨跃多个市场领域。Modbus组织还将提供基础设施来获取和分享协议、应用和认证的信息,为用户简化实施,降低成本。
● 组织
Modbus组织是一个会员制的行业协会,注册为“Modbus组织,公司”。符合马萨诸塞州、美国的联邦法律,并由美国国税局认可的一个非营利性组织。捐赠组织不能作为慈善捐款获得减免税收,但可以抵扣营业费。Modbus组织的年度国税局表格990可在我们的联系页面请求获得,请提供申请单位或个人的全名、地址和电子邮件地址。
● 我们的会员标志和会员标志图形
我们的会员标志象征了一个圆桌会议,这意味着我们邀请所有的会员参加我们组织的技术和教育活动。
Modbus组织邀请所有的供应商(无论大与小),系统集成商,最终用户,开源开发者,教育工作者和其他有兴趣的各方,参与讨论Modbus协议的未来。
● 我们的活动
Modbus组织从事各种有关Modbus协议维护和发展的活动。一些活动包括:
o参与全球标准的活动;
oModbus协议及其变化的领先进化;
o鼓励和协助Modbus跨物理层和传输介质的使用;
o维护和开展一致性测试项目,确保Modbus设备更好的互操作性;
o给用户和供应商提供信息,帮助他们在自己的产品中成功地使用Modbus;
o从事教育和宣传工作,包括贸易展览、简报、网站和其他宣传活动。
● 我们的邀请
我们的邀请是请你,作为Modbus用户或供应商,参与到我们的活动中,分享Modbus组织成员应有的收益,并帮助我们把Modbus带向未来。我们致力于把Modbus保持为全球领先、适用于工业自动化的协议,并邀请你在我们的圆桌会议上有你的一席之地。
有关的Modbus组织成员的详细信息,请参阅我们的会员传单和会员申请表。请参考我们网页中的联系方式并且联系我们 -- 我们会很高兴收到你的来信!
二、 Modbus协议
Modbus是一个应用层消息协议,定位在OSI模型的第7层。它提供了在不同类型总线或网络连接的设备之间客户机/服务器的通信。
自1979年以来,Modbus是事实上的工业串行标准,Modbus继续使数以百万计的自动化设备进行通信。今天,Modbus简约大方的结构支持不断的增长。互联网社区可以在TCP协议保留的系统端口502上访问Modbus。
Modbus是一个请求/应答协议,由功能代码指定提供的服务。 Modbus功能码是Modbus请求/应答协议数据单元(PDU)的元素。该协议规范文档描述了Modbus交易框架内使用的功能代码。
● 两种串行传输模式
定义了两种串行传输模式:RTU模式和ASCII模式。
定义了链路上串行传送报文字段的位内容。它确定了信息如何打包为报文字段和如何解码。
在Modbus串行链路上,所有设备的传输模式(及串行口参数)必须相同。
尽管在某些特定应用中要求ASCII模式,但只有每个设备都有相同的模式才能进行Modbus设备之间的互操作:所有设备必须实现RTU模式。ASCII传输模式是一个选项。
用户应该将设备设置成所期望的模式:RTU或ASCII模式。默认设置必须为RTU模式。
oRTU传输模式
当设备在Modbus串行链路上使用RTU(远程终端单元)模式通信时,报文中每个8位字节含有两个4位十六进制字符。这种模式的主要优点是有较高的字符密度,在相同的波特率下,比ASCII模式有更高的数据吞吐量。必须以连续的字符流传输每个报文。
RTU模式中每个字节(11位)的格式为:
编码系统:8位二进制
每个字节的位:1个起始位
8个数据位,首先发送最低有效位
1个奇偶校验位
1个停止位
偶校验是要求的。也可以使用其它模式(奇校验、无校验)。为了保证与其它产品的最大兼容性,建议还支持无校验模式。默认校验模式必须是偶校验。
使用无校验时要求2个停止位。
如何串行地传送字符:
发送每个字符或字节的顺序是从左到右(见图1):
最低有效位(LSB) . . . 最高有效位(MSB)
图1 RTU模式中的位序列
通过配置,设备可以接受奇校验、偶校验或无校验。如果无校验,那么传送一个附加的停止位来填充字符帧使其成为完整的11位异步字符(见图2,图3):
图2 RTU模式中的位序列(无校验的特殊情况)
帧校验字段:循环冗余校验(CRC)
帧描述:
图3 RTU报文帧
最大Modbus RTU的帧为256个字节。
oASCII 传输模式
当使用ASCII(美国信息交换标准代码)模式设置设备在Modbus串行链路上通信时,用两个ASCII字符发送报文中的一个8位字节。当通信链路或者设备不能满足RTU模式的定时管理要求时,使用该模式。
由于每个字节需要两个字符发送,所以这种模式比RTU模式效率低。
实例:将字节0X5B编码为两个字符:0x35和0x42(用ASCII表示的0x35 =“5”,0x42 = “B”)。
ASCII模式中每个字节(10位)的格式为:
编码系统: 十六进制,ASCII字符0-9、A-F
报文中每个ASCII字符含有1个十六进制字符
每个字节的位:1个起始位
8个数据位,首先发送最低有效位
1个奇偶校验位
1个停止位
偶校验是要求的。也可以使用其它模式(奇校验、无校验)。为了保证与其它产品的最大兼容性,建议还支持无校验模式。默认校验模式必须是偶校验。
使用无校验时要求2个停止位。
如何串行地传送字符:
发送每个字符或字节的顺序是从左到右(见图4):
最低有效位(LSB) . . . 最高有效位(MSB)
图4 ASCII模式中的位序列
通过配置,设备可以接受奇校验、偶校验或无校验。如果无校验,那么传送一个附加的停止位来填充字符帧(见图5):
图5 ASCII模式中的位序列(无校验的特殊情况)
帧校验字段:纵向冗余校验(LRC)。
● Modbus公共功能码定义,见下表。
● MODBUS TCP/IP
该Modbus通信实施指南版本1.0b由施耐德自动化提供。这个文件的目的是为软件开发人员实现Modbus通信服务提供参考信息。这个文件给出了一个Modbus通讯服务实现的准确、全面的描述。它的目的是为了使用Modbus通讯服务实现设备之间的互操作性。所有的Modbus功能代码的编码见上表。
该Modbus通讯实施指南包含三个部分:
o基于TCP / IP的MODBUS概述;
oMODBUS客户端、服务器和网关实现的功能描述;
o建议对象模型的Modbus实现示例;
oModbus TCP协议的对象消息规范;
o用Modbus TCP的一个对象消息协议,用作半导体设备与材料协会(SEMI)传感器总线网络通信标准(NCS)的一个组件。
● 基于TCP/IP的Modbus应用数据单元
图6描述了Modbus TCP/IP网络上进行的Modbus请求或响应的封装。
图6 TCP/IP上的Modbus的请求/响应
在TCP/IP上使用一种专用报文头来识别Modbus应用数据单元。将这种报文头称为MBAP报文头(Modbus应用协议报文头)。
与串行链路上使用的Modbus RTU应用数据单元相比,这种报文头有一些区别:
·用MBAP报文头中的单字节“单元标识符”取代Modbus串行链路上通常使用的Modbus从站地址字段。这个“单元标识符”用于经由如网桥、路由器和网关等设备的通信,这些设备使用单个IP地址支持多个独立Modbus终端单元。
·用接收方可以验证报文结束的方式设计所有的Modbus请求和响应。对于Modbus PDU有固定长度的功能码来说,仅功能码就足够了。对于在请求或响应中传输一个可变数据量的功能码来说,数据字段包括字节数。
·当通过TCP传输Modbus协议时,即使将报文分成多个信息包来传输,需在MBAP报文头上传输附加长度信息,以便接收者能识别报文边界。显式和隐式长度规则的存在以及CRC-32差错校验码的使用(在以太网上),使未检出的请求或响应报文的差错降至极低。
三、应用案例
1.基于Modbus的SCADA
一家主要的美国酿酒公司需要把多个生产工艺连接在一起,并能够在温度超过60℃时操作不会失效。多台控制器和生产机器需要进行无缝连接,且要工作得很好。经过广泛的研究和测试后,该公司选择了控制公司(Comtrol)的 DeviceMaster-UP。
DeviceMaster UP的Modbus TCP版本为啤酒厂提供了一种灵活易用和高度可靠的解决方案。 混合了Modbus TCP、Modbus RTU和Modbus ASCII,控制器和生产机器需要彼此进行通信。DeviceMaster UP无缝连接了所有这些系统,实现了一起工作。
在生产过程中,每个瓶、罐和桶按照严格的规范进行灌装、标记和编码,有一个序列号和制造日期。然后把他们用码垛机和包装机进行封装。
每个生产机器的通信统计和诊断由DeviceMaster UP提供的嵌入式网页进行监视,确保可靠的工厂正常运行时间和效率。控制公司的DeviceMaster UP能够提供优越的接口、灵活性,并实现啤酒厂生产厂需要的功能。
啤酒厂使用DeviceMaster-UP产品实现了生产协调。本应用案例提供了一种具有高性价比解决方案,为客户解决了实际工作中遇到的具体问题。
2. 帝国大厦项目使用了Modbus RTU和Modbus TCP
江森控制公司与帝国大厦公司签订了合同:在世界最著名的办公大楼执行5亿美元的升级计划。这一综合性节能改造项目的完成,可以作为世界各地商务办公楼改造的一个范例。该项目包含了主要基础设施的改善,窗户翻新,提高冷却设备和Metasys楼宇管理系统的效率,该系统包括为每个租户的一个在线仪表板,帮助他们跟踪和管理他们的能源使用情况。帝国大厦所有的租户都有分户计量,这种反馈/报告工具告知了租户自己能源的使用情况。
作为该项目的一部分,江森控制来到现场服务技术公司(FieldServer Technologies)寻求帮助,寻找一种链接设备来连接他们的Metasys楼宇管理系统,作为他们的租户能源管理项目第一阶段的一部分。许多FieldServer 3510系列网关用于接口,连接BFM136多路客户端功率计,使用Modbus RTU连接Metasys前端。FieldServer是一个值得信赖的、经过验证的接口,这款产品与江森控制的合作超过了十年。
3510是一个多端口设备,使江森控制的许多Modbus RTU RS-485串行线接到一个网关,再通过Modbus TCP连接到Metasys系统。因此,在这种情况下,他们只需要14 台FS-B3510网关就连接200多台功率计。这为整个建筑的众多租户提供了具有高性价比的解决方案。
帝国大厦改造完成的一年后,据报道,每年能源的使用减少了38%,如果按照能效进行排名,它可以位列所有美国办公楼的前25%。
3. Modbus网络用于医院水处理
为了监测医院水处理罐的水位,6台SmartScan50连成一条RS485 Modbus网络。
● 挑战
客户需要测量水位,并确定在处理过程中或之后什么时候对每个罐进行填充或清空。
● 存在轻的泡沫;
● 要求进行网络通信。
● 解决方案
所以选择SmartScan50用于项目,原因如下:
● SmartScan50是专为恶劣环境而设计,并能轻松克服轻泡沫问题。
● SmartScan50支持最多为247台的Modbus通信网络。
6台SmartScan50通过RS485 Modbus连接到监控软件。操作员可以使用触摸屏面板查看水位的条形图,启动或停止填充或清空过程,并能看到告警。每台SmartScan50能激活两个或三个继电器报警,这取决于罐指示的高或低水位。
● 小结
SmartScan50是罐区液位测量的完美解决方案,基于它的Modbus功能,它可成功地运行在恶劣的工业条件下。
4.填埋场的废水管理
在今天行业和政府不断增加监管标准的环境下,监视和精确测量废水水位的任务,对任何设施规范运作都是至关重要的。
有效测量和收集数据的能力是一个问题,不仅在资源管理,还要合规和问责。
这使运营商面临着一种选择 -- 他们必须找到一种方法满足监管标准,或者被迫关闭,直到他们能够合规。
问题
1.监视分布在441平方英里填充地中多个井里的液体含量。
2.液位测量必须在地面以下125英尺出获得。
3.操作时,站点必须满足所有许可要求,并保持它的预算范围内。
4.土方机械干扰陆基线路。线路功率不能选择。
5.监视系统必须具有内置认可的数据记录能力。
6. 在远程的数据必须本地可用,本地的工作人员可派遣泵车到现场保持液体在要求的水平之内。
设备成本
地表以下125英尺到填埋地山顶不同方案的比较:
● 远程供电无线调制解调器方案
太阳能电池板 220美元×2
电池 200美元×2
充电控制器  nbsp; 180美元×2
I / O模块 350美元×2
IP67外壳 100美元×2
装配 200美元×2
模拟液位传感器1200美元
井位无线调制解调器400美元
山上无线调制解调器400美元
安装和部署 1600美元
总价 =6100美元
● 邦纳无线解决方案
DX80网关 719美元
DX80节点 719美元
DX81 FlexPower?电池电源145美元
QT50U-75390 626美元
数据无线电 495美元×2
安装和部署 800美元
总价 =3999美元
邦纳在传感器的开发、电池供电无线系统的经验和知识创建了一种简单的交钥匙解决方案。
在仔细考虑了几个系统之后,填埋场运营商确定邦纳的无线系统是能够满足所有标准的唯一解决方案,并能与站点已有的其他设备无缝共存。
在集成商的帮助下,他们创建了一个系统,可以从地下地获取数据,并可使最终用户在办公桌上访问他们。
解决方案
1. 在每口井顶一个电池供电的节点为无线电和超声波模拟液位传感器供电。
2.每个节点配备了由邦纳开发的专用低功耗4-20mA模拟液位传感器。
3.一个10-30V DC电源为网关控制系统供电。
4.数据无线电和Modbus主控制器模块提高了数据的便携性。
5.红狮的G3 hmi配有以太网接口可供多个用户昼夜访问。
6.全向天线扩展了网关节点的通信,可跨越小山覆盖整个填埋场。
优势
1.没必要制造盘柜。两个螺丝即可固定邦纳的无线设备。
2.高超的电源管理能力和内部电池消除了长距离布线。
3.大大降低了安装成本。
4.所有邦纳的无线设备是防水的,密封性符合IP67等级。
5.在必要时,可进行简单的拆卸和/或重新连接。
6.邦纳的无线设备使用标准的Modbus通讯协议,可实现简单的互操作性。
7.邦纳的无线设备在一个盒子里结合了无线电和所有I / O,最小化部件和维修成本。
8.邦纳的无线设备都有内置的诊断属性,发出报警之前就能完成关机,最大限度地减少停机时间。
9.邦纳的SureCross无线系统具有完全可扩展性,能适应运营商填充和创造新井。
|