微机保护主程序框图如图2-5所示。
一、初始化
“初始化”是指保护装置在上电或按下复位键时首先执行的程序,它主要是对单片微机(CPU)及可编程扩展芯片的工作方式、参数的设置,以便在后面的程序中按预定方案工作。例如CPU的各种地址指针的设置;并行、串行及定时器可编程扩展芯片的工作方式和参数的设置。初始化有初始化(一)、初始化(二)及数据采集系统初始化三个部分。
初始化(一)是对单片微机及其扩展芯片的初始化,使保护输出的开关量出口初始化,赋以正常值,以保证出口继电器均不动作。初始化(一)是运行与监控程序都需要用到的初始化程序。初始化(一)后通过人机接口液晶显示器显示主菜单,由工作人员选择运行或调试(退出运行)工作方式。如选择“退出运行”就进入监控程序,进行入机对话并执行调试命令。若选择“运行”,则开始初始化(二)。初始化(二)包括采样定时器的初始化、控制采样间隔时间、对RAM区中所有运行时要使用的软件计数器及各种标志位清零等程序。
初始化完成后,开始对保护装置进行全面自检。如装置不正常则显示装置故障信息,然后开放串行口中断,等待管理系统CPU通过串行口中断来查询自检状况,向微机监控系统及调度传送各保护的自检结果。如装置自检通过,则进行数据采集系统的初始化。这部分的初始化主要指采样值存放地址指针初始化,如果是VFC式采样方式,则还需对可编程计数器初始化。完成采样系统初始化后,开放采样定时器中断和串行口中断,等待中断发生后转入中断服务程序。
二、自检的内容和方式
在完成初始化(二)之后进入全面自检。全面自检包括对RAM、EPROM、EPROM等回路的自检。
- RAM的读写检查
对RAM的某一单元写入一个数(例如写入AAH),再从中读出,并比较两者是否相等。如发现写入与读出的数值不一致,说明随机存储器RAM有问题,则驱动显示器显示故障信号(故障字符代码)和故障时间,故障类型说明“RAM故障”。显示故障的同时开放串行口中断并等待管理单元CPU查询。
(二)定值检查
每套定值在存入EPROM时,都自动固化若干个校验码。若发现只读存储器 EPROM定值求和码与事先存放的定值和不一致,说明EPROM有故障,则驱动显示故障字符代码和故障时间,故障类型说明“EPROM故障”及故障范围(定值区和参数区)。
(三)EPROM求和自检及CRC自检
求和自检EPROM时,将EPROM中存放的程序代码从第一个字节加到最后一个字节,将求和结果与固化在程序末尾的和数进行比较。如发现求和自检与原程序求和结果不符,则显示器显示相应故障字符、代码和故障时间、类型说明“EPROM故障”。这种求和自检方式算法简单,执行速度快,常用于EPROM的在线实时自检。但EPROM累加和自检在多个字节变位时漏检的可能性相对较大。因此对于新投产检验时常用CRC循环冗余码自检方法。CRC自检是对每个字节的每个位均作规定的运算,错误检出率高,但由于执行速度慢,花费很长的CPU时间,因此不能用于在线实时自检。
(四)开出自检
开出自检主要检测开出通道是否正常,它是通过硬件开出反馈来检测的(详见第一章出口跳闸回路)。
三、开放中断与等待中断
在初始化之时,采样中断和串行口中断仍然被CPU的软开关关断,这时A/D转换和串行口通信均处于禁止状态。初始化之后,进入运行之前应开始模数变换,并进行一系列采样计算。所以必须开放采样中断,使采样定时器开始计时,并每隔T时间发出一次采样中断请求信号。同样的道理,进入运行之前应开放串行口中断,以保证接口CPU对保护CPU的正常通信。在开放中断后必须延时60ms,以确保采样数据的完整性和正确性。
四、自检循环
在开放了中断后,所有准备工作就绪了,主程序就进入自检循环阶段。故障处理程序结束返回主程序,也是在这里进入自检循环的。
自检循环包括查询检测报告,专用及通用自检等内容。
在全面自检、专用自检及故障处理程序返回主程序时均带有自检信息和保护动作信息,有必要将此信息打印出来,供值班人员查看、保存。所以自检循环一开始就安排查询检测报告程序。
通用自检内容通常是定值选择拨轮号监视和开入量监视。定值选择拨轮号关系到保护整定值是否正常,必须检测监视,一旦有变化或者接触不良就发呼唤信号。开入量的状态涉及系统运行方式,所以必须经常检测。CPU预先读入各开入量的状态并存入RAM,然后通过不断读取开入量状态,监视其有否变化,如有变化经延时发出呼唤信号,除了呼唤信号灯亮之外,还通过打印报告,打出开入量变化时间及变化前后的状态。专用自检的内容是根据不同的保护安排不同的自检内容,主要是根据保护的要求,如检测3和3,判断TA、TV是否有断线,判断系统静稳是否破坏等内容。
在循环过程中不断地等待采样定时器的采样中断和串行口通信的中断请求信号。当保护CPU接到请求中断信号,在允许中断后,程序就进入中断服务程序。每当中断服务程序结束后又回到自检循环并继续等待中断请求信号。主程序如此反复自检、中断进入不断循环阶段,这是保护运行的重要程序部分。
最后应该指出,各种保护装置的主程序、中断服务程序、保护逻辑程序和处理故障程序不可能完全相同,本章所述的各种程序及其框图只能是一种典型的格式而已。