基于飞思卡尔16位单片机电磁型智能小车的设计.docx
- 文档编号:9424435
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:55
- 大小:1.74MB
基于飞思卡尔16位单片机电磁型智能小车的设计.docx
《基于飞思卡尔16位单片机电磁型智能小车的设计.docx》由会员分享,可在线阅读,更多相关《基于飞思卡尔16位单片机电磁型智能小车的设计.docx(55页珍藏版)》请在冰豆网上搜索。
基于飞思卡尔16位单片机电磁型智能小车的设计
本科毕业论文
基于飞思卡尔16位单片机电磁型智能小车的设计
BASEDONFREESCALE16-BITMICROCONTROLLERSMARTCARDESIGN
学院(部):
机械工程学院
专业班级:
机设09-12
学生姓名:
项先亮
指导教师:
刘齐更老师
2013年月日
基于飞思卡尔16位单片机电磁型智能小车的设计
摘要
本文是以飞思卡尔智能车竞赛为背景设计的一个智能小车运行系统。
本系统是以飞思卡尔MC9S12XS128单片机为核心通过传感器识别道路的智能车控制系统。
本文着重阐述了道路信息的获取,处理和识别过程,并设计出PID控制器,运用有效的控制算法对智能小车进行控制,使智能小车能准确快速地对道路进行跟踪。
该系统通过光电传感器获取当前道路信息,通过有效的数字图像处理算法对原始图像进行处理,对主要的有用信息进行分析和提取。
在智能小车运动的控制中,对小车的转向和速度采用PID控制算法,控制表来对智能小车进行转向和速度控制。
关键词:
单片机,智能小车,PID控制算法
BasedonFreescale16-bitmicrocontrollersmartcardesign
Abstract
Itisbasedonfreescaleintelligencecarcompetitionasthebackgrounddesignofasmartcarrunningsysteminthisarticle.ThissystemisbasedonfreescaleMC9S12XS128single-chipmicrocomputerasthecorethroughthesensorstoidentifyroadintelligentcarcontrolsystem.Thearticlefocusesontheacquisition,processingandrecognitionofthetargetpathinformation.TheFuzzycontrollerusinganeffectivecontrollingalgorithmforintelligentvehiclecontrolmakesthesmartcartracktheroadfastandaccurate.WiththeCCDcamerathesystemobtainsthecurrentroadinformationanddealwiththeoriginalimage,themainusefulanalysisandinformationextractionthrougheffectivedigitalimageprocessingalgorithms.Accordingtothemotionrulesoftheintelligentvehicle,fuzzycontrolalgorithmandfuzzyPIDalgorithmcanbeappliedtocontrolthesteeringandspeedoftheintelligentvehicleseparately.Fuzzycontrolrulescanbegeneratedaccordingtotherequirementofthepathtracking,whichisfollowedbythegenerationofthefuzzycontroltable,thenthesteeringandmotionspeedoftheintelligentvehiclecanberegulatedafterqueryingthefuzzycontroltable
accordingtothepathinformationwhichisalreadyinquired.
KEYWORDS:
mcu,smartcar,PID,
1、绪论
1.1智能汽车赛事概况
“飞思卡尔杯”全国大学生智能汽车竞赛是由教育部高等学校自动化专业教学指导分委员会主办,飞思卡尔半导体公司协办的全国性的比赛;全国大学生智能汽车竞赛是在统一汽车模型平台上,使用飞思卡尔半导体公司的8位、16位微控制器作为核心控制模块,通过增加道路传感器、设计电机驱动电路、编写相应软件以及装配模型车,制作一个能够自主识别道路的模型汽车,按照规定路线行进,以完成时间最短者为优胜。
与以往的专业竞赛不同,智能汽车竞赛是以快速发展的汽车电子为背景,涵盖了控制、模式识别、传感技术、电子、电气、计算机、机械等多个学科交叉的科技创新比赛,己经成为各高校展示科研成果和学生实践能力的重要途径,同时也为社会选拔优秀的创新人才提供了重要平台。
1.2课题研究现状
智能车辆作为智能交通系统的关键技术,是许多高新技术综合集成的载体。
智能车辆驾驶是一种通用性术语,指全部或部分完成一项或多项驾驶任务的综合车辆技术。
智能车辆的一个基本特征是在一定道路条件下实现全部或者部分的自动驾驶功能。
智能车辆的研究始于20世纪50年代初,美国BarrettElectronics公司开发出的世界上第一台自动引导车辆系统(AutomatedGuidedVehicleSystem,AGVS)。
1974年,瑞典的VolvoKalmar轿车装配工厂与Schiinder-Digitron公司合作,研制出一种可装载轿车车体的AGVS,并由多台该种AGVS组成了汽车装配线,从而取消了传统应用的拖车及叉车等运输工具。
由于Kalmar工厂采用AGVS获得了明显的经济效益,许多西欧国家纷纷效仿Volvo公司,并逐步使AGVS在装配作业中成为一种流行的运输手段。
中国第一汽车集团公司和国防科技大学机电工程与自动化学院于2003年7月研制成功我国第一辆自主驾驶轿车。
该自主驾驶轿车在正常交通情况下,在高速公路上行驶的最高稳定速度为130公里/小时,最高峰值速度为170公里/小时,并且具有超车功能,其总体技术性能和指标已经达到世界先进水平。
轿车自主驾驶的基本原理是仿人驾驶。
车内的环境识别系统识别出道路状况,测量前方车辆的距离和相对速度,相当于驾驶员的眼睛;车载主控计算机和相应的路径规划软件根据计算机视觉提供的道路信息、车前车辆情况以及自身的行驶状态,决定是沿道路前进还是换道准备超车,相当于驾驶员的大脑;接着,自动驾驶控制软件按照需要跟踪的路径和汽车行驶动力学,向方向盘控制器、油门控制器和刹车控制器发出动作指令,操纵汽车按规划好的路径前进,起到驾驶员的手和脚的作用。
1.3本课题的研究内容
本课题的主要研究内容包括:
(1)竞赛用智能赛车系统的总体设计,围绕智能赛车系统要求,从而确定了控制系统的硬件设计和软件设计方案。
(2)机械结构的调整与完成,对智能汽车车模进行了结构改造,完成了定位参数的优化、车辆重心位置的调整、转向舵机的力臂的改造以及齿轮传动机构的调整等。
(3)控制系统的硬件设计与完成,从电源模块设计开始,完成道路信息采集模块、速度测量模块、驱动控制模块、故障诊断模块及串口模块等的设计。
(4)控制系统软件的设计及实现,从单片机的功能入手完成系统各个模块的设计,根据所选用的硬件,完成赛车信息的算法和车体的控制算法。
2、智能车控制原理
2.1直立行走任务分解
电磁组比赛要求车模在直立的状态下以两个轮子着地沿着赛道进行比赛,相比四轮着地状态,车模控制任务更为复杂。
为了能够方便找到解决问题的办法,首先将复杂的问题分解成简单的问题进行讨论。
为了分析方便,根据比赛规则,假设维持车模直立、运行的动力都来自于车模的两个后车轮,后轮转动由两个直流电机驱动。
因此从控制角度来看,由控制车模两个电机旋转方向及速度实现对车模的控制。
车模运动控制任务可以分解成以下三个基本任务:
(1)控制车模直立:
通过控制两个电机正反向运动保持车模直立状态;
(2)控制车模速度:
通过控制两个电机转速速度实现车模行进控制;
(3)控制车模转向:
通过控制两个电机之间的转动差速实现车模转向控制。
以上三个任务都是通过控制车模两个后轮驱动电机完成的。
可以假设车模的电机可以虚拟地被拆解成三个不同功能的驱动电机,它们同轴相连,分别控制车模的直立平衡、
前进行走、左右转向,如图2.1所示。
图2.1车模运动控制分解示意图
直流电机的力矩最终来自于电机驱动电压产生的电流。
因此只要电机处于线性状态,上述拆解可以等效成三种不同控制目标的电压叠加之后,施加在电机上。
在上述三个任务中保持车模直立是关键。
由于车模同时受到三种控制的影响,从车模直立控制的角度,其它两个控制就成为它的干扰。
因此在速度、方向控制的时候,应该尽量平滑,以减少对于直立控制的干扰。
三者之间的配合如图2.2所示。
图2.2三层控制之间相互配合,底层尽量减少多上层的干扰
上述三个控制各自独立进行控制,它们各自假设其它两个控制都已经达到稳定。
比
如速度控制时,假设车模已经在直立控制下保持了直立稳定,通过改变电机的电压控制
车模加速和减速。
车模在加速和减速的时候,直立控制一直在起作用,它会自动改变车
模的倾角,移动车模的重心,使得车模实现加速和减速。
下面分别讨论三个任务的实现原理。
2.2车模直立控制
控制车模直立的直观经验来自于杂技表演。
一般的人通过简单练习就可以让一个直木棒在手指尖上保持直立。
这需要两个条件:
一个是托着木棒的手掌可以移动;另一个是眼睛可以观察到木棒的倾斜角度和倾斜趋势(角加速度)。
通过手掌移动抵消木棒的倾斜角度和趋势,从而保持木棒的直立。
这两个条件缺一不可,实际上就是控制中的负反馈机制,参见图2.3。
世界上还没有任何一个天才杂技演员可以蒙着眼睛使得木棒在自己手指上直立,因为没有了负反馈。
图2.3通过反馈保持木棒的直立
车模直立也是通过负反馈实现的。
但相对于上面的木棒直立相对简单。
因为车模有两个轮子着地,因此车体只会在轮子滚动的方向上发生倾斜。
控制轮子转动,抵消倾斜的趋势便可以保持车体直立了。
如图2.4所示。
图2.4通过车轮运动控制保持车体直立
那么车轮如何运行,才能够最终保持车体垂直稳定?
为了回答这个问题,一般的做法需要建立车模的运动学和动力学数学模型,通过设计最优控制来保证车模的稳定。
为了使得同学们能够比较清楚理解其中的物理过程。
下面通过对比单摆模型来说明保持车模稳定的控制规律。
重力场中使用细线悬挂着重物经过简化便形成理想化的单摆模型。
直立着的车模可以看成放置在可以左右移动平台上的倒立着的单摆。
如图2.5所示。
图2.5车模可以简化成倒立的单摆
普通的单摆受力分析如图2.6所示
图2.6普通单摆受力分析
当物体离开垂直的平衡位置之后,便会受到重力与悬线的作用合力,驱动重物回复平衡位置。
这个力称之为回复力,其大小为
F=-mgsinθ≈-mgθ
在此回复力作用下,单摆便进行周期运动。
在空气中运动的单摆,由于受到空气的阻尼力,单摆最终会停止在垂直平衡位置。
空气的阻尼力与单摆运行速度成正比,方向相反。
阻尼力越大,单摆越会尽快在垂直位置稳定下来。
图2.7显示出不同阻尼系数下,单摆的运动曲线。
图2.7单摆在不同阻尼下的运动情况
总结单摆能够稳定在垂直位置的条件有两个:
(1)受到与位移(角度)相反的恢复力;
(2)受到与运动速度相反的阻尼力。
如果没有阻尼力,单摆会在垂直位置左右摆动。
阻尼力会使得单摆最终停止在垂直位置。
阻尼力过小(欠阻尼)会使得单摆产生震荡,阻尼力过大(过阻尼)会使得单摆到达平衡位置时间拉长。
存在一个阻尼临界阻尼系数,使得单摆最快稳定在平衡位置。
为什么倒立摆在垂直位置时,在受到外部扰动的情况下,无法保持稳定呢?
分析倒立摆的受力,如图2.8所示。
图2.8在车轮上参照系中车体受力分析
倒立摆之所以不能象单摆一样可以稳定在垂直位置,就是因为在它偏离平衡位置的时候,所受到的回复力与位移方向相同,而不是相反!
因此,倒立摆便会加速偏离垂直位置,直到倒下。
如何通过控制使得倒立摆能够像单摆一样,稳定在垂直位置呢?
要达到这一目的,只有两个办法:
一个是改变重力的方向;另一个是增加额外的受力,使得恢复力与位移方向相反才行。
由此,能够做的显然只有第二种方式。
控制倒立摆底部车轮,使得它作加速运动。
这样站在小车上(非惯性系)看倒立摆,它就会受到额外的力(惯性力),该力与车轮的加速度方向相反,大小成正比。
这样倒立摆所受到的回复力为
F=mgsinθ-ma≈mgθ-mk1θ(2-1)
式中,假设控制车轮加速度与偏角θ成正比,比例为k1。
显然,如果k1>g,(g是重力加速度)那么回复力的方向便于位移方向相反了。
此外,为了使得倒立摆能够尽快地在垂直位置稳定下来,还需要增加阻尼力,与偏角的速度成正比,方向相反。
因此式(2-1)可变为
F=mgθ-mk1θ-mk2θ’(2-2)
按照上面的控制方法,可把倒立摆模型变为单摆模型,能够稳定在垂直位置。
因此,可得控制车轮加速度的控制算法
a=k1θ+k2θ’(2-3)
式中,θ为车模倾角;θ’为角速度;k1、k2均为比例系数;两项相加后作为车轮加速度的控制量。
只要保证在k1>g,k2>0条件下,可以维持车模直立状态。
其中,k1决定了车模是否能够稳定到垂直位置,它必须大于重力加速度;k2决定了车模回到垂直位置的阻尼系数,选取合适的阻尼系数可以保证车模尽快稳定在垂直位置。
因此控制车模稳定,需要下列两个条件:
(1)能够精确测量车模倾角θ的大小和角速度θ’的大小;
(2)可以控制车轮的加速度。
2.3车模速度控制
车模运行速度是通过控制车轮速度实现的,车轮通过车模两个后轮电机经由减速齿轮箱驱动,因此通过控制电机转速可以实现对车轮的运动控制。
电机的运动控制有三个作用:
(1)通过电机加速度控制实现车模直立稳定。
(2)通过电机速度控制,实现车模恒速运行和静止。
(3)通过电机差速控制,可以实现车模方向控制。
电机运动控制是通过改变施加在其上的驱动电压实现的。
对于电机的电磁模型、动力学模型以及车模的动力学模型进行分析和简化,可以将电机运动模型简化成如下的一阶惯性环节模型。
施加在电机上一个阶跃电压Eu(t),电机的速度变化曲线为
ω(t)=Ekm(1-e-t/T1)u(t)(2-4)
式中,E为电压;u(t)为单位阶跃函数;T1为惯性环节时间常数;km为电机转速常数。
对应不同的电压,电机的速度变化曲线如图2.9所示。
图2.9电机在不同电压下的速度
由图2.9可以看出,电机运动明显分为两个阶段:
第一个阶段是加速阶段;第二个阶段为恒速阶段。
其中,在加速阶段,电机带动车模后轮进行加速运动,加速度近似和施加在电机上的电压成正比,加速阶段的时间长度取决于时间常数T1,该常数由电机转动惯量、减速齿轮箱、车模的转动惯量决定;在恒速阶段,电机带动车模后轮进行恒速运行,运行速度与施加在电机上的电压成正比。
调整车模直立时间常数很小,此时电机基本上运行在加速阶段。
由上一节式(2-3)计算所得到的加速度控制量a再乘以一个比例系数,即为施加在电机上的控制电压,这样便可以控制车模保持直立状态。
车模运行速度调整时间相对很长,此时,电机速度与施加在其上的电压成正比。
通过传统的PID反馈控制,便可以精确控制电机的运行速度,从而控制车模的运行速度。
电机速度控制需要测量电机的转速,电机旋转速度可以通过安装在电机输出轴上的光电编码盘方便获得。
如图2.10所示。
图2.10电机速度监测
利用控制单片机的计数器测量在固定时间间隔内速度脉冲信号的个数可以测量电机的转速。
对于电机速度PID控制方法如图2.11所示。
图2.11电机PI反馈控制
电机速度控制采用了PI调节器,具体实现可以通过单片机软件编程实现。
2.4车模方向控制
2.4.1道路电磁中心线的偏差检测
道路电磁中心线检测简单的方法可以通过安装在车模前方的两个电磁感应线圈实现。
线圈一般采用10mH的工字型电感。
2.4.2电机差动控制
利用电磁线偏差检测信号分别与车模速度控制信号进行加和减,形成左右轮差动控制电压,使得车模左右轮运行角速度不一致进而控制车模方向。
如图2.12所示。
图2.12通过差动控制左右电机驱动电压控制车模方向
通过左右电机速度差驱动车模转向消除车模偏差,这个过程是一个积分过程。
因此车模差动控制一般只需要进行简单的比例控制就可以完成车模方向控制。
2.5车模倾角测量
通过测量车模的倾角和倾角加速度控制车模车轮的加速度来消除车模的倾角。
因此车模倾角以及倾角加速度的测量成为控制车模直立的关键。
测量车模倾角和倾角加速度可以通过加速度传感器和陀螺仪实现。
2.5.1加速度传感器
加速度传感器可以测量由地球引力作用或者物体运动所产生的加速度。
加速度传感器采用飞思卡尔公司生产的加速度传感器。
该系列的传感器采用了半导体表面微机械加工和集成电路技术,传感器体积小,重量轻。
基本原理如图2.13
图2.13加速度传感器
通过微机械加工技术在硅片上加工形成了一个机械悬臂。
它与相邻的电极形成了两个电容。
由于加速度使得机械悬臂与两个电极之间的距离发生变化,从而改变了两个电容的参数。
通过集成的开关电容放大电路量测电容参数的变化,形成了与加速度成正比的电压输出。
MMA7260是一款三轴低g半导体加速度计,可以同时输出三个方向上的加速度模拟信号,如图2.14所示。
图2.14三轴加速度传感器
通过设置可以使得MMA7260最大输出灵敏度为800mV/g。
只需要测量其中一个方向上的加速度值,就可以计算出车模倾角,比如使用Z轴方向上的加速度信号。
车模直立时,固定加速度器在Z轴水平方向,此时输出信号为零偏电压信号。
当车模发生倾斜时,重力加速度g便会在Z轴方向形成加速度分量,从而引起该轴输出电压变化。
变化的规律为
Δu=kgsinθ
式中,g为重力加速度;θ为车模倾角;k为比例系数。
当倾θ比较小的时候,输出电压的变化可以近似与倾角成正比。
只需要加速度就可以获得车模的倾角,再对此信号进行微分便可以获得倾角加速度。
但在实际车模运行过程中,由于车模本身的运动所产生的加速度会产生很大的干扰信号叠加在上述测量信号上,使得输出信号无法准确反映车模的倾角,如图2.15所示。
图2.15车模运动引起加速度计信号波动
车模运动产生的振动加速度使得输出电压在实际倾角电压附近波动,可以通过数据平滑滤波将其滤除。
但是平滑滤波也会使得信号无法实时反映车模倾角的变化,从而减缓对于车模车轮控制,使得车模无法保持平衡。
因此对于车模直立控制所需要的倾角信息需要通过另外一种器件获得,那就是角速度传感器-陀螺仪。
2.5.2角速度传感器-陀螺仪
陀螺仪可以用来测量物体的旋转角速度。
选用EN-03系列的加速度传感器。
它利用了旋转坐标系中的物体会受到克里利奥力的原理,在器件中利用压电陶瓷做成振动单元。
当旋转器件时会改变振动频率从而反映出物体旋转的角速度。
在车模上安装陀螺仪,可以测量车模倾斜的角速度,将角速度信号进行积分便可以得到车模的倾角。
如图2.16所示。
图2.16测量车模角速度和角度
由于陀螺仪输出的是车模的角速度,不会受到车体振动影响。
因此该信号中噪声很小。
车模的角度又是通过对角速度积分而得,这可进一步平滑信号,从而使得角度信号更加稳定。
因此车模控制所需要的角度和角速度可以使用陀螺仪所得到的信号。
由于从陀螺仪的角速度获得角度信息,需要经过积分运算。
如果角速度信号存在微小的偏差,经过积分运算之后,变化形成积累误差。
这个误差会随着时间延长逐步增加,最终导致电路饱和,无法形成正确的角度信号,如图2.17所示。
图2.17角度积分漂移
对于积累误差的消除,可以通过上面的加速度传感器获得的角度信息对此进行校正,如图2.18所示。
图2.18角度积分漂移校正
利用加速度计所获得的角度信息θg与陀螺仪积分后的角度θ进行比较,将比较的误
差信号经过比例Tg放大之后与陀螺仪输出的角速度信号叠加之后再进行积分。
从图2.18中的框图可以看出,对于加速度计给定的角度θg,经过比例、积分环节之后产生的角度θ必然最终等于θg。
由于加速度计获得的角度信息不会存在积累误差,所以最终将输出角度θ中的积累误差消除了。
加速度计所产生的角度信息θg中会叠加很强的有车模运动加速度噪声信号。
为了避免该信号对于角度θ的影响,因此比例系数Tg应该非常小。
这样,加速度的噪声信号经过比例、积分后,在输出角度信息中就会非常小了。
由于存在积分环节,所以无论比例Tg多么小,最终输出角度θ必然与加速度计测量的角度θg相等,只是这个调节过程会随着Tg的减小而延长。
为了避免输出角度θ跟着θg过长,可以采取以下两个方面的措施:
(1)仔细调整陀螺仪的放大电路,使得它的零点偏置尽量接近于设定值,并且稳定。
(2)在控制电路和程序运行的开始,尽量保持车模处于直立状态,这样一开始就使得输出角度θ与θg相等。
此后,加速度计的输出只是消除积分的偏移,输出角度不会出现很大的偏差。
2.6车模直立行走控制算法总图
将车模直立行走主要的控制算法集中起来,形成控制算法总框图,如图2.19
图2.19车模运动控制总框图
为了实现车模直立行走,需要采集如下信号:
(1)车模陀螺仪信号;
(2)车模加速度计信号(z轴信号);
(3)车模电机转速脉冲信号;
(4)车模电磁偏差信号(两路)。
需要进行如下控制环节,控制车模电机转动:
(1)车模直立控制:
使用车模倾角的PD(比例、微分)控制;
(2)车模速度控制:
使用PI(比例、积分)控制;
(3)车模方向控制:
使用P(比例)控制。
可通过单片机软件实现上述控制算法。
车模的三种控制(直立、速度、方向)最终是将控制量叠加在一起作为电机输出电压控制量。
直立控制是基础,它的调整速度非常快,速度和方向控制相对调整速度慢。
速度和方向控制的输出量是直接叠加在电机控制电压上。
它们假定直立控制会始终保持车模不跌倒,直立控制会自动调节车模的倾角以适应车模的加速、减速和转弯的需要。
车模加速前进时,由速度控制算法给出电机增加的正向电压,电机开始逐步加速旋转。
在此同时,车模直立控制会迅速进行调整,使得车模往前倾斜,车模开始加速。
当车模速度达到设定值,由车模速到控制算法使得电机进入恒速运行。
此时车模直立控制算法也会相应调整车模出于直立状态,车模恒速运行。
车模减速过程与此类似,由速度控制算法减少了电机的电压,电机开始减速运行。
直立控制算法会自动调整车模往后倾斜,使得车模减速。
车模转向控制是在车速控制基础之上,调节两个电机驱动电压差使得电机运行速度出现差动,进而调整车模的方向。
3、智能车硬件设计与软件设计
3.1智能车硬件设计
3.1.1整体电路框图
设计车模控制系统的电路,首先需要分析系统的输入、输出信号,然后选择合适的核心控制嵌入式计算机(单片机),逐步设计各个电路子模块,最后形成完整的控制电路。
系统的输入输出包括:
(1)AD转换接口(至少4路)
a)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 卡尔 16 单片机 电磁 智能 小车 设计