先将平衡车控制任务分解为三个基本的动作:
1:保持平衡。
通过控制两个电机的正反向转动来调节平衡。
2:控制小车的速度。
调节小车的倾斜角度来实现速度控制,实际上最后演变为控制电机的转速来实现车轮速度的控制。
3:控制小车的方向。
通过控制小车的速度差,即转速差值来控制方向。
将复杂的问题分解为三个小的问题。车模直立和方向控制任务都是直接通过控制车模两个后轮驱动电机完成的。假设车模电机可以虚拟地拆解成两个不同功能的驱动电机,它们同轴相连,分别控制车模的直立平衡、左右方向。在实际控制中,是将控制车模直立和方向的控制信号叠加在一起加载电机上,只要电机处于线性状态就可以同时完成上面两个任务。
车模的速度是通过调节车模倾角来完成的。车模不同的倾角会引起车模的加减速,从而达到对于速度的控制。
三个分解后的任务各自独立进行控制。由于最终都是对同一个控制对象(车模的电机)进行控制,所以它们之间存在着耦合。为了方便分析,在分析其中之一时假设其它控制对象都已经达到稳定。比如在速度控制时,需要车模已经能够保持直立控制;在方向控制的时候,需要车模能够保持平衡和速度恒定;同样,在车模平衡控制时,也需要速度和方向控制也已经达到平稳。这三个任务中保持车模平衡是关键。由于车模同时受到三种控制的影响,从车模平衡控制的角度来看,其它两个控制就成为它的干扰。因此对车模速度、方向的控制应该尽量保持平滑,以减少对于平衡控制的干扰。以速度调节为例,需要通过改变车模平衡控制中车模倾角设定值,从而改变车模实际倾斜角度。为了避免影响车模平衡控制,这个车模倾角的改变需要非常缓慢的进行。
下面分别讨论一下平衡车任务分解后三个小