[项目]基于FreeRTOS的STM32四轴飞行器: 十五.PID参数调节

基于FreeRTOS的STM32四轴飞行器: 十五.PID参数调节

一.飞行方向的控制

因为在函数调用中已经将外环输出设置为内环期望值,所以在函数中不用设置。

如果需要向前后飞,设置期望值为:

pitchPID.desire = (joyStick.PIT - 500) * 0.04;

乘以0.04后该飞行角度最大值为20度。

如果需要向左右飞,设置期望值为:

rollPID.desire = (joyStick.ROL - 500) * 0.04;

如果需要转向,设置期望值为:

yawPID.desire = (joyStick.YAW - 500) * 0.04;

二.PID参数调节

先调内环P再调外环P,如果有震荡再调节内环D不行再调外环D,都做完后有稳态误差再调节内环I,再调节外环I。
俯仰角PID调节:

调节时将无人机绑在调节架上观察飞行状态,因为和重力相比较PID不足以完全恢复原先状态,现象为缓慢往下掉 ,出现这种现象证明内环P调节完毕。

先设置内环为1观察极性。

观察发现在飞机下落时有阻止趋势,极性正确。

如果设置极性相反, 在松开飞机时飞机会转圈。

因为在这时即使油门值为0,因为PID的作用飞机还在转,需要在代码中添加油门值判断关机。

根据现象一直增大内环P值观察现象,直到缓慢下降。

再来调节外环P值,该值调节俯仰角角度 使角度为0,观察发现极性相反

在增大值为-5.0时,发现飞机有震荡现象

修改内环D值抑制震荡 ,增大内环P值加快恢复速度


横滚角PID调节:

将机头换一个方向绑在调节架上。

横滚角和俯仰角值差不多,观察发现极性相反调节参数为:

偏航角PID调节:

先确定极性,如果极性对给予转动会缓慢回到起始位置,观察发现极性相反。

经调节合适参数如下:

三.总结

相关推荐
不悔哥34 分钟前
开源 Zephyr:现代嵌入式 RTOS 长什么样
单片机·开源·嵌入式
广州灵眸科技有限公司40 分钟前
瑞芯微(EASY EAI)RV1126B display
开发语言·数据库·人工智能·科技·嵌入式硬件
the sun341 小时前
CMSIS标准与各种库的发展历史+哈弗架构+CPU统一编址
stm32·架构·嵌入式
国产化创客2 小时前
创客开发入门(三)Arduino IDE 开发环境
ide·单片机·嵌入式硬件·课程设计·智能硬件
CedarQR2 小时前
LubanCat-2 (RK3568) Debian 下让 H3C Magic USB 无线网卡(AIC8800)联网全记录
linux·网络·单片机·嵌入式硬件·debian·3568·h3c
LongRunning12 小时前
【BLE】STM32WB55_低功耗(十一)
stm32
芯片人00712 小时前
纯硬件一键开关机ASIC芯片,为什么比 MCU 方案更适合更可靠
人工智能·单片机·嵌入式硬件·物联网·芯片
染予13 小时前
Ka 阵面星历下发与执行逻辑说明
stm32·嵌入式硬件
芯片人00714 小时前
武汉广昇科技的GMUX1308A模拟开关芯片成功导入中国台湾上市企业联昌电子,助力汽车电子供应链自主可控
科技·嵌入式硬件·物联网·汽车·芯片
恒锐丰科技林技术员17 小时前
EG2181D 半桥栅极驱动芯片详解:高压 MOS/IGBT 驱动实用器件
经验分享·嵌入式硬件·硬件工程