完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
1.根据公式▽u(k)=Ae(k)-Be(k-1)+Ce(k-2),A,B,C系数的确定问题,这个是自己根据实际数据测出来的吗?具体测量要注意什么?
2.单片机求出▽u(k)之后下一步要做什么?是不是要事先测量不同▽u(k)下对应的电机的转动角度呢?然后根据这个实现小车的运动? |
|
相关推荐
4个回答
|
|
求指点啊,PID没接触过。。。
|
|
|
|
本帖最后由 爱我别走 于 2013-8-18 11:04 编辑
1. 根据▽u(k)=Ae(k)-Be(k-1)+Ce(k-2)公式,你用的是增量式PID无疑。PID的精髓就是“他完全不去考虑能量,质量和效率等因素,却完成了对这些因素的控制调节功能”。所以也就不需要你说的"测量不同▽u(k)下对应的电机的转动角度"。 2. 公式中Ae,Be,Ce,分别表示,比例系数,积分系数,微分系数,k, k-1, k-2分别表示当前误差(小车当前角度与平衡时的角度差),上一次的误差,上上次的误差。 3. 可以先让小车全速行驶到跷跷板中点附近,然后开启PID算法。定义这样一个变量,int step=0。假设step=1,表示小车向前步进1个单位长度(越小效果越好,自己根据实际调试来把握),step=2,表示小车向前步进2个单位长度。相反,step=-1,表示小车向后步进一个单位。根据step += Ae(k)-Be(k-1)+Ce(k-2),也就是PID算法,即可自动调整小车的步进长度和方向。 4. 反复整定参数,Ae,Be,Ce,当然还包括step的单位步进大小。通过实际观测,直至小车最快,最稳定的达到平衡(理论上是step接近于0时达到平衡,也就是小车当前角度与平衡时的角度差接近0)。 |
|
|
|
非常感谢,受教了 ![]() |
|
|
|
也在做这题,没接触过pid,能否分享一下程序,还有楼主用的是哪款单片机?
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
409 浏览 0 评论
【xG24 Matter开发套件试用体验】10-Bluetooth示例1
469 浏览 0 评论
697 浏览 0 评论
【xG24 Matter开发套件试用体验】power specification电源规格参数配置
512 浏览 0 评论
475 浏览 0 评论
【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台
10813 浏览 31 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-8-22 16:21 , Processed in 0.980078 second(s), Total 77, Slave 61 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191