论文部分内容阅读
【摘 要】无人机在洪涝灾害应急监测、大型科学试验和军事斗争中发挥了重要作用,本文对基于单片机的无人机小型涡喷发动机控制系统进行了阐述,该系统具有体积小、重量轻、功能强大的特点。
【关键词】MCU 无人机 涡喷发动机
【Abstract】the drones in the flood disaster emergency monitoring, large scientific experiments and played an important role in military struggle, in this paper, the unmanned aerial vehicle (uav) small turbojet engine control system based on single chip microcomputer, the system has the characteristics of small volume, light weight, powerful.
【Keyword】MCU,Unmanned aerial vehicles,Turbojet engine
一、前言
无人机上的小型涡轮喷气发动机具有结构紧凑、体积小、重量轻和推重比大等特点。发动机控制系统性能的性能直接影响无人机发动机的性能。发动机控制系统一直由液压机械式和气动机械式调节器实现。随着发动机控制和飞机系统之间联系的增加以及状态监视,故障诊断,参数显示等功能的扩充,飞机发动机一体化控制的水平要求不断提高。不论是三维凸轮计算元件还是膜盒组计算元件,其所能综合计算的参数是很有限的。在小型涡喷发动机控制中,采用计算机控制系统的要求越来越重要。
二、系统设计方案
系统用于监测发动机尾喷管气体温度、涡轮转速、控制系统电源电压和遥控接收机发来的速度指令,根据控制算法产生控制数据,控制数据经过转换算法产生控制量,并通过驱动电路控制油泵电机的转速,调节发动机的给油量,使发动机按给定的推力工作,以实现推力控制。小型涡轮喷气发动机的正常工作还需要许多辅助控制系统,在本控制系统中包含有发动机启动过程控制系统,发动机过热自动保护控制系统,发动机熄火过程控制系统和发动机故障检测和诊断系统,见图1。为满足不同发动机的控制需要,本系统还有控制参数设置与保存系统和发动机工作过程参数记录系统。将来发动机功能提升后,实现发动机进气控制[1]。
图1系统总体框图
三、系统结构组成
该控制系统主要由单片机、PWM控制电路、信号滤波及放大电路、I2C总线、状态指示电路、参数设置与LCD显示电路、参数记录电路等构成[2],各部分连接关系如图2所示。
(一)单片机
单片机要具有丰富的外设接口资源和足够高的运算速度,才可能实现各种功能模块并满足系统实时性要求。经过分析比较,采用了CYGNAL公司的51单片机C8051F作为控制器,该单片机具有以下特点:10位8通道逐次比较式ADC,数据转换速率可达100ksps。JTAG调试和边界扫描接口,可实现在线实时动态调试。流水线指令结构,最高处理速度高达25MIPS;4K字节的片上RAM和64K字节的Flash程序存储器。PWM信号由PCA产生,PCA由一个专门的16位 C/T和5个capture/compare模块构成。每个模块可独立设置为6种操作模式之一:边缘触发捕获、软件定时器、高速输出、频率输出(方波输出)、8-bit PWM和16-bit PWM等。 由以上特点可以看出,C8051F单片机具有丰富的片上硬件资源及高运算速度,这为实现复杂的控制算法提供了保障,而且几乎不需系统扩展即可满足控制系统对硬件资源的需求,极大提高了系统可靠性。
图2系统配置框图
(二)PWM控制电路
控制系统中气阀,点火器,启动电机和油泵电机等器件需要PWM信号来控制其工作。这些大功率器件都不能直接由单片机输出信号直接控制。因此需要设计驱动电路以实现对这些器件的控制。根据各被驱动器件的工作特点,合理选择相应参数的MOS管,使MOS管可靠地控制各器件。
(三)尾喷管温度测量电路
尾喷管温度最高可达1000℃,是发动机安全、可靠工作的重要指标。从测温范围、测量精度及成本等方面综合考虑,采用了镍铬-镍硅热电偶作为测温元件,镍铬-镍硅热电偶具有良好的线性度,能很好地满足发动机尾喷管测温需求。关于热电偶的冷端补偿问题,这里采用单片机片上温度传感器测得的温度作为冷端温度,根据中间温度定律,E(T,0)=E(T,T0)+E(T0,0),其中E(T0,0)由所测的冷端温度T0根据热电势和温度的单值函数关系式求出,所以E(T,0)亦可求出,从而推算出热端温度。
(四)转速及遥控指令测量电路
发动机工作一周,测量电路发出两个脉冲。由于发动机推力控制本质是对发动机转速的控制,所以转速的测量精度直接关系到控制性能的优劣。转速由单片机的16-bit定时器T4的捕获功能测得每个脉冲的周期而推算出来。发动机正常工作状态时的转速范围为33000rpm~120000rpm,由此可推算出正常工作状态时,周期范围为909us~250us,定时器每个计数单位对应的时间值为1/18.432M = 0.054us(晶振采用18.432M),且周期时间不会超过16-bit定时器的溢出周期。所以既可达到足够高的测量精度。发动机速度指令是通过遥控接收机的一个通道发送给单片机的。速度指令脉冲的脉宽对应不同的期望转速,并通过16-bit定时器T2实现测量。
(五)I2C总线和UART总线
系统中的状态指示电路、LCD显示电路、参数记录电路和键盘扫描电路等功能模块采用I2C总线结构,以实现各个模块的数据和指令交换。I2C总线有以下特点:只需要两条线,SDA数据线和SCL时钟线;挂在总线上的各个器件都通过软件寻址,且总存在主/从关系,当两个或多个主方同时发起数据传输时,可进行冲突检测及仲裁;数据传输率最高可达到400kbits/s。I2C总线作为一种流行的通用总线,有丰富的功能器件支持,扩展的功能器件可方便的接到总线上,为系统扩展提供极大方便。为实现功能扩展的需要,也将片上的两个UART接口通过接口芯片接出来,以便于与PC机或其它设备通讯。 (六)LCD显示及参数设置
根据参数显示的要求,LCD显示选用了主控制驱动电路为HD44780的16字符×2行的5×8点阵液晶显示器,此显示器是通过并行口与外部控制器连接的,采用了PCF8574 I2C-并口转换芯片将其与系统相连。为了省去由单片机专门提供LCD的读写控制信号和使能信号等,利用所发送数据的低三位提供控制和使能信号,高半字节为向LCD发送的指令或数据。控制系统的状态和参数显示或修改通过6个功能菜单实现,其中四个菜单可通过快捷键直接进入,而所有菜单都可通过菜单选择键(MENU+或MENU-)进入。参数设定盒上的10个按键通过一块PCF8574芯片,构成矩阵键盘来实现的,并通过反转法只通过两次扫描读数既可识别按键。此参数盒也通过I2C总线与系统连接。
四、控制系统软件
控制软件需要完成的任务包括:数据检测(包括4路A/D转换,转速和速度指令测量等)、键盘扫描,LCD显示,参数记忆与提取,控制算法和4路PWM输出等。
(一)主程序
主程序首先要实现系统时钟初始化、MCU端口初始化、中断设置及学习速度指令(包括关闭,怠速,和大车状态)等,并从参数记忆器件中提取发动机启动和正常工作状态中需要的参数等。 发动机进入启动过程后根据发动机启动油量曲线,控制启动电机、可燃气体及油泵电机的供油量等,使发动机在尽可能短的时间内进入正常工作状态。完成启动过程后,主程序进入循环状态,主要完成参数检测及状态显示等,直到发出关闭指令为止。
(二)中断控制
控制软件要实现多个任务,在单片机中嵌入实时多任务操作系统(RTOS),可以简化多任务的调度管理和软件设计过程。控制系统的实时性要求,需要操作系统支持任务抢占来保证。KEIL C自带的RTX51 TINY仅支持循环任务切换,其它操作系统涉及移植,开销等方面的问题,所以未采用操作系统。对各任务的调度和管理,以及重要任务的实时执行,就需要各个中断精确规划和彼此协调来保证。控制软件中共用到7个中断,包括INT1外部中断,T0中断,UART0中断,T4中断,I2C总线中断,IE6扩展外部中断,A/D转换完成中断等。其功能特点是:
1、INT1中断,主要发出发动机的启动或停止指令,由外部开关触发。
2、T0定时器中断完成系统采样周期的定时。
3、UART0中断,用来实现与PC机的数据通讯。
4、T4定时器中断,用来测量发动机的转速。
5、I2C总线中断,实现总线协议,并完成数据传送。
6、IE6 外部中断,T2定时器记录速度指令脉冲的下降沿时刻,上升沿时触发此中断并读取此时T2的数据,两者相减可获取速度指令脉宽。
7、A/D 转换完成中断用于发动机启动过程中的尾喷管温度测量(EGT),起动过程中EGT是一个重要的参数依据。
并不是每个中断都自始至终发挥作用,而是在不同阶段,有些中断使能,其余禁止,且同一中断在发动机工作的不同状态其优先级也会不同。IE6外部中断在速度指令脉宽学习和正常运转状态都为高级中断,而在启动过程中则为低级中断。T0作为采样周期,在正常工作状态时要求准确的定时,所以也设置为高级中断,当与IE6高级中断同时触发时,因其默认优先级更高,所以先执行T0中断。另一种情况是当T0中断触发时,IE6中断已经执行,此中断只有三条C指令,且为赋值和减法指令,最大延迟为几十uS,所以对T0的实时性影响可以忽略。通过以上灵活的中断设置与协调,可实现实时任务和非实时任务的调度管理。
(三)PID 控制算法
控制算法在T0中断程序中完成。按照比例、积分和微分进行控制的PID控制器是应用最为广泛的一种自动控制器。在计算机控制系统中,PID控制与计算机的逻辑判断和运算功能结合起来,使PID控制更加灵活,并能满足各种要求。在算法中将积分项改进,采用积分分离式PID算法,以使控制性能更加完善,采样周期为20ms。
五、系统仿真
(一)数学仿真
数学仿真结构所取控制对象为时间常数为470ms的一阶环节。采样周期20ms时,Kp = 1, Ki = 0.023, Kd = 0.199时,得到动态响应曲线。
图3数学仿真结构框图
(二)半实物仿真
单片机输出的燃油泵PWM控制信号首先经过有源二阶滤波器,进行滤波后近似为脉动很小的直流电压信号,此信号对应于原系统的供油量。此信号加到一个RC构成的一阶环节上,此环节近似认为是涡喷发动机的实物模型,时间常数T设置为470ms。一阶对象的输出电压信号对应于涡喷发动机的转速信号,经过A/D采样后,根据此电压值的大小,可编程计数阵列的通道0(CEX0)工作在高速输出方式下(HSO)并产生相对应的速度方波信号。速度方波信号通过速度测量通道进行速度测量,并作为PID控制算法中的发动机实际转速。遥控速度指令脉冲通过波形发生器模拟产生。取Kp = 1,Ki = 0.023,Kd = 0.199时,速度指令从40000RPM变为80000RPM时[3]。
六、与发动机联调
控制系统与发动机联机实验后,进行了点火和转速闭环控制。当速度指令控制杆从73500RPM推到83000RPM时。实验过程中,由于控制算法中用到的模型参数与实际发动机模型有一定出入,而且比例增益取值较小,积分环节在半实物仿真中经过验证,但在实际系统中尚未加入,这些因素导致稳态误差相对较大,需要进一步逼进模型和整定参数,以达到较好的动态稳态控制品质。
七、结论
本论文讨论的小型涡轮喷气发动机控制系统集传感器、作动器和控制计算机于一体,具有体积小、重量轻、功能强大的特点。涡喷发动机控制数字化是发动机性能提高的必然要求和发展趋势。该控制系统在这个发展潮流中做了积极深入的探索。计算机控制系统的进步和完善不仅需要硬件上稳定可靠,同时建立在对发动机模型的认识准确度基础上。要更准确的获取发动机的模型参数,则需要通过控制器的智能化,对发动机各种工况下的参数数据进行测量、记录,用系统辨识理论分析解算出模型参数,以调整控制参数更加合理,发动机性能更加可靠、高效和完善。
参考文献:
[1]胜功;沈为群;宋子善.一种基于单片机的小型涡喷发动机控制系统[J].军民两用技术与产品 2004年04期
[2]李国忠.小型涡喷发动机燃油控制系统稳定性研究[M].哈尔滨工程大学.2012年6月
[3]程涛.小型涡喷发动机数控调节器的半实物仿真[J].南京航空航天大学. 2012年3期
作者简介:
任常斌,(1983,6-),男,山西临汾,工程师,在读硕士,研究方向:探测、制导与控制技术。
【关键词】MCU 无人机 涡喷发动机
【Abstract】the drones in the flood disaster emergency monitoring, large scientific experiments and played an important role in military struggle, in this paper, the unmanned aerial vehicle (uav) small turbojet engine control system based on single chip microcomputer, the system has the characteristics of small volume, light weight, powerful.
【Keyword】MCU,Unmanned aerial vehicles,Turbojet engine
一、前言
无人机上的小型涡轮喷气发动机具有结构紧凑、体积小、重量轻和推重比大等特点。发动机控制系统性能的性能直接影响无人机发动机的性能。发动机控制系统一直由液压机械式和气动机械式调节器实现。随着发动机控制和飞机系统之间联系的增加以及状态监视,故障诊断,参数显示等功能的扩充,飞机发动机一体化控制的水平要求不断提高。不论是三维凸轮计算元件还是膜盒组计算元件,其所能综合计算的参数是很有限的。在小型涡喷发动机控制中,采用计算机控制系统的要求越来越重要。
二、系统设计方案
系统用于监测发动机尾喷管气体温度、涡轮转速、控制系统电源电压和遥控接收机发来的速度指令,根据控制算法产生控制数据,控制数据经过转换算法产生控制量,并通过驱动电路控制油泵电机的转速,调节发动机的给油量,使发动机按给定的推力工作,以实现推力控制。小型涡轮喷气发动机的正常工作还需要许多辅助控制系统,在本控制系统中包含有发动机启动过程控制系统,发动机过热自动保护控制系统,发动机熄火过程控制系统和发动机故障检测和诊断系统,见图1。为满足不同发动机的控制需要,本系统还有控制参数设置与保存系统和发动机工作过程参数记录系统。将来发动机功能提升后,实现发动机进气控制[1]。
图1系统总体框图
三、系统结构组成
该控制系统主要由单片机、PWM控制电路、信号滤波及放大电路、I2C总线、状态指示电路、参数设置与LCD显示电路、参数记录电路等构成[2],各部分连接关系如图2所示。
(一)单片机
单片机要具有丰富的外设接口资源和足够高的运算速度,才可能实现各种功能模块并满足系统实时性要求。经过分析比较,采用了CYGNAL公司的51单片机C8051F作为控制器,该单片机具有以下特点:10位8通道逐次比较式ADC,数据转换速率可达100ksps。JTAG调试和边界扫描接口,可实现在线实时动态调试。流水线指令结构,最高处理速度高达25MIPS;4K字节的片上RAM和64K字节的Flash程序存储器。PWM信号由PCA产生,PCA由一个专门的16位 C/T和5个capture/compare模块构成。每个模块可独立设置为6种操作模式之一:边缘触发捕获、软件定时器、高速输出、频率输出(方波输出)、8-bit PWM和16-bit PWM等。 由以上特点可以看出,C8051F单片机具有丰富的片上硬件资源及高运算速度,这为实现复杂的控制算法提供了保障,而且几乎不需系统扩展即可满足控制系统对硬件资源的需求,极大提高了系统可靠性。
图2系统配置框图
(二)PWM控制电路
控制系统中气阀,点火器,启动电机和油泵电机等器件需要PWM信号来控制其工作。这些大功率器件都不能直接由单片机输出信号直接控制。因此需要设计驱动电路以实现对这些器件的控制。根据各被驱动器件的工作特点,合理选择相应参数的MOS管,使MOS管可靠地控制各器件。
(三)尾喷管温度测量电路
尾喷管温度最高可达1000℃,是发动机安全、可靠工作的重要指标。从测温范围、测量精度及成本等方面综合考虑,采用了镍铬-镍硅热电偶作为测温元件,镍铬-镍硅热电偶具有良好的线性度,能很好地满足发动机尾喷管测温需求。关于热电偶的冷端补偿问题,这里采用单片机片上温度传感器测得的温度作为冷端温度,根据中间温度定律,E(T,0)=E(T,T0)+E(T0,0),其中E(T0,0)由所测的冷端温度T0根据热电势和温度的单值函数关系式求出,所以E(T,0)亦可求出,从而推算出热端温度。
(四)转速及遥控指令测量电路
发动机工作一周,测量电路发出两个脉冲。由于发动机推力控制本质是对发动机转速的控制,所以转速的测量精度直接关系到控制性能的优劣。转速由单片机的16-bit定时器T4的捕获功能测得每个脉冲的周期而推算出来。发动机正常工作状态时的转速范围为33000rpm~120000rpm,由此可推算出正常工作状态时,周期范围为909us~250us,定时器每个计数单位对应的时间值为1/18.432M = 0.054us(晶振采用18.432M),且周期时间不会超过16-bit定时器的溢出周期。所以既可达到足够高的测量精度。发动机速度指令是通过遥控接收机的一个通道发送给单片机的。速度指令脉冲的脉宽对应不同的期望转速,并通过16-bit定时器T2实现测量。
(五)I2C总线和UART总线
系统中的状态指示电路、LCD显示电路、参数记录电路和键盘扫描电路等功能模块采用I2C总线结构,以实现各个模块的数据和指令交换。I2C总线有以下特点:只需要两条线,SDA数据线和SCL时钟线;挂在总线上的各个器件都通过软件寻址,且总存在主/从关系,当两个或多个主方同时发起数据传输时,可进行冲突检测及仲裁;数据传输率最高可达到400kbits/s。I2C总线作为一种流行的通用总线,有丰富的功能器件支持,扩展的功能器件可方便的接到总线上,为系统扩展提供极大方便。为实现功能扩展的需要,也将片上的两个UART接口通过接口芯片接出来,以便于与PC机或其它设备通讯。 (六)LCD显示及参数设置
根据参数显示的要求,LCD显示选用了主控制驱动电路为HD44780的16字符×2行的5×8点阵液晶显示器,此显示器是通过并行口与外部控制器连接的,采用了PCF8574 I2C-并口转换芯片将其与系统相连。为了省去由单片机专门提供LCD的读写控制信号和使能信号等,利用所发送数据的低三位提供控制和使能信号,高半字节为向LCD发送的指令或数据。控制系统的状态和参数显示或修改通过6个功能菜单实现,其中四个菜单可通过快捷键直接进入,而所有菜单都可通过菜单选择键(MENU+或MENU-)进入。参数设定盒上的10个按键通过一块PCF8574芯片,构成矩阵键盘来实现的,并通过反转法只通过两次扫描读数既可识别按键。此参数盒也通过I2C总线与系统连接。
四、控制系统软件
控制软件需要完成的任务包括:数据检测(包括4路A/D转换,转速和速度指令测量等)、键盘扫描,LCD显示,参数记忆与提取,控制算法和4路PWM输出等。
(一)主程序
主程序首先要实现系统时钟初始化、MCU端口初始化、中断设置及学习速度指令(包括关闭,怠速,和大车状态)等,并从参数记忆器件中提取发动机启动和正常工作状态中需要的参数等。 发动机进入启动过程后根据发动机启动油量曲线,控制启动电机、可燃气体及油泵电机的供油量等,使发动机在尽可能短的时间内进入正常工作状态。完成启动过程后,主程序进入循环状态,主要完成参数检测及状态显示等,直到发出关闭指令为止。
(二)中断控制
控制软件要实现多个任务,在单片机中嵌入实时多任务操作系统(RTOS),可以简化多任务的调度管理和软件设计过程。控制系统的实时性要求,需要操作系统支持任务抢占来保证。KEIL C自带的RTX51 TINY仅支持循环任务切换,其它操作系统涉及移植,开销等方面的问题,所以未采用操作系统。对各任务的调度和管理,以及重要任务的实时执行,就需要各个中断精确规划和彼此协调来保证。控制软件中共用到7个中断,包括INT1外部中断,T0中断,UART0中断,T4中断,I2C总线中断,IE6扩展外部中断,A/D转换完成中断等。其功能特点是:
1、INT1中断,主要发出发动机的启动或停止指令,由外部开关触发。
2、T0定时器中断完成系统采样周期的定时。
3、UART0中断,用来实现与PC机的数据通讯。
4、T4定时器中断,用来测量发动机的转速。
5、I2C总线中断,实现总线协议,并完成数据传送。
6、IE6 外部中断,T2定时器记录速度指令脉冲的下降沿时刻,上升沿时触发此中断并读取此时T2的数据,两者相减可获取速度指令脉宽。
7、A/D 转换完成中断用于发动机启动过程中的尾喷管温度测量(EGT),起动过程中EGT是一个重要的参数依据。
并不是每个中断都自始至终发挥作用,而是在不同阶段,有些中断使能,其余禁止,且同一中断在发动机工作的不同状态其优先级也会不同。IE6外部中断在速度指令脉宽学习和正常运转状态都为高级中断,而在启动过程中则为低级中断。T0作为采样周期,在正常工作状态时要求准确的定时,所以也设置为高级中断,当与IE6高级中断同时触发时,因其默认优先级更高,所以先执行T0中断。另一种情况是当T0中断触发时,IE6中断已经执行,此中断只有三条C指令,且为赋值和减法指令,最大延迟为几十uS,所以对T0的实时性影响可以忽略。通过以上灵活的中断设置与协调,可实现实时任务和非实时任务的调度管理。
(三)PID 控制算法
控制算法在T0中断程序中完成。按照比例、积分和微分进行控制的PID控制器是应用最为广泛的一种自动控制器。在计算机控制系统中,PID控制与计算机的逻辑判断和运算功能结合起来,使PID控制更加灵活,并能满足各种要求。在算法中将积分项改进,采用积分分离式PID算法,以使控制性能更加完善,采样周期为20ms。
五、系统仿真
(一)数学仿真
数学仿真结构所取控制对象为时间常数为470ms的一阶环节。采样周期20ms时,Kp = 1, Ki = 0.023, Kd = 0.199时,得到动态响应曲线。
图3数学仿真结构框图
(二)半实物仿真
单片机输出的燃油泵PWM控制信号首先经过有源二阶滤波器,进行滤波后近似为脉动很小的直流电压信号,此信号对应于原系统的供油量。此信号加到一个RC构成的一阶环节上,此环节近似认为是涡喷发动机的实物模型,时间常数T设置为470ms。一阶对象的输出电压信号对应于涡喷发动机的转速信号,经过A/D采样后,根据此电压值的大小,可编程计数阵列的通道0(CEX0)工作在高速输出方式下(HSO)并产生相对应的速度方波信号。速度方波信号通过速度测量通道进行速度测量,并作为PID控制算法中的发动机实际转速。遥控速度指令脉冲通过波形发生器模拟产生。取Kp = 1,Ki = 0.023,Kd = 0.199时,速度指令从40000RPM变为80000RPM时[3]。
六、与发动机联调
控制系统与发动机联机实验后,进行了点火和转速闭环控制。当速度指令控制杆从73500RPM推到83000RPM时。实验过程中,由于控制算法中用到的模型参数与实际发动机模型有一定出入,而且比例增益取值较小,积分环节在半实物仿真中经过验证,但在实际系统中尚未加入,这些因素导致稳态误差相对较大,需要进一步逼进模型和整定参数,以达到较好的动态稳态控制品质。
七、结论
本论文讨论的小型涡轮喷气发动机控制系统集传感器、作动器和控制计算机于一体,具有体积小、重量轻、功能强大的特点。涡喷发动机控制数字化是发动机性能提高的必然要求和发展趋势。该控制系统在这个发展潮流中做了积极深入的探索。计算机控制系统的进步和完善不仅需要硬件上稳定可靠,同时建立在对发动机模型的认识准确度基础上。要更准确的获取发动机的模型参数,则需要通过控制器的智能化,对发动机各种工况下的参数数据进行测量、记录,用系统辨识理论分析解算出模型参数,以调整控制参数更加合理,发动机性能更加可靠、高效和完善。
参考文献:
[1]胜功;沈为群;宋子善.一种基于单片机的小型涡喷发动机控制系统[J].军民两用技术与产品 2004年04期
[2]李国忠.小型涡喷发动机燃油控制系统稳定性研究[M].哈尔滨工程大学.2012年6月
[3]程涛.小型涡喷发动机数控调节器的半实物仿真[J].南京航空航天大学. 2012年3期
作者简介:
任常斌,(1983,6-),男,山西临汾,工程师,在读硕士,研究方向:探测、制导与控制技术。