基于线性ccd传感器检测的智能车控制系统

上传人:无*** 文档编号:145156830 上传时间:2022-08-29 格式:DOC 页数:29 大小:3.45MB
收藏 版权申诉 举报 下载
基于线性ccd传感器检测的智能车控制系统_第1页
第1页 / 共29页
基于线性ccd传感器检测的智能车控制系统_第2页
第2页 / 共29页
基于线性ccd传感器检测的智能车控制系统_第3页
第3页 / 共29页
资源描述:

《基于线性ccd传感器检测的智能车控制系统》由会员分享,可在线阅读,更多相关《基于线性ccd传感器检测的智能车控制系统(29页珍藏版)》请在装配图网上搜索。

1、前言随着现代社会的高速发展,无论在生活应用还是在工业应用中,智能化的概念越来越多的出现在我们的身边。尤其是自上世纪80年代以来,汽车技术以突飞猛进的速度在发展,汽车从原来的纯机械结构构成的代步工具逐渐演变成一个集各种高科技技术为一体的智能化的新时代产物。因此,智能车的概念也就越来越凸显出来,智能汽车,顾名思义,就是在现代网络技术支撑下,利用电子信息通信技术,智能微控制器,环境监测控制技术,GPS导航技术等等组成的一个新意义的高新技术复合载体。它能够实现自动的环境监测,规划处理,自动行驶还有人工辅助驾驶等功能。现在汽车行业对智能汽车的研究主要在提高汽车的安全性和汽车的驾驶辅助上,在汽车自动驾驶方

2、面的发展还没有质的飞跃,近年对于车辆自动驾驶,智能导航的研发正大力进行。智能车辆的研究成果现在已经体现着一个研究团体乃至整个国家科研实力水平。所以无论是中国还是国外很多国家已经把智能汽车确定为重点发展的项目。1 智能车控制系统概况1.1 系统开发背景智能化,是现今社会前进的一个目标。对于汽车来说智能化也会是未来发展的方向。对于国家来说,大学生质量的好坏是这个国家的发展动力的重要指标之一。大力发展国内大学生的科技实践能力一直是我国的一大政策。其中为促进大学生的科研创新能力,一直在举办着各种各样的科技竞赛。智能汽车方面,在中国的各种智能车机械车等的竞赛有很多,其中飞思卡尔杯全国大学生智能汽车竞赛在

3、中国已经举办了九届。这项赛事主要探索的就是智能汽车,用智能汽车模型作为研究对象,让学生们充分发挥学校中所学习科学文化知识,对智能小车加以设计并改装,完成一个能自动识别比赛赛道路况并能够进行判断并进行相应控制的小车。最终完成大赛的比赛要求。这项大赛其中包括了智能控制、环境监测、传感器技术等主要学科知识,还涉及到电子、电气、计算机、机械等多个基础学科。赛事用比赛的方式,大大提高了大学生参与者的积极性,锻炼了大学生的实际操作能力。思维创新能力和团队合作能力,使参赛的大学生比同类大学生具有更高的基本技能,使其更能够适应未来社会的发展需求。总体设计本设计是一个基于线性CCD传感器的智能小车的设计,最终成

4、果是设计并制作出一个能够通过传感器识别两边带黑色边缘的道路信息,并能够根据道路信息识别直路弯路,十字路口等信息,进行判断,自动行进的智能小车。本设计主要使用飞思卡尔大赛中使用的B型车模,使用飞思卡尔公司的K60微控制器,岱莫科技TSL1401CCD传感器作为检测器件,使用540电机驱动小车。通过硬件安装调整和软件设计,最终完成设计预期目标。本设计的总系统框图如下:图1-1 设计的总系统框图Figure 1-1 total system block diagram1.3 微控制器简介及现状MCU叫做微型控制器,国内叫做单片机。上世纪70年代,电路集成技术的发展已经有了很大的成果,所以人们通常会把

5、原来在微型计算机中零散分开的一部分部件如处理器、闪存、存储、定时器、计数器和各种端口集成在一个体积减少了很多的芯片上。也就成了现在我们所说的微型控制器。微控制器其实就是一个芯片级别的微型计算机。MCU在近三十年的发展,现已经广泛应用在我们的现代生活中,比如经常使用的 ,收款机,扫码器,汽车内控制系统,MP3,MP4,数码相机等等。这些家用工具内都使用的了一个或者多个微控制器,让这些产品成为智能化的产物。微控制器是近代影响最大的创新技术产品之一,根据微型控制器所发展起来的智能化产品在当今社会已经占据着非常大的比例,我们的生活已经离不开这些产品了。 Freescale微控制器概述Freescale

