基于Kinetis K60的智能平衡车控制系统设计

2017-06-10 00:17伍小平曹思宇
电子技术与软件工程 2017年11期

伍小平++曹思宇

摘 要文章旨在设计并实现基于飞思卡尔Kinetis K6032位微控制器的一种可以实现电磁导航的智能平衡车控制系统。详细分析了系统动力学模型,介绍了各硬件模块及其软件控制算法。最后通过系统综合测试,车模在自平衡的姿态下能够快速、平稳地通过各种路径。

【关键词】飞思卡尔 智能车 电磁导航 自平衡

双轮直立行驶电磁平衡车作为导航车的一种形式,是由动力学理论、自动控制理论与实际研究相结合的一种先进技术,不仅能够在自动循迹仓储物流、执勤巡逻、基地训练等方面作为短距离代步工具,而且可以在医疗紧急救援、穿越狭窄道路抢险以及军事侦查与运输供给等方面进行应用。在教育部承办的大学生智能车竞赛的背景下,本文的智能平衡车控制系统能够实现在宽度为45CM,中间铺设引导线即一根通有20KHz交流电铜线的赛道上,以两轮自平衡的姿态自动识别路径、控制车体行进速度和方向。

1 智能平衡车整体控制策略

控制系统总共包括5大模块:电源管理模块、姿态传感模块、测速传感模块、路径识别模块和电机驱动模块。

如图1所示,单片机通过采集陀螺仪和加速度计的输出信号,经过软件互补滤波后获得智能车的当前姿态,计算得到角度偏差。通过AD采集电磁传感模块的模拟量输出信号,计算得到位置偏差。通过正交解码获取测速传感模块的两轮速度信号,计算得到速度偏差。最终进行各闭环的PID调节并融合电机PWM输出。同时为了实时对智能车进行监控,系统引入了蓝牙模块,在车模实际运行中持续发送数据,通过上位机显示,获取车模的实时姿态方便参数调试。

2 智能平衡车模型建立

通过分析平衡车的动力学特征,可以获得系统在平衡瞬间的力学方程,平衡车主体部分由中间类似倒立摆的车体和两侧的车轮构成,依靠电机施加在左右轮轴上的力矩维持平衡。对车体进行简化得到如图2所示的模型。

假设平衡车为一刚体,左右两轮对称分布,并且不考虑车轮与地面的打滑情况,对左轮进行受力分析得平衡方程:

其中,ml:左轮质量(kg);xL:左轮相对地面的位移(m);fL:地面提供左轮的摩擦力(N);HL:车身作用于左轮的水平作用力(N);JL:左轮转动惯量(kgm2);uL:左轮旋转角度(rad);CL:左轮转矩(N·m);R:轮子半径(m)。

类似左轮,得右轮平衡方程:

假设:ml=mr=m1,JL=JR=J1

对车体在YoZ平面上摆动瞬间进行受力分析,得水平方向平衡方程:

其中,m0:车体质量(kg);xx:车体水平方向位移(m);x0:车轮平均位移(m);H:车体重心与车轮轴心距离(m);θ:车体垂直方向偏转角度(rad)。

垂直方向平衡方程

其中,xz:车体垂直方向位移(m);VL:车体作用于左轮的垂直作用力(N);VR:车体作用于右轮的垂直作用力(N)。

其中,J0:车体(倒立摆)转动惯量(kgm2)。

对车模在XoY平面转动时进行分析,得平衡方程:

其中,J2:整个车身转动惯量(kgm2);ω:车体水平方向偏转角度(rad);L:两个车轮轴心间距离(m)。

当θ角度很小时,令sinθ=θ,cosθ=1,并忽略高次项,最终得到系统数学模型:

3 智能平衡车硬件电路设计

3.1 电源管理模块

系统的电力来源于一块7.2V、2A/h的镍镉电池,为了在保证整个系统稳定运行的基础上尽可能地减小电源模块之间的干扰,采用以下电源管理策略:

(1)为了降低电源电路复杂度,统一使用5V供电。选用LDO低压差线性稳压器TPS76850。

(2)电机模块单独供电。MCU等模块能够长时间处于稳定工作状态,相互之间干扰较小,而电机模块驱动电机时电池会发生较大的压降和电流,容易产生对其它模块的干扰。

3.2 姿态传感模块

智能平衡车控制系统的核心在于对车模平衡状态的控制,为维持车模平衡需要实时监控车模在X轴和Z轴的姿态。姿态传感包括MMA8451加速度计和MPU3050陀螺仪两个部分。均为数字型传感器,具有稳定、灵敏度高以及零温漂等特点。

3.3 测速传感模块

