自从ARC Group提出PAC (Programmable Automation Controller) 这个概念以来,作为近年来自动化产业最为重要的发展趋势之一,PAC受到了自动化业界及终端用户的广泛关注。笔者试图在本文里就PAC的产生及其关键技术进行一些探讨,以抛砖引玉。
为什么需要使用PAC
PAC 这个概念的提出是针对PLC (Programmable Logic Controller) 的概念而来,作为一种快速和可靠的解决方案,PLC的设计满足了工厂对于使用环境和可靠性的要求,而且其编程方式也非常适合机电工程师的思维习惯,故PLC自问世以来在自动化控制系统领域独领风骚已经有二十多年的历史了。目前的PLC已经不仅限于在逻辑控制的应用,一些新一代的大中型PLC已经具备了比较强大的浮点数据运算能力和较为丰富完备的通讯介面,可以完成今日的系统化与复杂化的自动控制技术。
在当前的自动化应用里,对自动化控制系统已经提出了更高的要求,下表列出了这些要求带来的变化。
图一.自动化应用的最新需求
虽然PLC业界已经注意到了这一趋势,并通过将PC技术应用于PLC产品,直接提供OPC Server、WEB Server及IEEE标准通讯接口等,以提供更高的应用灵活性。但是受限于传统PLC专属式的设计,其互操作性和灵活性很差(即使是对于同一品牌的PLC来说,也是这样),并不能完全满足用户的要求:
传统的PLC均不能提供主动的事件通知,系统的集中监视管理有赖于服务器主机的主动定时查询;
因为在实时信息上的欠缺,要实现跨PLC的事件处理比较困难,且速度延迟,效果不佳;
无法提供本地直接处理的预约控制,预约控制完全有赖于服务器主机的集中处理,所以系统当机时,立刻停摆;
系统的建构由于采用了不同供应商的多种平台,为整合各种不同的专用总线,系统之衔接有赖于第三方提供的OPC Server或Gateway,故其实施并不是一件轻松和容易的事情;
系统升级将必须付出重新设计的成本和时间,其不可预见成本太高。
梯形图程序的设计是基于个案进行,每一专案均无法完全复制应用,无法实现标准化,从而工程设计费用无法降低;
现行自动化系统的数据容量太小,在适应新的应用需求时显得力不从心;
无法实现实时同步远程的数据传输,与PDA、手机的连接比较困难;
需要通过PC或第三方设备来实现基于WEB的远程数据发布。
什么是PAC
虽然从外形上来看,PAC与传统的PLC非常相似,但究其实质,PAC系统的性能却广泛得多。作为一种多功能的控制平台,用户可以根据系统的需要,组合和搭配相关的技术和产品以实现功能的侧重,因为基于同一发展平台进行开发,所以采用PAC系统保证了控制系统各功能模块具有统一性,而不仅是一个完全无关的部件拼凑成的集合体。
综合业界专家的意见,所谓PAC系统应该具备以下一些主要的特征和性能:
图二.PAC的功能应用
提供通用发展平台和单一数据库,以满足多领域自动化系统设计和集成的需求
一个轻便的控制引擎,可以实现多领域的功能,包括:逻辑控制、过程控制、运动控制和人机界面等
允许用户根据系统实施的要求在同一平台上运行多个不同功能的应用程序,并根据控制系统的设计要求,在各程序间进行系统资源的分配
采用开放的模块化的硬件架构以实现不同功能的自由组合与搭配,减少系统升级带来的开销
支持IEC-61158现场总线规范,可以实现基于现场总线的高度分散性的工厂自动化环境
支持事实上的工业以太网标准,可以与工厂的EMS、ERP系统轻易集成
使用既定的网络协议,程序语言标准来保障用户的投资及多供应商网络的数据交换
PAC系统的关键技术
的产生受益于近年来在嵌入式系统领域的发展与进步。在硬件方面,有重意义的包括:嵌入式硬件系统设计,其中具有代表意义的是CPU技术的发展;现场总线技术的发展;工业以太网的广泛应用。在软件方面则包括:嵌入式实时操作系统;软逻辑编程技术;嵌入式组态软件的发展等。试分别说明如下:
跟随摩尔定律的发展,最新的高性能CPU在获得更高的处理能力的同时,其体积更小、功耗更低,从而在出众的计算能力以及工业用户最为关心的稳定性和可靠性方面获得平衡,使制造厂商有可能去选择通用的标准的嵌入式系统结构进行设计,摆脱传统PLC因采用专有的硬件结构体系带来的局限,使系统具备更为丰富的功能前景和开放性。
在现有面世的PAC系统中,被广泛采用的是低功耗、高性能的SOC (System On Chip) 核心处理器。这里面既有采用CISC架构的CPU,如Mobile Pentium系列CPU,也有采用RISC架构的CPU,如ARM系列、SHx系列等,当然也有使用MIPS CPU的。综合比较而言,由于RISC CPU在应用于工业控制系统时所具备的综合优势,采用RISC CPU的系统占据了目前市场所供应的控制系统的多数。
在CPU技术发展的同时,移动存储技术方面也有很大的进展,从而使最新的系统可以在付出有限成本的同时,获得大容量的数据存储空间,以适应新的自动化应用对不断增长的数据量的要求,同时又可以避免因为使用机械式硬盘带来的系统崩溃的风险。
经过14年的纷争,最后IEC的现场总线标准化组织经投票,接纳了8种现场总线成为IEC61158现场总线标准,即:FF H1,Control Net,PROFIBUS,INTERBUS,P-Net,World FIP,Swift Net,FF之高速Ethernet即HSE。IEC61158现场总线标准的最终尘埃落定,使在工业控制在设备层和传感器层有了可以遵循的标准。目前在中国大陆的产业自动化应用领域,影响比较大的有:PROFIBUS、基于CAN总线的DeviceNET、主要应用于建筑自动化的LONWorks、以及未曾列入IEC61158标准的CCLink等。
但是由于这8种现场总线采用的通信协议完全不同,因此,要实现这些总线的兼容和互操作是十分困难的。其可能的出路是采用已经是通用的国际标准Ethernet、TCP/IP等协议,并使其符合工业应用的要求,而且这种方案最容易被广大国家的用户、集成商、OEM及制造商接受和欢迎。
但是要把Ethernet用于工业自动化,有以下4个问题需要解决:
1、实时性问题。由于Ethernet采用CSMA/CD碰撞检测方式,网络负荷较大时,网络传输的不确定性不能满足工业控制的实时要求。但据测试,在典型的工业应用中,其峰值负载在500K左右,相当于10M Ethernet的5%,或100M Ethernet的0.5%,而Ethernet只有当负载达40%以上时才会有明显的延迟现象。同时,目前已经开发出多种有用方法以提高以太网相关组件及软件的速度,并使数据的发送和接受更可靠。这其中最有前途的解决方案是IEEE1588标准精准时间协议 (Standard Precision Time Protocol,PTP)。
2、Ethernet如何满足现场环境问题。Ethernet所用的接插件、集线器、交换机和电缆等是为办公室应用而设计的,不符合工业现场恶劣环境的要求。为了解决在不间断的工业应用领域,在极端条件下网络也能稳定地工作的问题,目前已有多家公司专门开发和生产了DIN导轨式收发器、集线器和交换机系列产品,并有冗余电源供电,接插件采用牢固的DB-9结构,如美国科动控制系统公司和国内的东土电信等。
3、在工业控制中使用Ethernet如何获得技术支持。在工业以太网的应用层,有四种标准获得了广泛的支持和应用:施奈德公司:ModbusTCP/IP (1998) 是目前工业以太网的事实标准,并使以太网在传感器级和设备级得到了大量的应用;德国西门子公司:PROFINET (2001);美国Rockwell自动化公司: Ethernet/IP (2000);基金会现场总线FF:HSE (2000)。
4、Ethernet与网络安全问题。目前有多种软硬件技术可以有效的解决网络安全的问题。
通用的嵌入式实时操作系统获得了长足的发展,并获得了广泛的应用。传统的美国WindRiver公司的Vx Works、PSOS操作系统在高端领域还是有很高的占有率;另一引人注目的趋势是微软公司的Windows CE在推出.net版本以后,有效的解决了硬实时的问题,并以其低廉的价格和广泛的客户群获得了用户的青睐;作为开放源码的代表,Linux操作系统也推出了其嵌入式版本,并以其在成本、开放性、安全性上面的优势,获得一些特殊应用客户及中小制造商的欢迎。
符合IEC-61131-3标准的软逻辑编程语言的发展,有效的整合了传统PLC在编程技术上的积累,使广大的机电工程师可以在基于PC的系统上使用其熟悉的编程方式实现其控制逻辑。另一方面在PAC系统上,工程师也可以使用高阶语言实现复杂的算法或通讯编程,例如VB.net、EVC、VC#、JAVA等。目前IEC-61131-3标准已经实现了基本层的转载(包括编码体和变量),正在进行携带层的转载(包括函数和功能块),并最终实现整个编译层的转载(应用程序)。从而有效提高不同供应商设备间的互操作性,并减少系统升级时的开销。
在人机介面的部分,一些软逻辑开发工具均同时提供HMI开发套件,例如ISaGRAF、Micro Trace Mode、KW
MultiProg等。如果有更进一步的需求,一些专业的SCADA/HMI软件厂商也提供针对嵌入式系统开发的套装软件,例如组态王公司的嵌入版KingView、Indusoft等。
目前主流的PAC系统
目前已有多个厂家提供符合PAC定义的特征与性能的产品,其中有代表性的有:GE Fanuc公司的PACSystemsÔ RX3i/7i、NI公司的Compact FieldPoint、Beckoff 公司的CX1000、ICPDAS泓格科技的WinCon/LinCon等。
其中GE Fanuc公司的PACSystemsÔ RX3i/7i的CPU采用了Pentium III 300/700MHz处理器,操作系统为WindRiver的Vx Works,RX3i为VME64总线,RX7i为CompactPCI总线;NI公司的Compact FieldPoint的CPU即将升级到Pentium IV-M 2.5。