内容简介
网络技术的迅速发展引发了自动控制领域的深刻技术变革,工业以太网技术作为控制网络技术的代表,是现代自动控制技术与信息网络技术相结合的产物,是下一代自动化设备的标志性技术,是改造传统工业的有力工具,也是信息化带动工业化的重点方向。目前网络控制技术正从传统的控制网络技术——现场总线向现代控制网络技术——工业以太网技术的方向发展【1】。
1.绪论
1.1 工业控制网络的特点【1】
工业控制网络直接面向生产过程和控制,传输测量和控制信息,并对生产过程进行监视和控制。较之信息网络有如下区别:
1. 传输信息的特征:工业控制网络,短帧信息、长度小、交换频繁、周期性信息多,非周期性信息少;信息网络:信息长度大、交换不频繁、非周期性信息多,周期性信息少
2. 信息流向的方向性和顺序性:工业控制网络,方向性明显,有一定的顺序性;信息网络,方向性、顺序性不明显
3. 响应时间:过程控制网0.01~0.5s,制造自动化网0.5~1.0s;信息网络2.2~6.0s
4. 通信方式:工业控制网络,广播或组播;信息网络,点对点
5. 本安防爆性能:工业控制网络,要求本安防爆;信息网络,不要求
6. 对环境的要求:工业控制网络,良好的适应性;信息网络,适应性要求不高
7. 兼容性:工业控制网络,解决协议一致性和互操作性问题;信息网络,解决协议一致性
1. 系统的开放性与分散性
在功能上集中管理,分散控制;在结构上横向分散,纵向分级。
开放的控制网络协议
2. 系统响应的实时性
工业控制网络是与现场测量控制设备相连接的一类特殊通信网络,控制网络中数据传输的及时性与系统响应的实时性是控制系统的基本要求。
所谓实时性是在网络通信过程中能在线实时采集过程的参数,实时对系统信息进行加工处理,并迅速反馈给系统完成过程控制,满足过程控制对时间限制的要求。同时要求网络通信任务的行为在时间上可以预测确定。实时性表现在对外部和内部事件能及时的响应,并做出相应的处理,不丢失信息,不延误操作。
工业控制网络处理的事件分两类:定时事件,如数据采集、运算控制,系统设置时钟定时处理;随机事件,如事故、报警,系统设置中断,根据中断级别处理。
3. 网络产品要具有互操作性
对于同一类型协议的不同制造商产品可以混合组态,构建成一个开放系统,使其具有互操作性。即:不同厂家的设备能够实现控制功能上的相互连接与操作。
4. 要求极高的可靠性
通常包括三方面内容:
(1)可使用性好,网络自身不易发生故障。提高设备质量,提高网络传输质量。
(2)容错能力强。增加冗余单元。
(3)可维护性高。一是采取安全性措施,二是自诊断和定位能力。
5. 需要良好的恶劣环境适应能力
工业控制网络强调恶劣环境下数据传输的完整性,可靠性。
6. 必须具备严格的网络安全性
信息本身的保密性,完整性,鉴别性以及信息来源和去向的可靠性
网络层最重要的协议是IP,它将多个网络联成一个互连网,可以把高层的数据以多个数据报的形式通过互连网分发出去。
1、IP协议主要具有以下几部分功能:
(1) 寻址
(2) 路由选择
路由选择是以单个IP数据包为基础的,概括而言是确定某个IP数据包到达目的主机需经过哪些路由器。路由选择可以由源主机决定,也可以由IP数据包所途经的路由器决定。
在IP协议中,路由选择依靠路由表进行。在IP网上的主机和路由器中均保存了一张路由表,路由表指明下一个路由器(或目的主机)的IP地址。路由表由目的主机地址和去往目的主机的路径两部分组成。其中,去往目的主机的路径通常是下一个路由器的地址,也可是目的主机的IP地址。
(3) 分段与组装
IP数据包在实际传送过程中所经过的物理网络帧的最大长度可能不同,当长IP数据包需通过短帧子网时,需对IP数据包进行分段与组装。
IP协议实现分段与组装的方法是给每个IP数据包分配一个惟一的标志符,且报头部分还有与分段与组装相关的分段标记和位移。IP数据包在分段时,每一段需包含原有的标志符。为了提高效率、减轻路由器的负担,重新组装工作由目的主机来完成。
2、IPv4和IPv6
目前所普遍采用的IP协议又被称为IPv4,即版本4。更高版本的IPv6已经开始在小范围的网络环境内开始试用,将在今后的几年内逐步取代IPv4。IPv6对整个地址分配系统进行了改进,支持128位(32字节)的地址长度,在性能和安全性上有所增强。
我们已经知道IPv4只能支持32位(8字节)的地址长度,因此所能分配的地址数目也是有限的,大致相当于4,294,967,296,即2的32次方。当然,在IP协议最早开始使用的时候,这个数字还是相当可观的,但是随着近几年全球范围内计算机网络的爆炸性增长,可以使用的IPv4地址空间已经越来越有限。虽然目前可以暂时采用类似操作系统虚拟内存的虚拟地址技术,但是还是不能缓解日益增长的压力。因此,为了从根本上解决IP地址空间不足的问题,提供更加广阔的网络发展空间,人们对IPv4进行改进,推出功能更加完善和可靠的IPv6。
3、ARP和RARP
在一些象以太网这样的网络结构中,可以使用Internet协议栈中的两个子协议ARP(地址解析协议)和RARP(逆向地址解析协议)动态的获得网络主机的IP地址。ARP协议可以通过发送网络广播信息的方式,确定与某个网络层IP地址相对应的物理层地址(即MAC地址)。RARP是ARP的反向协议,同样通过网络广播的方式决定与某个硬件地址相对应的网络层IP地址。RARP协议对于无盘工作站尤为重要,因为无盘工作站系统启动时不知道本机的网络层地址,但是可以通过RARP协议找到与本机硬件层地址相对应的IP地址。
TCP提供的是一种可靠的数据传输服务。当传送受差错干扰的数据,或基础网络故障,或网络负荷太重而使网际基本传输系统(无连接报文递交系统)不能正常工作时,就需要通过其它协议来保证通信的可靠。TCP就是这样的协议,它对应于OSI模型的传输层,它在IP协议的基础上,提供端到端的面向连接的可靠传输。
TCP采用“带重传的肯定确认”技术来实现传输的可靠性。简单的“带重传的肯定确认”是指与发送方通信的接收者,每接收一次数据,就送回一个确认报文,发送者对每个发出去的报文都留一份记录,等到收到确认之后再发出下一报文分组。发送者发出一个报文分组时,启动一个计时器,若计时器计数完毕,确认还未到达,则发送者重新送该报文分组。
简单的确认重传严重浪费带宽,TCP还采用一种称之为“滑动窗口”的流量控制机制来提高网络的吞吐量,窗口的范围决定了发送方发送的但未被接收方确认的数据报的数量。每当接收方正确收到一则报文时,窗口便向前滑动,这种机制使网络中未被确认的数据报数量增加,提高了网络的吞吐量。
TCP通信建立在面向连接的基础上,实现了一种“虚电路”的概念。双方通信之前,先建立一条连接,然后双方就可以在其上发送数据流。这种数据交换方式能提高效率,但事先建立连接和事后拆除连接需要开销。TCP连接的建立采用三次握手的过程,整个过程由发送方请求连接、接收方再发送一则关于确认的确认三个过程组成。
用户数据报协议UDP是对IP协议组的扩充,它增加了一种机制,发送方使用这种机制可以区分一台计算机上的多个接收者。每个UDP报文除了包含某用户进程发送数据外,还有报文目的端口的编号和报文源端口的编号,从而使UDP的这种扩充,使得在两个用户进程之间的递送数据报成为可能。
UDP是依靠IP协议来传送报文的,因而它的服务和IP一样是不可靠的。这种服务不用确认、不对报文排序、也不进行流量控制,UDP报文有可能会出现丢失、重复、失序等现象。
UDP 协议不提供端- 端的确认和重传功能,不保证信息包一定能到达目的地,因此称为不可靠协议。应用开发人员选择UDP 时,应用层协议软件几乎是直接与IP 通信。
UDP 有下面几个特性:
① UDP 是一个无连接协议,传输数据之前,源端和终端不建立联接,当它想传送时就简单地获取来自应用程序的数据,并尽可能快地把它扔到网络上。在发送端,UDP 传送数据的速度仅仅受应用程序生成数据的速度、计算机的能力和传输带宽的限制;在接收端,UDP 把每个消息段放在队列中。应用程序每次从队列中读一个消息段。
② 由于传输数据不建立联接,因此也就不需要维护联接状态,包括收发状态等,因此1 台服务器可同时向多个客户机传输相同的消息。
③ UDP 信息包的标题很短, 只有8 个字节, 与TCP 信息包的20 个字节相比,额外开销很小。
④ 吞吐量不受拥挤控制算法的调节,只受应用软件生成数据的速率。传输带宽、源端和终端主机性能的限制。
TCP与UDP的比较
传输层的作用是提供应用程序间(端到端) 的通信服务, 它提供两个协议: 用户数据报协议UDP ( user datagram protocol) ,其负责提供高效率的服务,用于传送少量的报文,几乎不提供可靠性措施,使用UDP 的应用程序须自己完成可靠性操作; 传输控制协议TCP(transmission control protocol) ,其负责提供高可靠的数据传送服务,主要用于传送大量报文,并为保证可靠性做了大量工作。下表列出它们之间的主要区别。
表2 TCP 与UDP 之比较
内容 | TCP | UDP |
连接建立过程 | 需要 | 不需要 |
传输方式 | 分组传输 | 总是避免分组 |
报文分组顺序 | 报文总是以发送的顺序到达主机,并得到接收者的确认,以确保投递成功 | 报文以它们到达的顺序到达主机 |
传输可靠性 | 采用超时重发,三次握手,滑动窗口等保证可靠传输 | 几乎不提供可靠性,须由应用层来完成可靠性操作 |
TCP 与UDP 的用途
虽然UDP 几乎不提供可靠性措施,但其实现机制简单,假如通信子网提供足够的可靠性,使用UDP 将获得可观的效率。比如远程过程调用(RPC) ,生产过程数据交换等,这种场合一次传输发送分组的数量不多,为这种有限几次的交互而建立一个连接开销太大,让每个分组携带IP 地址并进行寻址也不会太影响效率,即便传输出错,导致几次重传,其效率也比面向联接方式为高,所以RPC 建立在UDP 之上。应用层依赖于UDP 的还有简单网络管理协议SNMP、单纯文件传输协议TFTP、引导协议BOOTP 等。
面向联接的TCP 不要求每一分组都含目的IP 地址,只要求包含一个很短的联接号,所以非常适合于每个分组仅发送很少字符的交互式终端应用。另外,TCP 也适合于进行大数据量的文件传输,因为每次大文件传输可能要传送许多分组,建立联接后就不必为每个分组进行单调的寻址,传输的效率显然比每个分组都进行寻址高出许多。应用层依赖于TCP 的协议包括大量交互型的虚拟终端协议TELNET、远程登录和远程shell 执行以及文件传输型的电子邮件协议SMTP、文件传输协议FTP 等。
简单网络管理协议(Simple Network Management Protocol)是一种应用层协议,是TCP/IP协议族的一部分,它使网络设备间能方便地交换管理信息。SNMP能够让网络管理员管理网络的性能,发现和解决网络问题及进行网络的扩充。
现在有两个版本的SNMP v1和SNMP v2,这两个版本都有一些共同特性,但SNMP v2提供了加强的功能,比如:额外的协议操作命令。另外一个版本SNMP v3的标准化也在进行当中,这里主要是关于SNMP v1和SNMP v2的介绍。
SNMP基本的部件
一个SNMP网络包含三个重要的部分:被管理的设备(Managed device),代理(Agent)和网络管理系统(Network-management systems , NMSs),被管理的设备是一个存在于被管理的网络中的节点,在它上运行着代理,被管理的设备会收集和存储管理信息,通过SNMP使得这些信息可以被NMSs所使用。被管理的设备有时被称作网络元素(Network Elements),可以是路由器,接入服务器,交换机,网桥,集线器,电脑主机,打印机等。
代理是驻留在被管理设备上的网络管理软件模块,它知道本地计算机的管理信息并将这些信息翻译成兼容SNMP协议的形式。
我们可以通过在NMSs上运行一些应用程序来监视和控制被管理的设备,NMSs会提供大量关于进程和内存资源的信息,而这些信息是管理好一个网络所必须的,在一个被管理的网中,可以有一个或多个NMSs。
SNMP基本命令:
可以使用read, write, trap, traversal 这四个命令监视和控制被管理的设备.
1) NMS用read命令去监视被管理的设备,这是通过NMS检查被管理设备上的一些变量所实现的。
2) NMS用write命令去控制被管理的设备,NMS可以改变存在于被管理设备上的一些关键变量的值。
3) 被管理的设备用trap命令非同步地向NMS报告事件,当一定类型的事件发生,被管理的设备就向NMS发trap命令。
4) traversal命令是NMS所使用的用来决定被管理的设备支持哪些变量,以及顺序收集关于变量表的信息,例如路由表。
SNMP管理信息库(MIB)
管理信息库是由代理者维护的一个信息数据库,信息库里的内容可供管理者查询或设置其中变量的值。MIB被分成几个不同的组,有system,interface,at 等,MRTG维护一个信息库,并利用snmp命令查询相关信息,Linux下标准snmp命令snmpget 可以获得系统中的有关snmp变量:
( MIB就是代理维护的一个变量库,可供管理者查询和设置 )
snmpget cuirf public system.sysDescr.0 获得关于系统的描述
snmpwalk cuirf public system 遍历主机cuirf系统组中的所有变量
snmpwalk是一SNMP应用程序,它利用snmp getNext 命令查询信息树中的变量值
利用snmpset 命令设置sysContact变量的值
snmpset localhost public system.sysContact.0 s cuirf@legend.com
管理信息库(MIB)是一个具有分层特性的信息的集合,我们可以通过SNMP去存取它。MIB的成员是一些被管理的对象(Managed Object), 以对象标示符(Object Identifiers)来区分它们。
被管理的对象(有时叫:MIB对象,MIB或对象)只是被管理设备的众多特性之一。被管理的对象由一个或多个对象实例(Object Instances)组成, 本质上,这些对象实例就是变量。
在MIB的层次结构中,一个对象标示符唯一标识了被管理对象。MIB的层次结构可以被描述成无根名的树,树的级别被不同的组织所划分。
SNMP管理:
SNMP是分布式的管理协议,一个系统可以只当作NMS或代理者,也可以同时完成这两者的功能。如果一个系统既作为NMS,又作为代理者的话,这种情况下可能需要另外一台NMS用它来查询被管理的设备,并提供信息的汇总等
SNMP安全
SNMP缺乏任何的授权能力,因此存在着许多安全性的威胁。包括 欺骗,修改信息,信息队列和时钟的修改及信息泄漏。欺骗包括一个未被授权的实体假扮已被授权的实体企图进行管理操作;修改信息包括,一个未被授权的实体企图修改那些由被授权的实体所产生的信息,从而导致未授权的配置操作;信息队列和时钟的修改发生在一个未被授权的实体记录者延迟,拷贝授权者产生的信息,后来在重做这些步骤的时候。当一个未授权实体提取存储在被管理对象中的一些值或通过监视管理者和代理者之间的信息交换得到一些重要事件的时候,这时就会发生信息泄漏。因为SNMP不进行任何授权,所以许多厂商在他们的产品中不实现Set 操作,而仅仅把SNMP作为监视设备。
4.3 工业以太网简介
以太网是IEEE802. 3 所支持的局域网标准。按照国际标准化组织开放系统互连参考模型( ISO/OSI) 的7层结构,以太网标准只定义了数据链路层和物理层,作为一个完整的通信系统。它需要高层协议的支持。APARNET在制定了TCP/ IP 高层通信协议,并把以太网作为其数据链路和物理层的协议之后, 以太网便和TCP/ IP 紧密地捆绑在一起了。以后,由于国际互连网采用了以太网和TCP/ IP 协议,人们甚至把如超文本连接HTTP 等TCP/ IP 协议组放在一起,俗称为以太网技术;TCP/ IP 的简单实用已为广大用户所接受。目前不仅在办公自动化领域内,而且在各个企业的管理网络、监控层网络也都广泛使用以太网技术,并开始向现场设备层网络延伸【5】。
工业以太网技术是普通以太网技术在工业控制网络延伸的产物。工业以太网协会(Industrial Ethernet association,IEA)、工业自动化开放网络联盟(Industrial Automation Network Alliance,IAONA)
现在人们俗称的以太网技术以及工业以太网技术,不仅包含了物理层与数据链路层的以太网规范,而且包含TCP/IP协议组,甚至把互联网上的应用协议与以太网这个名词捆绑在一起。因此,工业以太网技术实际上是上述一系列技术的统称。
工业以太网与OSI参考模型的对照关系如图4-3所示。
图4-3 工业以太网与OSI参考模型的分层对照
从图4-3可以看到,工业以太网的物理层与数据链路层采用IEEE802.3规范,网络层与传输层采用TCP/IP协议组,应用层的一部分可以沿用互联网应用协议。工业以太网标准化的工作主要集中在OSI模型的应用层,需要在应用层添加与自动控制相关的应用协议。但是,目前还没有取得共识的解决方案。
工业以太网技术必须解决的一系列问题:
(1)通信实时性问题
以太网采用的CSMA/CD的介质访问控制方式,本质上是非实时的。平等竞争的介质访问控制方式不能满足工业自动化领域对通信实时性要求。因此,以太网一直被认为不适合在底层工业网络中使用。
(2)对环境的适应性与可靠性问题
以太网是按办公环境设计的,用于工业控制环境,其鲁棒性、抗干扰能力等为人们所关心。强度、温度、湿度、振动、干扰、辐射等环境参数;采用DIN导轨式安装;RJ45用带锁紧机构的连接件代替。
(3)总线供电
在控制网络中,现场控制设备的位置分散性使得他们对总线有提供电源的要求。现有的许多控制网络技术都可利用网线对现场设备供电。一般在工业应用环境下,要求采用直流10~36V低压供电。
(4)本质安全
工业以太网如果要用在危险工业场所,必须考虑本安防爆问题。
图4-4表示了以太网的通信帧结构与封装过程。
图4-4 以太网数据帧的封装
工业以太网中,TCP/IP发送非实时数据(大小和频率经常发生变化),如组态和诊断信息,UDP/IP发送实时数据(数据包短,负荷低),如实时I/O数据。
工业数据包在以太网上的封装如图4-4所示,首先将一个工业数据放置在TCP数据包的数据段;然后将这个数据包发送到以太网上传到目的地——以太网段上与控制网络相连的链接设备(网关)中。链接设备收到数据包后,打开TCP/IP封装,把数据重新放置到控制网络的网段上,由控制网络中的相关设备解读原控制网络的协议信息。在这种封装支持下,异构控制网段之间可以通过以太网进行通信,但仅限于数据包的交换。因此,在应用层协议未统一之前,工业以太网如果只停留在利用TCP/IP传递数据包的水平上,就还不是一个完整的控制网络技术。
应该指出的是,将工业数据封装在以太网数据帧中进行传输的做法,存在着协议效率低的缺陷。由于工业数据包的字节数一般较少,往往会出现以太网和TCP/IP的首部协议信息大于用户数据量的情况。协议效率低,通信开销大,因此封装方案更适于应用在对大容量数据包的传输中。
实时以太网是考虑到现场总线的实时性与以太网通信技术相结合,建立的适合于工业自动化并有实时能力的以太网总线。
实时的含义是指对一个给定的应用,保证在一个确定的时间内控制系统能对信号做出响应,而以太网由于采用带冲突的载波侦听多路存取的介质访问控制机制,而具有通信不确定性的特点。将高速以太网技术应用到实时工业控制网络中,用以提高网络传输速度,其中的关键问题在于提高以太网的实时性与可靠性。
目前将实时性要求划分为三个范围:
信息集成和较低要求的过程自动化应用场合,实时响应时间要求是100ms或更长
绝大多数工厂自动化应用场合,实时响应时间要求是5~~10ms
高性能的同步控制作用,特别是在100节点的伺服运动控制应用场合,实时响应时间要求是低于1ms。
其他实时性技术指标,如交付时间,吞吐量,时间同步以及冗余恢复时间等。
习惯上,将用于工业控制系统的以太网称为工业以太网。
国际电工委员会(IEC)标准委员会定义工业以太网是用于工业自动化环境,符合IEEE802.3标准,按照IEEE802.1D——“媒体访问控制(MAC)网桥”规范和IEEE802.1Q—— “局域网虚拟网桥”规范,对其没有进行任何实时扩展而实现的以太网。
工业以太网主要是通过采用减轻以太网负荷,提高网络速度,交换式以太网和全双工通信,流量控制及虚拟局域网等技术提高网络的实时响应速度,而在技术上与商业以太网兼容的控制网络。
对于响应时间小于5ms的应用,通用意义上的工业以太网已不能胜任,为了满足高实时性能应用的需求,各大公司和标准化组织纷纷提出各种提升工业以太网实时性的技术解决方案。这些方案建立在IEEE802.3标准基础上,通过对其和相关标准的实时扩展提高实时性,并且做到与标准以太网的无缝连接,这就是实时以太网(Real Time Ethernet,RTE)。实际上,实时以太网也是工业以太网的一种。
4.4 IEC61784-2标准
1、IEC61158标准
IEC61158是国际电工委员会IEC(International Electrotechnical Commission) 的现场总线标准。目前,IEC61158现场总线标准已经发展了一系列的标准,最新版本为IEC6
此次修订的IEC61158现场总线(第四版)与第三版相比,在内容和格式方面有两个重大改变:
(1)对现场总线类型进行了增减
删除SwiftNet(Type 7)总线。由于IEC/SC65C联系SwiftNet总线组织对其技术进行维护,因此会议决定将其从新版本中删除。增加新的总线类型。考虑到市场需要和技术发展趋势,会议决定将今年5月份发布的实时以太网公共可用规范PAS也作为IEC61158现场总线(第四版)中的正式内容。其中,EPA被列入为第十四类型(Type 14)。
(2)每种总线的内容编写相对独立和完整
为方便开发商和最终用户使用新的现场总线标准,会议决定将每种类型总线的数据链路层服务定义、数据链路层协议规范、应用层服务定义、应用层协议规范等四个独立的部分予以编写。其中,IEC 61158-314/414/514/614分别为EPA的数据链路层服务定义、数据链路层协议规范、应用层服务定义、应用层协议规范。
2、IEC61784-2标准
IEC61784是“与工业控制系统中使用的现场总线有关的用于连续和离散制造的行规集”,即在IEC61158基础上制定的实时以太网应用行规国际标准。它描述IEC61158中规定的“服务”集的子集,该子集用于特定的现场总线系统的通信或基于以太网系统的通信。用这种方法定义的特定的通信行规(CP)被组合在“通信行规簇(CPF Communication Profile Family)中并对应于他们在各自通信系统中的使用情况。”
IEC61784-2定义了系列实时以太网的性能指标以及一致性测试参考指标。包括:传输时间,指应用进程所测量的实时应用层协议数据单元从源端传送到目的端的时间;终端节点数;网络拓扑结构;交换机数目;实时以太网吞吐量;非实时以太网带宽;时间同步精度;非时间性能的同步精度;冗余恢复时间。
2004年1月IEC/SC
协议簇 | 以太网总线技术名称 | 生产厂商 |
CPF2 | Ehthernet/IP | 美国Rockwell |
CPF3 | ProfiNet | 西门子Siemens |
CPF4 | P-Net | 丹麦 |
CPF6 | Interbus | 德国菲尼克斯电气公司 |
CPF10 | VNet/IP | 日本横河 |
CPF11 | TCNet | 日本东芝 |
CPF12 | EtherCAT | 德国倍福Beckhoff |
CPF13 | Ethernet Powerlink | 欧洲开放网络联合会 |
CPF14 | EPA | 中国 |
CPF15 | Modbus-RTPS | 施耐德 |
CPF16 | Sercos-III | 欧洲开放网络联合会 |
根据实时以太网实时扩展的不同技术方案,可将实时以太网通信协议模型分为4类,如下图所示。
图4-5 实时以太网按实时扩展方案分类
图4-5中:
①为一般工业以太网的通信协议模型,通过常规努力提高实时性;
②是采用在TCP/IP之上进行实时数据交换方案,包括MODBUS/TCP、Ethernet/IP等实时以太网协议;
③是采用经优化处理和提供旁路实时通道的通信协议模型,包括ProfinetV2、IDA等;
④是采用集中调度提高实时性的解决方案,包括EPA、ProfinetV3、Powerlink等;
⑤是采用类似Interbus现场总线“集总帧”通信方式和在物理层使用总线拓扑结构提升以太网实时性能,包括EthernetCAT等。
后面几章对主要的几种实时以太网方案作介绍。
5.EtherNet/IP标准【2】【15】
EtherNet/IP是ODVA发起的基于以太网传输的协议标准,全称为“以太网工业协议”。负责支持和推广EtherNet/IP在工业自动化领域应用的相关组织有:控制网国际有限公司ControlNet International(CI)、工业自动化开放网络联合会Industrial Automation Open Networking Alliance(IAONA)、工业以太网协会Industrial Ethernet Association(IEA)、开放设备网供应商协会Open DeviceNet Vender Association (ODVA)。这个协议旨在应用层建立一个开放的网络协议,以构建开放式的工业控制网络。
EtherNet/IP于2001年问世,它是专门针对工业自动化应用的网络。“EtherNet”表示采用以太网技术,也就是IEEE802.3标准,完全没有进行修改;“IP”表示工业协议,以区别其它以太网协议。不同于其它工业以太网协议,EtherNet/IP协议采用了已经被广泛使用的开放协议作为其应用层协议(CIP,Common Industrial Protocol)。所以,可以认为EtherNet/IP就是CIP协议在以太网TCP/IP协议基础上的具体实现。这一关系如同DeviceNet就是CIP协议在控制器局域网(CAN总线)上的具体实现一样。
EtherNet/IP已得到了全球近百家供应商的支持,目前已有上百种EtherNet/IP产品可供用户选择,包括过程控制器、PLC、I/O、变频器、软启动器、视觉产品、条码扫描设备、称重设备、电力智能监控单元、过程总线FF链接设备、交换机和连接设备等。EtherNet/IP已广泛应用于汽车、食品饮料、电力、水处理、采矿和轮胎等各个行业,有超过70万个安装节点。CIP协议支持各种控制、配置和信息处理服务,包括显式报文(用于信息传输,灵活的报文交换)以及隐式报文(用于控制和实时I/O数据的传输),支持轮询、周期和状态改变数据传输触发机制,点对点单播和广播数据传输方式。
5.1 EtherNet/IP的通信参考模型
图5-1表示了EtherNet/IP与OSI模型的参照比较,可以看出EtherNet/IP由3部分组成:IEEE802.3物理层和数据链路层标准、TCP/IP协议组、CIP协议组。
图5-1 EtherNet/IP的分层模型
EIP在商业以太网中引入了通用工业协议 (Common Industrial Protocol,CIP)。CIP协议是专为工业控制设计的应用层协议,提供了访问数据和控制设备操作的服务集。它采用用户数据协议/网际协议(UDP/IP)和传输控制协议/网际协议(TCP/IP)作为Ethernet网上的控制和信息协议,允许发送显式(信息)和隐式(控制)报文。其中,隐式报文是对时间有苛刻要求的I/O信息(事件触发、控制器互锁等),通过UDP/IP完成的隐式报文中数据区包含实时I/O数据(CIP的控制部分);显式报文是无时间苛刻要求的点对点信息,可由TCP/IP完成(CIP的信息部分)。CIP向终端用户提供了自动化系统必不可少的控制、组态、数据采集服务功能。为面向自动化领域提供了Ethernet网上的工业自动化设备的互操作性和可换性。图5-2表示了CIP在OSI分层模型中的位置与细节。CIP除了作为EtherNet/IP的应用层协议外,还是ControlNet、DeviceNet的应用层协议。
图 5-2 控制网络中的CIP
5.2 CIP
CIP是专为工业控制设计的应用层协议,提供了访问数据和控制设备操作的对象集。在发送CIP数据包以前必须对其进行封装;运行在EIP上的CIP协议可以与运行在标准TCP/IP传输层上的任何其他协议并存;EIP还可以与任何一个基于CIP的网络(如DeviceNet和ControlNet)共存。由于建立在广泛使用的协议簇之上,故EIP首次实现了传感器级网络到控制器和企业级网络的无缝集成。
CIP是经实践证明的、实时性能很好的应用层协议,具备CIP应用层的以太网才是真正开放的工业以太网产品。它是基于DeviceNet、ControlNet、EIP的通信协议,为DeviceNet、ControlNet、EtherNet/IP网络提供公共的应用层和设备描述。CIP建立在单一的、与介质无关的平台上,为从工业现场到企业管理层提供无缝通信,使用户可以整合跨越不同网络的有关安全、控制、同步、运动、报文和组态等方面的信息。它有助于使工程化和现场安装的开销最小化,使用户获得最大的投资收益。
CIP采用基于非连接的用户数据报文协议/网际协议(UDP/IP)和基于连接的传输控制协议/网际协议(TCP/IP)作为Ethernet网上控制和信息的传输协议,允许发送显式和隐式报文(CIP与TCP/IP层次关系见图5-3)。
其中,隐式报文是对时间有苛刻要求的控制信息,通过UDP/IP完成;显式报文是对时间无苛刻要求的点对点信息,可由TCP/IP完成。显式报文用于配置、下载和故障诊断;隐式报文用于实时I/O数据的传输。CIP是一个基于对象的网络设备的解决方案。作为设备间进行自动化数据传输的通讯协议,CIP把每一个网络设备看作一系列对象的集合。每个对象也只是一组设备相关数据的集合,称为属性。它通过设备描述对网络中的设备进行完整的定义。CIP向终端用户提供了自动化系统必不可少的控制、组态、数据采集服务功能。为面向自动化领域提供了以太网上的工业自动化设备的互操作性和互换性。
图5-3 CIP与TCP/IP层次关系