基于ARM微处理器的动模实验故障时间控制器的设计

2011-04-20 07:27刘建锋罗萍萍章广清
上海电力大学学报 2011年6期
关键词:动模时序红外

刘建锋,罗萍萍,章广清

(上海电力学院电力与自动化工程学院,上海 200090)

电力系统动态模拟实验是电气工程专业研究电力系统稳定运行的重要技术手段.为了能够定量描述并分析短路故障和负荷投切对某一特定系统的影响,需要对模拟故障的持续时间、负荷投切时序等实现精确的设置和控制.本文基于ARM微处理器,结合SHD-3000型动模实验室控制台的具体情况,研制了一款多功能可编程故障时间控制器,能够充分满足动模实验室对短路故障实验、负荷投切时序等模拟试验的要求,实现对故障现象的定性、定量分析.

1 故障时间控制器的功能

结合SHD-3000动模实验综合控制台,设计了故障时间控制器,其控制操作台预留有各个断路器及其设置短路故障的开出、开入量接口.时间控制器设计相应输出接口与其对应.控制器可划分为开关量输出模块、开关量输入模块、显示模块、红外遥控模块4个功能模块.开关量共有16路对外接口,其中6路无源开出接口,6路有源开出接口,2路无源开入接口,2路有源开入接口.可与动模实验控制台配合使用,实现故障持续时间长短控制和负荷投切时序控制实验.另外还有液晶显示器、红外遥控、键盘等模块.用户通过键盘输入所设置故障的具体持续时间、开出量输出时序等信息,再由ARM微处理器进行数据处理,并将时间信息、各路输出时序图发送到液晶显示器上实时显示,最后通过命令控制继电器动作,完成各种控制任务.

2 故障时间控制器功能模块的实现

2.1 硬件构成

控制器主处理器选用LPC2214微处理器,该微处理器是一款低功耗、16/32-bit基于ARM7内核的高性能芯片[1].内部集成有UART和SPI等多种通讯接口,有多达76个通用I/O接口.可实现最高60 MHz的CPU操作频率[2],满足故障时间控制器对信号处理实时性强的要求.其硬件结构如图1所示.

图1 时间控制器的硬件结构

故障时间控制器的硬件设计和功能相对应,也分为3个部分,分别与3个功能模块相对应.

(1)开关量输入用LPC2214中断接受管脚并配合软件终端管理器捕获外部开关量输入信号,并作防抖动预处理,然后向CPU传送信号;

(2)开关量输出利用光耦合器件,将LPC2214普通I/O输出脉冲信号进行放大,用于驱动执行继电器,完成开关量输出任务;

(3)远红外遥控接收用LPC2214异步串行接口UART接收红外遥控器信号,以实现遥控操作.

为了在实验过程中直观地对故障时间和负荷投切时序图进行观察,在设计中考虑了液晶显示接口,而且设计了和PC机进行通讯的RS232接口,以便配合上位机软件对相关时序逻辑进行分析.

将时间控制器开出量信号接入动模控制台的故障控制开入量接口,以实现对故障持续时间等的控制,这对可靠性和实时性的要求较高,因此对软件的实时性也提出了较高要求,即软件系统应该具有较为简洁的代码和较高的执行效率.配合32位ARM处理器,本设计采用μC/OS-II作为操作系统进行软件系统设计.μC/OS-II是一款开源、高效的嵌入式实时操作系统,可以有效地提高系统的可靠性和代码执行效率[3].

2.2 功能接口实现

2.2.1 开入量功能接口的实现

LPC2214内部集成了2个定时器,并具有4路捕获通道.当输入信号跳变时可取得定时器的瞬时值,可作计时之用;也可编程选择使捕获事件产生中断,然后启动处理程序.本设计利用定时器的边沿捕获功能来测量外部脉冲信号,当预设动作时序的准确性得到确认后,可启动相应输出程序,使其按照设定动作时序发出动作信号,记录后在液晶显示器上显示.

为了减少外部信号对微处理器所产生的干扰,在输入信号与LPC2214之间使用了光隔离器件PC817,并起到电平转换的作用.

2.2.2 开出量功能接口的实现

控制器设计有12路开关量输出接口,其中6路无源接口,提供6对空节点;6路有源接口,提供最大3 A和12 V直流输出.开关量的输出也是控制器时间控制的执行机构,由继电器和光耦合器构成.由于所选型号继电器本身需要5 V直流电作为供电电源,而LPC2214芯片提供的电压不足以驱动,故将光耦合器作为驱动电路:从芯片发出信号到光耦合器,使光耦合器内部的发光二极管发光,从而使三极管导通,5 V电压加载到继电器上,使其动作导致故障点短路.

2.2.3 红外遥控功能接口的实现

控制器设计有红外遥控功能,其载波频率为38 kHz,经特殊编码处理可用普通家用电视机遥控器进行遥控操作.为方便与LPC2214的UART接口连接,红外通讯模块直接将UART的输出信号进行38 kHz的调制后驱动红外发射管发射;接收模块接收红外遥控器输出的光信号,经光电转换后将电信号送入处理器UART的接收端进行处理.红外接收器选用红外接收模块TSOP1838,该模块是一个三端元件,使用单+5 V电源,中心响应频率为38 kHz(与红外发射电路的调制频率一致),它具有功耗低、抗干扰能力强、输入灵敏度高等特点.

