测速( PI算法)
假设小车在上面直立控制调节下已经能够保持平衡了,但是由于安装误差,传感器实际测量的角度与车模角度有偏差,因此小车实际不是保持与地面垂直,而是存在一个倾角。在重力的作用下,小车就会朝倾斜的方向加速前进。控制速度只要通过控制小车的倾角就可以实现了。
(1)如何测量小车速度?
(2)如何通过小车直立控制实现小车倾角的改变?
(3)如何根据速度误差控制小车倾角?
(1)第一个问题可以通过安装在电机输出轴上的霍尔测速来测量得到小车的车轮速度。如图所示。利用控制单片机的外部中断IO口在不间断测速,速度为脉冲信号的个数可以反映电机的转速。
(2)第二个问题可以通过角度控制给定值来解决。给定小车直立控制的设定值,在角度控制调节下,小车将会自动维持在一个角度。通过前面小车直立控制算法可以知道,小车倾角最终是跟踪重力加速度Z轴的角度。因此小车的倾角给定值与重力加速度Z轴角度相减,便可以最终决定小车的倾角。