当前位置:文档之家› 平衡车控制

平衡车控制

两轮自平衡机器人控制系统的设计 (转)
2008年06月27日 星期五 20:45
1 引言

近年来,随着移动机器人研究不断深入、其应用领域更加广泛,面临的
环境和任务也越来越复杂。有时机器人会遇到比较狭窄,而且有许多大转角的工
作场合,如何在这样的环境里灵活快捷的执行任务,成为人们颇为关心的一个问
题。两轮自平衡机器人概念就是在这样的背景下提出来的,这种机器人两轮共轴、
独立驱动,车身重心倒置于车轮轴上方,通过运动保持平衡,可直立行走。由于
特殊的结构,其适应地形变化能力强,运动灵活,可以胜任一些复杂环境里的工
作。以前对于两轮自平衡机器人的运动控制的研究,理论上取得了许多开创性的
进展,但这样的算法依赖于精确的模型和完整的信息,大多停留在理论研究和仿
真的阶段实际,应用中并不多见。大部分实际应用的移动机器人左右轮的运动控
制都是基于双闭环的电机控制,直接将电压作为控制量,利用模拟电子电路进行
控制[1]。这样控制策略存在着精度低、可靠度差、效率低等缺点。

本文针对两轮自平衡机器人在实际应用中存在的问题,应用最优控制及
两轮差动等控制方法设计了控制器,提出了针对两轮自平衡机器人平衡和行进的
新策略。为了提高两轮自平衡机器人的控制效果,利用基于DSP数字电路的全数
字智能伺服驱动单元IPM100分别精确控制左右轮电机,并利用上位机实时控制
机器人的运动状态,提高了控制精度、可靠度以及集成度,最终得到了很好的控
制效果。

2 两轮自平衡机器人的动力学模型
两轮自平衡机器人的结构主要由车身和双轮构成,机器人两轮参数(质
量、转动惯量、半径)相同、共轴、独立驱动,车身重心倒置于车轮轴上方,通
过运动保持平衡,可直立行走。车轮不但受电机的输出转矩、地面支持力、摩擦
力的影响,同时还通过电机轴受到机器人车身作用力[2][3]。机械结构如图1
所示:

图 1两轮自平衡机器人机械结构图
分别以车轮、车身为研究对象,分别列出车轮、车身方程,左右两轮具有
对称性,左轮方程为:

(1)
m ——车轮质量(kg);
J ——电机转子及车轮等效在电机轴上的转动惯量( );
r ——车轮半径(m);
wL——左轮转速(rad/s);
TmL——左轮电机电磁转矩( )
HL——左轮承受的车身水平作用力(N);
由车身得到方程:

(2)
nv、 av——分别为质心水平、竖直位移;
V 、 H ——分别为车轮从水平、竖直方向施加给车身的力(N);
l——质心距车轮轴距离;

——车身竖直倾角;

mp—— 车身重量;
两轮自平衡机器人平衡后,可假设车身倾角在±5范围内。取近似(sin =
,cos =1),将式(1)代入式(2),得到车身前进运动模型

(3)
这样我们建立了关于角度和加速度微分方程。
3两轮自平衡机器人的控制系统设计
3.1控制系统的硬件设计
两轮自平衡机器人Opyanbot的硬件主要由电源管理模块、测量单元、运
动控制单元、伺服电机和主控机组成,如图2所示。

图 2:两轮自平衡机器人硬件结构图
电源管理模块提供各单元所需电压;测量单元包括倾角传感器 、陀螺
仪和电机码盘,分别测量机器人竖直倾斜角度、竖直水平转动角速度和两个电机
各自的位置和转速,测量单元将数据传入运动控制单元。运动控制单元是基于
DSP的IPM100全数字智能伺服驱动单元,内嵌高水平的Technosoft运动语言,
可以按照内部EEROM的程序独立运行,或者在主控制器的监督下利用串口通讯运
行命令程序,通过内设闭合电流环、位置环和电流环,精确控制伺服电机的工作
状态,如图3所示;

图 3:IPM100 闭环控制方框图
主控机内写有控制算法模块和指令模块,可以通过RS485实时采集由
运动控制单元传入的测量信号,并向运动控制单元发送命令。

3.2 控制算法的设计
3.2.1平衡控制
两轮自平衡机器人是一个多输入、单输出系统,分别以机器人竖直角度、
竖直方向角速度和电机转速为输入,车轮转动角加速度为输出,

由上面得到的微分方程,得出状态方程:

