配置
INAV firmware:7.1.2
INAV Configurator:7.1.2
飞控板:JHEMCUF405AIO
一、Mixer
Mixer(动力分配函数):遥控输入(thrust、roll、pitch、yaw)到电机的映射
二、常见Mixer
四旋翼
固定翼
三、对翅型扑翼机配置
动力分配:
左翅膀电机(升力和翻滚角控制):throttle * 1.0 + roll * (0.5)
右翅膀电机(升力和翻滚角控制):throttle * 1.0 + roll * (-0.5)
二面角舵机(俯仰角控制):pitch * 1.0
尾部舵机(偏航角控制):yaw * 1.0
实现
选择 Platform
这里选择Airplane
选择 合适的预设Mixer
加载并应用预设Mixer
如果没有预设的机型(如扑翼机)
为电机端口选择合适的输出类型:无刷电机、舵机
删除所有预设的Mixer
实现Mixer
左翅膀电机(升力和翻滚角控制):throttle * 1.0 + roll * (0.5)
右翅膀电机(升力和翻滚角控制):throttle * 1.0 + roll * (-0.5)
二面角舵机(俯仰角控制):pitch * 1.0
尾部舵机(偏航角控制):yaw * 1.0
四、总结
最关键的是找到飞机到电机的动力映射函数(查论文),在INAV的Mixer中配置即可。更复杂的模型可能要去修改源码的动力分配函数。
不同飞机的动力学模型不同,但是上层的代码是可以通用的。
ArduPilot
Ardupilot暂未实现。相同的效果APM是可以实现的。参考[3]是通过选择合适的servo output function 来实现动力映射的,但是现有的输出函数并不能很好的满足扑翼机需求。想要更好的实现,可以参考[4] 新建一个飞机框架frame,实现动力映射。
遇到的问题:STM32F405 Flash 只有1MB,在构建ArduoPlane时超出了Flash大小,构建失败(取消OSD功能后,构建成功)
邮箱:911685832@qq.com 欢迎研究无人机、扑翼机的一起讨论
参考链接:
[1]INAV : Mixer and platform type
[2]Configuring the Mixer tab in INAV 7.0.1
[3]Ardupilot-Ornithopters扑翼机配置
[4]Ardupilot新建飞机框架frame