新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 固定翼飞机竖直飞行控制系统的设计

固定翼飞机竖直飞行控制系统的设计

作者:广东省东莞市大朗镇洋乌工业区东冠电子厂 马山时间:2008-07-30来源:中电网收藏

引言

本文引用地址:http://www.eepw.com.cn/article/86409.htm

  水平飞行是最常见的飞行状态,让其做大仰角飞行则动作不能一直保持,如让其垂直于地面飞行能保持的时间则更短。本项目要实现的是一个可以让飞机垂直于地面飞行并可以稳定在固定高度的。利用在机身加入的三轴向加速度传感器来检测垂直于地面飞行的飞机的姿态。当检测到飞机前后摇摆时,控制水平尾翼使飞机保持前后方向的稳定性;当检测到飞机左右摇摆时,控制垂直尾翼使飞机保持左右方向的稳定性;当检测到飞机上下窜动时,控制油门的大小(即螺旋桨的转速)来保持飞机飞行高度的稳定性。当这些控制都很精准到位时,也可以像直升机一样稳稳地悬停在空中了。利用本文设计的可以让飞机在做垂直飞行减速的同时顺时针或逆时针转90°(投影面积很小),这样就可以减小暴露给后面飞机的投影面积,减小被击中的几率。

设计概述

  为了让飞机能竖直飞行,控制电路需要有以下功能:

  判断飞机是否要竖直飞行 对于真飞机,它可能只是一个可防止误触发的拨动开关;在本项目的实验品遥控飞机里,它就是某一个通道的脉宽信号。当脉宽大于某一设定值时,控制电路就知道它该上场了。

  判断自身姿态 这是本控制电路的核心部分之一,在控制飞机保持竖直飞行之前必须先判断自身的姿态。本项目用MMA7260QT传感器检测飞机的姿态。

  控制 这是本项目设计制作过程中最耗时的部分,但其原理很容易理解:姿态电路已经了解了飞机的姿态,控制电路只要做相应动作就可以了。飞机前倾它就让飞机向前移动一些,后倾就向后移动一些。还有一个需要控制的量——高度,飞机在做此动作时高度是要保持稳定的,机身上冲时要减小油门,下降时要加大油门。要完成如此控制,要用两片MC9S08QG8。为了达到上述功能,本项目应有如图1所示的电路框图。

 

  选用两片MC9S08QG8是因为在本项目里有两处对时间要求比较严格的地方:一是读从遥控器送出的脉宽;二是把经过运算的脉宽精确地发送出去,两处都要10μS以内的误差,如用一片来做即使用中断也会有冲突。本项目里两片MC9S08QG8工作的大体分配是:一片作为主控,用于读取遥控器送来的由接收机收到的脉宽(高实时性)、读取飞机姿态(低实时性)、控制运算(PID运算)和数据发送(把需要对飞机如何控制的数据,也就是PID运算的结果送给另一片);另外一片作为辅助,只要把读到的数据实时发给飞机的执行机构就可以了。

硬件描述

  硬件电路如图2所示。

 

  ·传感器MMA7260QT输出的三个轴的数据分别送入主控的三个A/D输入端ADP0、ADP1和ADP2,电源接一个电阻和电感可防止电源对传感器的干扰。

  ·整个电路的电源由J1从接收机引入,通过78FC33变为3.3V后给和传感器供电,J2、J3、J4分别是左右、油门和前后控制。

  ·主控MCU的第二路TPM的捕捉输入端TPMCH1接接收机的信号输出端。本遥控系统是9通道的,也就是可同时控制9个机构,这种9通道的信号见图3。它是由间隔为20ms的一个个脉冲串组成,每个脉冲串有9个脉冲,连续两个脉冲的上升沿的间隔就是遥控器送出的有效控制信号,此间隔最小1ms、最大2ms。TPM捕捉到9个脉冲的宽度后,就可以根据需要直接送给舵机或经PID运算后再送给舵机了。至于如何识别某一脉冲是上一个脉冲串的结尾还是下一个脉冲串的开头,这里涉及到一个同步脉冲的概念,属于软件内容,在此先不作解释。

 

  ·主控MCU的串行输出端接辅助MCU的串行输入端。主控MCU想如何控制飞机动作,只要通过串口把数据发送给辅助MCU就可以了,发送格式如表1所示,共8个字符,其中0xAA、0x55为引导位……

 

  ·三个LED,D1是电源指示灯,D3用于指示“我是控制电路,我已经开始控制飞机竖直飞行了”,D2是“出错了,小心出问题,快切换回由你控制吧。”

  ·辅助MCU有两个工作:一是读主控MCU送来的串行数据,找到引导字符后,把前后左右上下(油门)的数据送入相应的数组贮存;二是每20ms把相应的数组里的数据以脉冲形式发送出去。脉冲最小1ms、最大2ms。这个信号送入飞机的执行机构——舵机后对应的输出规律见图4。1ms的脉冲使舵机摇臂在最左边的位置,1.5ms的脉冲使舵机摇臂位于中位,2ms的脉冲使舵机摇臂在最右边的位置。舵机的摇臂连接飞机的各执行机构,摇臂摇动时飞机的执行机构(如尾翼等)也跟着摆动。

 


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