PID算法控制平衡小车直立

本文介绍了平衡小车直立控制的原理和PID控制器的调整过程。通过负反馈机制,结合电机加速度和小车倾角的关系,实现平衡。在实际操作中,调整PID参数(KP和KD),以找到合适的平衡点,减少抖动并提高响应速度。
摘要由CSDN通过智能技术生成

1.平衡小车直立控制:

在这里插入图片描述

如果我们要控制一根木棍在手上直立,需要两个步骤
->托着木棒的手可以移动
->眼睛能看到木棒的倾斜角度和倾斜趋势(角速度) 

在这里插入图片描述

类比到平衡小车中,同理想让小车保持平衡,同样需要一个负反馈机制,让小车角度回正,理想情况下,我们只需要控制电机的加速度和小车的倾角成正比就可保持平衡

(1)一般小车只需沿着轮胎方向前后移动保持平衡即可,我们把小车偏离平衡位置的角度作为偏差。

(2)实际上小车到达平衡位置后,并没有我们设想的那样保持静止,而是因为钢体转动惯性,小车会往另一个地方倒去.

(3)所以我们不仅需要在电机上施加和倾角成正比的回复力,还需要增加和角速度成正比的阻尼力。

(4)设置小车的机械中值,从下往上摆动小车,看到小车在机械0度倒下,设置小车的机械中值为0度.

(5)先确定小车的KP值:因为小车的PWM设置为7200为100%,如果PWM为720时角度在+-10度的时候会满转,所以我们PWM应该在0~720之间

(6)这时我们先在0~720之间挑选一个数,确定一个数200后,取-负数,发现会加速小车的倒下,说明极性相反了,我们应该取正数。

(7)当我们取值为正 200的时候,小车会自动回缓到平衡位置,但是反应速度太慢了,这时候我们可以试着加大KP值。

(8)当我们增大大 350时,反应速度有一定的提升,可以在平衡位置保持1,2秒,但是觉得反应慢,可以试着继续增大KP值。

(9)当我们增大到500得到时候,反应速度有明显的增加,但是小车在平衡位置会低频的抖动,这时我们可以试着加入KD值来抑制抖动。

(10)确定小车的KD值和极性:因为小车的PWM设置为7200为100%,我们估算KD值并不会很大。

(11)我们让KP值为0,先取一个-负数,-0.5,发现会加速小车的倒下,说明极性相反了,我们应该取正数。

(12)我们让之前的KP值加进来 ,KP值是500,KD值是0.5 . 这时我们平衡车的抖动消失了,当小车不再抖动的时候,一般PID参数是越大越好的,我们试着增加KD值,PID参数越大系统的响应就会越快。

(13)这时我们把KP值还是设置成500,KD值增大到1,看到情况比之前好,但是 还不是很理想,我们试着把 KD值改为1.5.

(14)当KP值为500,KD值为1.5时我们看到情况还是很理想的。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

嵌入式_笔记

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值