(4)
其中:

(5)
利用线性系统的可控性秩判据rank(B AB A2B)=3,系统可控;利用线性
系统的可观性秩判据rank(C CA CA2)=3,系统可观。因此近似线性化系统状态完
全可控可观,系统满足最有控制使用条件。[4]

下面我们应用LQR 控制算法对其进行计算,设最优控制向量的矩阵K:

(6)
ub(t) 是满足两轮自平衡机器人处于平衡状态的加速度,这样就得到了满
足平衡控制要求的控制量。
3.2.2 直行、转弯控制
两轮自平衡机器人的其他运动(直行、转弯),都是在这个控制量的基
础上进行加减。具体控制方法如图4所示:

图 4:两轮自平衡机器人控制结构图
机器人的行进,是在机器人平衡的基础上,通过给两轮增加相同的控制
量us来实现的。由于两轮分别独立驱动,即便获得同样的直行信号us,也不能
保证两轮行进速度始终相同,行进路线保持直线,这样就需要机器人对于行进方
向具有自动校正能力。

机器人直线行走模型是一个双输入、单输出系统,输入它与水平转速
和两轮行进距离的差成线性关系:

(7)
水平转速可以通过陀螺仪的水平分量得到,两轮行进距离可以通过编码
器读到,利用最优控制算法同样可以得到系数h1、h2的值,从而得到用于校正行

进方向的输出的。

机器人的转向运动,可以通过两轮差动方法实现,分别给左右两轮加上
一对大小相同、方向相反的控制量ur。

这样就可以得到两轮自平衡机器人总输出:

(8)
3.3 机器人运动的精确控制
本机器人由于采用基于DSP数字电路的全数字智能伺服驱动单元IPM100
作为运动控制器,并且可以利用上位机编写控制复杂的控制指令,对机器人可以
进行实时控制,因此精确的控制机器人的运动状态和运动轨迹成为可能。

机器人速度精确控制可以通过改变(6)中状态变量v来实现。如果目标
速度是vt,则通过

(9)
可以使移动速度稳定在vt。如果目标加速度是ut,只需令
us =
ut (10)

可以使机器人按照加速度ut加速。转动角度可以通过改变方程(7)来
实现,如果需要向右转动,则

(11)
这样就实现了速度、加速度、转角控制的精确控制。
通过读两轮编码器,可以得到机器人位置、朝向、运动速度等信息。这
样就可以通过编写程序,让机器人按照预先指定的运动状态和路线运动。

4 仿真与实验结果

可以利用Matlab函数求得矩阵:调整
对角矩阵Q中的参数即对输入量的加权值,得到不同的仿真结果,进而得到最终
的参数。

在初始值为时的仿真曲线如图5所示:
图 5 两轮自平衡机器人平衡仿真曲线
从仿真中可以看到竖直偏离角度在0.8秒时归零,角速度也在5秒内归
零,机器人重新回到稳态平衡状态。

图 6 两轮自平衡机器人Opyanbot
Opyanbot的上位机使用PC机、应用VC编写控制程序、RS485传输。
平衡试验:
根据测试,从IPM板向上传输到IPM接受到指令需要耗费存在大约50ms
的时间,但是不影响平衡控制效果,并且总延迟在80ms内可以保证平衡控制效
果。
图 7 机器人有外部干扰时的竖直倾角曲线
在外界干扰使机器人竖直倾角达到20° 时,机器人可以在3秒内重新
回到平衡状态,如图7所示,说明机器人具有很好的鲁棒性。在稳定状态时竖直
摆动角度在±3° 以内,机器人控制过程平缓柔和。

行进试验:
机器人最大时速可以超过10km/h,最大加速度0.5m/s2。在直线行进实
验中,20米的行进距离偏移角度5%以内。

机器人可以以任何半径转弯,零半径原地转动360°最小需时2.1s。
5 结论
本文针对两轮自平衡机器人在实际应用中存在的问题,应用最优控制及
两轮差动等控制方法设计了控制器,提出了针对两轮自平衡机器人平衡和行进的
新策略。为了提高两轮自平衡机器人的控制效果,利用基于DSP数字电路的全数
字智能伺服驱动单元IPM100分别精确控制左右轮电机,并利用上位机实时控制
机器人的运动状态,提高了控制精度、可靠度以及集成度,最终得到了很好的控
制效果,最终提高了控制精度、可靠度以及集成度。本文可以为更为复杂的、具
有其他用途的自平衡机器人提供借鉴。

相关主题