# 自我介绍 * 飞控算法工作内容 与硬件、软件、结构等同事共同确定飞行器的主要参数,包括重量、动力、续航、功能,从而确定飞行器类型、确定各执行器和传感器的性能指标。 与嵌入式工程师沟通系统架构,确定程序中算法任务的执行频率、各个传感器调用方法、存储方法。 如果团队人多,根据人数拆解算法工作,比如几个人做组合导航,几个人做控制,组合导航里姿态和位置拆不拆开,高度分不分离出来。 如果只有一个人,先测传感器数据,最主要的是惯导,看输出值有无问题,如果有飞行器,直接上机,在真实的振动环境下看是否需要加低通滤波等处理,还包括气压计、超声波、毫米波、摄像头、GPS这些传感器也都需要测试。 写标定算法,标定加速度计、陀螺仪、磁力计(如有)。 写状态显示算法,如有LED时,什么颜色代表什么状态。 确定数据融合方案,现在主流的都是卡尔曼滤波,然后开始设计算法,在飞控板上调试,看姿态、位置、高度、速度等状态量估计值是否合理。 写控制算法,最简单常用的就是PID,在简单的环境下试飞、调参。 增加复杂环境下的逻辑处理,比如使用超声波测高时,飞行器飞过楼梯怎么处理,如果是倾转旋翼,倾转过程如何控制等。 FDI算法设计,用于隔离异常,比如GPS丢星。 如有任务设备,简单调试,比如控制相机曝光,操作执行机构。 功能开发,比如航线规划后飞自动任务,避障,跟踪,定点环绕,固定区域巡逻等。 跟踪大量试飞测试,确保稳定性。 ​ 面试官好,我叫吴金辉,中国计量大学现代科技学院的计算机专业的学生,在校期间在学好专业课的同时在大一大二参加了两年中国国际飞行器设计挑战赛(CADC),大一主要是跟着学长学习,大二的时候我作为组长带领同学和学弟们参加比赛。我参加的项目是垂直起降载运,大致规则是,设计一个不超过两个电机的飞行器,但不能使用直升机,需要飞行器做到在起降区中装载货物按照一定的轨迹飞行之后,将货物投放到一个0.4M直径的圆筒中,由于起降区面积比较小飞行器只能垂直起降。这就导致只能设计一些非传统的机型,在此期间也接触并制作很多种无人机,尾坐式垂直起降,倾转旋翼无人机,变距四轴,最后根据机型的测试结果的综合考虑,选用了变距四轴无人机作为最终的方案。最终也取得了不错的成绩,拿到了两个国家一等奖,团队总成绩排名第二的好成绩。两年的参赛经验让我学到了很多东西,也让我对无人机这方面产生了浓厚的兴趣。由于大一大二的时候能力有限,参加比赛的时候更多的是对现有飞控的参数的调整和一些自定义的配置,修改一下混控器这些简单的操作。我在大三的时候主动去了解了一些无人机飞控开发的内容,同时也去了一家无人机公司实习。实习的公司是杭州若联科技,公司的主要业务是无人机集群灯光秀和工业无人机。我在实习期间也参与了一些项目,在实习期间参与了一些项目也学到了许多东西。通过这些项目的实战,让我对无人机系统有着更深入的了解。也积累了更多的经验。 请问为什么pid不需要建模呢?是因为参数最后依据实际情况来整定吗?可是开源飞控几乎都不需要调参,不管搭配很么鸡架什么电机什么桨,都能飞得不错,难道pid的参数与这些都无关吗?那与什么有关系呢? PID控制是只需要目标设定和反馈值就可以,反馈值可以用状态估计算法得到,有了这两个,pid就控制误差趋于零即可。开源飞控几乎不需要调参是因为,鲁棒性相对好些,机架或者电机之类的影响不会使性能差距很大(但是如果变化很大的话还是能感觉出来参数不合适的),所以一组参数就可以获得良好性能。所以,本身pid控制器就不是基于模型调出来的,当你飞行器变化一些参数,影响没有那么大。 遥控信号丢失判定决策 电池电压判定和决策