6、(飞思卡尔)公司是现在全世界范围内技术较为领先的生产半导体的公司之一,飞思卡尔半导体公司生产的嵌入式微控制器为全球的汽车、电子、工业、网络等领域提供了技术支持与保障。在2005年,飞思卡尔公司总收入达到了58亿美元,无论在8位、16位、还是32位单片机的领域都处在了技术领先的地位。Freescale公司的微控制器主要以8位和16位为主,其中,9S08系列和HC9S12系列在全世界单片机市场占有率都在同类产品中都一直很高。本次设计使用的芯片是飞思卡尔公司的一款32位K60系列MK60N512VMD100单片机。 图1-2 Kinetis k60系列微处理器内部功能示意图Figure 1-2 Ki

7、netis K60series microprocessor internal functions1.5 线性CCD简介及选型CCD,就是电荷耦合器件的英文简称。通常人们把它称为CCD图象传感器。CCD传感器的功能是能够把外界能感知到的光信号转变成微控制器等智能控制器多能分辨出的数字信号。CCD上每一个微小的感受光强的小物质就是一个像素点(Pixel)。在一个CCD要想分辨率越高,就需要包含越多的像素点。所有像素点都在一排的CCD称为线性CCD,线性CCD在像素数量上虽然不高,但是因为其像素只有一条,检测时数据也比较简洁,在一些要求不高的信息处理方面具有十分重要的作用。CCD传感器中的光电二极

8、管能够把外界的光信号转换为电信号,然后通过其外接的电压或电流放大电路和A/D电路转换成的数字图像信息,让控制器读取出并进行分析。本设计选用的线性CCD传感器是TAOS公司的TSL1401 CCD传感器。这款产品具有体积小、重量轻、使用简单、比较容易固定、接口比较简单方便等优点。这款传感器经过了非常严格的赛道类环境的检验,它能够采集到的路面信息清晰稳定,能比较远距离的采集信息,而且在使用算法上,使用简单的算法就能轻易提取到道路中黑线的信息。图1-3 TSL1401CCD传感器Figure 1-3 TSL1401CCD sensor1.6 本章小结本章主要介绍了智能车控制系统的大体概况,从智能车控

9、制系统的开发背景介绍开始,而后又从总体上介绍了本设计的系统设计,并介绍了微控制器及Freescale微控制器的概况和线性CCD的概况。这一章内容详细介绍出了本人设计所研究的智能车控制系统的开发依据以及证明是具有研究价值的。2 机械结构的设计安装与调整本次设计的智能车使用的是飞思卡尔智能车竞赛指定的B型四轮车模。使用飞思卡尔公司的K60微控制器。传感器使用的是TAOS(岱莫)公司的TSL1401系列的线性CCD传感器,采用RS-540SH直流电机,S-D5舵机。为了使车能够稳定并且高速的运行,我们对智能车机械结构配置进行了详细系统的分析。该模型的精度不是很高,所以必须能够改变它的模型,提高模型的

10、整体准确度。此外,在我后续的小车调试中发现,前轮约束和主销倾斜两者角度的大小对于智能车在高速状态下运行状况平稳性具有很大影响作用。智能车速度达到很好的速度的时候,舵机控制智能车方向的转变快慢也对智能车的快速回到预定轨道起到了具足轻重的作用。所以对于机械结构的设计和调整要考虑以上几个方面。关于安装期间主要有安装舵机、安装线性CCD传感器、编码器的安装、最小系统板电路和电机驱动电路的安装位置预留等。智能车模的微小调整主要有前轮倾角的调整,对车模型的底部调整与地面的高度,和齿轮传动机构和后轮差速的调整。 舵机的安装方式与安装位置将舵机转向器直接直立安装在车模的前部中间,即两前轮的中间。舵机传动杆适当

