企业: | 北京和利时系统工程有限公司 | 日期: | 2009-06-09 |
---|---|---|---|
领域: | 电源 | 点击数: | 1617 |
3 地铁综合监控系统软件分析 地铁综合监控系统的运行环境是由硬件、软件和数据三个主要部分的有机组成。其中硬件包括各类计算机、网络设备、通讯链路和各类基础自动化层设备(如PLC)等;软件通常包括操作系统、支撑软件和应用软件,其中支撑软件往往被软件开发商集成在应用软件中。数据则指支持系统运行的环境配置,典型的如绘制的人机界面、监控对象的定义、通讯参数等,随着“组态”概念的引入,系统承建商在工程阶段的配置数据已不仅局限在定义和配置静态数据,也包括定制系统的某些特定行为甚至开发一些新的功能上,因此广义地看,由于数据完全反映了系统设计的内容,也可以归入软件的范畴,这和目前地铁界的普遍看法是一致的。也就是说,除了硬件设备大部分是采购的,其余的系统集成部分都是属于“软件开发”。 如何来选取、如何认识综合监控系统软件呢?显然针对每个项目都进行一遍完整软件的开发过程是不现实的。根据大系统开发经验,即使在具有相当的技术积累基础上开发一个地铁监控系统软件至少需要100人/年,其中稳定期一般至少应在1.5~2年,这样对工程而言,不仅时间上等不起,全新的东西一般也不敢用。因此无论系统集成商还是业主都会选择一个相对成熟的、适用的应用软件平台,在这个平台的基础上进一步开展面向具体应用需求的应用开发。 一般来讲,这个应用软件平台应该至少满足以下要求: (1)是一个经过高度功能抽象的通用自动化监控系统软件,采用分层分布式架构,实现自动化监控所必须的对各种底层设施的监控、管理功能。软件必须具有实时数据库、通用HMI、报警/事件系统、日志系统、历史数据库、报表系统、权限管理、部件冗余和诊断等。 (2)具有开放性,具备支持后续开发的扩展机制,包括脚本系统、应用开发工具和代码级开发的程序库,以及基于一定标准的系统访问接口,能嵌入或可以外挂新开发的软件模块和定制应用功能。 (3)由于地铁是一个地理分散的广域系统,软件必须具有SCADA的远动功能,即从OCC下行的遥控命令须在2秒内到达,返信时间也应在2秒之内。这样,才可顺利完成地铁运营要求的每天的顺控上电和晚间停电。最好也能具备远程维护能力。 (4) 支持系统规模扩充和分期施工。 3.1 两类地铁综合监控软件 目前在地铁综合监控系统中出现的应用软件平台产品形态上大体可以分为两类。一类是独立软件厂家(ISV)的商品化软件,另一类是由系统集成商提供的软件。 商品化软件主要是各种工控组态软件,国外国内都有很多,较成熟,广泛用于各类工业控制和监控场合,其最大优点是HMI功能支持丰富、结构扩展灵活,开放性好,因此具有很强的适应性和通用性。但也正由于这一产品通用性定位使得工控组态软件对目标领域的监控特点缺乏针对性,缺少地铁运营要求的功能,尤其不能满足上述的地铁应用软件平台必须满足的4条要求中第三条要求和第一条中的要求。这些软件不作针对地铁应用的开发是难于在地铁综合监控系统中成功应用的。直接使用一个组态软件仅仅通过组态通常是达不到地铁综合监控多种专业的功能要求的,这就需要系统集成商对组态软件进行一定的改造,包装成地铁适用的软件平台,最典型的如增加远程控制和设备管理功能。由于知识产权原因,通常这种改造是通过嵌入、替换和外挂新的软件模块实现的。但是,这种开发又需经过在地铁综合监控的成功应用加以检验,系统集成商如果是第一次进行开发又无在地铁做综合监控系统的经验,将会给工程带来极大风险。 由系统集成商或工程公司开发的软件平台一般与领域监控特点和功能要求更为接近,并具有长期从事这一领域的工程基础,因此其软件功能的设置、体系结构等方面更适合地铁综合监控系统的构成、运营和维护的要求。只是产品化形态方面可能稍差。由于工程公司并不以软件产品外卖为目标,如果工程公司本身作为系统集成商参与工程这一缺陷对最终用户的影响不大,但如果仅作为软件供货商供其他系统集成商使用,也会给工程带来风险。 进一步分析,如果把这两类软件对应看待,组态软件所提供的设计界面更低更基础,应属于可用但不适用的综合监控系统软件平台;如果有地铁运营经验的系统集成商经过软件开发把组态软件和附加的行业性应用功能合并,构成一个面向行业应用并集成了组态软件的应用平台,那么,可以构建起成功的地铁综合监控系统软件平台。这种做法符合现代的软件开发方针——开放系统加COTS(货架上的商用软件)。但是这种开发综合监控软件平台的做法也需要假以时日,并受到组态软件本身系统支撑能力的限制,可能花了较大的开发成本,得到的是一个局限性较大的综合监控软件平台。 由国外系统集成商开发的综合监控软件虽说可以适应地铁综合监控要求但性能差异较大,特别是对国内的工程的适应性较差,例如许多软件平台并不满足前述的第三项要求,远动性能指标不满足我国电力规范要求。另外,作为软件供货商他们的服务水平远不及国内的系统集成商,会给工程带来潜在的损失。由上可见,现在一些地铁工程专门限定必须采用国外软件平台,而且要求仅作软件供货商的国外厂家在技术上负责会给工程带来多大的风险! 目前一些有综合监控工程实施经验的系统集成商正在将具与自主技术的综合监控软件平台在工程实践的历练中通用化、产品化,这类新的综合监控软件平台克服了上述两类软件的不足,必将得到良好发展。 3.2 国内外地铁综合监控系统软件平台比较 由国外综合监控系统系统集成商以软件供货商身份提供的地铁综合监控软件、软件功能的设置、体系结构等方面可适合地铁综合监控系统的构成和运营、维护的要求。但产品化形态较差,面对每一个工程度都要重新设计、组态、甚至开发,因此价格很高。为了从本质上认识国外综合监控软件作出如下的分析研究。 二十世纪九十年代,国际上就已出现了地铁综合监控系统软件称为ISCS软件。这种型态的软件是以中央监控中心(OCC)信息集成为核心,平台延伸到车站监控层通过其前端处理器(FEP)将车站的各子系统接入构成信息共享平台。一般来讲,这类系统在系统顶层(OCC)设有电调、环调、行调、维调和总调中心,软件平台将车站各自独立的子系统(各不相同的软件平台)的信息采集到一起,在OCC和车控室实现综合监控功能。国内有人称之为顶层信息集成的综合监控系统。法国泰蕾兹公司在香港将军澳线和新加坡东北线采用了这样的综合监控系统。顶层信息集成的综合监控系统软件是在OCC和车站的监控层将部分子系统集成和互联起来构成综合监控系统。虽然,这类软件平台在横向上几乎不受限制,可以按照用户的意愿连接较多的子系统,系统的范围较大,可实现信息共享,实现综合监控功能,但在纵向将原来分立的子系统分为两个不同软件平台支持的两部分,在车站将被集成子系统截为两截,对于地铁的一些具有SCADA特性要求的子系统,会大大地降低系统的运动性能,例如,电力系统遥控时间将大于3.5秒超出电力规范对遥控时间的要求。此外,这类软件平台由于在车站实行两个软件平台对接,给调试、故障诊断和维护带来极大工作量。早期国内外出现的综合监控系统皆采用此类平台,目前,国外供货商推崇此类软件,但会给国内系统集成商带来极大麻烦,如果国内系统集成商没有综合监控系统的实施经验甚至会给工程带来危害,完工后的系统将达不到合同的一些重要技术要求。一些二线城市的新开的地铁工程应特别注意此问题。 目前由国内系统集成商开发的综合监控系统软件以满足地铁运营要求为主导,强调对工程的适用性,为了满足前述的4点要求,采用了深度集成方式,即用同一软件平台将被集成子系统从顶到底完全融入综合监控系统中,不会在车站出现两个软件平台对接的根本性问题。因而,其实施性能极好。 更为重要的是国外软件平台的供货商采用的大都是二十年前开发的软件,对于这些软件由于人力成本的昂贵也很少再进行修改、升级。软件平台的质量并非像有些人所迷信的那样,许多国内的工程实践已证明了这一点。而国内的软件供货的系统集成商具有自主的开发能力,采用了较新的软件技术和先进的软件设计理念,同时不断地修改、优化、升级。系统集成商具有自主知识产权的软件平台是工程成功的最可靠保证。 表1是国内外综合监控软件平台的一个简单比较,结论不言而喻。 表1 国内外综合监控软件平台比较
3.3 综合监控软件平台的本质要求 综合监控软件平台在发展过程中,使开发者和用户认识到了一些对它的性能的最本质要求,以下将对这些要求进行阐述。 3.3.1 综合监控软件平台的开放性要求 综合监控系统软件平台应通过采用开放的软件架构和标准的软件组件,实现为一个具有可伸缩性的软件系统。软件的构成应独立于硬件配置,支持多种硬件结构,可按照项目的具体硬件配置进行工程设计和部署,以满足具体的功能要求,使得系统整体性能优异。 系统软件应支持服务器集群,数据库的分布独立于硬件配置架构,单台服务器使用的每个本地数据库可以只是全局数据库的部分映像,整个数据库是所有这些逻辑片段的合并。当数据库分布运行在多台服务器时,系统具备自动的数据路由功能,对工作站的数据访问没有任何影响。 综合监控系统软件平台应建立在COTS(Commercial -Off-The-Shelf,商用现货)软件基础上,通过选择成熟、开放的COTS软件作为构成系统软件的基础,使综合监控系统软件具有良好开放性。 综合监控系统开放系统宜采用面向对象的系统,它要求实时、可靠、容错、支持嵌入式设备、分布式环境、异构平台。大容量的分布式面向对象实时数据库,通过提供的类编辑器可以方便地添加、删除和修改每个对象的属性、行为和操作命令接口,可以利用面向对象的继承、重载、封装等特性扩展数据库类。分布式实时数据库以数据库单元作为最小管理单位,每个数据库单元可以灵活地在不同计算机间进行迁移和重新部署。 综合监控系统开放性在以下方面反映。 3.3.1.1 开放的接口驱动 综合监控系统需要与多种外部设备和外部系统实现在各个层面上的互联互通,因此系统软件必须保证各部分软件接口和通信协议的规范性,通过开放的标准协议(如Modbus TCP/IP 、IEC104、OPC、ODBC等)的使用,实现系统与外部设备和外部系统之间的接口,并提供统一的开发模板和应用接口以支持专用通讯接口的接入。 (1)软件应可通过开发实现更广泛的I/O设备支持; (2)支持常用的多种接口协议和规范,包括如:OPC、DDE、ActiveX、API、DLL等; (3)系统标准通讯接口中包括OPC客户端,能够从任何OPC服务器获取数据; (4)系统还应提供标准的OPC服务,可为外部系统提供访问系统内部数据的OPC服务; (5)用户可以编写自己的扩展组件并将其嵌入综合监控系统软件系统; (6)系统支持用C/C++语言为通讯控制器编写I/O 驱动程序;软件应支持多种数据库接口,比如:ODBC、SQL等; (7)利用ODBC接口系统可与遵从此标准的异构数据库互联,支持ODBC标准的应用程序。 3.3.1.2 数据库结构开放,易于扩展和增加数据类型 综合监控系统监控对象众多,类型丰富,应采取完全开放的数据库结构将有利于根据监控对象的特点增加数据库中管理对象的类型、字段和方法。如果系统软件采用面向对象设计方法构建一个大容量的分布式面向对象实时数据库,通过提供的类编辑器可以方便地添加、删除和修改每个对象的属性、行为和操作命令接口,可以利用面向对象的继承、重载、封装等特性扩展数据库类。数据库脚本是这类软件平台提供的一种扩展应用功能的手段,既可以用于应用开发阶段的行业/专业通用功能的开发上,也可以用于工程阶段的定制开发或组态上。数据库脚本用于描述对象的行为以及对象之间的连锁逻辑,具有灵活、免编译的特征。数据库脚本采用Tcl语言,提供脚本的编辑、执行功能,用于实现以触发式计算为主的数据处理功能。作为监控系统中重要的实时报警数据,这类系统采用面向对象分析和设计方法构建了多种实时报警类,每个报警类的组成字段可以定义和配置,根据应用需求还可以扩展报警类,从而充分利用对象化设计所带来的数据库结构开放的优点。综合监控系统软件平台采用面向对象技术是提升性能的较好选择。 3.3.2 综合监控软件平台的构架要求 综合监控软件平台的设计框架采用层次化结构,例如,将系统、应用、工程分为不同软件层次,各层次相互解耦。具体项目应用中,软件由平台包、应用包和工程数据三部分组成:平台包是一个工业自动化和SCADA系统的通用平台;应用包是适于城市轨道交通电力、环控、火灾报警以及地铁其他专业的专门应用软件;工程数据则是本地地铁综合监控系统的具体应用数据。应用包针对地铁行业的被集成子系统应用,针对具体项目完全满足对系统的每项需求。解耦的软件平台可使系统灵活、方便。例如地铁工程中经常出现的大变更(例如修改站名),软件只需在工程组态层面修改即可实现。 软件的应用平台主要由系统集成商在长期积累的地铁综合监控系统中应用模件组成。目前,软件技术提倡系统全面采用面向对象的设计思想,包括面向对象的分析与设计、面向对象的软件开发与实现、面向对象的工程设计与应用,强调知识的积累和重用,通过面向对象方法实现了代码的重用和工程数据的重用,使系统集成商在地铁综合监控系统应用核心技术软件化、工程化。从而可以顺利地在地铁工程中重用。重用的重点在于对成熟代码和领域工程知识的重用,即把领域知识和工程经验转化为一些程序库或数据库,并能通过一定的剪裁手段,产生每个项目适用的“原型”,转化为本地地铁工程的应用模件。 工程组态方面,软件平台配置的组态工具简单易用,业主使用人员在经过短期的培训后就可以独立进行数据库组态、画面编辑、脚本定义、权限设置、系统维护等操作,有利于业主使用和维护人员在工程实施、调试阶段介入相关工作,有利于系统的长期维护和稳定运行。 3.3.3 综合监控软件平台的模块化要求 综合监控软件系统平台应采用模块化设计思想,由配置总控、类编辑器、实例编辑器、图形编辑器、设备组态工具、命名服务、数据管道、对象数据库、历史数据库、报警事件服务、日志服务、权限服务、人机界面HMI、在线下装、校时、接口模块、报表服务等模块组成,这些模块通过中间件软总线(例如,CORBA中间件)实现相互通信,而且可以根据不同模块的组合实现服务器和工作站的功能需求。这些模块通过中间件软总线实现相互通信,而且可以根据不同模块的组合实现在服务器和工作站的功能需求,这些模块分为三类:基础组件,服务组件和应用组件。 (1)基础组件 基础组件是最底层软件模块,包含综合监控系统软件的各个部分所使用的基本工具,它们在操作系统之上为所有更高层的系统软件和应用程序提供了一种统一的开发和运行环境,本质上是一些现成软件部件COTS。这一层主要有5个组件: 通用开发工具:是综合监控系统软件的开发工具,包括编辑器、编译器、配置控制工具、语言、调试器、文档工具等。 中间件:现成的中间件产品,提供综合系统软件子系统和模块之间通讯的“软总线”。 脚本开发包:现成的脚本开发、运行环境,包括VBS/VBA和Tcl脚本语言,分别用于人机界面脚本系统和对象数据库脚本系统。 远程管理软件:现成的VNC(Virtual Network Computing,虚拟网络计算)软件,提供软件的远程部署、管理和控制功能。 防毒杀毒软件:用于保护计算机系统免受病毒、木马、流氓软件等恶意软件的侵扰,为综合监控系统软件提供无病毒的开发和运行环境。 CORBA等中间件:现成的中间件产品,提供综合系统软件子系统和模块之间通讯的“软总线”。 (2)服务组件 服务组件层提供以数据中心为核心的、对任何应用程序的开发所必须的基本组件,并完成基本的SCADA软件功能。 实时数据库:用于实时数据的存储和管理,提供面向(设备)对象特性,实现对象模型的在线管理、分布数据一致和数据库访问服务的基本接口。实时数据库本身提供内部计算功能。 接口与采集:通过MODBUS TCP/IP、OPC、ODBC、FTP等标准协议实现外部子系统的接入,提供实时、定时、需要时、数据变化传送等多种采集方式,提供特殊协议扩展开发的软件框架。 错误系统:包括处理和记录运行时错误的API,定义错误条件的工具,以及浏览和分析运行时错误的工具。 报警/日志系统:提供系统发生的事件记录,包括配置工具和应用开发API接口,提供报警和记录的存储、管理、检索等通用服务功能。 环境管理:实现通讯诊断、任务诊断、冗余切换等运行环境管理功能。 历史数据管理:对来自运行时系统的监视数据和事件实现集中长期历史库存档,以及浏览、监视和管理存档数据的工具。 命令系统:包括命令定义工具,运行时带命令语法检查的命令处理器和动态命令调用的应用开发API接口和工具。 人机界面HMI:包括用户界面开发的开发工具和控件库,在线HMI环境。 应用生成工具:生成标准的二次开发应用程序框架,提供标准化的应用开发流程和模型,提高应用开发质量。 (3)应用组件 应用组件层提供专业的综合监控系统应用功能组件。这个包的主要目标是通过分析综合监控系统各个专业的典型应用,利用系统软件提供的工具和开发接口实现专业应用功能,为应用开发提供一个明确的路径,达到符合固有设计标准的目标和获得可维护的软件。 3.3.4 综合监控软件平台的数据库要求 综合监控系统软件需要构建一个大容量的分布式实时数据库,成功的案例是采用面向对象的方法构建面向对象的实时数据库,它的特点如下: 1 面向对象特征。对象是系统中在工程设计级所能识别的类的实例,对象不仅表现控制系统中任何物理设备(如断路器,电机等),也表现逻辑设备(如计算功能块、方案页)或高级组合对象(如工艺系统,直流牵引系统、隧道环控系统等)。这里“对象”主要指从用户视图中或操作员角度所看到的各种工艺设备,如开关、刀闸、泵、阀门、风机、轨道、电扶梯等,当然也可以包括系统构成设备,如计算机、网络等。对象数据库提供的服务有: (1)支持面向对象持久性服务,支持重要的面向对象特征,如封装、对象标识、对象关系、继承和多态; (2)基本数据库操作如基本的数值读写定位服务,支持对象创建、修改和删除的基本操作; (3)通用的数据查询和获取接口和对象暴露的操作接口; (4)多对象行为,支持多对象复合行为; (5)订阅基本的点值改变的服务。 2 分布特征。在工作站或服务器使用的每个本地数据库可以只是全局数据库的部分映像。这些数据是工作站或服务器自己的真实状态,或出于性能原因只是在本地维护的一个副本或映像,这样就无须每次都通过网络访问数据。整个数据库是所有这些逻辑片段的合并。面向对象的数据库具有很好的扩展性和适应性,它能满足数据规模的持续扩充以及应用软件的修订。 3 事件驱动特征。在对象数据库中,对象的行为将可实现应用功能。实时数据库能处理20~50万个数据点,应用功能的执行将主要采用事件驱动方式。事件源主要是外部变量的状态变化,例如,系统探测到外部变量的值变化,产生一个例外报告事件,该事件被主动传递给相关对象,触发对象的相关动作,完成一定的系统功能,如报警判断、联动或历史数据收集和分析。事件触发为从下往上逐层触发的方式,如该对象还有父对象,则将本层处理结果也以例外报告事件继续上报,直到顶层对象,这是一个从下至上的串激过程。面向对象的实时数据库支持了综合监控系统所要求的事件驱动能力。 实时数据库采用事件驱动的方式工作,可以定义设备与子设备、不同设置间的关联关系,还支持部署在不同计算机上的设备间的关联。强大的事件驱动模型有利于实现各种联动功能。 4 内存数据库特征。考虑到系统运行时的实时性要求,数据库将主要实现为内存数据库,但也允许少量的非实时性信息驻留硬盘,内存数据库中只保留这些文件的连接。实时数据库提供多个属性,它的读写性能明显优于关系数据库的性能。数据库以ASCII或二进制格式保存,二进制格式允许快速保存。 综合监控系统的对象建模相应分为通用SCADA系统对象模型、地铁各专业对象模型和具体工程对象模型,在系统软件内核支持下,建立数据库基本模型。围绕此模型,建立一个类编辑器工具、一个程序生成器工具、一个对象模板编辑器、一个实例(对象)编辑器,即数据库组态工具。通过这些对象数据库定义和扩展开发工具,能有效支撑系统监控设备对象的扩展。 3.3.5 综合监控软件平台的安全性要求 系统软件支持完善的安全部署模式,安全机制作为对象固有的行为直接定义在对象内部,提供对象级的访问权限控制,支持只读、配置、一般写、确认写、自由访问、采集禁止、报警确认等多种数据安全访问机制,而且在应用开发阶段,针对各个专业的典型应用还支持专业化的安全访问操作,如设备挂牌、权限移交等。 更多内容: 地铁综合监控系统建设的关键问题分析(一)——建设综合监控系统的第一关键点 地铁综合监控系统建设的关键问题分析(二)—— 地铁综合监控系统技术内涵分析 地铁综合监控系统建设的关键问题分析(四)——地铁综合监控系统软件分析 地铁综合监控系统建设的关键问题分析(五)——软件国产化的问题 地铁综合监控系统建设的关键问题分析(六)——综合监控系统设计中的问题 地铁综合监控系统建设的关键问题分析(七)——综合监控系统实施风险分析 地铁综合监控系统建设的关键问题分析(八)——综合监控系统的其他问题 |
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
1.我有以下需求: | |
|
|
2.详细的需求: | |
* | |
姓名: | * |
单位: | |
电话: | * |
邮件: | * |