本控制器还设计有液晶显示、键盘、PC接口等.液晶显示器可以直观显示故障时间,以及开关量输入和输出时序.6个独立按键,Key1~Key6键由P0.11~P0.6分别作为输入端口,配合软件进行扫描识别.Key5键为确认键,用于确认输入数值正确并使控制器开始工作;Key6键为保留键,为今后程序升级作准备.RS232串行接口为PC所设,可以将有关信息发送到上位机用于记录分析.

3 故障时间控制器的软件系统设计

3.1 实时操作系统μC/OS-II

μC/OS-II操作系统是一个完整的、基于优先级的占先式实时多任务内核.其特点如下[4]:

(1)源代码开放;

(2)可移植性较强;

(3)适合特定工程的可剪裁性;

(4)多线程调度管理.

时间控制器的各个部分都在实时操作系统μC/OS-II的管理下工作.整个软件也是基于该操作系统来进行设计的.μC/OS-II采用ANSIC语言编写,包含一小部分汇编代码,可供不同架构的微处理器使用.在基于μC/OS-II实时操作系统的应用程序设计中,完成各项功能的程序模块是以任务(线程)的形式来体现的.任务设计是整个应用程序设计的基础,在μC/OS-II管理下的软件设计,必须合理界定划分各个任务,明确任务的优先级别,确定任务间相互调度时的信息传递方式等.为不同任务合理安排不同的优先级,是使系统的实时性、可靠性、稳定性满足要求的关键.

3.2 任务设计

在μC/OS-II管理下的实时应用程序设计中,任务设计是整个应用程序设计的基础.首先将整个工程分割成多个任务(一个任务就是一个程序模块),使每个任务都被赋予一定的优先级,而且拥有属于每个任务自己的一套CPU寄存器和堆栈空间.多任务运行是指CPU在多个任务之间依照优先级的不同来进行转换和调度.异常事件则使用中断程序来随时中断这些任务的执行.任务之间以及任务与中断服务程序之间可以调用信号量、消息邮箱、消息队列、延时等系统服务来实现彼此之间的通讯(数据共享)和同步.多任务运行可使CPU的利用率达到最高[4],并使应用程序模块化,从而将复杂的应用程序层次化.

在μC/OS-II操作系统中,任务的优先级共有64个,优先级的高低从0~63排序.在实际应用中,应保留最高的4个优先级(0~3),以及OS_ LOWEST_PRIO~OS_LOWEST_PRIO-3 4个优先级的使用权,其中两个已被系统所用,其余的留作系统版本升级之用.

任务优先级的安排原则为中断关联性、紧迫性、频发性等,与中断服务程序有关联的任务应安排尽可能高的优先级,以便及时处理异常事件,提高系统的实时性.紧迫任务对响应时间有严格要求,越紧迫的任务安排的优先级也越高[5].

在本系统中,主要的任务有时钟管理、液晶显示、上位机显示(经由RS232接口)、开入量响应、开出量控制等.除了开入量信号用定时器捕获进而用触发中断的方式接收外,其他任务都分别被赋予一定的优先级,共同处于μC/OS-II操作系统管理之下.软件的系统结构如图2所示.

在使用时间控制器的动模试验过程中,检测控制台送出的信号非常重要,因此采用中断程序来随时响应外部开入量脉冲信号.键盘扫描、开出量输出、红外控制、时钟管理4个任务具有层次性,依次由高到低分配优先级.液晶和上位机PC显示任务实时性的要求较低,因而可以赋予较低的优先级别.

图2 μC/OS-II硬件和软件的系统结构

软件系统的运行就是各个任务之间的调度协作运行.任务之间具有相互关联性和时序性.通过调用μC/OS-II系统的任务通讯管理机制,可以方便快捷地实现任务之间的通信.应用层软件包含5个任务,根据任务的特性,对于具有关联性的任务分别用不同的通信机制来完成任务之间的信息传递.用信号量通知开出量控制任务,接收外部开入量信号任务,然后用消息队列通知两个显示任务,以完成整个控制过程.

4 结语

基于ARM微处理器所设计的动模实验故障时间控制器,以高性能的32位ARM处理器为核心,充分利用ARM微处理器速度快、多任务处理等优点,能够快速实现开入量接收处理、开出量时序控制等各种功能.通过实验室测试表明,故障时间控制器能够实现快速、可靠控制,满足对故障现象进行定性、定量分析研究的要求,具有实际工程应用价值.

[1]周立功.嵌入式系统设计与实例开发[M].北京:北京航空航天大学出版社,2005:60-62.

[2]周立功,张华.深入浅出ARM7-LPC213x[M].北京:北京航空航天大学出版社,2005:51-53.

[3]JEAN J.Labrosse,MicroC/OS-IIThe Real-Time Kernel[M].Second Edition.USA:Published by CMP Books,2002:5-7.

[4]刘建锋,李开成.基于ARM的电子式互感器合并单元的设计[J].电测与仪表,2008(4):49-53.

[5]胡晓波,李开成,刘建锋,等.基于μC/OS-Ⅱ的电力负荷控制终端[J].船电技术,2007(1):46-48.

(编辑胡小萍)

猜你喜欢
动模时序红外
一种能够检测镶件的塑料件注塑模具及注塑机
网红外卖
基于Sentinel-2时序NDVI的麦冬识别研究
闪亮的中国红外『芯』
TS系列红外传感器在嵌入式控制系统中的应用
一种塑料三角棒的注射成型模具
一种塑胶模具的MES注塑装置
一种高效的塑胶注塑模具
基于FPGA 的时序信号光纤传输系统
一种毫米波放大器时序直流电源的设计