11、延长,这样便提高了舵机转向的控制精度和灵敏度。图2-1 舵机安装图Figure 2-1 steering gear installation diagram2.2 线性CCD传感器的安装 智能车CCD传感器支架选用了更轻更结实的材料,并且为了节省材料,小车配备的备件用来固定线性CCD传感器并且将传感器放置在智能小车的前轮后方,以便拉长智能车的视野,对智能车的控制十分有利。图2-2 CCD传感器安装方式Figure 2-2 CCD sensor installation2.3 测速编码器的安装图2-3 测速安装方式Figure 2-3 Speed measurement installation

12、 method在速度的测量,为了能够满足我们的测试要求,并使速度测量装置具有较高的精度。设计采用了欧姆龙E6A2-CW3E型500线光电编码器的方法,并且将编码器固定在电机的转动轴上。这样,通过设计,在测速方面能够保证智能车有很高的测量精度和很高的灵敏度。2.4 前轮倾角的调整在调试过程中,发现:由于前轴和重力中心在高速转向车轮之间的巨大差距有很大的影响,将使高速转向时车辆转向角不足。为了减小舵机带动前车轮转向时的运动负荷的大小,是转弯时尽量能够更快更准确的达到预定的目的的,我对前轮定位进行了稍微改变。前轮定位确保了小车的稳定性,无论在直道还是在转向时都使得车轮转向的轻松、自动纠正方向和削减了

13、车轮的接触磨损。前轮在智能车中是转向轮,它反映了前轮即转向轮、主销和前轴等三个主要因素在车架上的位置关系。主销内倾角是智能车主销安装在车模前轴车轮略微向内倾斜的小角度,这个角度能够让智能车的前轮主动回到正前方的位置。当主销内倾角角度越大,前轮自动回正的作用越明显,但是同时对应的是转向舵机需要承担的负荷越大,车轮胎磨损非常大。因此,寻找一个中间点,是回正作用能够满足智能车的需求,又使智能车车轮磨损不会太大。主销后倾就是小车两前轮支撑轮胎的立杆稍微偏离竖直方向倾斜的角度,大约在3左右。这个角度的转弯的车辆造成的力矩,与车轮偏转方向发生原因的离心力,和车轮能自动回到中间位置偏后。因此,主销后倾角增大

14、能够使车速提高,前轮稳定性也会更好。图2-4 主销后倾角调整图Figure 2-4 Tilt angle adjustment chart after the main pin主销内倾角和主销后倾角都有智能车转向自动回正,保持智能车直线行驶的作用。它们之间的区别是主销内倾角在小车行驶过程中所产生的正作用力和速度没有关系,主销后倾角在小车行驶中产生的正作用力和速度相关,所以在智能车高速行驶时,主销内倾角起到的是主要正作用力,在低速行驶时,主销后倾角起主要正作用。前轮的外倾,也就是“外八字”对智能车的转弯性质有着直接的作用,前轮的外倾有提高前轮的转弯灵活性的作用,使智能车可以更轻便的转弯。这个角度

15、大约在1度左右。前轮前束的功能是增加了智能车的行驶过程中的耐磨性。因为小车前面的轮子在运动时,轮子自身旋转的惯性会自然而然的是自身向内侧偏斜,假如前束角度适当,轮子转动时的偏斜力就会对消,便不会出现前轮轮胎与地面的磨损。2.5 地盘高度的调整底盘做适当的降低,在保证能够通过上坡和下坡道的前提下,适当的降低一下底盘。这样使整个小车降低了重心,智能小车能够在各种路况下的直路或转弯时能够更加的稳定和快速。我将智能车前车轴的中心降低了1.5毫米。2.6 齿轮传动机构及后轮差速的调整智能小车选用540直流电机驱动。电机轴为18个齿轮,后轮轴传动轴为76个齿轮,这使得传动机构的传动比为9比38。如果齿轮传

16、动部份是不合适的,也就是接触不恰当,则电机在后轮的负载损耗会增加。齿轮之间间隙过松容易造成齿轮不能很好的啮合,造成分离,两者较紧却会增加传输阻力,造成能量损失。因此电机装配的过程中尽可能使得传动轴保持接触平衡,传递动力部分顺畅,接触松紧程度适当。后轮差速结构的使车模在转弯的时候,后轮与地面之间不产生滑动,两轮能够有一个速度的差。它也可以确保即使在后轮轮胎由于路况或机械故障下不动的情况下卡死而不损坏电机。在差速器的调整方面,通过后续调试中通过调节滚珠轮盘间的间隙,使它不能过松或者过紧,从而找到一个比较适当的程度。一个调整好的装置,在不给电机通电的前提下,使后轮旋转测试,右轮和左轮旋转过的角偏移相

