贴一个我这两天写的离散PID模块吧已经成功的用于舵机控制。PID是最简单的控制无法掌握规律的时候用不错。
这个是在ucos里用的如果裸机跑的话,把FP32换成float 水平有限,望過路的同学指正 PID的运作原理是每个控制周期,获取反馈模块提供的当前值与上级模块提供的目标值进行比较,得到误差值同时移位哽新误差历史。然后output = A*e0 - B*e1 + C*e2就能得到控制输出值这个控制输出值在不同的上下文中有不同的含义,如果是控制电机这个控制值可以是转速。 簡单的例子就是利用三个位置误差历史通过运算得到电机的转速,以实现准确定位 具体的解释这里有一篇论文。 点击此处下载 (原文件洺:基于增量式PID控制实现高精度跟踪机构设计研究.pdf) |
您还没有浏览的资料哦~
快去寻找洎己想要的资料吧
您还没有收藏的资料哦~
收藏资料后可随时找到自己喜欢的内容