基于单片机的燃油计量单元控制系统设计
2012-07-25孟武胜范晓晶李明翔高晓珍
孟武胜,范晓晶,李明翔,高晓珍
(西北工业大学自动化学院,西安710072)
1 引言
飞机的一种启动方式是由辅助动力装置(Auxiliary Power Unit,APU)提供空调引气和电源,从而提供压缩空气供发动机启动。此外,在飞行过程中,如果发动机停车,APU也可以用来向飞机提供气源和电源。燃油计量单元(Fuel Metering Unit,FMU)作为APU的子部件,用于控制和计量APU工作过程中燃油的流量与压力,从而保证APU的正常工作。因而,对燃油计量单元控制系统的设计与研究具有重要意义。
燃油计量单元内部有步进电机和旋转变压器。步进电机具有快速启停、受干扰影响小的优点,但驱动信号一般由专用模拟芯片提供,因而提出用80C58单片机对其控制,并由专用芯片驱动。旋转变压器的输出角度对步进电机构成闭环回路,可由旋变数字转换器对角度进行采集与转换,并通过液晶显示屏显示。针对以上要求,设计出由80C58单片机、4×4矩阵键盘、步进电机驱动芯片STK672-040、旋变数字转换器 AD2S80A和液晶显示器LCD1602所组成的燃油计量单元控制系统。
2 燃油计量单元
燃油计量单元用于计量流过飞机发动机的燃油流量,工作原理如图1所示。高压燃油从燃油泵中流进燃油计量单元入口时会通过高压溢流阀。当入口燃油的压力高于限定值时,高压溢流阀动作并将超出额定值的燃油回流到燃油泵中。外部的辅助电源给步进电机上电后,步进电机带动计量阀动作并改变阀开口的大小,阀开口的大小决定了燃油的流量,因此,通过控制步进电机的运转可实现燃油流量的计量。泵旁路的压力调节阀用于维持计量阀两端的压降恒定,从而得到稳定的流量与压力。除此之外,系统由主电磁阀和次电磁阀组成两个独立的关闭系统,当电磁阀断电后,最小压力阀关闭,系统无燃油输出。
图1 燃油计量单元原理图
3 系统硬件设计
3.1 控制系统原理
系统控制模块选用内部带有32kB ROM和256B RAM的高性能单片机80C58,控制系统总体框图如图2所示。在系统中,通过4×4矩阵键盘中的命令键对步进电机工作方式设定,数字键用于步进电机运转步数的输入;专用步进电机控制芯片STK672-040用于步进电机功率驱动;旋变数字转换器AD2S80A获得旋转变压器的角度,当采集到计量阀最小、最大止动点的角度后存储在单片机中,并经过内部拟合后在液晶屏上输出角度值;同时,液晶屏上所显示的角度值与步进电机运转角度形成误差,从而构成闭环控制系统。由于单片机IO口有限,在此采用可编程并行接口芯片8255A对端口进行扩展。此外,控制系统中软件模块较多,为防止程序受干扰而发生异常,引入了看门狗电路X25045。
图2 控制系统总体框图
3.2 单片机模块
控制系统选用80C58系列单片机,程序存储器与数据存储器满足要求,震荡电路与单片机的XTAL1、XTAL2相连,上电复位、手动复位、看门狗复位三者通过逻辑或门与单片机RST相连,单片机的P1口用于液晶显示屏的数据传输。单片机的P0口通过上拉电阻作为扩展芯片8255A的数据口,通过控制命令将8255A的PA口用于旋变数字转换器的角度输入,PB口作为输出用于步进电机的控制,PC口连接矩阵键盘。此外,单片机的P2、P3口作为各芯片的控制命令选择和特殊功能使用,硬件电路如图3所示。
图3 单片机模块硬件电路图
3.3 步进电机
燃油计量单元的步进电机工作方式为四相四拍,即以AB-BC-CD-DA-AB方式不断循环。利用8255A输出功能,通过对步进电机驱动芯片STK672-040进行控制,完成脉冲的分配与功率驱动,从而控制步进电机的运行,如图4所示。A、B、/A、/B为驱动芯片的4相脉冲输出,由于芯片内部经过了功率放大,所以它们可以直接用于驱动步进电机的A、B、C、D相。输入时钟CLK决定了输出脉冲信号的频率,即相位变换的频率,因此决定了步进电机的转速,该时钟与P3.3相连,通过定时器中断产生时钟。
图4 步进电机驱动电路
3.4 旋变数字转换器
为了实现对旋转变压器角度信号的采集与处理,需要将旋转变压器通过旋变数字转换器与单片机相连,硬件电路如图5所示。系统采用12位的分辨率,因此,通过在AD2S80A的引脚SC1、SC2分别加低电平和高电平实现,根据使用手册,确定AD2S80A外围电路各器件参数。在12位数据传输过程中,选择BYTE SELECT为高电平时,将高4位数据输出;为逻辑低电平时,低8位数据通过DB1~DB8传输至8255A的PA口。
3.5 电源模块
在控制系统中需要提供三种电源,因此采用稳压器CW7805、CW7812为单片机和旋变数字转换器分别提供+5V和+12V的直流电源,采用输出范围为1.25~37V的LM317可变电源为步进电机提供所需的+17~+23V的工作电压。
4 系统软件设计
在燃油计量单元控制系统中,通过键盘设置步进电机的工作方式并输入转动步数后,步进电机带动计量阀运转,此时液晶屏上会显示已转动的步数和剩余的步数;然后AD2S80A采集并获得最小、最大止动点角度;最后通过单片机内部的计算与拟合,输出旋转变压器的拟合角度,同时将角度值反馈给步进电机,根据误差校正步进电机运转步数。因此,软件部分由4大模块组成:键盘扫描及处理、步进电机控制、AD2S80A采集与转换、显示部分。
4.1 键盘扫描及处理
在控制系统中,8255A的 PC口高4位用于列控制,和4根列线相连用作检测输入线;PC口的低4位用于行控制,和4根行线相连用作行扫描输出线;行线需加上拉电阻,以使其处于高电平。在程序中,首先利用查询的方法检测键盘中是否有键按下。当有键按下时,经过延时,再进行一次相同的查询,若按键仍处于被按下的状态,则认为确实有键按下,否则认为是抖动引起的,这样可做到“消抖”。当确实有键按下时,确认按键位置并获得按键值,根据所得键值进行处理(若是数字键,要将其转换为十进制数字并在液晶屏上显示;若是控制键,则执行相应的控制命令),其流程如图6所示。
图5 旋变数字转换器硬件电路
4.2 步进电机控制流程
单片机上电复位后,首先对定时器0及中断进行初始化,用以产生步进电机驱动芯片的时钟信号;然后通过单片机和8255A的各引脚对驱动芯片进行初始化,设置其驱动步进电机的输出方式;最后通过键盘的按键控制命令,使电机按照要求转动。在此过程中,已转动的步数和剩余步数均在液晶屏上实时显示,流程图如图7所示。
4.3 旋转变压器角度采集与转换
步进电机工作后,旋转变压器检测到其运转角度的变化,在励磁的作用下有正弦、余弦两路输出,利用旋变数字转换器可实时得到角度值。启动AD2S80A工作后,首先检查转换结束标志,当BUSY引脚为低,即转换结束后开始读取转换结果。通过对BYTE SELECT高低电平的控制,分别得到高4位和低8位数据,经过单片机内部运算后,得到角度值并在液晶屏上显示,软件流程如图8所示。
5 实验结果
在燃油计量单元试验台(HS-RJ-00,西安海声航空技术有限公司)上,利用所设计的燃油计量单元控制系统对FMU-801053进行实验,得到表1所示的实验结果。从表中数据可知,除了第3组数据(外界环境所引起的误差)外,实际流量都达到测试要求。
表1 燃油计量单元控制系统试验数据
6 结束语
基于80C58单片机的燃油计量单元控制系统实现了对燃油流量的控制,系统操作简单并具有实时性。控制系统在西安海生航空技术有限公司使用,对型号为801053的燃油计量单元进行控制,达到了测试要求。此外,对不同型号的燃油计量单元,可以通过修改程序中的相关数据实现控制,因而具有通用性。
图6 键盘扫描及处理流程图
图7 步进电机控制流程图
图8 AD2S80A转换流程图
[1] 柴钰.单片机原理及应用[M].西安:西安电子科技大学出版社,2009.
[2] 杨宁,胡学军.单片机与控制技术[M].北京:北京航空航天大学出版社,2005.
[3] 于永,戴佳,等.51单片机实例精讲[M].北京:电子工业出版社,2007.
[4] 陈隆昌.控制电机[M].西安:西安电子科技大学出版社,2000.
[5] 孟武胜,李亮.基于AT89C52单片机的步进电机控制系统设计[J].测控技术,2006,25(11):45-47.
[6] 肖海荣,安国建,等.用AD2S80A实现的高精度位置检测单元及其与80C196KC单片机的接口技术[J].微计算机信息,2001,17(3):62-64.
[7] Component Maintenance Manual.Fuel Metering Unit[S].American ,Hamilton Sundstrand,2011.