17、差极小,不会出现两轮的迟钝的感觉和轮胎摩擦地面的现象。一个调整好的电机驱动后轮传动机构,当使电机驱动后轮空转时,等待后轮速度稳定,辨别装置运动发出的声音。如果发出的声音比较尖锐、声响,这表明齿轮间的接触间隙太大,传动过程中会有电机齿轮和后轮齿轮啮合不稳,会有脱齿现象;假如其发出的声音比较闷,声音也会比较之后,齿轮之间的接触间隙太少,或两齿轮轴线不平行。而调试稳定的齿轮传送装置所发出的声音很小,并且不会有滞后等现象,或者比较刺耳的声音。2.7 本章小结本章主要介绍了智能车控制系统的机械结构的设计安装与调整,根据各个部分的安装位置的调整,使其能够达到最佳的使用效果,主要有舵机安装,线性CCD传感器

18、安装,编码器安装,最小系统板电路安装,电机驱动电路的安装。另外还有对车模的微小调整,如前轮倾角和、底盘高度与齿轮传动等机构的调整。通过机械调整与安装,使本设计的智能车控制系统能够更好的满足了该系统的适应性,是设计系能更加优越。3 控制系统硬件电路设计智能车硬件电路设计是智能车的主体支撑,本设计硬件设计主要以微控制器K60为主的系统板为中心,另外还有路径检测传感器模块,多路电源转换模块,单电机驱动电路模块,舵机控制模块,蓝牙模块,测速模块等。本章详细叙述智能车总体硬件电路设计以及着重讲述最小系统板电路,路径检测传感器模块,单电机驱动模块和多路电源转换模块。3.1 智能小车功能设计随着当前的社会智

19、能化的发展进步,在未来家庭汽车上将越来越智能化,汽车没有驾驶室将不再是一个梦。所以智能汽车系统的概念,总结要完成其需求,本设计作为智能汽车的微小雏形需要满足的设计要求如下:1、根据光电原理,在本次设计中的白色路面两侧有两条宽度为2CM黑色边沿的道路上,能够自动分辨道路两侧的黑线相对于智能车的位置,并进行判断控制路径。2、根据线性CCD传感器检测送回的路面信息并进行分析判断,能够对于是否是直道,十字路口,弯道,以及加速减速的判断。3、根据小车的机构装置的外形性能,对于测试的路面有的在最小曲率半径为50CM的弯路上小车能顺利通过。4、根据小车各不同模块需要不同的电压等级来驱动。对于电池电压在V时,

20、通过电源变换系统能够做到为各不同模块供给稳定并合适的电压。3.2 硬件电路总体设计组装硬件电路之前,首先应该了解硬件电路总体设计,根据上节叙述的智能小车的功能需求,电路总体设计应该以微控制器K60位核心,周围分别连接检测模块,电源模块,舵机驱动模块,电机驱动模块,测速模块,显示模块等。硬件电路整体架构框图如下图所示:图3-1硬件电路整体架构框图Figure 3-1 Hardware circuit monolithic frame diagram 微控制器最小系统板电路设计本设计使用的是飞思卡尔半导体公司的单片机K60系列的MK60N512VMD100单片机。设计最小系统板的目的是,通过为微控

21、制器提供时钟电路,复位电路,外界I/O接口使其能够正常运行,外接搭配主要设置了连接外置其他几大主要模块的接口:线性CCD传感器模块,测速模块,电机驱动模块,舵机模块,蓝牙模块,按键模块等。而最小系统板也是整个智能车硬件电路设计的中心,以最小系统板为中心,其他模块分别通过接口与之相连接,组成整个智能车的电路设计。最小系统版电路原理图与系统板接口图如下:图3-2 最小系统版电路原理图Figure 3-2 Minimum system version of circuit diagram图3-3 系统版接口电路原理图Figure 3-3 System version of the interface

