在某些场合下,如果我们把一个突变的数据直接加到一个已经稳定的系统中,那么这个系统可能会很难再次达到稳定,这个时候就需要对突变的数据进行平滑处理,逐渐的加大。可能这样说不太容易理解,举个例子,最近在做一个机器人项目,机器人的行动靠的是一个大型的两轮平衡车,平衡车调试时,在直立环稳定后需要增加速度环对其行走速度进行控制,关于直立环和速度环,目前我所了解的就是三种结合方式:
第一:采用双闭环控制策略,内环为速度环,外环为直立环。这种方法没试过,据说是平稳行进没问题,但是抗干扰能力太差。反正我是不怎么认同这种控制策略。
第二:仍然采用双闭环控制策略,内环为直立环,外环为速度环。个人感觉这种方案还是可以一试的,首先在直立环调好以后,改变一个给定的角度,平衡车为了达到给定的角度,由于 PID 调节的作用,必然会打破当前的机械平衡状态,当达到给定角度时,由于车体的重心变了,由于惯性,平衡车必然向一个方向行进,至于行进的速度就得看我们给定角度的大小了。知道了这一
点,将外环速度环的输出作为直立环的给定,然后在速度环上给定一个速度,然后通过速度 PID 调节和直立 PID 调节最终控制小车前进。
第三,采用平衡控制策略。即将直立环的 PID 输出与速度环的 PID 输出求和作为最终的 PWM 输出,这种方案也可行,大部分做平衡车的人也在使用。不过之前看过一个文档,里面说使用这种策略实际上就是第二种串级 PID 的拆解,他将串级 PID 拆解成了一个负反馈的直立环,一个正反馈的速度环。我也没试过,不过经过推导,理论上说的过去。