工业通信协议
- 格式:doc
- 大小:40.00 KB
- 文档页数:14
工业自动化中的网络通信协议工业自动化是指利用各种技术手段对工厂或生产线上的各种生产过程进行自动控制和管理的技术体系。
在现代工业生产中,网络通信协议在实现工业自动化过程中起着至关重要的作用。
本文将介绍几种常见的工业自动化中使用的网络通信协议。
一、Modbus协议Modbus是一种经典的串行通信协议,被广泛应用于工业自动化领域。
它采用主从结构,通过串口传输数据,将上位机(主站)与下位机(从站)进行连接。
Modbus协议简单易用,适用于控制器之间的通信,如PLC、仪器设备等,具有广泛的兼容性和可扩展性。
二、Profibus协议Profibus是一种常用的工业现场总线通信协议,用于实现自动化系统中各种设备的通信。
它支持多种传输介质,包括RS485、光纤等,适用于不同的工业环境。
Profibus协议具有高速传输、实时性能好等特点,广泛应用于工厂自动化和过程自动化领域。
三、Ethernet/IP协议Ethernet/IP是一种工业以太网通信协议,基于标准的以太网技术,使得工业设备可以通过以太网进行连接和通信。
它支持TCP/IP协议,能够实现工业设备与企业内部网络的集成,为工业自动化提供了更高的灵活性和通用性。
四、CAN协议CAN(Controller Area Network)是一种广泛应用于汽车电子和工业自动化领域的通信协议。
CAN协议采用差分信号传输,具有抗干扰性强、可靠性高等特点。
它适用于多节点分布式控制系统,可以实现设备之间的快速、可靠的通信。
五、Profinet协议Profinet是一种以太网通信协议,是Profibus的以太网扩展。
Profinet协议利用以太网实现工业自动化设备的通信和集成,支持实时通信和无线通信,适用于复杂的工业自动化系统。
六、DeviceNet协议DeviceNet是一种CIP(Common Industrial Protocol)上的一种现场总线通信协议,常用于工业自动化设备的通信。
工业通信协议工业通信协议是指在工业控制系统中用于设备之间进行数据通信的协议。
它是工业自动化领域中非常重要的一部分,因为它决定了设备之间如何进行数据交换,从而影响了整个工业控制系统的稳定性和可靠性。
工业通信协议的发展经历了多个阶段。
最早期,工业控制系统中的设备间通信主要依靠专有的通信协议,这导致了不同厂家的设备很难进行互联互通。
随着工业自动化技术的发展,现代工业通信协议逐渐向开放、标准化的方向发展,例如Modbus、Profibus、Ethernet等,这些协议的出现大大促进了工业设备之间的互联互通。
工业通信协议的选择对于工业控制系统的稳定性和性能有着重要的影响。
不同的协议具有不同的特点和适用范围,工程师需要根据具体的应用场景和要求来选择合适的通信协议。
例如,对于实时性要求较高的场景,可以选择适用于实时控制的通信协议;对于大规模设备互联的场景,可以选择支持大规模设备连接的通信协议。
除了选择合适的通信协议外,工业通信协议的实现和优化也是至关重要的。
在工业控制系统中,通信协议的稳定性和可靠性对于整个系统的运行至关重要。
工程师需要针对具体的通信协议进行优化和调试,以确保其在工业环境中能够稳定可靠地运行。
随着工业自动化技术的不断发展,工业通信协议也在不断演进和完善。
未来,随着工业互联网的兴起,工业通信协议将面临更多的挑战和机遇。
工程师需要不断学习和研究最新的通信技术,以适应工业自动化领域的发展需求。
总之,工业通信协议作为工业控制系统中至关重要的一部分,对于整个系统的稳定性和可靠性有着重要的影响。
工程师需要选择合适的通信协议,并进行实现和优化,以确保工业控制系统的正常运行。
同时,他们还需要不断学习和研究最新的通信技术,以适应工业自动化领域的发展需求。
只有这样,工业通信协议才能更好地为工业自动化领域的发展做出贡献。
工业通信协议协议名称:工业通信协议一、引言工业通信协议是为了确保工业领域中设备之间的数据交换和通信的顺利进行而制定的标准。
本协议旨在规范工业通信的数据格式、通信方式、安全性和可靠性,以提高工业生产的效率和质量。
二、范围本协议适用于工业领域中设备之间的通信,包括但不限于工业自动化系统、智能制造系统、物联网设备等。
三、术语定义1. 工业通信设备:指用于工业领域中设备之间数据交换和通信的设备,包括传感器、执行器、控制器、通信模块等。
2. 数据格式:指工业通信设备之间传输的数据的组织形式和表示方法。
3. 通信方式:指工业通信设备之间进行数据交换和通信的方式,包括有线通信和无线通信。
4. 安全性:指工业通信设备之间数据交换和通信过程中保护数据安全和防止未授权访问的措施。
5. 可靠性:指工业通信设备之间数据交换和通信的稳定性和可靠性,包括数据传输的完整性和可恢复性。
四、数据格式1. 数据类型:工业通信协议支持的数据类型包括整数、浮点数、字符串、布尔值等。
2. 数据结构:工业通信协议支持的数据结构包括数组、结构体、枚举等。
3. 数据编码:工业通信协议采用统一的编码方式对数据进行编码,如二进制编码、ASCII编码等。
五、通信方式1. 有线通信:工业通信协议支持的有线通信方式包括以太网、串口、CAN总线等。
2. 无线通信:工业通信协议支持的无线通信方式包括Wi-Fi、蓝牙、Zigbee等。
六、安全性1. 身份验证:工业通信协议支持对通信设备进行身份验证,确保通信双方的身份合法。
2. 数据加密:工业通信协议支持对通信数据进行加密,防止数据被窃取或篡改。
3. 访问控制:工业通信协议支持对通信设备之间的访问进行控制,防止未授权访问。
七、可靠性1. 数据校验:工业通信协议支持对通信数据进行校验,确保数据传输的完整性。
2. 数据重传:工业通信协议支持数据重传机制,确保数据传输的可靠性。
3. 错误处理:工业通信协议支持对通信过程中的错误进行处理,包括错误恢复和错误报告。
工业通信协议协议名称:工业通信协议一、引言本协议旨在规范工业通信领域中的数据传输和通信协议,以确保各种工业设备之间的可靠通信和数据交换。
本协议适用于工业自动化、智能制造、物联网等领域。
二、定义1. 工业通信:指在工业环境中,通过各种通信设备和协议进行数据传输和通信的过程。
2. 工业设备:指用于工业生产和控制的各种设备,包括但不限于传感器、执行器、控制器、PLC等。
3. 数据传输:指将数据从一个设备传输到另一个设备的过程,可以是单向或双向传输。
三、通信协议要求1. 可靠性:通信协议应具备高可靠性,能够在工业环境中稳定运行,抵御干扰和噪声。
2. 实时性:通信协议应具备较低的延迟,能够满足工业控制系统对实时性的要求。
3. 扩展性:通信协议应具备良好的扩展性,能够适应不同规模和复杂度的工业设备网络。
4. 安全性:通信协议应具备一定的安全机制,确保数据传输的机密性和完整性。
5. 兼容性:通信协议应具备良好的兼容性,能够与现有的工业设备和通信设备相互配合工作。
四、通信协议规范1. 物理层规范:通信协议应明确规定物理层的连接方式、传输介质和传输速率等要求。
2. 数据链路层规范:通信协议应明确规定数据链路层的帧结构、差错检测和纠错机制等要求。
3. 网络层规范:通信协议应明确规定网络层的地址分配、路由选择和数据分包等要求。
4. 传输层规范:通信协议应明确规定传输层的传输控制、流量控制和拥塞控制等要求。
5. 应用层规范:通信协议应明确规定应用层的数据格式、协议交互和错误处理等要求。
五、协议实施和测试1. 协议实施:根据通信协议规范,制定相应的软件和硬件实施方案,并进行实施。
2. 协议测试:对实施的通信协议进行全面的功能测试和性能测试,确保其符合规范要求。
六、协议维护和更新1. 协议维护:定期对通信协议进行维护和修复,解决已知的问题和漏洞。
2. 协议更新:根据工业通信技术的发展和需求变化,及时更新通信协议的版本,提供更好的功能和性能。
工业通信中的常见协议及其应用在工业领域的通信中,协议是一种约定俗成的规范,用于确保设备之间的正常通信和数据交换。
不同的工业通信协议具有不同的特点和应用场景。
本文将介绍几种常见的工业通信协议及其应用。
一、Modbus协议Modbus是一种供电设备通信协议,广泛应用于工业自动化控制系统中。
它基于主从结构,主设备与从设备通过串行通信或以太网连接进行数据交换。
Modbus协议具有简单易用、可靠性高等特点,适用于各种工业场景。
在工业通信中,Modbus协议常用于监控系统、PLC控制系统和远程终端单元之间的通信。
例如,在一个工业生产线上,通过Modbus协议可以实时监控温度、压力、流量等参数,并能够远程控制设备进行调整。
二、CAN协议CAN(Controller Area Network)协议是一种用于车辆和工业领域通信的协议。
CAN协议采用分布式控制的方式,可以同时连接多个设备进行通信,并且支持长距离的数据传输。
在工业领域,CAN协议通常应用于工业机械设备、机器人和智能传感器等设备之间的通信。
例如,在一个物流仓库中,通过CAN协议可以实现各个机械设备的协同工作,提高物流效率。
三、PROFINET协议PROFINET(Process Field Network)协议是一种用于工厂自动化和过程控制的以太网通信协议。
PROFINET协议支持实时通信、网络诊断和灵活性等特点,被广泛应用于工业自动化领域。
在工业通信中,PROFINET协议常用于各种工控设备之间的通信。
例如,在一个汽车生产线上,通过PROFINET协议可以实现各个工控设备之间的数据交换和控制,提高生产线的效率和稳定性。
四、EtherNet/IP协议EtherNet/IP(Ethernet Industrial Protocol)协议是一种基于以太网的工业通信协议。
它通过以太网实现设备之间的实时数据交换和控制,支持广域网和局域网之间的通信。
在工业通信中,EtherNet/IP协议广泛应用于自动化控制系统和工业网络中。
工业通信协议1. 引言工业通信协议(Industrial Communication Protocol)是指在工业应用中用于设备之间通信的一种通信规范。
工业通信协议的设计旨在满足工业环境下的高可靠性、高实时性和高安全性等需求。
本文将介绍工业通信协议的背景、分类、常见协议以及应用实例。
2. 背景随着工业自动化程度的不断提高,设备之间的通信变得越来越重要。
工业通信协议的出现为设备之间的数据交换提供了标准化的解决方案。
工业通信协议通过定义数据的格式、传输方式、错误检测与纠正等内容,实现了设备之间的可靠和安全的通信。
3. 分类工业通信协议主要分为两大类:现场总线和工业以太网。
现场总线是指在工业现场中,通过一个总线连接多个设备,从而实现数据的交换和控制。
现场总线的特点是传输距离短、带宽较小、可靠性高。
常见的现场总线协议包括Modbus、Profibus和CAN等。
工业以太网则是在工业环境中使用以太网技术进行通信的一种协议。
与传统的以太网相比,工业以太网具有更高的实时性、可靠性和安全性。
常见的工业以太网协议包括Ethernet/IP、Profinet和Modbus TCP等。
4. 常见协议4.1 ModbusModbus是一种串行通信协议,用于连接各种不同制造商的自动化设备。
Modbus协议简单易实现,具有广泛的应用范围。
它支持点对点和多点通信,并且可以通过串口或以太网进行通信。
4.2 ProfibusProfibus是一种现场总线协议,广泛应用于工业自动化领域。
Profibus具有高速传输、高可靠性和灵活性等特点,可以连接和控制多个设备。
4.3 CANCAN是控制器局域网(Controller Area Network)的缩写,是一种用于实时控制和数据通信的现场总线协议。
CAN协议的特点是高可靠性、高抗干扰能力和灵活性。
它广泛应用于汽车、工业自动化等领域。
4.4 Ethernet/IPEthernet/IP是一种基于以太网的工业通信协议。
工业通信协议协议名称:工业通信协议一、引言工业通信协议是为了满足工业自动化领域中设备之间的数据交换和通信需求而制定的协议。
本协议旨在确保工业设备之间的稳定、可靠和高效的通信,以实现工业生产的自动化和智能化。
二、范围本协议适用于工业自动化领域中的设备之间的通信,包括但不限于工业机器人、传感器、PLC(可编程逻辑控制器)等设备。
三、术语和定义3.1 工业通信:指工业设备之间通过特定的通信协议进行数据交换和信息传输的过程。
3.2 设备:指工业自动化领域中的各种设备和组件,包括但不限于工业机器人、传感器、PLC等。
3.3 通信协议:指工业设备之间进行数据交换和通信所遵循的规则和约定。
四、通信协议规范4.1 数据格式4.1.1 通信数据采用二进制格式进行传输。
4.1.2 数据帧采用固定长度,包括起始位、数据位、校验位和停止位。
4.1.3 数据帧中的数据采用大端字节序进行编码。
4.2 通信速率4.2.1 通信速率根据设备的具体要求进行设置,范围为2400bps至1Gbps。
4.2.2 通信速率的设置应考虑设备之间的数据处理能力和通信距离等因素。
4.3 通信协议支持4.3.1 本协议支持多种通信协议,包括但不限于MODBUS、PROFINET、EtherNet/IP等。
4.3.2 设备之间的通信协议应事先确定,并在通信过程中进行协议的解析和处理。
4.4 错误检测和纠正4.4.1 通信数据应采用CRC(循环冗余校验)或其他可靠的错误检测和纠正机制。
4.4.2 接收端应对接收到的数据进行校验,如果发现错误,则应进行相应的纠正或丢弃。
4.5 连接管理4.5.1 设备之间的通信应采用点对点连接方式。
4.5.2 连接的建立和维护应符合相应的通信协议规范。
4.5.3 在通信过程中,应定期检测连接的状态,如发现连接异常,则应进行相应的处理。
4.6 安全性4.6.1 通信数据的传输应采用加密和认证等安全机制,以确保数据的机密性和完整性。
工业通讯协议工业通讯协议是指用于工业场景下的设备之间数据通信的一种协议标准。
工业通讯协议的目的是实现设备之间的数据交换、控制和监视,并保证在工业生产环境中的高可靠性和稳定性。
下面将介绍几种常见的工业通讯协议。
首先是Modbus协议。
Modbus是一种用于串行通信的通信协议,最常见的是Modbus RTU和Modbus ASCII。
它被广泛应用于工业自动化领域,支持从简单的控制器到复杂的监视系统之间的通信。
Modbus具有简单易用、性能稳定以及良好的兼容性等特点。
其次是OPC协议。
OPC(OLE for Process Control)是一种基于Windows平台的开放标准,用于通信和交换工业自动化领域的数据。
OPC协议提供了用于数据读取、写入和控制操作的标准接口,可以实现设备之间的互联互通。
再次是Profibus协议。
Profibus(Process Field Bus)是一种用于现场设备之间通信的工业通讯标准。
Profibus通常用于工业自动化领域,包括现场仪器、电机驱动器、PLC和其他自动化设备。
Profibus以其高速和可靠性而闻名,有助于提高工业生产的效率和安全性。
还有一种常见的工业通讯协议是CAN(Controller Area Network)协议。
CAN协议是一种串行总线通信协议,特别适用于车辆和工业自动化领域。
CAN协议具有高度的可靠性、实时性和抗干扰性,可以实现设备之间的快速和可靠的数据传输。
最后是Ethernet/IP协议。
Ethernet/IP是一种用于工业自动化设备和系统之间的数据通信的开放标准。
它基于以太网技术,支持实时性和非实时性应用,并提供了一致的网络接口,使不同的设备和系统可以互相通信。
总结来说,工业通讯协议是工业自动化领域中设备之间数据交换和控制的重要工具。
不同的协议适用于不同的应用场景,选择适合的协议可以提高工业生产的效率和可靠性。
尽管每种协议都有自己的特点和优势,但是它们都共同致力于实现工业设备之间的高效通讯和信息交换。
工业系统中常用通讯协议在工业系统中,常用的通讯协议是为了实现设备之间的数据交换和通信。
这些协议是工业自动化系统中的重要组成部分,可以确保各个设备之间的协调和协同工作。
下面将介绍几种常用的工业系统通讯协议。
1. Modbus协议Modbus协议是一种串行通信协议,用于连接电子设备和电气设备。
它使用RTU和ASCII两种传输格式,支持从简单到复杂的通信需求。
Modbus协议在控制器和PLC之间非常常见,广泛应用于自动化领域。
2. Profibus协议Profibus(Process Fieldbus)协议是国际标准的工业总线通信协议,应用于自动控制以及过程控制领域。
它支持数据传输率高、可靠性强和实时性要求高的工业应用。
Profibus主要用于传感器、执行器和控制器之间的通信。
3. Ethernet/IP协议Ethernet/IP是一种以太网协议,用于实时工业自动化和控制系统。
它是以太网和IP技术的组合,能够实现设备之间的高速、可靠和实时通信。
Ethernet/IP协议在工业自动化系统中广泛应用,支持多种设备之间的数据交换。
4.CAN协议CAN(Controller Area Network)协议是一种用于工业控制系统的串行通信协议。
它广泛应用于汽车电子领域,可支持多个节点之间的快速通信和高可靠性数据传输。
CAN协议具有抗干扰能力强、适应工业环境的特点,在工业系统中得到了广泛的应用。
5.OPC协议OPC(OLE for Process Control)是一种通信标准,允许不同厂商的工业自动化设备进行数据交换。
它提供了一种统一的接口和规范,使得设备之间的通讯更加灵活和可靠。
OPC协议主要应用于工业自动化系统中的数据采集、实时监控和远程控制。
6. DeviceNet协议DeviceNet是一种用于控制系统的通信协议,是一种基于CAN总线的标准。
它可以连接多个设备,支持实时的设备控制和数据交换。
DeviceNet广泛应用于工业机械和机器人控制系统,是一种实时可靠的通信方式。
工业通信协议协议名称:工业通信协议一、引言本协议旨在确立工业通信领域中各设备之间的通信规范,以保证数据传输的稳定性、可靠性和安全性。
本协议适用于工业控制系统、自动化设备以及相关通信设备之间的数据交互。
二、定义1. 工业通信:指在工业控制系统中,设备之间通过通信网络进行数据传输和交换的过程。
2. 设备:指工业控制系统中的各种硬件设备,包括传感器、执行器、控制器、通信模块等。
三、通信协议规范1. 物理层协议a. 通信介质:根据实际需求选择合适的通信介质,如以太网、串口、无线通信等。
b. 通信速率:根据设备之间的数据传输需求确定通信速率,确保数据传输的实时性。
c. 通信距离:根据设备之间的物理距离确定通信距离,保证信号传输的稳定性。
2. 数据链路层协议a. 帧格式:定义数据帧的结构,包括帧头、帧尾、校验位等,以确保数据的完整性和正确性。
b. 帧同步:通过同步信号或特定的帧控制字符实现帧同步,保证数据帧的正确接收和解析。
c. 错误检测和纠正:采用CRC等机制对数据进行校验,以检测和纠正传输过程中可能出现的错误。
3. 网络层协议a. IP地址分配:为设备分配唯一的IP地址,以实现设备之间的网络通信。
b. 路由选择:根据设备之间的网络拓扑结构和通信需求,确定合适的路由选择算法,保证数据的高效传输。
4. 传输层协议a. TCP协议:提供可靠的数据传输,保证数据的完整性和顺序性。
b. UDP协议:提供无连接的数据传输,适用于实时性要求较高的应用场景。
5. 应用层协议a. Modbus协议:一种常用的工业通信协议,支持设备之间的数据读写和控制命令交互。
b. OPC协议:一种用于工业自动化系统的通信协议,实现设备之间的数据共享和交互。
四、安全性要求1. 认证与授权:设备之间的通信应进行身份认证和授权,确保只有合法设备才能进行通信。
2. 数据加密:对敏感数据进行加密处理,防止数据在传输过程中被窃取或篡改。
3. 防火墙和入侵检测系统:建立防火墙和入侵检测系统,保护工业通信网络的安全。
Modbus通信编程摘要工业控制已从单机控制走向集中监控、集散控制,如今已进入网络时代,工业控制器连网也为网络管理提供了方便。
Modbus就是工业控制器的网络协议中的一种。
关键词Modbus协议,串行通信,LRC校验,CRC校验,RS-232C1. Modbus 协议简介Modbus 协议是应用于电子控制器上的一种通用语言。
通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以通信。
它已经成为一通用工业标准。
有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控。
此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。
它描述了一控制器请求访问其它设备的过程,如果回应来自其它设备的请求,以及怎样侦测错误并记录。
它制定了消息域格局和内容的公共格式。
当在一Modbus网络上通信时,此协议决定了每个控制器须要知道它们的设备地址,识别按地址发来的消息,决定要产生何种行动。
如果需要回应,控制器将生成反馈信息并用Modbus协议发出。
在其它网络上,包含了Modbus协议的消息转换为在此网络上使用的帧或包结构。
这种转换也扩展了根据具体的网络解决节地址、路由路径及错误检测的方法。
1.1 在Modbus网络上转输标准的Modbus口是使用一RS-232C兼容串行接口,它定义了连接口的针脚、电缆、信号位、传输波特率、奇偶校验。
控制器能直接或经由Modem组网。
控制器通信使用主—从技术,即仅一设备(主设备)能初始化传输(查询)。
其它设备(从设备)根据主设备查询提供的数据作出相应反应。
典型的主设备:主机和可编程仪表。
典型的从设备:可编程控制器。
主设备可单独和从设备通信,也能以广播方式和所有从设备通信。
如果单独通信,从设备返回一消息作为回应,如果是以广播方式查询的,则不作任何回应。
Modbus协议建立了主设备查询的格式:设备(或广播)地址、功能代码、所有要发送的数据、一错误检测域。
从设备回应消息也由Modbus协议构成,包括确认要行动的域、任何要返回的数据、和一错误检测域。
如果在消息接收过程中发生一错误,或从设备不能执行其命令,从设备将建立一错误消息并把它作为回应发送出去。
1.2 在其它类型网络上转输在其它网络上,控制器使用对等技术通信,故任何控制都能初始和其它控制器的通信。
这样在单独的通信过程中,控制器既可作为主设备也可作为从设备。
提供的多个内部通道可允许同时发生的传输进程。
在消息位,Modbus协议仍提供了主—从原则,尽管网络通信方法是“对等”。
如果一控制器发送一消息,它只是作为主设备,并期望从从设备得到回应。
同样,当控制器接收到一消息,它将建立一从设备回应格式并返回给发送的控制器。
1.3 查询—回应周期.查询查询消息中的功能代码告之被选中的从设备要执行何种功能。
数据段包含了从设备要执行功能的任何附加信息。
例如功能代码03是要求从设备读保持寄存器并返回它们的内容。
数据段必须包含要告之从设备的信息:从何寄存器开始读及要读的寄存器数量。
错误检测域为从设备提供了一种验证消息内容是否正确的方法。
.回应如果从设备产生一正常的回应,在回应消息中的功能代码是在查询消息中的功能代码的回应。
数据段包括了从设备收集的数据:象寄存器值或状态。
如果有错误发生,功能代码将被修改以用于指出回应消息是错误的,同时数据段包含了描述此错误信息的代码。
错误检测域允许主设备确认消息内容是否可用。
2. 两种传输方式控制器能设置为两种传输模式(ASCII或RTU)中的任何一种在标准的Modbus网络通信。
用户选择想要的模式,包括串口通信参数(波特率、校验方式等),在配置每个控制器的时候,在一个Modbus 网络上的所有设备都必须选择相同的传输模式和串口参数。
ASCII模式:地址功能代码数据数量数据1...数据nLRC高字节LRC低字节回车换行RTU模式地址功能代码数据数量数据1...数据nCRC高字节CRC低字节所选的ASCII或RTU方式仅适用于标准的Modbus网络,它定义了在这些网络上连续传输的消息段的每一位,以及决定怎样将信息打包成消息域和如何解码。
在其它网络上(象MAP和Modbus Plus)Modbus消息被转成与串行传输无关的帧。
2.1 ASCII模式当控制器设为在Modbus网络上以ASCII(美国标准信息交换代码)模式通信,在消息中的每个8Bit 字节都作为两个ASCII字符发送。
这种方式的主要优点是字符发送的时间间隔可达到1秒而不产生错误。
代码系统. 十六进制,ASCII字符0...9,A...F. 消息中的每个ASCII字符都是一个十六进制字符组成每个字节的位. 1个起始位. 7个数据位,最小的有效位先发送. 1个奇偶校验位,无校验则无. 1个停止位(有校验时),2个Bit(无校验时)错误检测域. LRC(纵向冗长检测)2.2 RTU模式当控制器设为在Modbus网络上以RTU(远程终端单元)模式通信,在消息中的每个8Bit字节包含两个4Bit的十六进制字符。
这种方式的主要优点是:在同样的波特率下,可比ASCII方式传送更多的数据。
代码系统. 8位二进制,十六进制数0...9,A...F. 消息中的每个8位域都是一个两个十六进制字符组成每个字节的位. 1个起始位. 8个数据位,最小的有效位先发送. 1个奇偶校验位,无校验则无. 1个停止位(有校验时),2个Bit(无校验时)错误检测域. CRC(循环冗长检测)3. Modbus消息帧两种传输模式中(ASCII或RTU),传输设备以将Modbus消息转为有起点和终点的帧,这就允许接收的设备在消息起始处开始工作,读地址分配信息,判断哪一个设备被选中(广播方式则传给所有设备),判知何时信息已完成。
部分的消息也能侦测到并且错误能设置为返回结果。
3.1 ASCII帧使用ASCII模式,消息以冒号(:)字符(ASCII码3AH)开始,以回车换行符结束(ASCII码0DH,0AH)。
其它域可以使用的传输字符是十六进制的0...9,A...F。
网络上的设备不断侦测“:”字符,当有一个冒号接收到时,每个设备都解码下个域(地址域)来判断是否发给自己的。
消息中字符间发送的时间间隔最长不能超过1秒,否则接收的设备将认为传输错误。
一个典型消息帧如下所示:起始位设备地址功能代码数据LRC校验结束符1个字符2个字符2个字符n个字符2个字符2个字符图2 ASCII消息帧3.2 RTU帧使用RTU模式,消息发送至少要以3.5个字符时间的停顿间隔开始。
在网络波特率下多样的字符时间,这是最容易实现的(如下图的T1-T2-T3-T4所示)。
传输的第一个域是设备地址。
可以使用的传输字符是十六进制的0...9,A...F。
网络设备不断侦测网络总线,包括停顿间隔时间内。
当第一个域(地址域)接收到,每个设备都进行解码以判断是否发往自己的。
在最后一个传输字符之后,一个至少3.5个字符时间的停顿标定了消息的结束。
一个新的消息可在此停顿后开始。
整个消息帧必须作为一连续的流转输。
如果在帧完成之前有超过1.5个字符时间的停顿时间,接收设备将刷新不完整的消息并假定下一字节是一个新消息的地址域。
同样地,如果一个新消息在小于3.5个字符时间内接着前个消息开始,接收的设备将认为它是前一消息的延续。
这将导致一个错误,因为在最后的CRC域的值不可能是正确的。
一典型的消息帧如下所示:起始位设备地址功能代码数据CRC校验结束符T1-T2-T3-T48Bit8Bitn个8Bit16BitT1-T2-T3-T4图3 RTU消息帧3.3 地址域消息帧的地址域包含两个字符(ASCII)或8Bit(RTU)。
可能的从设备地址是0...247 (十进制)。
单个设备的地址范围是1...247。
主设备通过将要联络的从设备的地址放入消息中的地址域来选通从设备。
当从设备发送回应消息时,它把自己的地址放入回应的地址域中,以便主设备知道是哪一个设备作出回应。
地址0是用作广播地址,以使所有的从设备都能认识。
当Modbus协议用于更高水准的网络,广播可能不允许或以其它方式代替。
3.4 如何处理功能域消息帧中的功能代码域包含了两个字符(ASCII)或8Bits(RTU)。
可能的代码范围是十进制的1...255。
当然,有些代码是适用于所有控制器,有此是应用于某种控制器,还有些保留以备后用。
当消息从主设备发往从设备时,功能代码域将告之从设备需要执行哪些行为。
例如去读取输入的开关状态,读一组寄存器的数据内容,读从设备的诊断状态,允许调入、记录、校验在从设备中的程序等。
当从设备回应时,它使用功能代码域来指示是正常回应(无误)还是有某种错误发生(称作异议回应)。
对正常回应,从设备仅回应相应的功能代码。
对异议回应,从设备返回一等同于正常代码的代码,但最重要的位置为逻辑1。
例如:一从主设备发往从设备的消息要求读一组保持寄存器,将产生如下功能代码:0 0 0 0 0 0 1 1 (十六进制03H)对正常回应,从设备仅回应同样的功能代码。
对异议回应,它返回:1 0 0 0 0 0 1 1 (十六进制83H)除功能代码因异议错误作了修改外,从设备将一独特的代码放到回应消息的数据域中,这能告诉主设备发生了什么错误。
主设备应用程序得到异议的回应后,典型的处理过程是重发消息,或者诊断发给从设备的消息并报告给操作员。
3.5 数据域数据域是由两个十六进制数集合构成的,范围00...FF。
根据网络传输模式,这可以是由一对ASCII 字符组成或由一RTU字符组成。
从主设备发给从设备消息的数据域包含附加的信息:从设备必须用于进行执行由功能代码所定义的所为。
这包括了象不连续的寄存器地址,要处理项的数目,域中实际数据字节数。
例如,如果主设备需要从设备读取一组保持寄存器(功能代码03),数据域指定了起始寄存器以及要读的寄存器数量。
如果主设备写一组从设备的寄存器(功能代码10十六进制),数据域则指明了要写的起始寄存器以及要写的寄存器数量,数据域的数据字节数,要写入寄存器的数据。
如果没有错误发生,从从设备返回的数据域包含请求的数据。
如果有错误发生,此域包含一异议代码,主设备应用程序可以用来判断采取下一步行动。
在某种消息中数据域可以是不存在的(0长度)。
例如,主设备要求从设备回应通信事件记录(功能代码0B十六进制),从设备不需任何附加的信息。
3.6 错误检测域标准的Modbus网络有两种错误检测方法。
错误检测域的内容视所选的检测方法而定。
ASCII当选用ASCII模式作字符帧,错误检测域包含两个ASCII字符。
这是使用LRC(纵向冗长检测)方法对消息内容计算得出的,不包括开始的冒号符及回车换行符。
LRC字符附加在回车换行符前面。