基于PID算法和卡尔曼滤波的平衡车控制系统
2021-06-16杨俊伟
电子技术与软件工程 2021年6期
杨俊伟
(广东东软学院 广东省佛山市 528225)
1 引言
自平衡车控制系统是移动机器人领域的热点问题,能够将人工智能技术和自动控制理论有机结合的典型应用。随着微电子技术的迅猛发展,自动控制与人工智能的融合会得到进一步提升,平衡车也是未来载具的重要方向之一[1]。本文以STM32 为主控制芯片,在数学模型分析基础之上,采用PID 算法和卡尔曼滤波实现了两轮自平衡车控制系统的设计与实现,由姿态传感器模块收集的倾角、角速度等数据,经过卡尔曼滤波数据融合分析,得到精确的平衡车姿态信息,通过PID 算法实现平衡车的直立控制、速度控制、转向控制、手机蓝牙遥控等,做到了平衡车的速度与稳定性的统一。
2 设计原理
如图1 所示,平衡车的运动状态与倒立的单摆相似,因此,利用可简化的单摆模型进行数学建模,不考虑空气阻力和摩擦力。设车体的质量为m,正常行驶时的加速度为a,平衡车与竖直方向之间的夹角为θ,当平衡车离开竖直方向平衡位置的时候,使重心恢复竖直方向所需拉力为:

当θ 很小时与sinθ 近似,车轮加速度a 与倾角成正比例关系,假设为k,因此可将公式近似为:

上述公式中,加入平衡车角速度ω 的阻尼力影响,可将公式修改如下:

因此,要将平衡车控制在竖直方向的加速度a 的控制公式为:

其中,θ 是倾角,ω 是角速度,k 和k1是比例系数,实际操作时,需要满足k>g,k1>0,实时测量平衡车的倾角,通过卡尔曼滤波和PID 算法给予电机控制信号来控制平衡车的车体维持稳定。……p>
登录APP查看全文
