PROFINET
PROFINET是一个开放式的工业以太网通信协定,是由PROFIBUS & PROFINET国际协会所提出。PROFINET应用TCP/IP及信息技术的相关标准,是实时的工业以太网。自2003年起,PROFINET是IEC 61158及IEC 61784标准中的一部分。
PROFINET有模块化的结构,用户可以依其需求选择层叠的机能。各机能的差异是在于为了满足高速通信的需求,而对应数据交换种类的不同。
PROFINET可分为PROFINET CBA及PROFINET IO二种:PROFINET CBA适合经由TCP/IP,以组件为基础的通信,PROFINET IO 则使用在需要实时通信的系统。PROFINET CBA和PROFINET IO可以在一个网络中同时出现。
PROFINET IO是为分布式周边的实时(RT)及等时实时(IRT)通信所设计。其名称RT及IRT只是在说明配合PROFINET IO通信时的实时特性。
技术
为了达到上述的通信机能,定义了以下三种的通信协定等级。
- TCP/IP是针对PROFINET CBA及工厂调试用,其反应时间约为100ms[1]。
- RT(实时)通信协定是针对PROFINET CBA及PROFINET IO的应用,其反应时间小于10ms[1]。
- IRT(等时实时)通信协定是针对驱动系统的PROFINET IO通信,其反应时间小于1ms[1]。
利用以太网的分析工具可以纪录及显示的PROFINET通信协定的封包,也有一些软件可以解读PROFINET的数据帧。
PROFINET组件模型(PROFINET CBA)
一个PROFINET CBA系统会包括许多自动化的组件,组件可能是机械的、电子的或是IT的,组件可以由标准的编程工具产生。
组件可由XML格式的PROFINET组件描述(PCD)档来说明。规划工具加载这些描述数据,并创建不同组件之间的逻辑关系。此模式相当程度地受到IEC 61499标准的影响。
PROFINET CBA的基本概念是很多时候自动化系统都可以分为几个小的子系统,彼此有清楚的区分。PROFINET组件一般只由少数几个输入信号控制,借由这些组件,用户写的程序启动了组件中的特定机能,将输出信号传递给另一个组件。其中用到的技术是制作商中立的。以组件为基础的通信只需要进行规划,不需要进行编程。PROFINET CBA的通信(非实时通信)适用于总线周期时间在50...100微秒的系统。
PROFINET及外部设备(PROFINET IO)
PROFINET网络和外部设备的通信是借由PROFINET IO来实现[1][2],PROFINET IO定义和现场连接的外部设备的通信机能,其基础是级联性的实时概念,PROFINET IO定义控制器(有「主站机能」的设备)和其他设备(有「从站机能」的设备)之间完整的数据交换、参数设置及诊断机能。PROFINET IO是设计用来在以以太网连接的设备提供快速的数据传输,且支持生产者-消费者模型(provider-consumer model)[1]。支持PROFIBUS通信协定的设备可以无缝的和PROFINET网络连接,不需要IO代理器(IO-Proxy)之类的设备。设备开发者可以利用市面上贩售的以太网控制器来开发PROFINET IO设备[1]。PROFINET IO适用在网络循环时间在数ms的系统。
PROFINET IO系统包括以下几种设备:
- IO控制器,控制自动化的任务工作。
- IO设备,一般是现场设备,受IO控制器的控制及监控,一个IO设备可能包括数个模块或是子模块。
- IO监控器是一个PC的软件,可以设置参数及诊断个别模块的状态[2]。
PROFINET IO会在IO控制器及IO设备之间创建应用关系(Application Relation,AR),应用关系中会定义有不同的参数传递、周期数据交换及警告处理等特性的通信关系(Communication Relations,CR)[1]。
一个IO设备的特性会由设备制造商在GSD(General Station Description)档中说明,所使用的语言是GSDML(GSD标记语言),GSD档提供PC监控软件规划PROFINET组态所需要的基本数据[1][2]。
PROFINET IO 寻址
PROFINET网络中的每个模块都有以下的三个地址:
由于PROFINET使用TCP/IP,会用到MAC地址及IP地址,但若一设备更换为其他设备,其MAC地址会变动,而IP地址是动态寻址下的结果,为了让网络上的某一设备有固定的名称,因此会使用设备名称。
为了分配IP地址、子网络遮罩及缺省闸道,定义了以下的二种方式:
- DCP(协定)(发现和配置协定)。
- DHCP(动态主机设置协定)。
PROFINET及实时
在PROFINET IO网络中,进程数据和警告都是实时(real time,RT)发送。PROFINET的实时是依IEEE及IEC的定义,在一个网络周期内允许在有限的时间内处理实时的服务。实时通信是PROFINET IO数据交换的基础。在处理时,实时数据的优先权比TCP(UDP)/IP数据要高。PROFINET RT是分布式周边实时通信的基础,也是PROFINET组件模型(PROFINET CBA)的基础。一般数据交换的总线循环时间约在数百微秒以内。
PROFINET及等时通信
PROFINET的等时数据交换定义在等时实时(isochronous real time,IRT)机能中。具有IRT机能的PROFINET IO现场设备有集成在现场设备中的switch ports,可以用例如像以太网控制器ERTEC 400/200为基础。一般数据交换的总线循环时间约从数百毫秒至数微秒。等时通信和实时通信的差异是前者有高度的确定性,因此总线周期的启始时间可维持到很高的准确度,其抖动至多到1 µs (jitter)。像马达位置控制进程的运动控制应用就会用到等时实时通信。
应用行规
应用行规(profile)是特殊设备或针对特别应用而事先定义的函数及特性组态。PROFINET应用行规由PI(PROFIBUS & PROFINET国际协会)工作小组所订定,由PI发布。应用行规有助于设备的开放性、互操控性及互换性,因此最终用户可以确定不同设备商提供的类似设备会有标准化的功能及使用方式。用户的选择促进设备商的竞争,使得产品的机能提升,成本下降。
PROFINET有许多的应用行规,例如针对编码器的应用行规,也有针对运动控制(PROFIdrive)及机能安全(PROFIsafe)的应用行规。甚至针对火车也有专用的应用行规。在2009年德国的汽车制造商提出了PROFIenergy应用行规,主要在管理车辆制造时产生的能源消耗。
其他特点
PROFINET支持工具调用接口(Tool Calling Interface,简称TCI),每一个设备制造商用任何支持TCI机能的软件进行现场设备的参数化和诊断,无需退出进程。
邻近识别及设备替换:所有PROFINET都会识别邻近的设备,因此若设备故障,可以在不需额外工具及先验知识的情形下更换设备。借由这些信息,可以用图像的方式清楚的呈现系统的拓扑。
参数服务器:个别的数据可以用制造商中性的方式(例如TCI)加载到参数服务器中,参数服务器也会自动将参数归档。当更换设备时参数服务器也会自动重新加载相关数据。
确定性:PROFINET支持确定性的数据传递,可用在高准确度的控制任务中。
冗余:PROFINET中的冗余概念大幅提升系统的可用性。
参考数据
- Application Layer protocol for decentralized periphery and distributed automation, Specification for PROFINET, Version 2.3, October 2010, Order No.: 2.722, PROFIBUS Nutzerorganisation e.V. (PNO)
- Industrial communication with PROFINET, Manfred Popp, Order no.: 4.182, PROFIBUS Nutzerorganisation e.V. (PNO)
延伸阅读
- Raimond Pigan, Mark Metter: Automating with PROFINET, 2nd rev. and enl. edition. 2008, ISBN 978-3-89578-294-7