飞控软件开发过程是用户在开发环境中编译程序,通过串口将程序加载到飞行控制器,并且可以在PC机上进行调试,这是其突出优点。此外TERN公司还提供了底层操作程序,为软件开发提供了便利。
飞控软件设计
机载飞行控制软件总体分为三大模块:初始化模块、定时处理模块和串行中断处理模块。
各模块的功能如下:
(1)初始化模块:主要完成系统的初始化,包括A/D卡初始化、DIO口初始化、串口初始化、传感器初始化及参数的设置等。
(2)定时处理模块:主要完成与时间有关的周期性任务,包括传感器信号的采集、飞行模式管理、导航计算、飞行控制律计算和执行机构控制等。
(3)串行中断处理模块:完成遥控指令的接收、磁航向计和无线电高度表数据的接收等。
飞控软件的主函数流程如图6所示。
半实物仿真实验
在半实物仿真试验中,飞行控制计算机的控制信号通过D/A转换后,经过伺服控制驱动器放大来驱动无人机的执行机构即电动伺服舵机,然后仿真计算机通过A/D通道采集电动伺服舵机的位移信号,并且输出控制指令(三轴姿态角)控制三轴飞行仿真转台,模拟出无人机的姿态角及姿态角速率等信号。机载传感器将这些信号反馈给飞行控制器,从而构成一个闭环系统,完成各种飞行任务。仿真试验可以检验飞行控制系统的安全性与可靠性,为无人机成功放飞奠定基础。半物理仿真实验结果如图7所示。
从图中可以看出,无人机基本上可以沿给定航线飞行,切入直线航段或圆弧航段后,侧偏距较小,在转弯处有一定的超调,总体来说控制效果较好,分析后认为该无人机压航线飞行基本达到需求方的要求。
结论
586-Engine嵌入式芯片的使用,减小了飞行控制器的体积与重量,实现了飞行控制器小型化、高集成度的设计目标;自行设计的串口扩展电路、舵机控制板等降低了研制成本,满足了项目需求方的要求。可以预见,586-Engine特有的功能以及较高的性价比将在无人机飞行控制领域得到广泛的应用。