前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >?Sliverwave四旋翼固件分析.四(角度PID)?

?Sliverwave四旋翼固件分析.四(角度PID)?

作者头像
云深无际
发布2022-12-17 17:45:11
2460
发布2022-12-17 17:45:11
举报
文章被收录于专栏:云深之无迹云深之无迹

Sliverwave有刷四旋翼固件分析.一

Beecore Lite Silverware 有刷飞控.源码解读1

36元空心杯飞控Beecore Lite(Silverware固件)

Betaflight飞控1.0源码位置

100元空心杯F3飞控(BetaFlight固件)

开新坑:betaflight源码分析(开坑篇)

Sliverwave有刷四旋翼固件分析.二(原理图)

Sliverwave四旋翼固件分析.三(蜂鸣器驱动)

角pid的作用就是 -用于水平模式,以设置水平强度。

PID我也讲不明白,直接给你上:

kp,比例环节是为了加快响应速度快速达到稳定,能减少误差但不能消除误差。是比例调节系数,在PID调节器中起到加快系统的响应速度,提高系统的调节精度,快速调节误差的作用。

ki,积分环节是为了消除稳态误差,只要系统有误差他就一直积分,稳态后不会出现误差,过大会超调,到消除残差,调节稳态时间的作用。

kd,微分环节预测误差的趋势,减少超调量来克服振荡,使系统稳定性提高,在PID调节器中起到改善系统的动态性能,预测误差趋势,提前修正误差的作用。

有这三个系数就很好解释编程时出现的一些变量了。

这些头文件我后面会发在Github上面

这里就是下面要用的PID参数,上面是正常飞行时候的参数

这是机体受到很大幅度的动作,直接就是kp系数来快速的稳定机身了

两个值在某种程度上面可以一起共用,这里就作为最终PID输出的限幅数

这个函数可以确保最终的输出数据在你的范围内

确保PID控制的精度都使用float

两次PID输出值的计算

这个变量从PID的文件里面取来

KD是控制震荡的,就是提供动态性能

接着就是把两次的KD加在一起

把现在的角度误差给到上一次的变量

保证调的参数在范围里面传出去

最终这个函数被封装成这样,传到外面使用,唉,苦逼的打工函数

这个函数的作用区域就是控制,在摇杆控制端

代码语言:javascript
复制
https://miaowlabs.com/book/lite/E02.html
代码语言:javascript
复制
https://blog.csdn.net/lichenda/article/details/106874752
本文参与?腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-12-10,如有侵权请联系?cloudcommunity@tencent.com 删除

本文分享自 云深之无迹 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com