系统使用两个512线3相增量式Mini编码器分别采集车模左右两轮的速度及其方向。该编码器体积小、质量轻、信号采集速度快,完全能夠满足系统快速进行速度控制的要求。

3.4 路径识别模块

选用10mH工型电感作为电磁感应线圈,再并联6.8nF电容构成RLC并联谐振检波电路,实现道路电磁中心线的检测。由于采集到的正弦信号的振幅较小且衰减速度很快,不便于MCU的AD采集,所以选用一款单电源反馈型双核放大器AD8032进行信号的放大工作。

3.5 电机驱动模块

电机驱动模块采用全桥电路,由HIP4082驱动4片N型LR7843 MOS管构成,用MC34063提供12V升压供电。LR7843具有极低的导通电阻与栅极阻抗,额定工作电流可轻松达到100A以上,有利于响应快速变化的PWM。

4 智能平衡车系统软件设计

4.1 系统工作流程

系统的软件设计工作是在IAR 7.4平台上完成的,使用C语言编写控制代码。系统的软件算法控制流程图如图3所示。主要实现功能:各传感器模块的初始化;车模姿态和速度的采集;车模运行时的控制(包括方向环、速度环、方向环,其中方向环和速度环采用串级控制,速度环为内环,方向环为外环);电机PWM占空比的输出;车模的启动与停车控制;串口监控数据的发送。

4.2 直立环设计

直立环负责车模平衡状态的维持,需要获取车模实时的姿态信息。经过零偏量矫正与比例化处理后,在较短时间内,陀螺仪能够动态地反映角度变化,在较长时间内,加速度计能够静态地反映角度变化,因此加速度计需要低通滤波,陀螺仪需要高通滤波。采用互补滤波算法将角度与角速率进行数据融合:

式中,、分别为t0、t1时刻融合角度;为t1时刻角速率;dt为积分周期;k为加速度计权重;为t1时刻角度。

互补滤波算法提高了角度在动态环境下的检测精度,使用滤波后的角度和角速率值,采用PD控制策略即可取得较好的直立控制效果:

式中,PMWb为直立环PWM输出;为t1时刻动态平衡点角度值;kbp、kbd分别为直立环比例、积分参数。

4.3 速度环设计

编码器的脉冲进行正交解码便能得出双轮的速度与方向,经过软件低通滤波后便可用于速度控制。直立环和速度环采用串级控制,其中速度环控制使用增量式PID策略:

式中,ksp、ksi、ksd分别为速度环比例、积分、微分参数;e[t0]、e[t1]、e[t2]分别为t0、t1、t2时刻速度误差值;作为外环输出。

4.4 转向环设计

平衡车在行驶过程中电感与地面的垂直距离容易发生改变,使用差比和方案消除高度改变引起的误差,并引入斜电感增加其預判能力:

式中,为t1时刻拟合偏差值;AD0、AD1分别为左右电感值。

转向环使用PD控制策略,并引入转向陀螺仪增加车模转向稳定性:

式中,PWMd为转向环PWM输出;、分别为t0、t1时刻方向偏差值;kdp、kdd分别为转向环比例、微分参数;kdg为转向陀螺仪微分参数,为了抑制转向环过冲现象,所以极性为负。

5 结束语

本文对智能车模型建立、硬件设计、软件设计三方面进行了分析,按照以上方案进行最终形成了一个完整的智能平衡车控制系统,各模块稳定运行,并通过了真实赛道的测试,车模在直立、方向、速度三个方面均控制平稳。

参考文献

[1]罗卫军,罗勃,曾祎等.基于磁场检测的自平衡巡线智能小车设计[J].电子设计工程,2013(13):114-116.

[2]薛凡,孙京诰,严怀成.两轮平衡车的建模与控制研究[J].化工自动化及仪表,2012(11):1450-1454.

[3]周立,周震.基于电磁引导的智能车电控系统设计[J].煤矿机电,2012(01):81-84.

[4]张昊飏,马旭,卓晴.基于电磁场检测的寻线智能车设计[J].电子产品世界,2009(11):48-50.

[5]曹楠,刘益剑,任仁凯等.基于线阵CCD的两轮自平衡智能车系统[J].自动化应用,2015(03):65-67.

作者简介

伍小平(1995-),男,安徽省桐城市人。现安徽财经大学管理科学与工程学院计算机科学与技术专业在读本科生。研究方向为嵌入式软件与系统。

曹思宇(1995-),女,安徽省六安市人。现安徽财经大学管理科学与工程学院电子信息工程专业在读本科生。研究方向为通信工程。

作者单位

安徽财经大学管理科学与工程学院 安徽省蚌埠市 233030