小车自动停车入库系统设计说明书本科毕设论文文档格式.docx
《小车自动停车入库系统设计说明书本科毕设论文文档格式.docx》由会员分享,可在线阅读,更多相关《小车自动停车入库系统设计说明书本科毕设论文文档格式.docx(49页珍藏版)》请在冰豆网上搜索。
![小车自动停车入库系统设计说明书本科毕设论文文档格式.docx](https://file1.bdocx.com/fileroot1/2022-12/16/1ebdfee6-d52b-44a6-8669-551ecb894c52/1ebdfee6-d52b-44a6-8669-551ecb894c521.gif)
关键词:
自动入库;
智能车系统;
图像采样;
Freescale16位单片机
Abstract
OntheexperimentalplatformofthesmartparkinggarageinSchoolofInformationEngineering,theautomaticcarparkingstoragesystemisdesignedonthebasisoftheFreescaleintelligentcar.Includingtheminimumsystemcircuit,powermanagementpart,motordrivecircuit,servodrivecircuit,pathrecognitioncircuitandthegeminatetransistorscircuit,thesystemtakestheMC9S12XS128SCMasitsmicrocontroller.Besides,relativecalculationsofparametersarealsogiven.
Inthisautomaticcarparkinggaragesystem,thesmartcarisdesignedtodrivetotheassignedgarageautomaticallyfromtheentranceandtoparkinthestorageaccurately,thoughidentifyinginformationofroads,trafficlightsandgarages.Firstly,thesystemisusedtodealwiththeinformationsearchedbyCCDcamera,thentofindthedeviationbetweenthepositionofthecarandthecentralblackline,andcorrectthecarthroughasteeringgear.Inaddition,theinfraredtubescanbeinstalledinfrontofthecartodeterminethelocationsoftheemptyparkingspacesandthesignallights.Similarly,thedirectionsofsignallightscanbedetectedbyCCDcameraaswelltomakethecardriveinthegaragecorrectly.
Keywords:
Automaticparkinggarage;
Intelligentvehiclesystem;
Imagesampling;
Freescale16-bitsingle-chip
第一章引言
1.1设计背景及意义
智能停车场实验室是我校信息工程学院为本科研究生实践训练和课程研究搭建的模拟平台,该实验室可以为自动化和测控专业在数字电路实验、模拟电路实验和嵌入式实验等方向上提供支持,为我院学生的学习生活又增添了一种新的方式。
在此平台上能够实现自动停车和车库设计两方面的功能,其中自动停车方面可以研究自动循迹、信号灯识别、图像识别以及PWM控制等,车库设计方面可以研究空位查询、各种安全报警以及停车信息系统管理等。
测控技术与仪器专业是一个理论与实践并重的专业,理论性与应用性都极强。
除了要学习测控的理论知识外,还要进行相关实践的训练,以提高解决实际问题的能力,加深对知识的理解。
为了培养学生的创新能力和开发能力,我校信息与工程学院先后创办了创新基地与秋实工作室,智能停车场课题也是在此基础上提出的。
学院计划设立智能停车场实验室,用于研究其相关系统,同时用于单片机嵌入式课程的教学。
该项目为我们提供了一个学习的平台,让有兴趣的同学参与开发研究,可以开阔大家的视野,激发学习基础理论的热情。
对于大四的学生,可以将其作为毕业设计深入研究,更好的了解现在社会上嵌入式发展的形势。
此外,通过这个实验室还可以增进与其他院校的交流,以达到相互学习共同进步的目的。
本设计是在智能停车场的基础上,对车辆自动进入车库系统进行设计的,以便提高车库的自动化程度。
如果这项技术成熟并投入使用,不但可以改变现在车场管理效率低下的现状,而且可以实现车场无人化管理,节省人力物力。
因为车辆入库是按照空余车位指定的路线自动行驶停放的,从而解决了车库排队拥挤和停车安全的问题,减少了车主停车的时间。
此外,如果停车场内有对外开放的临时车位,自动停车系统更加有利于对这些车位的管理。
随着我国城市化进程的加速和人们经济生活水平的提高,拥有私家车的家庭越来越多,城市机动车辆迅速增加。
车辆的高速增长导致城市交通拥堵,与此同时,停车入库排队时间长和寻找车位困难已经成为十分严重的社会问题。
城市交通需求量不断增大,城市人口又相对密集,无论是私家车还是公交车辆都很难满足正常停放,一方面车主对停车的安全性和便利性都产生了新的需求,另一方面更加科学有效地管理车场,提高车场的使用率和安全性,已经成为现在研究的热门[1]。
1.2设计目标
本设计是在飞思卡尔智能小车的基础上进行的,首先要按照飞思卡尔大赛的标准设计出智能车系统,其系统主要包括微控制器模块、电源管理模块、路径识别模块、电机驱动模块及转向舵机控制模块等[2]。
这部分要实现的主要功能是:
智能车在摄像头的配合下,能够自动识别指定道路并沿着道路上的引导线行驶。
在小车行驶的过程中,利用了摄像头对道路进行感测,得到的数据送交单片机,单片机处理得到的数据,通过PWM波控制车头舵机的转动,从而调整小车的相对位置,以达到自动寻迹的目的。
在此基础上设计智能车自动进入车库并准确停入空余车位,这部分主要包括识别交通灯和定位空车位两部分。
通过摄像头采集交通灯的信息,经过程序算法提取出交通灯的指向,指引小车向空车位行驶。
在小车和车位上安装红外线对管,当车位上没有车时,车位上的红外线对管发射信号,小车经过时通过红外接收器检测到信号,从而实现定位车位的功能。
本设计的具体任务如下:
(1)、结合停车场模型,设计引导路线的识别方法;
(2)、结合停车场模型,设计信号灯的识别方法;
(3)、设计小车控制硬件电路原理图、PCB;
(4)、设计循迹、停车入库软件。
第二章总体设计
2.1系统硬件结构
智能小车系统的功能模块主要有:
控制核心(MCU)模块、电源管理模块、交通灯检测模块、路径检测模块、电机驱动模块、舵机控制模块以及辅助调试模块,在这次自动入库的设计中还有一个红外传感器模块,用于准确寻找空余车位。
每个模块都包括硬件和软件两部分,硬件为系统工作提供硬件实体,软件为系统提供各种算法。
智能车系统的总体结构框图如图2-1所示。
图2-1智能车系统总体结构框图
微控制器根据图像采集传感器采集的道路信息快速准确地对路径进行判断,对舵机和后轮直流电机PWM控制,从而保证智能车能够快速稳定地行驶。
其中微控制器选用Freescale公司的MC9S12XS128开发模块;
电源管理模块为开发模块、各传感器、舵机以及直流电机提供电源;
图像采集模块采用面阵CCD摄像头;
舵机控制模块用来控制小车转向的,模块化舵机只要送入脉宽调制信号就可控制其转向和转角,控制主要是通过单片机片内资源PWM配合编程实现;
直流电机驱动模块为车后轮直流电机驱动。
2.2设计方案分析
在设计小车自动停车入库系统的过程中,通过对相关资料的查询,可以发现系统的不同部分存在多种实现方案,各种方案都存在其利弊。
系统的方案选择主要存在道路识别、交通灯识别、自动倒库三个模块,下面将分析这三个模块的方案,选择出最利于我们实现的方法。
2.2.1道路识别方案分析
道路识别模块要实现的功能是在白底黑线的车道上自动识别行驶的路线,检测智能车相对于车道中央的偏移量、方向等信息使小车自主沿着车道运行。
为了提高小车对车场环境的适应能力,实现其自主沿着车道快速而稳定的行驶,要选择合适的采集赛道信息传感器,设计合理的路径识别方,以确保获取足够多、足够远、足够精确的车道信息来提高小车的运行速度。
路径识别的主要要求是准确、快速、尽量超前地采集路面信息,把它转变成点信号,传送到单片机中处理。
现在做路径识别的技术很多,方法也是千差万别,但其目的都是为小车寻到前进的方向,现在分析下面三种方案的利弊。
(一)、基于光电传感器的路径识别方案
对于飞思卡尔大赛来说,基于光电传感器来进行路径识别是完全可行的,因为赛道是在白色赛道上识别中间的黑色,可以在小车前面装上光敏器件,光敏电阻或是光敏二极管,根据白色与黑色赛道对光的反射强度的不同,从而对光敏器件产生不同的电阻电压,把这些数据送给单片机处理就可以让小车识别具体的路线。
这种方案的优点是电路简单,信号处理速度快。
其弊端是感知前方赛道距离有限,受外界红外频段光线干扰,精度比较低[3]。
(二)、采用电磁传感器的路径识别方案
这种方案是在道路中央安装电流约为20KHz、100mA的导线,采用电磁传感器阵列来感应道路上的磁场信号,经过放大电路放大后,可以得到正弦波,传给单片机进行AD采样,得到正弦波的峰值,以判断电磁传感器距离导线的距离,从而定位智能车在路径上所处位置。
这种方案的特点是:
磁场在空间的分布具有方向性,所以电磁传感器采集的信息同样具有特定的方向。
其缺点是磁场受附近车道上磁场影响较大,而且不同传感器对磁场感应的变化规律有很大的差距[4]。
(三)、采用摄像头采集的路径识别方案
使用摄像头采集路径信息的原理是通过调整摄像头镜头的焦距,可以采集到小车前方不同范围的道路图像,得到智能车前方的道路信息,对图像中的道路参数进行检测。
通过对检测的图像用适当的图像处理方式进行处理后,可以获得道路的中心位置、道路形状、弯道曲率等信息。
其优点是可以获得小车前方较远路径信息,不足是对图像处理的计算量大,单片机处理数据时间长,电路设计相对复杂。
摄像头的选择也存在两种方案,一种是采用CCD图像传感器,其是以PAL制式信号输出到CCD信号处理模块并进行同步信号分离,连续的图像数据和同步信号同时输入到S12单片机控制核心,进行进一步的图像处理。
其优点是对比度高、动态特性好。
缺点是工作电压是12V,需要升压模块,耗电量较大,且图像稳定性不高。
另一种方案是采用CMOS图像传感器,这种传感器的原理与CCD图像传感器的原理大致相同。
虽然CMOS传感器具有电源功耗低、感光度高的特点,但其受环境影响较大,适应性较差[5]。
综上所述,在这次设计中路径识别模块选用CCD图像传感器的摄像头方案。
2.2.2交通灯识别方案分析
现在各学科对识别交通灯的研究很多,依据的理论也各不相同。
例如上海交通大学研究的基于级联滤波交通灯识别方法,其是通过对已有的交通灯图像进行训练及采用色彩分割的方法而提取候选区域,并将候选区域作为输入[6];
同济大学研究的方向是在HIS颜色空间进行交通灯的颜色分割,利用交通灯被黑色矩形框包围这一典型特征进行形状分割,根据形状分割所得位置对颜色分割候选区进行确认,从而精确定位交通灯位置以及亮灯在交通灯中的位置[7]。
但总的来说,各种方案都是使用摄像头来对交通灯进行信息采集的。
因为在路径采集模块选用的是CCD摄像头,为了减少智能车的硬件组成以及减少费用预算,所以在这里使用同样的摄像头,但对信息的处理算法却迥然不同,在后续的论文中将会详细介绍。
2.2.3小车自动入库方案分析
这一部分要实现的主要功能是小车行驶的过程中能够准确定位到空余车位。
能够实现定位的传感器数不胜数,最初试想的方案是利用光敏电阻来测量小车与车位的距离,具体做法是在车库中央安装发光二极管,车库空着时二极管被点亮,在小车四周安装八个光敏电阻,利用光敏电阻距离光源位置不同产生不同电阻的原理,进而产生电压差,从而测出小车距离光源的位置。
实际证明这种方案并不合理,首先在小车上安装光敏电阻相对麻烦,而且电路连接较为混乱。
最严重的问题是光敏电阻受环境影响很大,远远不能实现车库的精确定位。
最终确定的方案是使用红外线对射管,这种对管的原理是点对点的发射接收,车库空着时对管发射信号,车辆行驶至车库时接收红外信号。
红外对射管的接收范围相对较小,所以并不受相邻车库对管的影响,精确度高,能够实现小车对车库的精确定位[8]。
2.3系统硬件安装
2.3.1智能车系统硬件安装
智能车上的硬件有:
车轮、舵机、路径采集摄像头、交通灯采集摄像头、电机、主控芯片、电源驱动一体化电路、红外接收管、视频分离电路。
其中车轮、舵机和电机已经安装在车上,不需要进行调节机械结构。
车体本身机械参数如下:
车长27.5cm;
车宽17cm;
车轮直径5cm;
轴宽12cm[9]。
智能车硬件安装如图2-2所示。
图2-2智能车硬件安装示意图
其中最关键的部分是摄像头的安装,出于对车身重心位置以及探测前瞻量的考虑,摄像头最好装在车体前部,以平衡重心并获得较大的前瞻量。
摄像头安装位置的高低对智能车行驶过程中路径识别的范围,以及路径识别的准确性和实时性具有直接的影响。
安装位置过低,会导致视野不够开阔,使得有效的路径识别范围缩小;
安装位置过高,又会导致黑色引导线变得过窄而无法被检测到,而且会使智能车系统重心抬高,从而降低了其稳定性。
摄像头又受到单片机采样速率的影响,根据实验发现用于路径采集摄像头的高度为10厘米、向下倾角30度为宜,用于交通灯信息采集摄像头的高度为12厘米、向上倾角30度为宜。
其次便是红外对射管的安装,智能车在两处需要用红外对管定位,一处是车库门前,另一处是在路口。
车库有左右之分,所以在小车的左右两侧各需要一个对管,用以区分空余车位在车的左侧还是右侧。
车库中道路是按照双车道设计的,所以检测路口的红外对管需要安装在车的右侧,又因为采用的对管是同一个型号,为了避免出现错误判断,检测路口的传感器安装位置要高于其余两个对管。
2.3.2车场硬件安装
智能车场的设计是独立于自动入库系统的,但本次设计需要车场相关硬件配合,所以这里对车场的硬件安装提出简单要求,其主要部分有:
红外对管、交通灯以及用于空位查询的光电管。
交通灯需要安装十字路口,受到CCD摄像头采集有效距离的影响,摄像头要安装在靠近车的路口,同时位置要高于摄像头支杆。
安装在车库门口的红外对管,其装在右侧还是左侧取决于该车库相对于主干道的位置。
用于定位路口的红外对管需要安装距离路口11cm的地方,这是由装在车上对管的位置决定[10]。
空位查询的传感器安装在车库正中即可,车场系统硬件安装如图2-3所示。
图2-3车场系统安装示意图
第三章硬件设计
3.1单片机最小系统电路
3.1.1单片机MC9S12XS128简介
我们选用飞思卡尔公司的MC9S12XS128作为系统的主控芯片,其隶属于MC9S12X系列。
MC9S12X系列是HCS12系列的增强产品,其基于S12CPU内核,可以达到之前产品2到5倍的性能。
S12X系列单片机增加了172条指令,可以执行32位计算,总线频率最高可达40MHz,并完全具备了CAN功能,改进了中断处理能力。
S12X单片机的CPU以复杂指令集CISC为架构,集成了中断控制器,有丰富的寻址方式。
其系列单片机最大的优点是添加了一个平行处理的外围处理器XGATE模块,该模块是一个可编程的16位RISC核心,设计的最高运行速率可达100MHz。
此模块是一个可编程的、智能的直接内存存取模块,可以进行通信处理、中断处理和数据预处理。
MC9S12X系列单片机目前有一下几个子系列:
MC9S12XA系列、MC9S12XB系列、MC9S12XD系列、MC9S12XE系列、MC9S12XS系列[11]。
MC9S12XS128单片机存在三种不同的引脚封装:
112引脚LQFP封装、80引脚QFP封装、64引脚LQFP封装,他们的功能基本相同。
因为本次设计需要的引脚较多,所以选用的是112引脚的封装。
其主要功能如下:
中央处理器是高速的16位处理单元,数据总线也是16位,由算数逻辑单元(ALU)、核心寄存器组以及控制单元三部分组成;
因为单片机的地址总线是16位的,所以基本存储器的寻址范围是0x0000~0xFFFF,寻址空间为64KB。
这些地址空间分给了数据存储器RAM、程序存储器EPROM、数据闪存器EEPROM和I/O口寄存器;
共有十一个并行I/O口,分别是:
A、B、E、K、T、S、M、P、H、J和AD,其中除了A、B和H作为通用I/O口,其他端口都存在复用功能;
中断模块实现了7级嵌套,每个中断源灵活分配中断级别,中断源又分为可屏蔽中断和不可屏蔽中断;
串行通信SCI模块由13位的波特率选择,同时支持LIN总线协议;
16通道的A-D转换位数有8位/10位/12位可选,转换数据左对齐或右对齐,存在单次或连续转换两种方式;
8通道8位的脉冲宽度调制器PWM可转换成4通道16位;
定时器/计数器模块分为输入捕捉/输出比较模块和周期中断定时模块;
内部集成了系统运行监视功能,即看门狗功能,用硬件监视软件是否正常运行,从而可以保证出错后系统快速恢复;
工作环境温度范围宽等[12]。
3.1.2单片机时钟电路设计
时钟电路是单片机最小系统设计中的关键环节,由于使用的晶振体工作频率很高,如果电路设计不合理会使其工作时产生的高频信号对其他电路造成干扰,特别对模拟部分的干扰较大,甚至会致使单片机系统无法正常工作。
通常时钟电路的连接方法有三种:
串联型、并联型和使用外部有源振荡器[13]。
并联型电路连接如图3-1所示。
图3-1时钟电路
图中晶振的大小选用16MHz,电容C1、C2称为负载电容,将它们分别与晶振连接后接地,作用是消减谐波对电路稳定性的影响,其典型值为22pF。
R3的作用是保证晶体正常起振,它的大小一般为10MΩ。
在设计时钟电路PCB时要注意下面三点:
(1)晶振体的周围尽量不要有线路,特别是对信号质量要求高的器件连线;
(2)为了保证单片机的稳定性和避免晶振对周围电路造成干扰,它们之间的连线要尽量短,尽量宽;
(3)为了阻挡晶振体的噪声,可以将地线包围和覆盖在其周围,这样也可以避免其他信号的干扰。
3.1.3复位电路设计
单片机要正常工作需要在上电的时候给它一个复位信号,使CPU和其他部件都置为一个确定的初始状态,并从这个状态开始工作。
此外,在调试程序的时候经常需要手动对单片机复位,所以复位电路的设计必不可少。
S12单片机的复位引脚是低电平有效,即在正常状态时要求该引脚被上拉至高电平,在对单片机进行复位时其要保持一定时间的低电平[14]。
复位电路如图3-2所示。
图3-2单片机复位电路
系统上电时,复位按钮处于松开状态,由于电容C1要进行充电,所以电压不会突然变化而只能缓慢上升,这样就可以在复位引脚上保持一段时间的低电平。
当按钮被按下时,复位引脚被拉到低电平,单片机进入复位状态。
但是该电路不具备低压复位保护功能,而且在对系统的稳定性要求较高的场所,需要在R1两端并联反向保护二极管[15]。
3.1.4BDM接口电路设计
BDM模块可以实现程序下载、读写存储器/寄存器、硬件断点、条件断点、单步运行、连续运行等全部在线调试功能,而只需要简单的外部接口电路。
此部分电路设计就是为了连接BDM调试器的,BDM调试器的功能是将程序从微机上下载到单片机里,并可实现在线调试,同时它还可以给单片机供电[16]。
BDM接头存在两种定义方式,一是飞思卡尔的方式,方法是将通讯口BKGD设置在第一脚,VDD在第六脚,若BDM插反,VDD将直接与BKGD短接,很可能引起芯片BDM模块故障,甚至烧毁芯片。
第二种方法是清华大学提出的,该方式将BKGD设置到第三脚,这样即使BDM头插反,也不会引起任何严重的后果。
按照第二种方式设计的BDM接口电路如图3-3所示。
图3-3BDM接口电路
为了充分保护单片机的引脚,通常串联如图所示的电阻R13,其典型阻值为51欧姆,此外单片机的工作模式决定了要在MODC引脚与电源之间串联一个3.3K的电阻。
当使用BDM下载程序时,单片机需要处于调试模式,即要求MODC引脚处于低电平,实现过程是BDM调试器的对应引脚自动将其拉低。
当单片机与调试器分离时,由于MODC上存在3.3K的上拉电阻,单片机就会自动回到普通模式。
3.2电源电路设计
电源模块的设计是为整个系统提供所需的电源,所以首先需要设计出满足要求的电压电流,其次需要考虑电源转换率和噪声等方面,稳定可靠的电源是整个硬件电路稳定运行的基础。
电源管理模块主要包括:
主电源、舵机电源、摄像头电源、电机驱动电源以及各芯片供电电源[17]。
其中主电源需要一块充电电池,现在市场上常见的充电电池有镍镉电池、镍氢电池、锂离子电池、碱性电池和封闭式铅酸电池等几类,其中镍氢电池电路简单、技术成熟而且价格便宜,所以这里选用一块由6节型号相同1.2V电池串联的7.2V电池,其额定容量为1300mAh。
3.2.15V电源电路设计
5V电源模块是对7.2V电池进行电压调节,主要为单片机、视频分离电路以及辅助电路提供稳定电压,所以要求电压稳定、噪声小、电流容量大。
现在常用的5V稳压芯片有LM7805、LM2940等,其中LM7805内部功率损耗大,全部压降均转换成热量损失了,电源效率比较低,因此选用LM2940作为5V稳压芯片。
LM2940稳压芯片的典型压降只有0.5V,其最大输出输出电流可达1A,并且具有短路保护的特点。
5V稳压电路原理图如图3-4所示。
图3-45V稳压电路图
3.2.26V电源电路设计
6V电源只给前轮舵机提供工作电压。
舵机工作时需要的工作电流一般在几十毫安左右,且电压无需十分稳定,所以这里选用LM2941作为稳压芯片。
LM2941是一种可调式低压稳压器,其优势主要在于:
典型压降为0.5V;
最大输出电流为1.0A;
输出电压范围为0~20V,最大输出电压可达26V;
具有短路保护、热过载保护和自我保护功能。
此外当输入输出压差超过3V时,芯片内部有专门的电路将引脚地的静态电流减小。
当输出电流为1A并且输入输出压差为5V时,静态电流仅为30mA。
6V稳压电路原理图如图3-5所示。
图3-56V稳压电路图
当引脚ON/OFF为高电平时,芯片被关闭,引脚OUTPUT输出电压为0V,反之当其接低电平时,芯片被开启,有电压输出。
输出电压的计