22、 circuit diagram3.4 传感器系统传感器,就是能够将被测量的量按照一定的物理或化学原理转换成一种规定的输出信号的装置或器件。一般来说,传感器分为两个部分,敏感元件和转换元件。敏感元件与被测量的量的变化而引起的信号的容易被测量的变化,而转换元件将其产生的信号转化为电信号以便于传输所需的信号,具体输出的信号要看敏感元件的不同种类而会存在差异。因为转换元件转换出来的信号比较微弱为了让这些信号容易的传递、转变、显示和交互。一般情况后面还有转换电路和辅助电路等,这样才能够让交换元件输出的信号能够放大,易于传输。随着现代半导体工业的先进技术和高集成技术的发展,敏感元件、转换元件以及信号放大

23、电路等往往都嵌入在一个器件上,使用这些传感器时只需要搭配不同辅助电路就了可以了。3.4.1 线性CCD传感器线性CCD传感器是使用敏感元件把光信号变化成电信号的装置。线性CCD传感器工作时,先将外界的光(可以是物体发出的光,也可以是物体反射的光)在敏感元件上变化成电量的相应不同,然后传感器中的转换元件把光的强弱不同转换成电量的不同,在辅助以转换辅助电路,使得把光的信息完全转变成控制器能够识别的电量的高低,这样就有利于对外界情况加以处理并进行相应动作。线性CCD由光线检测线路及信号转换线路两部分组成,光线检测线路部分完成对环境被测光线的检测,信号转换线路部分把从光线检测部分检测到的光信号转变成能

24、够被控制器读出的电信号。见下图图3-4 ccd传感器环境监测示意图Figure 3-4 CCD sensor environment monitoring schematic diagram采用CCD传感器的形式取决于参数的测量灵敏度的要求、所要求的响应速度,以及测量环境和条件特征来源。3.4.2 光电式传感器的选择线性CCD传感器的选择主要取决于对所测光线的亮度,需要辨识光线的分辨率,响应时间,以及对于光线变化而引起的传感器采集信息的适应宽度等特性。综合以上因素,本次设计我选择了TAOS(岱莫)公司的TSL1401,该传感器具有128个排列成一排的光电二极管阵列,放大器电路和一个像素数据内部

25、保持功能部件,同时提供所有像素的储存的时间。同时为了简单的操作,内部处理程序下把信号处理完毕后,输如输出端口只有一个串行输入端(SI)信号和时钟CLK。图3-5 TSL1401功能框图Figure 3-5 TSL1401 function block diagram对于这次检验智能车的两边黑色中间白色的道路识别,TSL 1401的精度和灵敏度足以满足要求,故线性CCD传感器选定。对于以TSL1401为主体的线性CCD传感器模块的设计主要依据线性传感器的设计原理设计的,具体设计电路原理图如下:图3-6 TSL1401电路原理图Figure 3-6 TSL1401 schematic diagra

26、m3.5 电机驱动模块在智能小车的制作中,由于对于电机的驱动电流要求过高,直接让电机和电源相连不能满足功能的需求,所以需要电机驱动电路。通过电机的功率决定了驱动电路芯片的选择决定,由从控制器输出的PWM信号的占空比决定电机的旋转速度。因此,电机的速度可以通过改变微控制器发出的PWM信号的占空比大小的不同来实现。在智能车通过弯道时,为了达到稳定的效果,因为在直道有一个较高的车速,所以需要在即将过弯道时,有一个制动过程,是小车的车速降低下来。为此,需要设计一个全桥驱动电路。我选择了BTN7971B全桥驱动电路1、BTN7971是一个应用在电机驱动上的大电流和集成度高的半桥控制芯片, BTN7971

27、通常情况下的电阻典型值为16m,驱动电流可以高至70A。该芯片具有过温过欠压过流和短路保护功能。2、BTN7971芯片的out1和out2两个输出端连接电机的两根输入线,芯片的PWM1端口输入PWM波来控制out1电压U1的高低,芯片的PWM2端口输入PWM2波来控制out2电压U2的高低。U1,U2的大小通过PWM1,PWM2占空比乘决定。因此,U2和U1之间的差异决定了电机的速度。因为这样的驱动方式具有很好的加减速特性,所以采用这个驱动方式作为电机驱动电路。电机驱动模块主要应用电路原理图设计如下:图3-7单电机驱动电路原理图Figure 3-7 Schematic diagram of s

