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

最新更新时间:2015-01-30来源: 互联网关键字:μC  OSⅡ  备用电源 手机看文章 扫描二维码
随时随地手机看文章
  引 言

 

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

 

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

 

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

 

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

 

  1 μC/OS_Il的移植与配置

 

  为了方便移植,大部分μC/OS_II的代码是用C语言编写的,但底层与处理器硬件相关的少量代码仍使用汇编语言编写。这是因为μC/OS_II在读写处理器寄存器时,只能通过汇编语言。图l说明了μ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条进线、分段母线带内桥和2台三圈变压器。具体如图3所示。

 

主接线图

 

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

 

装置结构框图

 

  3 任务划分与任务调度

 

  3.1 任务划分

 

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

 

任务划分与优先级分配表

 

  考虑到数据定时采样和开关量输入任务是数据处理和准确动作判断的基础,实时性要求很高,所以在DSP硬件定时中断中完成,程序具体实现如下:

 

程序

 

  3.2任务调度

 

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

 

 

 

μC/OS-11的自备投的任务状态和任务切换示意图

 

  结语

 

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

关键字:μC  OSⅡ  备用电源 编辑:探路者 引用地址:基于μC/OSⅡ的备用电源自动投入装置设计

上一篇:高效低功耗的开关电源设计攻略
下一篇:何时电源模块是正确的选择?

推荐阅读最新更新时间:2023-10-12 22:52

μC/OS-II软件定时器管理算法分析及改进
1、概述   软件定时器是一种软件措施,通过它可以使一项特定的任务在给定的时间段后被执行。软件定时器广泛地应用于内核设计和应用程序设计中,例如,一个进程使用软件定时器等待其他的进程完成特定的动作,以使任务间的操作同步等,因此,对软件定时器的高效实现对提升系统的响应效率是至关重要的。   作为一种基础的软件措施,μC/OS-II 的 V2.86版本中增加了对软件定时器的支持。使用μC/OS-II提供的软件定时器,应用程序可以方便地完成特定的定时任务。本文对μC/OS-II的软件定时器的实现机制进行简要分析,然后提出了对μC/OS-II的软件定时器的实现进行改进的方法。 2、μC/OS-II软件定时器的实现机制及算法分析
[嵌入式]
s3c2440的LCD应用
1、时序 LCD一般需要三个时序信号:VSYNC、HSYNC和VCLK。VSYNC是垂直同步信号,在每进行一个帧(即一个屏)的扫描之前,该信号就有效一次,由该信号可以确定LCD的场频,即每秒屏幕刷新的次数(单位Hz)。HSYNC是水平同步信号,在每进行一行的扫描之前,该信号就有效一次,由该信号可以确定LCD的行频,即每秒屏幕从左到右扫描一行的次数(单位Hz)。VCLK是像素时钟信号。 s3c2440处理LCD的时钟源是HCLK,通过寄存器LCDCON1中的CLKVAL可以调整VCLK频率大小,它的公式为: VCLK=HCLK 例如,HCLK的频率为100MHz,要想驱动像素时钟信号为6.4MHz
[单片机]
如何用C#编写简单的示波器
在面板名称中 输入你要创建的面板名称 在参数最大值中 输入你要传输参数的最大值如果你不确定 可以先输入的大一些后面的面板可以实时更改 输入参数格式 为类json格式 {“id”:1,”参数1”:%f,”参数2”:%d} 第一项id要随着面板的增多更改。最后点击新建 实例 这是初始化的代码,其中包括所有的参数设置,包括采集的刻度,采集的记录长度,频率,采集通道这些的. 这个是用VB写的, 跟C#差别不大.
[测试测量]
如何用<font color='red'>C</font>#编写简单的示波器
友尚推出Realtek的USB3.1Type-C控制芯片---RTS5450
大联大控股宣布,其旗下友尚推出瑞昱半导体(Realtek)type-c快充电源解决方案---Realtek的USB3.1type-c控制芯片---RTS5450,其内建type-c PowerDelivery控制元件,支持PD3.0的规格并减少了系统BOM成本,可轻易设计出支持一个USB3.1type-c电源控制及传输的USB3.1Type-C产品。 大联大友尚推出的USB3.1Type-C控制芯片RTS5450整合CC与PD控制器且内含SPIFlash,无须外挂振荡器并支持Type-C连接控制功能,使用QFN-46 6.5mmX4.5mm封装,周边组件精简,可大幅缩短开发时程,并帮助工程师设计出体积小而精巧的产品。此外RTS
[电源管理]
基于μCOS-II的多窗口显示屏控制器设计
引言 LED大屏幕显示屏是当今室外平面显示的主流,其控制系统的技术发展也日趋成熟,控制系统按数据传输方式分为两类:同步显示和异步显示。同步显示控制系统即LED显示屏和视频数据源实时保持一致,视频信号实时变化。异步显示控制系统通过USB、通用串行接口、以太网等数据通信方式,更新大屏幕控制系统的视频数据存储区。数据更新由上位机控制,LED显示屏的视频信息变化由视频数据存储区的数据决定。在异步显示系统中,可实现将显示屏分为若干区域,不同的区域对应不同的存储区,数据更新时可以只更新其中的一个或几个窗口。本设计采用嵌入式操作系统μC/OS-II的多线程控制方式,分别控制各个窗口的数据区域,实现单屏幕多窗口的任意位置显示,使得显示方
[单片机]
基于μ<font color='red'>C</font>/<font color='red'>OS</font>-II的多窗口显示屏控制器设计
C2000位置管理器技术的BiSS-C解决方案介绍
DesignDRIVE 基于C2000™ 微控制器 () 的实时控制架构,非常适合开发机器人、电脑数控机械()、升降机、材料输送和其他工业制造应用中的工业和伺服驱动器。
[机器人]
TMS320C54XX DSP的USB接口实现
通用串行总线USB(Universal Serial Bus)应用由三部分组成:具有USB接口的PC系统、能够支持USB的系统软件和使用USB接口的设备。USB应用采用通用连接技术,实现外设的简单快速连接,借以达到方便用户、降低成本、扩展PC机连接外设范围的目的。USB的特点 如下: (1)连接灵活、使用方便 现在计算机系统连接外围设备的接口并无统一的标准,如键盘用PS/2接口,打印机用25针的并行接口等。USB则将这些不同的接口统一起来,由一组微小的矩型插座和软件构成。用户插入外设后,计算机系统能够自动识别接人的外设,而不需 要重新启动系统,用户可以带电插拔;为USB设计的驱动程序和应用软件可以自动启动,无需用
[汽车电子]
如何正确的使用C51单片机中的位域
定义这样的结构: typedef struct { uchar DC0_ALA:1; //电源0告警 uchar DC1_ALA:1; //电源1告警 uchar AC_ALA:1; //停电告警 uchar UN_H_ALA:1; //同频信道机失锁告警 uchar UN_L_ALA:1; //异频信道机失锁告警 uchar FAR_ALA:1; //远端通讯故障告警 uchar OPEN_ALA:1; //门襟告警 uchar x:1; }ALARM;//系统告警结构定义 定义变量并初始化: idata ALARM old_alarm={0,0,0,0,0,0,0,0}; 在main()函数中这样应用位域: if(ol
[单片机]
小广播
热门活动
换一批
更多
最新电源管理文章
更多每日新闻
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved