以单片机为核心设计并实现了小型自控飞艇的舵机控制系统,对系统的硬件设计进行了说明,对软件设计中的关键问题——串行通讯及帧识别、多单片机通讯及PWM波的软件产生方法进行了详细阐述。 平流层飞艇是一种利用轻于空气的气体(如氦气等)产生浮力作为升力的飞行于平流层区域的飞行器。它依靠飞艇内部装载的轻于空气的气体产生的静升 力,通过控制飞艇上的舵面和动力装置,以较小的能耗实现在平流层的飞行。配备集成化组合导航和自主飞行控制系统的飞艇,可以实现在平流层空间准静止和常驻 空自主飞行。它具有高空定点工作时间长、对地观测范围广、维修使用方便以及成本低等特点,因此可以根据任务需要在飞艇上安装相应的载荷,构成对地、对空任 务平台。小型自控飞艇是为了验证平流层飞艇飞行特性和控制性能的小型软式试验飞艇,对其控制系统的研究是平流层飞艇研制中一个重要的过渡阶段,具有极其重 要的意义。 1 小型自控飞艇舵控系统简介 舵机是小型自控飞艇执行机构中最主要的执行部件,能否快速、准确地完成对舵机的控制直接关系到飞艇的自主控制效果。因此,舵控系统成为小型飞艇 自主飞行控制系统中最重要的组成部分之一,它的主要功能是接收艇载计算机发出的控制指令,实现对控制指令的采集、分析和处理,并根据控制指令向舵机输出连 续可调的舵控信号,操纵艇上各舵机完成预定动作。 2 舵控系统硬件设计 本飞艇舵控系统以多片P89C2051单片机为核心,配合电源模块、驱动芯片及多路转换开关等在一块印制电路板上实现预定功能。舵控系统设计总体框图如图1所示。
舵控系统主控芯片(主控单片机1、2)选择P89C51RA2xx型单片机, 它具有8KB的并行可编程非易失性FLASH 程序存储器,并可对器件串行在系统编程(ISP)和在应用中编程(IAP)。该型微控制器是80C51微控制器的派生器件,是采用先进的CMOS工艺制造 的8位微控制器,指令系统与80C51完全相同。该器件有4组8位I/O口、3个16位定时计数器、多中断源-4中断优先级-嵌套中断结构、1 个增强型UART、片内振荡器及时序电路。舵控单片机采用Atmel公司的89C2051型单片机[2],其具体性能这里不再赘述。 电源模块采用美国国家半导体公司生产的LM2576系列产品,它是线性三端稳压器件(如78xx系列端稳压集成电路)的替代品。相比而言,它的 热损耗更低、工作效率更高、输出电流驱动能力更强,同时对于电源的高频干扰还有较强的抑制作用。利用该器件只需极少的外围器件便可构成高效稳压电路,为 MCU稳定可靠的工作提供强有力的保证。 此外,为增强信号的驱动能力,在输出之前采用74LS245作为信号驱动芯片;串口电平转换采用Max232芯片。 该系统硬件设计比较简单,值得一提的是其中的安全性设计部分,即当地面检测到艇上自动控制系统已经失效时,为确保飞艇安全返回,需要将控制方式 转至遥控方式。如图1所示,当艇载计算机发生故障时,舵控系统通过无线射频接收机接收地面遥控信号,通过其输出的多通道PWM波直接控制艇上舵机,控制飞 艇安全返回。此处,控制方式的转换是通过多路转换开关实现的,开关的切换信号由艇载计算机看门狗电路在检测到艇载计算机已不能正常工作时给出。
3 舵控系统软件设计 3.1 软件总体结构 舵控系统各单片机程序均在Keil C51环境下采用C语言编写。为了保证系统的实时性及快速性,软件编写采用了主程序+任务+中断的结构。 在三部分程序中,以主单片机1的外部中断最多,包括串口中断、与主单片机2的握手中断以及艇载计算机看门狗的外部中断,这几个中断的优先级排列顺序是:艇载计算机看门狗中断>串口中断>握手中断。主单片机1接收到艇载计算机通过RS232串口发来的信息帧后,首先进行帧识别,提取出前m个字节的数据,加上帧头帧尾后由P1口发送给主单片机2;并将第m+1个字节数据作为开关量通道控制信号由P2口输出,用作系统控制备用。 |