28、ingle motor drive circuit3.6 供电模块.1 稳压芯片的选择在智能车的系统的整个设计中,因为电池电压是V,然而系统的各个部分所需要的电压等级是不同的:微控制器电路所需要的是V电压、路况检测电路模块是5V电压以及舵机控制电路所使用的是6V电压,如何才能给予系统稳定并且不同等级的电压,是一个必须解决的问题。在之前学习到的知识以及实践中使用的电压调节电路中最多的是例如78系列三个接线端的线性稳压器件。线性稳压器具有纹波小,电路结构简单,但效率很低,耗电量大,导致大量的能量损失,导致功率利用率不高,工作效率低。而对于智能车这样的以后智能化的产品来说,节能是最基本的要求,所以不

29、选择这类稳压器件。与线性稳压器件相对比,开关电源调节器则是在以完全打开或关闭状态,有效地降低了“热损失”,也很好的保证了低功耗,保证供电的高利用率。开关电源调节器具有在高频电压范围具有通断的特性以及和它串联的有一个能够滤波的电容,所以在使用过程中来自电源中的高频率的干扰具有很强的抑制功能。同时正因为他的低功耗特点,使其在发热方面完全不用考虑是否会有安全问题,在设计PCB板的时候也可以把电路设计的紧凑一些,使其能够更小巧灵便,符合移动智能设备的便携性与安全性的要求。但是由于开关稳压的方法工作是的电压差值以上,这样在一些随身携带设备上,电压等级一般很小,所以这种方案不适用与所有的随身设备。因为线性

30、的稳压电源与开关电源都不能工作在电压压降在1V一下,所以都不容易广泛应用于便携式设备中,所以我为智能小车选用了一个线性电源芯片lm1117。它和LM317具有相同的输出角。LM1117另有可以输出不同电压的版本,可以改变与其外接的电阻的阻值大小能有的输出。所以这是对于智能车电源调节完全满足条件。.2 LM1117系列概述LM1117系列芯片具有限制输出和热保护的功能。电路中含有一个参考电压器件来保证输出的电压精度在1%范围内。输出端需要外接一个电容保证稳定性。;电流限制和热保护功能;输出电流最高能够到达800mA;线性调整率:0.2%(最大);负载调整率:0.4%(最大);温度范围:LM111

31、7:0125、LM1117I:-40125本设计对于多电源模块的设计为一下几个方面:(1)使用稳压芯片LM1117加部分电阻电容稳压,输出3.3V 电压,分别对单片机供电。 (2)使用稳压芯片LM1117加部分电阻电容稳压,输出5V电压,对传感器和速度检测部分进行供电。(3)使用稳压芯片LM1117稳压,输出6V 电压,对舵机供电。(4)电源驱动模块直接使用电池供电多电源模块电路原理图如下:图3-8 基于 LM1117多电源稳压电路Figure 3-8 LM1117 based power regulator circuit 本章小结本章主要介绍了智能车控制系统的硬件电路设计,主要是用微控制器

32、K60为主的系统板为核心,另外还有路径检测传感器模块,多路电源转换模块,单电机驱动电路模块,舵机控制模块,蓝牙模块,测速模块等。硬件电路是智能车控制系统的支撑所在,所以本文对主要部件进行了详细的介绍,有使用器件介绍、电路原理图等。4 控制系统软件设计4.1 智能车控制系统软件分析本设计的软件设计之前,必须先对软件控制的对象有一个全面的了解和分析,也就是对之前设计并组装好的智能小车进行分析,这样才能通过智能车模型的分析得到软件的大体架构和需求。同样,通过编写软件,在过程中会发现很多有利于智能车在机械结构等先前设计的不足。可以根据这些问题进行调整,在实际设计中不断的调整、还进、优化,从而能够提高智

33、能车整体的设计。智能车系统是基于线性CCD传感器,使传感器采集的信息是通过线性CCD传感器采集道路信息的重要组成部分,把光电信号变为可以被飞思卡尔32位K60单片机识别的数字信号,然后单片机使用二值化程序进行图像数字的处理,这样就使得道路信息能够清晰明朗的被识别出来,然后控制器通过其拥有的ECT模块发出PWM波形来控制电机驱动电路,从而来控制电机。另外采取速度编码器检测赛车的实时速度,并回传给控制器,这样速度就形成了一个具有反馈的闭环控制系统,完成智能汽车速度的闭环控制。另外,本设计使用了PID速度控制算法,使得智能小车在直道具有加速前进,过弯先减速后转弯的方式运行。除了这些以外,设计还添加了

