航拍的软件
软件包括飞控内部的软件和地面站的软件。
飞控内部软件是飞控的灵魂,如果只有硬件只是电子垃圾。
一谈到软件很多朋友就是讨论使用ucos、linux等等的操作系统。其实作为飞行控制这种实时性要求很强的控制系统,不一定要采用操作系统。使用操作系统对硬件和时序的控制能力降低,CPU的有效使用率降低,对内存的需求增加。在UP10和UP20中都没有采用操作系统。
UP10完成了传感器数据采集,GPS信息获取,接收机信号获取,舵机控制,与地面站通讯,飞行控制率计算,导航控制,任务控制等所有功能。其中舵机控制和接收机信号获取拥有最高的优先级,与地面站的通讯优先级最低,合理处理CPU的优先级问题能够避免CPU控制时序的混乱和相互的干涉问题。 在编制与地面站的通讯程序部分,一定要考虑到无线通讯的误码率问题,所有上下行数据必须都要加以校验,特别是飞行航点数据这些重要数据要反复校验,一旦错误将会将飞机导航到不可知的方向。
导航逻辑一定要严谨,对于可能出现的一些问题要提前考虑到。
对于可能出现的GPS丢星,发动机停车,飞机机体解体,遥控失灵等问题要考虑补救措施。
舵机的反舵设置,不同布局的混控设置等最好在飞控中都能实现。
对于地面站软件,要考虑到方便、实用、可靠,美观是其次的。其实要设计一个好的地面站也是需要经验来支持的。 这个地面站软件应该考虑到如下功能:
· 地面站软件集成化
· 可以支持多种地图:电子地图,扫描配准地图,自定义地图
· 飞行仪表(空速,地平仪,高度,转速,罗盘,升降率)
· 传感器数据监测
· 飞行中实时PID调节:地面站实时监控飞行数据,并动态显示数据曲线,实时修改PID增益参数
· 飞行中可以设定目标航点
· 可以实时操作任务舵机位置,操作和显示任务IO口
· 可使用地面站远程控制飞机飞行
· 图形化方便灵活的航点编辑方式(包括制式航线):可以直接在地图上使用鼠标增加、删除航点,可以直接拖动编辑所选择的批量航点,可以手动修改航点数据。支持单点和所有航点上传和下载。
· 调整舵机旋转方向和中立值
· 记录遥测数据
· 显示飞机的飞行轨迹和姿态
· 危险告警(电压、温度、GPS状况、发动机转速、高度、爬升率等)
· 回放飞行数据
数传电台的选择不要一味的追求发射功率,可以通过好的增益天线来获得远距离的传输,飞机上数传的安装要避免对舵机、遥控接收机、飞控内部的传感器造成干扰。
试飞前的准备工作要做充分,遥自控切换要切实可靠(调试初期出现任何问题要能及时切换到遥控状态),准备好试飞计划,做好飞行前检查,做好飞行后总结,由简到难,逐步实现自动控制。