周拥华1,程时杰1,黄立滨2,罗成2
2.河南许昌许继集团,河南许昌461000)为向我国220kV及以上电压等级的SCADA系统提供可靠性高、普遍实用、具有自主知识产权且性能价格比高的系统软硬件平台,结合计算机技术发展的最新成果,论述了基于Intel架构的PC服务器与Linux操作系统用于构建SCADA平台的必要性和可行性,同时提出了平台的构建方案。从电力系统中广泛存在的监控后台需求出发,讨论了现有Solaris/Sparc、MSWindows/Intel等多种方案的局限性,并针对PC的局限,着重论述了各项关键指标的解决办法。得出的结论是,采用该Linux操作系统构建的平台,可以降低成本,提高性能,最大限度地满足电力系统监控与自动化技术发展的需要。
1 引言
随着信息技术、自动化控制技术的飞速发展,电力系统对各种监控系统尤其是变电站综合自动化系统的要求也越来越高。这意味着在数据采集、数据通信以及数据处理、存储等方面都将面临新的挑战。在计算机领域,SunSparc、HPAlpha等高端计算机系统的价格依然不菲,而从性能上来说,类似SunUltra系列的工作站和低端服务器的性能却并不十分优越。另一方面,商用的Unix系统虽然已经广泛应用于高端领域,但缺乏这一平台上的研发与技术支持人员,很多关键技术还依赖于国外,而MSWindows虽然已经被广泛接受,但它在稳定性、安全性等方面还一直没有达到相对严格的工业控制的要求。实践表明,Unix/Sparc、Unix/Alpha这样的系统技术起点高,成本大,而MSWindows/PC又难以满足工业控制的要求。同时,Unix、Windows操作系统依然完全依赖于国外,其核心并不公开,难以满足发展中的电力信息系统安全的需要。为适应这一要求,本文提出了采用Linux/PC构建通用平台的设想和实现方案。
2 电力SCADA对系统平台的要求
电力系统的发展直接导致变电站复杂程度的增高,而变电站的稳定运行又直接影响到电力系统的安全与稳定,因此,作为变电站监控的系统平台就很重要。我国自80年代以来,在500kV变电站综合自动化领域,一直在努力改变全盘引进的局面,目前已经开始拥有了自主研发的系统。但其计算机平台,由于稳定性要求等因素,无论是其硬件还是其操作系统,都还一直依赖于国外。
从历史和现状看,500kV变电站对系统性能指标的要求主要还是在可靠性方面,就发展趋势而言,在速度上的要求也在逐步提高。
根据现有变电站的实际情况和发展趋势看,变电站综合自动化的后台监控计算机必须满足的主要条件如下[1]:
(1)平均故障间隔时间(MTBF)不小于2万h,系统可用率不小于99.9%;
(2)主机正常负荷率宜低于30%,事故负荷率宜低于50%。
其它如电磁兼容、抗干扰等具体参数可参见相关标准。
3 计算机系统架构———两种平台
计算机发展的最重要标志就是其架构(Archi-tecture)与IC工艺的发展。随着计算机在商业领域的普及,为满足各种应用的系统架构不断出现,对通用的科学计算与数据处理计算机而言,主要可分为精简指令系统(RISC)和复杂指令系统(CISC)两种,前者属高端领域,后者则是PC的核心。由于设计的目的、应用的领域不同,针对这两种平台设计的操作系统也各有千秋,下面对它们分别论述。
3.1 RISC系统与Unix
最初精简指令系统计算机(RISC)的设计目的是满足科学计算(军方)的需要,具有稳定可靠的特点,这个特点传递给了在这个平台上开发的操作系统和应用软件。同时,由于其定位在复杂的科学计算,起点较高,也就比较昂贵。它不仅在高端的应用(小型机到巨型机)中成本非常高,即使是在低端的工作站,价格也不菲。另一方面,由于体系结构的原因,它往往要求其外围设备(如基本输入输出设备)必须自己具备处理数据的能力,这样才能使CPU集中精力处理好必要的计算和调度任务,这进一步增加了系统的成本,同时,由于商业化发展,各公司的RISC系统并不兼容,配件也必须来自原厂,所以扩展、维护成本也非常高。
Unix系统最初设计用来管理庞大的RISC系统,由于其使用者都是专业人士,因此其使用、配置和开发都比较复杂,即使在XWindows出现后,由于其一贯的作风,要想深入Unix系统,仍然具有较高的难度。另外,随着Unix/RISC的商业化,各个厂商都推出了各自的版本,相互之间虽然遵循POSIX标准,但兼容性很差,再加上Unix/RISC系统昂贵的价格,进一步提高了进入该平台的门槛。
3.2 复杂指令系统与Windows、Linux
Intelx86是CISC系统的代表,其最初的设计目的是为了满足中小型公司及个人的需要,它追求超出浮点计算范畴的各种处理能力和速度(如字处理、多媒体处理等),同时要降低成本,使之适合于普通家庭用户。其体系结构允许CPU承担所有输入输出的处理工作。另一方面,它具有广泛兼容的系统总线接口,因此其扩展非常方便。虽然这种系统最初定位很低,而且没有太多考虑严格的工业与科学应用要求。但随着技术发展,IC制造工艺的不断提高,以往仅用于高端系统的RISC领域的技术被越来越多地应用于PC中,使得PC有了更多的层次,逐渐进入高端工业控制与科学计算领域。
复杂指令系统计算机在处理器指令集中包涵了更多的便捷可用的指令,简化了用户程序的设计。其主流操作系统从最初的DOS发展到现在的Win-dowsXP,采取的是一种傻瓜式路线,即降低计算机的使用难度,使非专业人士也能轻松使用。虽然在NT以后的版本中逐步提高了系统的安全性和可靠性,但其图形系统被规划在内核中,缺乏灵活性,系统性能等也大受影响。
90年代出现的Linux改变了Windows一统CISC软件平台的天下。Linux不仅继承并发扬了Unix优点,更多方采纳了现代操作系统的各种技术。如内核模块动态加载技术等。使得系统内核可灵活配置。另一方面,由于其属于免费操作系统,并且开放所有源代码,使用者可以轻松获得必要的资料,因而Linux的志愿者也很多,结果不仅大大降低了其技术门槛,而且使系统越来越易于使用,这个系统的应用也因此迅速推广开来。
3.3 两种平台在电力系统中的应用
以上两种系统架构一直是计算机硬件的两大主流,以它们为核心构成的不同硬件平台,其外部总线、存储设备及其它外部设备都有很大的区别,但随着技术的发展又慢慢趋于一致,各种技术的揉和,使得PC不仅廉价、高效,而且具备了越来越高的可靠性。
在我国电力系统中,以往高电压等级的SCADA都采用Unix/RISC系统,应用最为普及的是其代表Solaris/Sparc(通常使用它们的低端工作站作为平台,因此通称为工作站)。而Windows/CISC系统(以Intelx86为代表,称为IntelArchitecture,即IA,也就是常说的PC),往往只作为辅助计算机。造成这种局面并非完全是由于PC本身的原因,在我国工业领域广泛应用的工控机大多数也是Intel架构,主要原因是处理能力、存储容量、可靠性等指标之间没有找到一个合适的结合点。
随着Linux操作系统和PC硬件的不断完善,现在我们有了另一种选择,就是Linux/PC平台。
4 新技术对PC的完善
将PC与工作站相比较,就硬件而言,PC主要还是在性能和稳定可靠两个方面存在不足。新技术的发展对此进行了完善[2]。
虽然以Intel的x86芯片为核心的PC并不是为严格的工业控制设计的,但随着设计与制造工艺的共同发展,使得它以及它的外围器件都越来越成熟和稳定,而Linux操作系统的出现,更是弥补了PC在高端应用中的操作系统空白。这两者的结合,加上近几年来各种属于小型机的高端技术在PC领域的应用,使我们可以设计一个可满足不断发展的电力监控系统后台要求的通用平台。
在处理器的性能方面,以PentiumPRO为代表的IA32处理器的诞生标志着PC服务器/工作站进入市场,它支持对称多处理器(SMP)技术,在一台计算机内用多个CPU构成并行处理系统。1998年In-tel推出的PIIXeon处理器更是被业界所推崇。Xeon的设计目的是为了满足企业级服务器与工作站的需要,可应用于严格要求的商业环境;它支持SMP,与同期的Pentium处理器比较,具有更多更快的二级缓存,从而具有更好的性能。随着多级流水线处理技术的采用,尤其是最近64位架构的出现更突破了传统IA的局限,大大提高了PC的性能。
在总线与接口方面,PC不断扩展其先进的PCI总线,从32位到64位,从33MHz到66MHz,PCI总线性能不断提高。为适应严格要求的工业控制环境而设计的CompactPCI总线技术在提高PC工控机性能的同时,更进一步提高了PC系统的稳定性。
在最重要的磁盘系统中,SCSI(小型计算机系统接口)在PC上的应用大大提高了PC的数据吞吐能力,尤其是硬盘系统的可靠性(寿命);冗余磁盘阵(RAID)的引入更是大大刺激了PC在数据库方面的应用[3][4]。冗余磁盘阵列本是高端服务器的专有技术,但随着该技术成本的降低,它开始被应用于PC服务器领域。目前的主流RAID卡结合SCSIUltra160/Ultra3,采用基本的RAID1或RAID5能达到很好的性能和故障冗余效果,而低成本的IDERAID甚至Linux系统的软件RAID技术至少在很大程度上提高了系统数据的安全可靠性。
网络的性能与故障冗余在工业控制中也很重要,在高端服务器领域,已经有了各种负荷均衡和自动故障冗余措施。这些技术已经被应用到了PC中。以IntelPRO100+DualPortServerAdapter为例,它可以在32位PCI总线上提供Team工作模式,这是一种相对简单的基于数据链路层的负荷均衡与故障冗余技术。但可以通过使用该技术[1][2]下一页