34、键盘等外部调节器件,使其能够在外部实时调节速度等参数,通过人工调节,适应各种路况信息。通过以上的分析可以得到小车软件要实现的功能应包括: 智能车车模环境和运行状态的检测;PWM输出驱动电机;智能车辆的运行状态,包括速度控制和方向控制;对智能车的运行流程:程序初始化,智能车运行的开始和结束;系统界面:状态显示,上位机监控,参数设置,等等。4.2 软件开发工具IAR简述工欲善其事,必先利其器。本设计采用Embedded Workbench IDE开发的软件IAR设计本设计的软件部分。它能够支持多种主流微处理芯片,例如ARM,AVR,MSP430等类型的芯片。这个软件支持K60芯片的开发,并且功能较

35、为完整。基本界面如下:图4-1 IAR Embedded Workbench IDE基本界面Figure 4-1 IAR Embedded Workbench IDE Basic interface4.3 路况分析道路信息为中间为白色赛道,道路边缘为黑色。线性CCD采集到的是不同的电压信号,通过单片机A/D接口读入并进行二值化处理,进而判断路况信息。对于我们的模型车,在不同的路况情况下线性CCD传感器检测到的也会不同。由于赛道识别赛道的信息非常复杂,情况也显得错综复杂。我们的小车仅采用一路CCD对赛道信息进行识别,一个CCD包含128个像素点,但这128个点并不是所有的点都能够被准确获取灰度值

36、,我们选择采用左右各48个像素点来对赛道信息进行采集。这些像素点中每个点的灰度值理论上都有0到255这28种状态(实际上我们只能取到不到50的返回值),分别取左右分别44个像素点。4.3.1 直道路况分析小车在直道时,道路两侧的黑色边缘与白色赛道被传感器检测到的图像为左右对称的,但是由于小车的轻微的左右摇摆,图像会有小小的左右摆动,在经过处理器识别时,能够智能的分析出是知道,控制舵机保持平稳或者轻微偏转。这时通过PID速度控制会有一个加速的速度控制。线性CCD传感器检测直道路况下的原始图像如下图:图4-2 线性CCD传感器直道检测图像Figure 4-2 Linear CCD sensor d

37、irect detection image4.3.2 弯道路况分析在小车前方是弯道时,道路两侧的黑线都会被线性CCD传感器检测到,但在检测到的画面中会有大小不同的幅度地左右变化,这时的处理方式便是根据两侧黑线的不均匀情况适量调整舵机控制赛车回到中心跑道上去;而在很大弯度的时候会出现一侧黑线丢失的情况。这时主要依靠一侧CCD进行巡线,控制舵机向丢线方向最大限度的转弯,先使两侧黑线能够再检测到,再按照普通弯道的策略进行方向控制;另外,在检测到前方弯道的时候,使用速度控制,提前减速,然后利于转弯的稳定性。4.3.3 十字路口路况分析在智能小车处在十字路口时,会出现整个检测界面上出现全白的情况,这时说

38、明小车位置端正,处理器发出指令继续直行;假如在小车位置稍微不正的情况下,也会在一侧出现些许黑色的情况,这时按照小车在大弯时的情况处理,向白色区域打方向,然后当出现全白时,便可以调整舵机,使小车直行。4.4 控制系统的软件设计4.4.1 系统软件主要流程图根据上述智能车系统的需求分析,根据具体需要实现的流程,画出下面流程图主程序流程图为:图4-3 智能车软件设计流程框图Figure 4-3 Flow chart of software design for intelligent vehicle4.4.2路况信息采集及处理线性CCD传感器属于在方向控制的轨道信息采集的主要传感器,由于它采用串行接

39、口,所以需要对时间序列信号进行匹配。本设计通过使用单片机的若干个输入输出接口来读取传感器检测到的信息。使用模数转换接口采集线性CCD传感器传回的数字信息。线性CCD TSL1401的时间序列图如下:图4-4 线性CCD传感器时序图Figure 4-4 Linear CCD sensor timing diagram时序图中CLK信号为采样时钟信号,在每一个下降沿上可以得到一个采集信息的模拟值。可以用处理器模数转换进行采样。SI接口是控制CCD传感器的曝光时间的,当该接口的电平是高电平时,传感器内部的电路就会清空传感器内的相应电荷,所以当外界环境光照过强或者过弱的情况下,调节SI的值可以改变曝光

