[TOC]
前言
在目前软件事业部有很大一部分是传统 IT 从业人员,对于工业控制协议比较陌生,因此再做工业大数据采集时,对于各类工业协议有时容易搞不清楚,我简单把在做工业大数据采集时常见的几种工业协议整理了一下,以便搞清这些工业协议的概念和区别。
OSI(Open System Interconnect)参考模型
常见的工业协议按照 OSI(Open System Interconnect)参考模型分到了不同层次
这只是为了容易理解和区分各类协议,实际上,随着各种协议的发展,很多自身都跨越了很多层次,能够实现多层协议的功能,我们做的划分只是它最重要的功能所处的协议层。
物理层
RS232
在串行通讯时,要求通讯双方都采用一个标准接口,使不同的设备可以方便地连接起来进行通讯。
RS-232- C 接口是目前最常用的 一种串行通讯接口。
RS-232- C 是美国电子工业协会 EIA(Electronic IndustryAssociation)制定的一种串行物理接口标准。
RS 是英文“推荐标准”的缩写,232 为标识号,C 表示修改次数(“RS-232-C”中的“-C”只不过表示 RS-232 的版本,所以与“RS-232”简称是一样的)。
RS-232- C 总线标准设有 25 条信号线,包括一个主通道和一个辅助通道。
工业控制的 RS-232 口一般只使用 RXD、TXD、GND 三条线。通常 RS-232 接口以 9 个引脚 (DB-9) 或是 25 个引脚 (DB-25) 的型态出现,一般个人计算机上会有两组 RS-232 接口,分别称为 COM1 和 COM2。
RS485
随着企业信息化法发着的需要,企业在仪表选型时其中的一个必要条件就是要具有联网通信接口。
最初是数据模拟信号输出简单过程量,后来仪表接口是 RS232 接口,这种接口可以实现点对点的通信方式,但这种方式不能实现联网功能。随后出现的 RS485 解决了这个问题。
485 通讯接口一个对通讯接口的硬件描述,它只需要两根通讯线,即可以在两个或两个以上的设备之间进行数据传输。
这种数据传输的连接,是半双工的通讯方式。
在某一个时刻,一个设备只能进行发送数据或接收数据。而 RS232 是全双工,最少 3 条通信线(RX,TX,GND),因为使用绝对电压表示逻辑,由于干扰,导线电阻等原因,通讯距离不远,低速时几十米也是可以的。
在 RS232 或 RS485 设备联成的设备网中,如果设备数量超过 2 台,就必须使用 RS485 做通讯介质,RS485 网的设备间要想相互通信息只有通过“主(Master)”设备中转才能实现,这个主设备通常是 PC,而这种设备网中只允许存在一个主设备,其余全部是 ” 从(Slave)” 设备。
而现场总线技术是以 ISO/OSI 模型为基础的,具有完整的软件支持系统,能够解决总线控制、冲突检测、链路维护等问题。
数据链路层
CAN
控制器局域网 CAN(Controller Area Network)属于现场总线的范畴,是一种有效支持分布式控制系统的串行通信网络。
是由德国博世公司在 20 世纪 80 年代专门 为汽车行业开发的一种串行通信总线。
由于其高性能、高可靠性以及独特的设计而越来越受到人们的重视,被广泛应用于诸多领域。
CAN 协议分为二层:物理层和数据链路层。
CAN 的信号传输采用短帧结构,传输时间短,具有自动关闭功能,具有较强的抗干扰能力。
CAN 支持多主工作方式,并采用了非破坏性总线仲裁技术,通过设置优先级来避免冲突,通讯距离最远可达 10KM/5Kbps/s,通讯速率最高可达 40M /1Mbp/s,网络节点数实际可达 110 个。
由于 CAN 总线本身的特点, 其应用范围目前已不再局限于汽车行业, 而向自动控制、航空航天、航海、过程工业、机械工业、纺织机械、农用机械、机器人、数控机床、医疗器械及传感器等领域发展;
ProfiBus
ProfiBus 是德国标准(DIN19245)和欧洲标准(EN50170)的现场总线标准。
由 PROFIBUS–DP、PROFIBUS-FMS、PROFIBUS-PA 系列组成。
DP 用于分散外设间高速数据传输,适用于加工自动化领域。
FMS 适用于纺织、楼宇自动化、可编程控制器、低压开关等。
PA 用于过程自动化的总线类型,服从 IEC1158-2 标准。
PROFIBUS 是一种用于工厂自动化车间级监控和现场设备层数据通信与控制的现场总线技术。
可实现现场设备层到车间级监控的分散式数字控制和现场通信网络,从而为实现工厂综合自动化和现场设备智能化提供了可行的解决方案。
该标准广泛适用于制造业自动化、流程工业自动化和楼宇、交通电力等其他领域自动化。
应用层
ModBus
Modbus 是由 Modicon(现为施耐德电气公司的一个品牌)在 1979 年发明的,是全球第一个真正用于工业现场的总线协议。
ModBus 网络是一个工业通信系统,由带智能终端的可编程序控制器和计算机通过公用线路或局部专用线路连接而成。
其系统结构既包括硬件、亦包括软件。
它可应用于各种数据采集和过程监控。
ModBus 网络只有一个主机,所有通信都由他发出。网络可支持 247 个之多的远程从属控制器,但实际所支持的从机数要由所用通信设备决定。采用这个系统,各 PC 可以和中心主机交换信息而不影响各 PC 执行本身的控制任务。
Modbus 协议是应用于电子控制器上的一种通用语言。== 通过此协议,控制器相互之间、控制器经由网络(例如以太网)和其它设备之间可以通信 ==。它已经成为一通用工业标准。
有了它,不同厂商生产的控制设备可以连成工业网络,进行集中监控。此协议定义了一个控制器能认识使用的消息结构,而不管它们是经过何种网络进行通信的。它描述了一控制器请求访问其它设备的过程,如何回应来自其它设备的请求,以及怎样侦测错误并记录。它制定了消息域格局和内容的公共格式。
==Modbus 是通讯协议,而 RS232、RS485 只能代表通讯的物理介质层和链路层。==
Modbus 协议支持传统的 RS-232、RS-422、RS-485 和以太网设备。
许多工业设备,包括 PLC,DCS,智能仪表等都在使用 Modbus 协议作为他们之间的通讯标准。
软件接口
OPC
OPC 全称是 Object Linking and Embedding(OLE)for Process Control,它的出现为基于 Windows 的应用程序和现场过程控制应用建立了桥梁。
在过去,为了存取现场设备的数据信息,每一个应用软件开发商都需要编写专用的接口函数。由于现场设备的种类繁多,且产品的不断升级,往往给用户和软件开发商带来了巨大的工作负担。
通常这样也不能满足工作的实际需要,系统集成商和开发商急切需要一种具有高效性、可靠性、开放性、可互操作性的即插即用的设备驱动程序。
在这种情况下,OPC 标准应运而生。OPC 标准以微软公司的 OLE 技术为基础,它的制定是通过提供一套标准的 OLE/COM 接口完成的,在 OPC 技术中使用的是 OLE 2 技术,OLE 标准允许多台微机之间交换文档、图形等对象。
总结
大致上可以这样理解,
RS232、RS485 是硬件接口技术,
CAN、ProBus 等是现场总线技术,
ModBus 是工业控制协议,
OPC 是网络数据接口