海量工业协议的“速记”办法,建议收藏!
相信一提到工业物联网(IIoT)通信协议,大家都能随意的信手拈来几个,比如RS-232、RS-485.又比如DeviceNet、Modbus RTU、Modbus TCP、Ethernet/IP、PROFINET,再或者TCP、UDP、OPC UA、MQTT,但是它们之间有什么区别和联系呢?剪不断理还乱!下面带大家拨开迷雾见云天,此文建议大家收藏!
新手要快速掌握众多协议的区别与联系,首先得了解一个东西,它就是“OSI模型”。
OSI(开放式系统互联)模型是一种通信协议的标准化参考模型,由国际标准化组织(ISO)在1984年发布,旨在为计算机和通信设备提供通用的参考框架,以实现不同厂商之间的互通性和互操作性。该模型将计算机网络通信分为七个层次,每个层次提供不同的功能和服务,从下层到上层逐渐抽象和封装数据,并且每层之间通过接口定义了标准化的协议和服务,使得不同厂商的设备可以相互通信。
OSI模型在工业物联网中也有着重要的作用,因为在IIoT的应用中,设备之间需要进行数据交换和通信,而通信协议的选择和实现都要遵循OSI参考模型的原则。例如,现场总线通信协议如Profibus、Foundation Fieldbus等都是基于OSI参考模型设计的,它们在不同的OSI层次上执行不同的功能,并且具有一定的互操作性。
此外,在工业物联网应用中,也会涉及到以太网、TCP/IP、HTTP、MQTT等标准化协议,这些协议也是基于OSI参考模型设计的,它们的不同层次和功能也与OSI参考模型紧密相关。因此,OSI模型是工业物联网中非常重要的标准化参考模型,它为工业物联网设备的通信和交互提供了指导和支持。
七个层次分别是:
1.物理层(Physical Layer):负责传输原始比特流,定义了电器、物理设备和传输媒介的特性,如电压、电流、编码和物理接口等。
2.数据链路层(Data Link Layer):负责数据的帧同步、流控制和差错校验等,它的主要任务是将原始比特流转换为具有逻辑意义的数据帧。
3.网络层(Network Layer):负责在源主机和目标主机之间选择合适的路径,并通过路由器进行数据包转发和寻址,实现不同网络之间的互联互通。
4.传输层(Transport Layer):提供端到端的可靠数据传输,包括数据的分段、传输控制、差错恢复和流量控制等。
5.会话层(Session Layer):负责建立、管理和维护应用程序之间的会话和连接,包括会话的建立、维护和终止等。
6.表示层(Presentation Layer):负责数据的格式转换、加密解密、压缩解压缩和数据描述等,使得不同系统之间可以正确解释数据。
7.应用层(Application Layer):为用户提供各种网络应用服务,如电子邮件、文件传输、远程登录和网页浏览等。
说了那么多,下面才是我们的重点!敲黑板了!在工业自动化领域中,通信协议通常也可以被划分为多个层次,其中一些层次与 OSI 参考模型的层次相对应,如下所示:
1. 物理层(Physical Layer):负责传输数据信号,常用的工业物理层协议包括 RS-232、RS-485、Profibus PA、Foundation Fieldbus 等。
2. 数据链路层(Data Link Layer):负责将数据分帧、差错检测和纠正、流量控制等,常用的工业数据链路层协议包括 Profibus DP、DeviceNet、Modbus RTU 等。
3. 网络层(Network Layer):负责将数据包从源地址传输到目标地址,通过路由器进行数据包转发和寻址等,常用的工业网络层协议包括 Modbus TCP、Ethernet/IP、PROFINET 等。
4. 传输层(Transport Layer):提供可靠的端到端的数据传输,常用的工业传输层协议包括 TCP、UDP、ISO Transport Service on top of TCP (ISO over TCP) 等。
5. 会话层(Session Layer):负责建立、管理和维护应用程序之间的会话和连接,常用的工业会话层协议包括 OPC UA、MQTT 等。
6. 表示层(Presentation Layer):负责数据格式转换、加密解密、压缩解压缩等,常用的工业表示层协议包括 OPC UA、DDS 等。
7. 应用层(Application Layer):为用户提供各种网络应用服务,常用的工业应用层协议包括 OPC UA、Modbus TCP、PROFINET IO、Ethernet/IP 等。
需要注意的是,工业协议的分类方式和层次划分并非完全统一,不同厂商和组织也可能使用不同的划分方式和层次。以上仅是一种常见的分类方式。