黄力宁 邓 嫔
(北京和利时系统工程有限公司, 100176, 北京∥第一作者, 高级工程师)
城市轨道交通ISCS(综合监控系统)具有集成互联专业多、接口多、功能复杂、工期紧、任务量大等特点,而国内对于ISCS的设计仍停留在传统的手工设计阶段。传统的设计方法效率低下、质量不高,已经难以满足日益发展的GWQS-ISCS(绿色、智慧、品质、安全的ISCS)的设计需求[1],必须将一些高效的设计思路和方法引入到ISCS的设计中。BAS(环控与设备监控系统)是ISCS的重要组成部分,本文以青岛地铁13号线为例,对地铁ISCS设计阶段自动化软件进行重点研究,以满足GWQS设计对ISCS的品质和安全要求。
青岛地铁13号线是青岛市最长的地铁线路,包含1个运营控制中心、23个车站、1个车辆段和2个停车场,共计27个设计点[2]。作为ISCS中最大的专业,BAS包含的设备最多、功能最复杂,需对车站和区间的通风系统、MCC(马达控制中心)、照明等10余个子系统的33个接口专业进行全面、有效的监控及管理,以确保设备处于安全、可靠、高效、节能的最佳运行状态[3]。在车站/区间发生火灾或阻塞的情况下,BAS需要迅速转换为防救灾模式,配合FAS(火灾报警系统)进行灾害联动,为站内乘客及机电设备的安全提供必要保障[4]。作为涉及到人身安全的重要消防联动工程,在工期紧、任务重的情况下,BAS对设计的质量及效率要求非常高,应在传统设计基础上进行创新,提出简捷、高效的设计思路,以满足设计要求。
如图1所示,BAS的整个设计流程包括点表设计、PLC(可编程逻辑控制器)程序编写和带平台测试3部分。本文提出1种高效的设计方法,利用计算机VS编程软件设计出自动化软件,实现BAS的自动设计流程。该方法已应用到青岛地铁13号线ISCS设计的3个阶段中,并取得了良好的设计效果。
注:实线为自动设计流程;虚线为传统设计流程;括号内数字表示该模块所需的设计耗时。
BAS的4个监控点表是PLC程序编写和上位组态的基础,其中:箱柜点表包含设备的名称、通道、PLC地址等信息,用于箱柜成套;模式表是各模式工况下设备目标动作信息的点表,用于模式控制;类表是BAS中接口设备的类码、点位地址信息的点表,用于设备分类; BAS-ISCS点表是BAS与ISCS数据交互的设备、点位地址信息的点表。在这4个点表中,箱柜点表的设计最为复杂、费时。本文以箱柜点表的设计进行举例说明,剩余点表的设计不再赘述。
据统计,青岛地铁13号线共有294个箱柜表需要设计。传统的每个箱子中逐个设备填写的方式费时、费力、准确率不高,而且若有填写错误,这些错误会积累并传递到下个环节——PLC程序编写中。所以,本文提出借助VS语言编写箱柜点表的生成软件来实现。
2.2.1 设计原理
首先,通过读取从设计院图纸中导出的设备列表,将包含设备类的点位、通道的类模板等信息复制到对应的箱柜点表中;其次,调用设备通道填写程序,从上而下逐行扫描、顺序填写,再调用通道检测程序对通道地址进行自检,确保同一设备的所有点位分布在同一个模块上,方便日后的检修与更换;最后,调用地址填写程序填写PLC地址,完成车站设计点的所有箱柜点表的自动生成工作。箱柜点表自动生成的原理如图2所示。
图2 箱柜点表的自动生成原理图
2.2.2 工程应用
本软件的系统开销较小,符合GB/T 13423—1992《工业控制用软件评定标准》中“开销特性”和“可靠性”准则,运行效率较高。据统计,与传统的设计方法相比,采用箱柜点表生成软件生成所有箱柜点表后,1个车站箱柜点表的设计时间缩短了约95%,错误率也由15%降至0,达到了省时、高效的目的,且全线表格格式统一,为后续的PLC程序准确编写以及HMI(人机界面)组态奠定了坚实基础。
本项目采用了美国AB公司的大型热备冗余系列PLC控制器Logix5561,编程和调试软件采用RSLogix 5000。青岛地铁13号线的41套PLC程序编写是该线BAS设计的重中之重。以该线的典型车站积米崖站为例,主从端的PLC共包含89个子程序、8 877行程序,由此预估全线需设计近20万行程序。这样庞大的工作量要求在不到半年时间内高质量地完成,传统逐行“搭梯子”的手工编程方式无法满足工期要求,且在重复冗杂的设计中容易发生纰漏和错误。考虑到AB品牌PLC编程语言的特点,利用VS高级编程语言设计PLC程序并生成设计软件,以替代手工编程,可大大降低程序设计的难度与工作量。
2.3.1 设计原理
首先,根据接口专业的接口文件编写接口子程序、根据BAS用户需求书编写各功能程序、根据设计院图纸编写各种工况下的控制逻辑程序等,最终实现典型站PLC程序设计;其次,在研究典型站PLC程序的基础上,利用VS语言设计PLC程序的自动生成软件,并根据程序功能将设备控制、模式控制、IBP(应急后备盘)、FAS联动等4大部分的功能程序按步骤顺序生成;最后,结合典型站的PLC程序生成符合PLC编程规则的以.L5K为后缀名的程序文件,并导入PLC程序中,最终实现自动编程目的。
在此过程中,特别将点位多、重复性大、容易出错的编程工作设计到自动生成软件中,依靠软件去检索和查询4个点表,大大减少了手工设计的工作量。此外,根据代码功能的不同,设计出VS语言类模板进行模块化设计,提高了程序代码的复用性及软件执行效率与程序生成速度。PLC程序自动生成原理如图3所示。
注:PVS为公共区大系统;RVS为设备区小系统;TVS为隧道系统;① 为BAS-ISCS点表;② 为MCC点表;③ 为IO(设备)点表;④ 为模式表;⑤ 为IBP点表。
2.3.2 工程应用
本程序生成软件符合GB/T 13423—1992《工业控制用软件评定标准》的“用户友好性”以及“可移植性”准则,操作简单、容易上手。而且,该软件对系统要求不高,方便移植:复制PLC程序生成软件到本机并运行,点击按钮选择已设计好的4个监控点表以及MCC点表,点击运行按钮即可自动生成xml格式的PLC程序,并分功能单独输出。再将这些程序导入到PLC工程中,即可实现PLC程序的自动编写工作。
采用此方式编写PLC程序,简单快捷,省时高效,准确率高。以13号线的典型站嘉年华站为例,需要编写的PLC程序行数约为7 000行,采用此方式自动生成的程序可达6 000行,占程序总行数的80%,大大降低了编程人员的编写难度,解决了在工程设计阶段耗时多、错误率高、精力需要长时间高度集中等问题,将编写1个车站PLC程序的时间缩短将近90%,真正实现了从输入点表到输出PLC程序一键完成的功能。此外,该生成程序结构全线统一,方便调试及维护,非常适合地铁ISCS这类站点多、设备杂、工期紧的工程设计工作。
BAS的PLC程序作为地铁车站内火灾和阻塞灾害下的防灾救灾的关键系统,是GB/T 12504—1990《计算机软件质量保证计划规范》规定的“故障会影响到人身安全”的重要软件,必须经过V&V(软件验证与确认过程)环节的完全测试,才能应用到现场。传统的V&V测试环节只能满足单点对点和静态对比,采用手动方式进行功能测试,效率低下。以13号线的典型站嘉年华站为例,需要对BAS的25个大小子系统的140个可控设备、154个模式、1 600个点位逐个进行功能测试,需要耗时1周,且测试的准确率不高,无法满足现场对测试工期的要求。根据GB/T 15532—2008《计算机软件测试规范》的要求,软件测试应采用测试软件,避免或减少人工操作,所以设计出1款可自动测试PLC程序功能的测试软件就显得尤为重要了。
2.4.1 设计原理
本项目BAS采用AB品牌PLC作为核心控制器,和HMI共同采用CIP(工业互联网协议)网络通信,为保证测试软件的通用性,采用OPC(用于过程控制的对象连接技术)通信协议。
如图4所示,以导入读取的4个监控点表数据、生成单点控制以及4种模式控制的测试举例说明。通过OPC协议连接PLC控制器并取得设备的控制权限,模拟ISCS下发设备的开关、角开、高低速、运行与停止等命令,通过查看设备输出的实际点位变化,实现PLC点控控制逻辑的测试;正常通风和照明模式控制功能的测试是通过修改各子系统控制方式到模式控制,模拟ISCS下发模式号到PLC,将当前模式下设备的实际输出情况和环控工艺图纸的预期工艺进行对比,实现正常模式的执行逻辑测试;对于靠模式号驱动的灾害模式,则是模拟ISCS下发模式号,并对比设备输出指令与预期目标,用以判断灾害模式是否执行成功。
注:虚线框内为输入文件。
2.4.2 工程应用
在工控机上运行PLC工程和HMI监控系统,再运行自动测试软件,选择4个监控点表,点击运行即可完成对PLC程序和HMI界面组态的带平台联合测试。基于13号线嘉年华站的测试工作量,与传统的设计方法相比,应用自动测试软件后可将测试的时间缩短90%,实现了对PLC程序的点位逻辑正确性、点控控制完整性、正常模式和灾害模式下的功能等测试,还可以检测出HMI界面中的组态问题,最终生成包含测试用例、测试结果、测试准确率的文档,供编程人员和界面组态人员参考。这不仅可以改正、完善PLC的程序和HMI系统,还可提高工程数据的鲁棒性,以及界面组态的准确性和完整性。
本软件采用VS编程平台开发并能够完全模拟HMI与现场设备的运行情况,测试过程属于动态测试方法中的黑盒测试方法。应用该测试方法可减少系统的初始故障数,大幅提升软件的MTBF(平均无故障运行时间),进而提高软件的稳定性[5],符合GB/T 15532—2008《计算机软件测试规范》的要求。
青岛地铁13号线应用了本文所述的自动生成与自动测试软件,与传统的设计方法相比,该线BAS的设计效率与质量显著提高,整体设计效率提升了85%,设计耗时减少90%以上,为BAS现场的具体实施奠定了基础,保障了线路按时、高质量开通。该软件采用主流的PLC控制器,支持OPC通信方式,使得软件不仅可以应用到绝大多数的地铁ISCS项目中,极大地提高了ISCS设计阶段的自动化水平,还可应用到符合IEC 61131-3《可编程语言标准》的其它PLC编程的行业环境中,其技术应用前景十分广泛。