0 引言
本文设计的定时继电器驱动模板是一款嵌入式SCADA系统的一种插件,称为智能控制输出板(IntelligentControl Output Board,简称C板)。该装置主要用于电力系统和电动马达的实时数据采集与控制。
在电力系统自动化领域,对发电厂/变电站控制对象的远方控制主要采用定时继电器驱动现场的执行机构进行操作。鉴于电力系统的特殊性,对控制操作的安全可靠性有非常严格的要求,一旦发生误动,将导致电力系统发生运行事故,甚至造成大面积停电的重大事故。为此,在进行智能控制输出板设计时要对开关量过程输出通道进行严格的安全设计,同时要按照电力调度遥控操作规程,设计返校检测闭锁、超时闭锁等安全措施,防止装置受到干扰以后产生错误的控制输出,酿成事故。本文主要就该模板的软硬件设计原理与实现方法以及遥控过程的安全可靠性设计进行了介绍。
1 硬件设计
1.1 总体设计
C板以Philips LPC2138 ARM微控制器为核心,完成8通道定时继电器驱动输出。作为嵌入式SCADA系统的一种插件,板上设计了一路RS422异步串行通信接口,通过该接口与装置的通信与管理模板(Communication andManagement Board,简称M板)通信,接收M板下达的控制输出命令,并执行控制输出操作。由于M板要通过RS422总线管理多块IIO板工作,M板采用主从方式实现与IIO板的通信连接,为此各IIO板都设计了ID标识地址进行身份确定。C板的ID标识地址采用8位双排跳线器设置,标识地址范围为01H~FFH。此外,模板还设计了一路为RS232接口,用于模板的检测与调试,以及LPC2138的软件下载。调试RS232接口是一个标准的VTl00超级终端接口,通过该接口可以与PC机进行通信连接,使用Windows的超级终端仿真软件可以十分方便地对该模板进行调试和检测。同时该串口也是LPC2138软件的下载接口,将编译连接生成的软件下载到LPC2138的FLASH存储器。
板上定时继电器驱动过程通道由12个TQ2-24V继电器和光电隔离达林顿继电器驱动电路、状态输出锁存电路、状态输出逻辑闭锁电路、继电器状态返校电路、单稳延时电路等部分组成。其中状态输出锁存电路、状态输出逻辑闭锁电路、继电器状态返校电路采用一片EPM7128CPLD编程实现,LPC2138通过I/O引脚访问CPLD内部实现的寄存器和锁存器对继电器进行控制操作,实现模板的数字量输出功能。
为了保证模板运行的稳定可靠性,C板设计有硬件看门狗电路(HWDT),软件还设计了软看门狗定时监视器(SWDT)。软硬看门狗协同工作,在软件“走飞”或局部”走死”之后自动恢复模板运行。C板的工作原理如图1所示。
1.2 定时继电器输出过程通道设计
如图3所示,定时继电器输出电路由输出状态锁存器(LS273)、带达林顿驱动光电隔离电路(TLPl27)、继电器(TQ2-L-24v)三部分组成。板上的12个继电器按功能划分为对象、性质、执行3类,其中JD1~8为对象(OBJ)继电器、JD9和JDl0分别为合分性质继电器(CA/0A)、JD11和JDl2分别为合分执行继电器(CE/OE)。CPU将锁存器的对应位设置为1,光偶的达林顿驱动电路导通,继电器的常开触点闭合,反之亦反。即cPU通过访问锁存器,控制继电器动作,从而达到对现场执行机构控制操作的目的。
模板上的继电器触点采用町洋2EHDRM/2ESDFM-18P接线端子从模板的后面板对引出,与外部中间继电器构成执行回路。板上12个继电器的触点与接线端子的连接关系如图4所示。
由于TQ2-L-24V继电器触点的驱动能力不够,不能直接驱动现场执行机构操作,中间继电器(至少3对触点)的体积太大,安装不到电路板上。为此,中间继电器安装在机柜内,与板上的继电器触点构成控制回路,驱动现场执行机构操作。
根据用户需求,一块C板可以实现对4/8个现场对象进行合分操作。控制4个对象合分操作时,OBJ1~4的输出触点并联,再与CA、CE的触点串联驱动4个合操作中间继电器;0BJ5~8的输出触点并联,再与0A、0E的触点串联驱动4个分操作中间继电器。控制8个对象合分操作时,需要驱动19个中间继电器构成控制回路,控制回路与中间继电器触点输出连接如图5所示。
进行电力系统断路器分闸操作时,还需要设计专门的重合闸放电回路,避免分闸操作之后,重合闸机构再将断路器合上。
1.3 安全措施设计
安全、稳定、可靠是对C板设计提出的最重要的要求,模板设计时需要采取一系列的安全措施防止装置受到干扰后误出口造成事故。首先,按照规程的要求设计三个继电器串联、分步操作驱动中间继电器动作,减少受干扰误出口的概率,如图4、5所示。其次,根据EMS/SCADA系统遥控操作的特点,严格控制每次只允许1个通道控制输出。为了防止模板受干扰出现多个对象同时选中的情况,CPUD内部设计有电路自动检测74LS273的8个输出状态,如果出现多于一个状态为高电平,则产生cIJR信号将74LS273的输出状态清除,禁止74LS273对继电器操作。模板复位时,也产生CLR信号清除74LS273的状态,防止系统启动时74LS273的状态不确定,造成误出口。第三,板上12个继电器都通过辅助触点设计有状态返校(RC)电路,如图3所示。CPU通过CPLD内部设计的状态缓存器可以读取继电器的工作状态,一旦检测到继电器工作状态不正确,立即执行软件清除指令,将74LS273的状态清零,并返回执行出错指示。第四,根据控制操作执行的时序规定,采用741LS123设计了控制过程时间限定电路,从控制对象选择开始计时,如果在规定时间之内控制过程还没有完成执行过程,硬件自动撤消本次执行操作,即便软件“走死”时也能自动执行闭锁操作。与此同时,软件设计的定时器也监视着遥控执行过程,一旦通信超时,遥控执行确认命令没有收到,立即执行软件清除指令,取消本次操作。CPLD内部设计的控制过程闭锁电路如图6所示。第五,M板在执行主站下达的遥控命令时,也会自动检测控制对象的工作状态,如果检测到主站命令非法,也将拒绝执行命令。
在采取上述安全措施之后,模板上的定时继电器输出过程通道的安全性可以做到万无一失了。作者近18年远动终端(RTU)的设计与工程实践经验表明,上述安全措施的可靠性非常高,至今没有出现遥控误出口的情况。
2 软件设计
模板软件采用μC/OS—II作为操作系统,软件的层次结构如图7所示。模板的应用软件设计主要工作包括目标板底层驱动程序的编写和模板I/O功能的设计编程两部分工作。
目标板底层驱动主要包括两个异步串口中断的中断服务程序的编写,分别完成与M板报文通信和与PC机VTl00超级终端仿真软件的通信。
模板应用软件设计主要包括3个任务程序的编写,分别是看门狗定时器任务、与M板数据通信协议处理、VTl00超级终端命令处理等。控制输出执行过程在与M板数据通信协议处理任务中实现。
限于论文的篇幅,本文对模板软件实现的细节不作详细介绍,仅将定时继电器输出过程算法提取出来进行介绍。C板运行过程中,软件静态等待接收M板下发的输出命令,控制指定继电器的输出操作,并将执行结果反馈给M板。根据规程要求,每个对象的控制输出都严格按照如下三个步骤来操作:
(1) 选择对象操作。操作方法为:驱动指定的对象继电器吸合,并读取该继电器的工作状态进行返校。如果返校结果正确,则允许进行第二步操作,否则自动撤消本次命令。
(2) 选择性质操作。操作方法为:先检查第一步操作是否成功,如果第一步操作失败或没有进行过第一步操作,则自动撤消本次命令。如果第一步操作成功,则驱动指定的性质继电器吸合,并读取该继电器的工作状态进行返校。如果返校结果正确则允许进行第三步操作,否则自动撤消本次命令。
(3) 执行操作。操作方法为:先检查前面两步操作是否成功,如果前两步操作失败或没有进行过第一、二步操作,则自动撤消本次命令。如果前面两步操作成功,则驱动指定的执行继电器吸合,并读取该继电器的工作状态进行返校。如果返校结果正确,则报告本次输出操作成功,否则报告本次输出操作失败。控制输出操作的执行流程如图8所示。
3 结论
装置定型开发完成之后,在国电北仑电厂三期、中山嘉明电厂二期UPS电源监控和户县惠安化工厂19口水井的马达自动控制中投入使用,运行结果表明,c板定时继电器驱动的正确率和安全可靠性等性能指标符合相关标准的要求,运行稳定可靠,达到了预期的设计目的。