微机保护的性能及其可靠性取决于软、硬件,因此软件的编写和硬件的选择是一项关键性的工作。我们在编写软件时,通常先画好流程图,然后按着流程图来编程,一般是一个无限循环,循环中调用相应的函数(子程序)完成相应的操作(称为后台行为或任务级);用中断来处理随机事件(称为前台行为或中断级)。程序流程如图1所示。任务的响应时间取决于后台循环执行的时间(在不同的状态或运行方式下,执行时间不同),程序经过某一点的时间不能确定,程序修改了,循环时序就受到影响。这种编程方法,使得程序开发周期长,修改困难,任何一处受到破坏,就会死机。在8位机时代,还不算明显,随着16/32位机的使用及系统复杂性的增加,表现的越来越明显了。这种传统的前台/后台程序开发机制已不能满足日益复杂和多样化的微机保护的应用需求,采用RTOS来开发微机保护应用程序,现已成为开发人员的发展方向。
目前运行的微机保护装置大多数为16位单片机,对于常规的保护其性能基本能满足。但16位单片机往往受到运算速度等因素的影响,不易实现更复杂的算法和更高采样速率。随着微电子和半导体技术的发展,DSPs已运用在了众多领域。由于DSPs的强大数字信号处理能力,越来越受到开发人员的青睐。
2 关于RTOS(Real Time Operating System)实时操作系统
实时操作系统是一段在系统启动后,首先执行的背景程序。用户的应用程序是运行于RTOS之上的各个任务,RTOS根据各个任务的要求,进行资源管理、消息管理、任务调度,异常处理等工作。实时多任务内核是RTOS的关键部分,基本功能包括任务管理、定时器管理、存储管理、资源管理、事件管理、系统管理、消息管理等。RTOS与其它OS相比主要特征是规模小、可裁剪、微内核。
在RTOS机制下开发多任务程序,CPU的运行时间被划分为许多小的时间片,RTOS按照某种调度算法分别分配给不同的任务,多个任务分别在自己的时间片内访问CPU,达到微观上轮流运行,宏观上并发运行的多任务效果。程序流程如图2所示。 |