基于μC/OSⅡ的备用电源自动投入装置设计

出处:维库电子市场网 发布于:2023-06-19 14:35:58

摘要  备自投装置是电力系统中常用的一种安全自动装置,在发电厂和变电站及配电网络中得到广泛的应用。本文引入嵌入式操作系统μC/0S_II,将它移植到以TMS320F240 DSP和XIlinx CPLD为设计的新型备自投装置的硬件平台上,并详细介绍该装置的任务划分和任务调度。

引 言
      备用电源自动投入装置是当工作电源因故障断开以后,能自动而迅速地将备用电源投入到工作或将用户切换到备用电源上去,从而使用户不至于被停电的一种自动装置,简称备自投。

      备自投装置作为电力系统中常用的一种安全自动装置,其发展与继电保护装置一样经过了电磁(整流)型、晶体管型、集成电路型和微机型四个主要阶段。究其本质,各阶段的主要技术区别在于对采集量(电流量、电压量、开关量)的运算方式和逻辑功能的实现方式上有所不同。目前,以微机型备用电源自投装置为应用主流,它将电流量、电压量等模拟量通过VFC(压频变换器)元件或ADC元件转换为数字量送到装置的数据总线上,通过预设程序对数字量和开关量进行综合逻辑分析,并根据分析结果作用于相关断路器,从而实现自动切换功能。

      DSP芯片也称数字信号处理器,是一种特别适合于进行数字信号处理运算的微处理器,其主要应用是实时快速地实现各种数字信号处理算法。

      本文采用μC/OS-II作为软件平台的操作系统,它是一种优先级占先式内核,具有多任务的实时调度能力,更加适合管理DSP丰富的外设资源,从而更好地发挥其高效的运算性能,满足备自投装置实时性、可靠性等要求。

1 μC/OS_Il的移植与配置
      为了方便移植,大部分μC/OS_II的代码是用C语言编写的,但底层与处理器硬件相关的少量代码仍使用汇编语言编写。这是因为μC/OS_II在读写处理器寄存器时,只能通过汇编语言。说明了μC/OS_II的结构以及与硬件的关系。

      首先,修改与TMS320F240相关的文件OS_CPU.H、OS_CPU_A.ASM和OS_CPU_C.C,再加上其公开的系统源代码,将它们一起拷入指定的文件目录,系统的移植就完成了。系统移植成功后,需要对操作系统进行裁剪,把用不到的功能去掉,以限度地节省存储空间。这项工作是通过OS_CFG.H中的宏定义进行的,本文用到多任务管理、信号量、互斥量等功能。在本应用中,μC/OS_II内核经过剪裁后只有2 KB左右,相对TMS320F240的16 KB内部程序FIash只用了不到八分之一。下面是测试内核能否正常工作的应用程序。表明移植成功。


2 新型背自投动作逻辑的运行背景与硬件平台
      该动作逻辑适用的接线方式是:2条进线、分段母线带内桥和2台三圈变压器。


其中Ulab反映进线1有无电压,Il反映进线1有无电流,U1AB、U1BC反映母线1段有无电压,U1CA反映主变1有无电压;U2ab反映进线2有无电压,12反映进线2有无电流,U2AB、U2BC反映母线2段有无电压,U2CA反映主变2有无电压。

      根据动作逻辑和其自适应性,本装置需要采集8路开入量:断路器1的KKJ位置和TWJ位置;断路器2的KKJ位置和TWJ位置;断路器3的KKJ位置和TWJ位置;主变1保护动作信号量ACTl;主变2保护动作信号量ACT2。同时,需要5路开出量:断路器1的跳闸命令和合闸命令;断路器2的跳闸命令和合闸命令;断路器3的合闸命令。

      本装置以TMS320F240 DSP和Xilinx CPLD为设计其硬件平台,根据备自投装置的要求,系统要实现以下功能:键盘输入、参数显示、模拟量采集、开关量输入输出、看门狗单元以及通信等。

      装置采集进线和主变的8路电压量和2路电流量以及继电器和主变保护的开关位置状态,并跟踪变电站系统当前的运行方式,自动判断是否满足充电、放电及动作条件,之后发跳合闸命令,完成动作逻辑。通过现场二次互感器引入各路电压电流模拟信号量,并采集现场的位置开关和节点信号。其继电器动作信号输出端与现场控制线路开关投切的继电器连接。系统运行过程中实时显示电流、电压、开关量等参数,并可以通过键盘对控制器进行参数在线设定。


3 任务划分与任务调度
3.1 任务划分

      由于μC/OS-It是抢占式任务调度方式,并且要求每个任务的优先级,所以在进行任务划分、任务优先级确定的时候,必须仔细衡量各任务之间对共享资源的操作要求,避免产生优先级反转或系统死锁的问题。另外,正确的任务划分和优先级分配可以充分体现嵌入式操作系统任务调度算法的效率,从而提高整个程序的实时性能。根据任务分解规则和装置系统功能的特点,可以将装置任务模块分解为以下几个任务。


考虑到数据定时采样和开关量输入任务是数据处理和准确动作判断的基础,实时性要求很高,所以在DSP硬件定时中断中完成,程序具体实现如下:
    interrut voidint2(void){/*通用定时器1启动A/D转换*/
    if(*EVIVRA=0x0027){
    asm(″setcINTM″); /*关中断*/
    *IFR一0x0002;/*清除IFR的中断标志位″/
    *EVIFRA=0x07ff;
    /*清除定时器1的中断标志位,为下中断做好准备″/
    ADConver(); /*数据采样任务*/
    asm(″clrcINTM″); /*开中断*/
    }
    return;
    }

3.2任务调度

       μC/OS-11中,每个任务都处于休眠态、就绪态、运行态、挂起态和中断态5种状态之一。当前运行的是开关量输出任务,数据处理动作判断任务因为等待数据定时采样任务发出的信号量seml而处于挂起态。当数据定时采样中断发生时,内核进行任务切换,就绪态任务中数据定时采样任务优先级,所以进入运行态。当完成采样时,发出信号量selnl给数据处理动作判断任务,使其就绪,并且成为就绪态任务中优先级的任务,转入运行态。此时,开关量输出任务等待信号量sem2处于挂起态,当数据处理完毕后,发信号量sem2,开关量输出任务得到该信号量后进入就绪态。因为当前运行任务的优先级低于开关量输出任务,所以立即运行开关量输出任务。


结语
      本装置投入运行以来,一直很稳定,取得了良好的运行效果,显示了高可靠性、安全性和实时牲。多任务操作系统思想的运用改变了传统的嵌入式开发过程,使备自投装置具有足够的通用性和可扩展性。同时,这种应用嵌入式操作系统作为软件平台的设计对其他微机控制保护装置也有一定的借鉴意义。

版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

广告
上传BOM文件: BOM文件
*公司名:
*联系人:
*手机号码:
QQ:
应用领域:

有效期:
OEM清单文件: OEM清单文件
*公司名:
*联系人:
*手机号码:
QQ:
有效期:

扫码下载APP,
一键连接广大的电子世界。

在线人工客服

买家服务:
卖家服务:

0571-85317607

客服在线时间周一至周五
9:00-17:30

关注官方微信号,
第一时间获取资讯。

建议反馈

联系人:

联系方式:

按住滑块,拖拽到最右边
>>
感谢您向阿库提出的宝贵意见,您的参与是维库提升服务的动力!意见一经采纳,将有感恩红包奉上哦!