通讯协议008——OPC是通讯协议吗

OPC是当前工业互联常用的通讯技术,我们经常会说OPC通讯协议,那OPC是通讯协议吗?严格地说,OPC不是通讯协议,而是一种通讯规范,是一种通讯接口标准。更多通讯资源请登录网信智汇(wangxinzhihui)。

首先,来看什么是通讯协议?通讯协议就是两个(或多个)设备之间通信必须要遵循的一种协议。通过通信信道互连起来的多个数据通信系统,要实现协同信息交换,它们之间必须具有共同的约定,约定信息在哪条通道间交流,什么时间交流,交流什么信息,信息怎样交流。这个约定就是通信协议。

不同的通信协议虽然具有不同的特点和功能,但它们都包含了三个基本要素:

  • 语法:定义了数据传输的格式和结构,以确保发送方和接收方都能正确地解释数据内容。
  • 语义:定义了数据的意义和目的,以确保通信双方在数据传输过程中能够理解对方的意图。
  • 定时:定义了数据的传输速率和时间,以确保通信的有效性和流畅性。

通信中的数据往往以数据包的形式进行传送的,我们把这样的一个数据包称作为一帧数据。比较可靠的通信协议往往包含有以下几个组成部分:帧头、地址信息、数据类型、数据长度、数据块、校验码、帧尾。这些组成部分构成了语法,其中数据代表的意义就是语义。

比如:以下是Modbus协议读取线圈的报文。

其中,报文格式就是语法,其语义为:读取服务器1号从站输出线圈,起始地址为0x13=19,对应地址为00020,线圈数量为0x1B=27,即读取1号从站输出线圈,地址从00020-00046,共27个线圈的状态值。

那么OPC又是什么?

OPC是英文“OLE for Process Control”的缩写,是工业自动化领域中的一种工业通信标准。它通过定义一些在不同平台上具有通用性的规范,实现了各种设备、不同制造厂商及不同代表的设备可互联互通。

经典OPC是第一代OPC技术, 英文全称为:OLE for Process Control。OLE技术是基于微软公司的COM/DCOM技术,因此经典OPC本质上是基于COM/DCOM的过程控制技术。经典OPC提供了一整套过程控制中数据交换的软件标准和接口,包括:

1)OPC DA(OPC Data Access):OPC数据访问接口,这是最常用到的接口,接口定义了数据交换的规范,包括:过程值、更新时间、数据品质等信息。目前OPC DA经历1.0版本(1997年)、2.0版本(2002年)、3.0版本(2003年)。

2) OPC AE (OPC Alarms & Events):OPC报警与事件接口,接口定义了报警、事件消息、变量的状态及如何管理。

3) OPC HDA(OPC Historical Data Access): OPC历史数据访问接口,接口定义了访问及分析历史数据的方法。

4) OPC XML-DA:XML数据访问,脱离Windows COM/DCOM技术,提供基于XML、SOAP、HTTP的数据交换。

5) OPC DX(Data eXchange):提供在OPC服务器之间交换数据的功能,该标准的主要目的是为来自不同制造商的设备和程序之间的数据交换创建网关。

可以看出,OPC是一整套过程控制中数据交换的软件标准和接口规范,定义了服务器和客户端双方通讯接口的要求。以OPC DA为例。

通讯协议008——OPC是通讯协议吗_第1张图片

OPC Server必须提供OPCServer对象接口,OPCGroup对象接口,OPCItem对象接口,OPCClient通过调用这些接口与OPC服务器实现数据交换,而不用去关心通讯报文的语法、语义。

所以,严格地说,OPC不是通讯协议,是通讯规范。用形象的比喻来说,OPC更像描述插头、插座的规范,而通讯协议则更像是描述邮件如何传输,信封如何封装。

更多通讯资源请登录网信智汇(wangxinzhihui)。

你可能感兴趣的:(通讯协议,网络)