时间:2024-07-29
郭民环,王 鹏,周志龙
(苏州市职业大学 电子信息工程学院, 江苏 苏州 215104)
随着集成芯片等相关技术的发展,两轮平衡车的成本和功耗越来越低,运动性能越来越好,而且还具备体积小、转弯灵活等优点。因此,两轮平衡车正越来越多地走进普通人的日常生活。
从控制算法的角度来讲,两轮平衡车本质上可以看成是一个三维空间中的倒立摆,其非线性和欠驱动的特性,使得该倒立摆常常用于验证和对比各类控制算法,如PID[1]、LQR[2]等。从硬件设计的角度来讲,根据功能的定位和作业任务的不同,两轮平衡车一般会涉及控制器设计、运动驱动器设计等[3]。
本研究立足“控制工程基础”课程实践教学的需求,以两轮平衡车为控制对象,在Simulink环境下设计可视化仿真平台。一方面,该仿真平台有助于学生通过直观的仿真动画理解课程中的一些基本概念;另一方面,该仿真平台可以为以后的进一步开发提供基础。
本研究采用欧拉-拉格朗日建模方法对两轮平衡车进行动力学建模。
两轮平衡车可以简化成左轮(L)、右轮(R)和车身(B)三个部分,当两轮平衡车保持平衡时,车身可以看成是质心位于左、右两个车轮中心点正上方的一个理想倒立摆。两轮平衡车简化模型如图1所示[4]。
图1 两轮平衡车简化模型
在图1中,{N}代表地面坐标系;{C}代表底盘坐标系,该坐标系原点位于小车底盘中心,并与底盘连接;{B}代表车身坐标系,该坐标系原点位于车身质心,并与车身连接。其中,地面坐标系{N}经过转向角ψ得到底盘坐标系{C},对应的变换矩阵记作NRC(ψ),底盘坐标系{C}则通过倾角θ得到车身坐标系{B},对应的变换矩阵记作CRB(ψ)。
两轮平衡车的模型参数分成两部分:固有物理模型参数和运动状态模型参数。两轮平衡车固有物理模型参数及定义如表1所示。
表1 两轮平衡车固有物理模型参数及定义
两轮平衡车的运动状态模型参数包括车轮的驱动力矩TL、TR和转角γL、γR,两轮平衡车底盘中心的前进速度、车身的倾斜角速度θ˙和转向角速度ψ˙。考虑车轮、车轴之间的摩擦力和车轮相对车轴的转速成正比,即,其中cα为给定的摩擦系数。
根据两轮平衡车的模型参数,结合相关几何约束和运动约束方程,利用欧拉-拉格朗日方程建立完整的动力学模型,即3自由度动力学模型,其形式为
根据设计的动力学模型,在Simulink环境中搭建两轮平衡车仿真控制系统,并对实时的仿真数据进行可视化显示。
两轮平衡车采用经典的串级式PID控制。其中,外环控制器1(位置环)和内环控制器(直立环)共同实现小车跟踪外部给定的前进指令,而外环控制器2(转向环)实现小车跟踪给定的转向指令。前进通道与转向通道单独完成,分别计算出小车需要的前进力矩和转向力矩,再通过控制器耦合模块得到小车左、右轮的实际控制输入力矩。两轮平衡车串级式控制结构框图如图2所示。
图2 两轮平衡车串级式控制结构框图
前进通道中的位置环和直立环构成串级式PID控制结构,其中位置环为外环,直立环为内环。外环控制器的作用是利用位置跟踪误差产生期望的倾角,其控制律为
直立环控制器的作用是借助测量到的俯仰角和俯仰角速率,实现车身倾角的控制(直立状态时倾角为0°),其控制律为
转向环为PID控制器,通过偏航角和偏航角速率实现转向控制,其控制律为
前进通道和转向通道的控制器最终力矩输出需要进行耦合才能作为左、右车轮的驱动力矩,其关系式为
综上分析,两轮平衡车的动力学模型采用s-f unct i on模块来描述,位置环、直立环和转向环均采用PID控制结构。两轮平衡车Simulink仿真控制系统如图3所示。
图3 两轮平衡车Simulink仿真控制系统
为直观显示仿真过程中两轮平衡车姿态和位置的运动状态,在图3所示的Si mul ink仿真控制模型中,利用Stateflow的Chart模块进行仿真数据的实时可视化显示,如图4所示。
图4 仿真数据实时可视化原理图
由图4可知,该Chart模块内部由两部分组成,分别用entry和du标签来区分。其中entry标签中的内容用于初始化绘图句柄,du标签中的内容用于刷新绘图句柄中的数值,从而实现三维坐标系中两轮平衡车姿态和位置的实时更新。
仿真过程中,根据计算机的实际运行性能,调节Rate Transition模块的参数,利用绘图模块中的绘图函数,实时修改绘图句柄中的数值,得到三维可视化运行仿真结果。两轮平衡车运动数据的可视化效果如图5所示。
图5 两轮平衡车运动数据的可视化效果
在经典控制理论中,常常通过阶跃信号的跟踪效果来分析被控系统的控制性能,如稳定性、稳态误差、上升时间、超调量、振荡特性等。下面利用几组仿真测试对小车的控制效果进行分析。
设计的控制器首先需要保证两轮平衡车的稳定性,为此设置两轮平衡车初始位置xQ=0 m,初始俯仰角θ=30°,初始航向角ψ=0°,跟踪目标均为零,即目标位置rQx =0 m,目标航向角ψr=0°。通过仿真测试小车从非平衡状态恢复到平衡状态的结果如图6所示。
图6 两轮平衡车恢复平衡测试
在图6中,两轮平衡车初始倾角为30°,此时直立环控制器计算产生一个正向转矩Tx,使得两轮平衡车朝着正前方加速运动。随着小车的加速前进,其倾角在t=0.2 s左右减小到0°,并随之反向增大。此时,控制器又产生一个反向转矩Tx,使小车减速,该力矩在0.5 s左右达到反向最大,此时小车也达到最大的前进距离,随后开始向起点(xQ=0 m)运动,在t=1 s时到达起始点,并最终在2 s左右完全恢复位置和倾角的平衡状态。
首先,测试前进/后退通道的阶跃跟踪性能,仿真时长为4 s,其中0~1 s时小车处于自平衡状态,此时前进力矩Tx,位置xQ和俯仰角θ均为0。在t=1 s时,xQ的位置指令由0突变到1,表示两轮平衡车要跟踪一个阶跃位置信号。由于位置误差此时已经不为零,所以位置环控制器将立即开始工作,该控制器的输出将作为直立环控制器的输入指令,此时,直立环控制器开始起作用,其输出为前进力矩Tx。位置跟踪过程中,两轮平衡车在t=1 s时先开始反向移动,随后开始正向移动,这与两轮平衡车的非最小相位特性相吻合。两轮平衡车跟踪阶跃位置信号如图7所示。
小车跟踪阶跃位置指令过程中,运动数据包括跟踪之前处于原点的平衡状态、跟踪之后的平衡状态、跟踪过程中质心的轨迹和车身姿态的轨迹。两轮平衡车跟踪阶跃位置信号的数据可视化结果如图8所示。
图7 两轮平衡车跟踪阶跃位置信号
图8 两轮平衡车跟踪阶跃位置信号的数据可视化结果
由图8可知,仿真过程中,数据可视化平台可以直观地描绘出小车的运动状态,便于分析其动态特性。
测试两轮平衡车转向通道的控制性能,仿真时长为4 s,其中0~1 s小车处于平衡状态,在t=1 s时给出一个阶跃转向指令,此时控制器瞬间产生一个转向力矩使得小车在t=2 s时完成转向。两轮平衡车跟踪阶跃转向指令信号如图9所示。
为综合测试前进通道和转向通道的控制效果,本研究采用Simulink中的joystick模块接收摇杆数据信号,并将其转换为小车的前进速度指令和转向角度指令,可以实时手动控制小车,并借助数据可视化仿真平台实现实时监控。两轮平衡车跟踪手动摇杆指令的数据可视化结果如图10所示。
图10 两轮平衡车跟踪手动摇杆指令的数据可视化结果
本研究分析两轮平衡车的工作原理,建立动力学微分方程,设计串级式PID控制器,实现前进通道和转向通道的解耦控制,并在Si mul ink环境下搭建可视化仿真系统。设计了跟踪阶跃位置、阶跃转向和手动摇杆三组实验来验证控制系统是可行的。本研究设计的可视化仿真平台能够使学生更加直观地观察实验结果,激发了学生的学习兴趣,也为后续开发高级控制器提供参考。
我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!