40、时间,以便传感器能够清晰的采集到道路信息。利用AD采样采集CCD数据流程图为:图4-5 采集CCD数据流程图 Figure 4-5 CCD data flow chart利用AD采样采集CCD数据的程序逻辑如下:图4-6 CCD数据采集程序Figure 4-6 CCD data acquisition program路况信息图像处理方法本设计采用二值化处理图像数据,通过调节选择适当的阈值大小,再根据程序把图像数据二值化,提取黑线,图像滤波,具体流程图与处理程序如下:图4-6 二值化图像软件流程图Figure 4-6 Two valued image software flow chart二值化

41、处理图像程序如下: 图4-7 二值化处理图像软件程序Figure 4-7 Two value processing image software program图4-8 通过二值化处理后的数据Figure 4-8 Data after two value processing4.4.3 智能车舵机及速度软件控制程序舵机转向控制:在本设计中,运用图像二值化处理后的数据,并进行曝光时间,均值等算法计算后,得到采集数据所对应CCD传感器采集图像中点对应的位置数,根据这个位置,可以判断此时小车的方向位置,判断方法如下:如果图像中点位置位于对应跑道中线的位置的左方,说明小车向左偏移了一个角度,需要右转;

42、如果图像中点位置位于对应跑道中线的位置的右方,说明小车向右偏移了一个角度,需要左转;假如图像中点位置位于对应跑道中线的位置的附近,相差无几,不需转弯,直行。舵机转向程序流程图如下:图4-9 舵机控制软件流程图Figure 4-9 Servo control software flow chart舵机控制程序段如下:图4-10 舵机部分控制程序Figure 4-10 Servo part control program速度控制:在本设计中的智能车速度上,用到了PID控制器原理,PID控制器是人们根据给定值和实际检测到的输出值相对比,的到的一个差值的大小,并且按照偏差的不同为比例(P)、积分(I)

43、和微分(D),再通过相互组合组成一个对控制对象输出一个稳定合理的控制信号,使被控对象能够自动的按照最佳的控制方向而作用。PID控制器原理框图如下图所示:图4-11 PID控制工作原理Figure 4-11 PID control principle在智能小车程序中,速度使用了PID控制,因为和实体的PID控制器不同,要实现PID控制,在程序中编写了数字式PID控制,这样在速度控制方面,更加先进。智能小车程序中的速度控制应用程序如下:上述程序中,关于PID的参数,是采用的试凑法来调节的。试凑法调节PID参数是通过了解比例积分和微分的各自作用,运用理论的参数调节方法,在其他两个参数不变的情况下,调

44、节另一个参数。最后通过细小的调节使智能车的PID参数达到最合适的数值上。从而使智能小车的速度控制达到稳定。图4-12 PID控制速度程序段Figure 4-12 PID control speed program section4.5 本章小结本章详细介绍了小车的软件控制思路和算法。传感器部分重点介绍了CCD的原理以及对图像处理方法。在速度控制算法上主要介绍了PID控制理论的相关应用。另外详细介绍了舵机控制的软件流程设计。结论在本设计是制作一个基于线性CCD传感器的智能小车的研究设计,本设计是学校科研赞助的课题项目,所以对于设计制作进展较为顺利,在本次设计中,我成功设计并调试成功一个能够在两侧

45、有黑线的白色赛道上自动循迹并行驶的小车。最终设计完成的智能小车长390mm,宽240mm,高300mm。本设计使用的是飞思卡尔智能车大赛指定B型四轮车模、Kinetis k60系列MK60N512VMD100单片机微控制器、TAOS(岱莫)公司的TSL1401系列的线性CCD、 RS500SH电机、S-D5舵机。在软件上,主要针对线性CCD传感器设计了图像采集程序,图像曝光及二值化处理程序。另外在针对不同路况下的小车转向和速度控制上也有不同的处理方法,其中在速度控制上也使用了PID控制的方法,使智能小车在行进过程中具有了速度调节的平稳性等优点。在智能小车制作完成后初期测试的时候,智能小车总是会冲出赛道,通过寻找问题,进行调整车模结构和软件算法,最终是小车在长度在20M的跑道上,智能识别各种路况,跑完全程。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!