




已阅读5页,还剩74页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
石家庄铁道学院毕业设计基于图像处理技术的智能车设计ASMARTCARDESIGNBASEDONIMAGEPROCESSINGTECHNIQUESA2008届电气与电子工程分院专业自动化学号20041644学生姓名熊正伟指导教师邓晓燕余志强完成日期2008年5月25日摘要智能车系统的设计是根据第三届全国大学生智能车竞赛的技术要求而完成。该系统主要包括微控制器模块、电源管理模块、路径识别模块、电机驱动模块、转向舵机控制模块、速度采集模块以及辅助调试模块等。该智能车系统以FREESCALE16位单片机MC9S12DG128作为系统微控制器,采用CMOS摄像头作为路径检测传感器,通过边缘检测与边缘跟踪相结合的方法提取赛道中的黑色引导线信息,通过自制的速度传感器实时获取小车速度,能够根据前方的路径信息及其当前的运动状态,采取相应的控制策略,实现转向与速度控制。本文将详细介绍智能车各单元的设计与制作,其中包括小车的机械结构调整、硬件控制电路各模块的实现,以及软件控制算法各模块的设计等。另外,在文中还将对智能车制作过程中所采用的软件开发平台CODEWARRIORIDE及其使用方法,以及一些辅助调试工具等进行简要介绍。关键词智能车系统图像采样速度传感器控制策略FREESCALE16位单片机ABSTRACTACCORDINGTOTECHNICALREQUIREMENTSOFTHETHIRDNATIONALUNIVERSITYINTELLIGENTVEHICLETOURNAMENT,WEDESIGNTHEINTELLIGENTVEHICLECONTROLSYSTEMTHESYSTEMISCOMPOSEDOFMICROPROCESSORMODULE,POWERMANAGEMENTMODULE,PATHRECOGNITIONMODULE,MOTORDRIVERMODULE,SERVOCONTROLMODULE,SPEEDDETECTIONMODULEANDDEBUGGINGACCESSORIALMODULEETCTHEVEHICLESYSTEM,WITHTHEFREESCALE16BITSINGLECHIPMC9S12DG128ASITSCONTROLMICROPROCESSOR,USINGIMAGESENSORMODULEBASEDONCMOSCAMERATOOBTAINROUTEIMAGEINFORMATION,THENABSTRACTTHEBLACKLEADLINEONTHECONTESTLANEBYEDGEDETECTIONMETHODANDEDGEFOLLOWMETHODTHEVEHICLEALSOUSESASPEEDSENSORMADEBYOURSELVESTOOBTAINTHEREALTIMESPEEDITWILLGIVETHEPROPERTURNINGANGLEANDSPEEDACCORDINGTOTHEPRESCIENTROUTEINFORMATIONANDTHECURRENTSTATEOFITSELFINTHISPAPER,WEWILLDESCRIBETHEDESIGNANDEXECUTIONOFALLTHEMODULEWHICHISUSEDINTHEVEHICLESYSTEMINDETAIL,INCLUDINGTHEADJUSTABILITYOFTHEVEHICLEMECHANISMSTRUCTURE,THEACCOMPLISHMENTOFHARDWARECONTROLCIRCUIT,THEDESIGNOFSOFTWARECONTROLMETHODETCINADDITION,WEWILLINTRODUCETHESOFTWARECODEWARRIORIDEANDSOMEOTHERDEBUGGINGACCESSORIALTOOLSBRIEFLY,WHICHISUSEDTODESIGNTHEVEHICLESYSTEMKEYWORDSINTELLIGENTVEHICLESYSTEMIMAGESAMPLINGSPEEDSENSORCONTROLSTRATEGYFREESCALE16BITSINGLECHIP目录第1章前言111背景介绍112路径识别方案概述及比较1第2章智能车系统总体概述321智能车系统组成322系统各模块的组成及其功能介绍4第3章智能车机械结构调整531前轮定位532舵机安装调整633后轮齿轮传动机构调整634摄像头安装6第4章智能车系统硬件设计方案841单片机MC9S12DG128B的最小硬件系统8411MC9S12DG128B的内部资源介绍8412时钟电路10413复位电路10414智能车设计中所使用单片机资源规划1142电源管理模块114215V电源模块124226V电源模块134239V电源模块1343图像采集模块14431摄像头工作原理14432信号分离电路1544速度检测模块17441速度检测方案比较17442直射式光电传感器速度检测方案1845转向控制模块19451舵机的机械结构20452舵机的工作原理20453舵机控制2046电机驱动模块22461MC33886简介及其特点22462MC33886的工作方式23463电机控制电路2447辅助调试模块25471状态显示模块25472在线调试模块27第5章智能车系统软件设计方案2851图像采集模块28511图像采集软件方案分析29512图像采集软件方案设计29513图像采集模块初始化3052引导线识别模块31521常用引导线识别方案介绍31522引导线识别软件设计3253速度采集模块36531速度采集软件设计36532速度采集模块初始化3754转向控制模块3755速度控制模块39551PID控制介绍39552速度控制软件设计4056辅助调试模块42561状态显示模块42562图像数据传输模块43第6章系统开发与调试4461软件开发平台介绍4462CODEWARRIORIDE基本使用方法45第7章结论与展望4771结论4772展望47参考文献49致谢50附录51附录A外文资料翻译51附录B模型车主要参数63附录C智能车整体电路图64附录D智能车系统程序源代码66第1章前言11背景介绍1国外背景韩国大学生智能车竞赛是韩国汉阳大学汽车控制实验室在飞思卡尔半导体公司资助下举办的以HCS12单片机为核心的大学生课外科技竞赛。该赛事由组委会提供一个标准的汽车模型、直流电机和可充电式电池,由参赛者制作一个能够自主识别路线的智能车,在专门设计的跑道上自动识别道路行驶。智能车竞赛所涉及的专业知识包括控制、模式识别、传感技术、汽车电子、电气、计算机、机械等多个学科,对学生的知识融合和实践动手能力的培养,对高等学校控制及汽车电子学科学术水平的提高,具有良好的长期的推动作用。2国内背景在我国,“飞思卡尔”杯智能车竞赛是受教育部高等教育司委托教高司函2005201号文,由高等学校自动化专业教学指导分委员会主办,在飞思卡尔公司资助下以HCS12单片机为主控微控制器的模型车设计。该项比赛与现己举办的全国数学建模、电子设计、机械设计、结构设计等一起被列入教育部主办的全国大学生五大竞赛。第一届“飞思卡尔”杯全国大学生智能汽车邀请赛于2006年8月在清华大学举行。来自全国共57所大学的112支参赛队,历经报名、资格评审、赛车制作与调试,以及技术报告的评审等各个阶段的挑战,最终有25支参赛队进入了决赛,清华大学2队、上海交通大学速度之星队及清华大学1队分别位居前三强。2007年7月,第二届“飞思卡尔”杯全国大学生智能汽车竞赛,先由东北赛区、华北赛区、华东赛区、华南赛区、西南赛区等五大赛区分别进行预赛,各赛区进入决赛的队伍于2007年8月在上海交通大学进行最终的角逐。本次比赛由上海交通大学CYBERSMART队、上海交通大学速度之星队、天津工业大学2队分别名列前三名。今年,也即第三届“飞思卡尔”杯全国大学生智能汽车竞赛仍将先由五大赛区分别进行预赛,各赛区入围者最终将在东北大学进行角逐1。12路径识别方案概述及比较1基于光电传感器的路径识别方案基于反射式红外发射接收管的光电传感器阵列的路径检测方法具有检测速度快,检测方法简单,成本低廉等优点,且具有较高的可靠性与稳定性。但由于比赛规定传感器数量不能超过16个,这样就限制了其水平分辨率,导致系统不能精确地分辨引导线位置,同时其垂直分辨率也非常低,只有一到两线,不能很好地预测路径走向。2基于线阵图像传感器的路径识别方案线阵图像传感器的垂直分辨率仍然很低,只有一线,与红外发射接收管相比,其水平分辨率很高,但其检测速率相对于红外传感器要慢,并且这种路径识别方法也存在着无法预测前方路径走向的弊病,对小车的速度有一定的限制。3基于面阵图像传感器的路径识别方案采用面阵图像传感器作为路径检测工具,无论是水平分辨率还是垂直分辨率都要高于线阵型传感器,在路径识别上具有很大的优势,能够对前方路径进行提前预测,对小车的行进路线提前进行规划,使得小车以最短最优的路线行驶。但该方案也存在算法复杂,图像处理难度大,路径检测速率低等缺点。比较以上几种方案,可以看出面阵型图像传感器在智能车路径识别上具有较大的优势,是比较理想的路径检测传感器。这也是我在实际制作中所采用的传感器,实际制作中我选用面阵型CMOS摄像头作为智能车行驶路径的检测传感器。第2章智能车系统总体概述21智能车系统组成智能车系统的功能模块主要包括控制核心MCU模块、电源管理模块、路径检测模块、后轮电机驱动模块、转向控制模块、速度检测模块、以及辅助调试模块。每个模块都包括硬件和软件两部分。硬件为系统工作提供硬件实体,软件为系统提供各种算法。智能车系统的总体结构框图如图21所示。为保证智能车能够快速稳定地行驶,微控制器须根据图像采集传感器所采集到的赛道信息快速准确地对路径进行判断,并根据速度检测模块所反馈回来的当前小车的行驶状态,对转向伺服电机以及后轮直流驱动电机进行相应的控制。传感器实时准确地检测信息,微控制器迅速地对各类信息进行处理,以及各模块的密切配合是智能车快速行驶的关键。图21智能车系统总体结构框图22系统各模块的组成及其功能介绍1控制核心模块MCU。本系统采用FREESALE公司的16位单片机MC9S12DG128B作为主控制器。其主要功能是实时地完成对各传感器所采集各类信号的处理,并做出控制决策,输出相应的控制信号。2电源管理模块。主要包括5V电源模块、6V电源模块、9V电源模块等。其主要是对电池电压进行调节与分配,为各个模块正常工作提供可靠的电源。3路径检测模块。主要包括安装在小车前端的一个CMOS摄像头,以及视频分离模块。其主要是完成对赛道黑色引导线的实时检测与识别,为小车速度、转向的控制提供依据。4后轮电机驱动模块。电机驱动模块由4片电机驱动芯片MC33886组成。其主要是根据速度检测模块反馈的信号,对驱动电机的加速、减速、停止等进行控制。5转向控制模块。主要由一个转向伺服电机来实现。由传感器反馈的路面信息以及小车的当前状态,经过微控制器进行一系列的计算,将计算结果赋给转向伺服电机,从而准确地控制小车转向。6速度检测模块。采用一对红外发射与接收管配合光电编码盘来实现。红外发射接收管对后轮的转速实时进行检测,将信号反馈给微控制器。微控制器根据光电编码盘单位时间内反馈的脉冲数,采用相应的控制算法对直流电机的加减速进行快速准确的调节。7调试辅助模块。为方便小车调试,主要采用了串口通信设备、数码管显示以及8位拨码开关等辅助工具。其中采用串口通信设备可以将采集到的赛道图像数据传输到PC机上,对所采集的图像数据进行直观的分析;数码管显示主要用来显示小车行进过程中的各种实时信息;8位拨码开关则主要在实际赛道调试过程中,在多个预置方案之间进行选择,避免反复的下载程序。第3章智能车机械结构调整31前轮定位为了使小车直线行驶稳定,转向轻便,转向后能自动回正,并减少轮胎和转向系零件的磨损等,在转向轮、转向节和前轴之间须形成一定的安装位置,也即须对车轮进行定位。其主要包括主销内倾、主销后倾、车轮外倾和前束四项参数23。1主销内倾主销内倾是指主销装在前轴略向内倾斜的角度,它的作用是使前轮自动回正。角度越大前轮自动回正的作用就越强烈,但转向时也越费力,轮胎磨损增大;反之,角度越小前轮自动回正的作用就越弱。主销内倾角不宜过大,一般在010范围内调整时对模型车的性能影响不大,可根据模型车在实际赛道上的调试情况进行调整。在实际制作中,经过反复尝试,最终将其定位在12范围。2主销后倾主销后倾是指主销装在前轴,上端略向后倾斜的角度。它使车辆转弯时产生的离心力所形成的力矩方向与车轮偏转方向相反,迫使车轮偏转后自动恢复到原来的中间位置上。由此,主销后倾角越大,车速越高,前轮稳定性也愈好。但是,过大的后倾角也会使转向沉重,由于实际采用的转向舵机的性能偏软,很可能导致模型车转弯迟滞。实际制作中,经反复试验后,将主销后倾角设定在0。3前轮外倾角在汽车的横向平面内,前轮中心平面向外倾斜一个角度,称为前轮外倾角。前轮外倾角一方面可以使车轮接近垂直路面滚动而滑动,减小转向阻力,使汽车转向轻便;另一方面减少了轴承及其锁紧螺母的载荷,增加了使用寿命,提高了安全性。一般前轮外倾角为1左右,但对于有高速、急转向要求的车辆,前轮外倾角可减小甚至为负值。由于本智能车主要用于竞速,且其前轮外倾角只有两档可调,故在实际制作中将其设定为0。4前轮前束俯视车轮,汽车的两个前轮的旋转平面并不完全平行,而是稍微带一些角度,这种现象称为前轮前束。前轮前束的作用是保证汽车的行驶性能,减少轮胎的磨损。前轮在滚动时,其惯性力会自然将轮胎向内偏斜,如果前束适当,轮胎滚动时的偏斜方向就会抵消,轮胎内外侧磨损的现象会减少。一般前束值为012MM。前轮前束与前轮外倾角应当匹配,由于实际中将前轮外倾角设定为0,所以将前轮前束设定为0MM。32舵机安装调整转向系统在车辆运行过程中有着非常重要的作用,合适的前桥调整参数可以保证在车辆直线行驶过程中不会跑偏,即保证车辆行驶的方向稳定性;而在车辆转向后,合适的前桥可以使得车辆自行回到直线行驶状态,即具有好的回正性。基于这个原因,前桥参数调整及转向系统优化设计必然会成为智能车设计中机械结构调整的重点。在实际制作中,我将舵机安装位置进行了适当的升高,并在实际赛道中进行了大量的测试来确定舵机的最终安装位置,以保证小车具有良好是转向性能以及行驶的稳定性。33后轮齿轮传动机构调整模型车后轮采用智能车竞赛主办方提供的RS380SH3545电机驱动。电机轴与后轮轴之间的传动比为9/38电机轴齿轮齿数为18,后轮轴传动轮齿数为76。齿轮传动机构对车模的驱动能力有很大的影响。齿轮传动部分安装位置的不适当,会大大增加电机驱动后轮的负载,从而影响到小车的行驶速度。应此,实际制作中须对小车的后轮齿轮传动机构进行调整。调整的原则是两传动齿轮轴保持平行,齿轮间的配合间隙要合适,过松容易打坏齿轮,过紧又会增加传动阻力,白白浪费动力;传动部分要轻松、顺畅,容易转动,不能有卡住或迟滞现象。判断齿轮传动是否调整好的一个依据是,听一下电机带动后轮空转时的声音。声音刺耳响亮,说明齿轮间的配合间隙过大,传动中有撞齿现象;声音闷而且有迟滞,则说明齿轮间的配合间隙过小,或者两齿轮轴不平行,电机负载加大。调整好的齿轮传动噪音小,并且不会有碰撞类的杂音。34摄像头安装摄像头安装位置的高低对智能车行进过程中路径识别的范围,以及路径识别的准确性和实时性将产生直接的影响。安装位置过低,会导致视野不够广阔,使得有效的路径识别范围缩小;安装位置过高,又会导致黑色引导线变得过窄而无法被检测到,而且会使智能车系统重心抬高,从而降低了其稳定性。安装位置选择的一个原则是在此位置的拍摄范围能满足控制的需要。控制的策略简单,则所需的拍摄范围就可以小一些;反之,控制策略复杂,需获得的赛道信息较多,则拍摄范围就应大一些。在本智能车系统设计中,为使智能车入弯时能区分是S弯还是普通的单向弯,在保证摄像头能准确检测黑色引导线的基础上,对摄像头的安装位置进行了适当的升高。其具体的安装高度,及其视野范围如图31所示。图31摄像头安装示意图第4章智能车系统硬件设计方案41单片机MC9S12DG128B的最小硬件系统本智能车设计所使用的微控制器MC9S12DG128B是FREESCALE公司推出的S12系列微控制器中一款增强型的16位单片机。该单片机集成度高,片内资源丰富。它不仅在汽车电子、工业控制、中高档机电产品等应用领域具有广泛的用途,而且在FLASH存储控制及加密等方面也有很强的功能。在汽车电子领域有着广泛的应用。S12系列单片机的中央处理器CPU12由以下三部分组成算术逻辑单元ALU,控制单元和寄存器组。CPU外部总线频率为8MHZ或者16MHZ,通过内部锁相环PLL,可以使内部总线速度达到25MHZ。其寻址方式有16种。内部寄存器组中的寄存器,堆栈指针和变址寄存器均为16位。它具有很强的高级语言支持功能46。411MC9S12DG128B的内部资源介绍MC9S12DG128B单片机具有丰富的片内资源,简要概述如下1HCS12核心16位HCS12中央处理器,兼容M68HC11指令集BDM背景调试模式2CRG时钟与复位发生器可选的COLPITTS振荡器或者标准的PIERCE振荡器看门狗时钟监视器38位与4位具有中断功能的端口数字滤波可编程的上升沿和下降沿触发4存储器128KBFLASHEEPROM2KBEEPROM8KBRAM52个8通道模数转换器10位分辨率外部触发转换功能6增强型捕捉定时器16位主计数器,具有7位预分频功能8位可编程的输入捕捉和输出比较通道4个8位或者2个16位的脉冲累加器78路PWM通道8位8通道或者16位4通道各通道脉冲宽度和占空比独立控制中央对齐或左对齐输出可编程的时钟选择逻辑,具有较宽的频率范围快速紧急关断输入8串行接口图41单片机片内资源框图两个异步串行通信接口SCI两个同步串行设备接口SPIMC9S12DG128B单片机片内资源框图如图41所示。412时钟电路时钟电路主要由石英晶体振荡器和一些电容、电阻组成。虽然可以由集成到单片机内部的RC振荡器产生其工作所需要的时钟,但这种简单的时钟电路频率的稳定性得不到保证,不如使用外部晶振来得稳定;速度很快的单片机往往使用片内集成的压控振荡器VCO产生的高频振荡作为系统时钟,但VCO也需要外部晶振提供稳定的频率来锁定起振频率,其外部晶振电路有两种接线方式,一种是串联振荡电路,另一种是并联振荡电路。在本智能车微控制器最小系统的设计中,采用并联振荡电路,其具体电路如图42所示7。413复位电路在MC9S12DG128B单片机片内集成有上电复位电路,单片机上电时可自动产生复位信号,也就是说在上电时不用给单片机的复位引脚外加任何信号即可使其上电后开始正常运行,但是这有个条件必须满足,那就是电源电压VDD的上升速率。如果VDD上升速率缓慢,当单片机内部复位信号结束时仍未达到单片机的额定工作电压,那么单片机开始工作就可能出现无法预料的结果。特别是片内EEPROM的安全,在混乱中如果被改写,将造成系统信息的丢失。为保证单片机上电时可靠复位,这里采用电平监视器MC34064作为上电复位电路,当电源电压低于465V时,图42时钟电路图43复位电路MC34064的输出将保持低电平,这样可保证单片机一直处于复位状态。采用该芯片也可保证当电源电压跌落或者掉电时单片机及时进入复位状态。另外,在复位电路中采用按钮和上拉电阻组成手动复位电路,以方便程序调试。复位电路具体电路图如图43所示。414智能车设计中所使用单片机资源规划PAD0摄像头视频信号输入IRQ行同步脉冲信号输入PH0场同步信号输入PT6奇偶场同步信号输入PT0速度检测光电编码器脉冲信号输入PWM23舵机角度控制信号输出PWM1、PWM5电机速度控制信号输出PS5数码管显示串行数据输出PS6数码管显示串行数据传输同步时钟信号输出PJ0数码管显示数据锁存信号输出PA口辅助调试8位拨码开关输入42电源管理模块电源作为智能车的动力来源,为智能车上的控制器,执行器,传感器等提供可靠的工作电压。现在市面上常见的充电电池包括镍镉电池、镍氢电池、锂离子电池、碱性电池和封闭式铅酸电池等几类。由于镍镉电池具有价格便宜、技术成熟、电路简单、瞬间大电流供应能力强等优势,它占据了大部分的消费性电子产品市场,因此在本智能车设计中,采用国产镍镉可充电电池作为智能车的电源。单个镍镉电池只能提供12V的供电电压,本智能车设计所使用的电池是由6节型号相同的12V电池串联起来而得到72V的电池组,其标称容量为2000MAH,也就是说,该电池可以在2A的供电电流下持续供电1小时。电源管理模块主要是对电池电压进行调节,为各个模块正常工作提供可靠的工作电压。在智能车控制系统中,电源管理模块需将72V电池电压调节到5V、6V以及9V。其中,5V电压主要提供给单片机、速度检测模块、信号调理芯片、以及辅助调试模块等;6V电压主要为舵机的快速响应提供保障;9V电压则主要作为摄像头的电源供应;而直流电机的电源则直接采用72V电池为其供电。智能车系统电源分配图如图44所示。4215V电源模块由于5V电源要给控制核心单片机供电,所以,要求电源电压比较稳定,噪声小;同时,由于5V电源还要为图像分离芯片、速度检测传感器、以及摄像头升压模块提供电源,因此,其必须具有较大的电流容量。常用的5V稳压芯片有LM7805、LM29405等。考虑到LM7805内部功率损耗大,全部压降均转换成热量损失了,电源效率比较低,因此,在本次智能车设计中,放弃了LM7805,而选用LM29405作为5V稳压芯片。LM29405具有压降小其典型压降为05V,输出电流较大其输出电流可达1A,具有短路保护等特点。5V稳压电路图如图45所示。图455V稳压电路图图44智能车系统电源分配图4226V电源模块6V电源主要是为舵机提供工作电压。实际工作时,由于舵机所需要的工作电流一般在几十毫安左右,且电压无需十分稳定,因此,可以采用电池电压串联两个二极管作为舵机的电能供应。考虑到实际中电池刚充满电时电压可达85V左右,在整个小车运行过程中电池电压变化较大,从而使得舵机的响应速度受到较大影响。因此,在智能车实际制作中,为了使舵机的响应速度较快,同时使其稳定性也不至于太差,最终采用了稳定输出的6V电压为舵机提供工作保证。6V稳压选用输出可调的三端稳压芯片LM1117ADJ来实现。LM1117ADJ具有静态功耗较小4MA,输出电流可达800MA,且具有过热过流保护等功能8,其完全能够满足舵机所需要的电压和电流。6V稳压电路图如图46所示。4239V电源模块由于本次智能车设计所选用的摄像头为市面上常见的CMOS摄像头,其额定工作电压为9V,而电池最高充电电压也只能达到85V左右,因此,需要采用升压电路来为摄像头提供工作电压。实际制作中,采用应用比较广泛的DCDC电源变换集成电路MC34063来进行升压。MC34063芯片具有转换效率高,升压范围较广,所需的外围器件较少,最大输出电流可达15A等特点,其极性反转效率最高可达65,降压效率最高可达80,而升压效率最高可达909。由其所提供的电压与电流完全能够满足摄像头的需要。9V升压电路如图47所示。为了提高9V输出电压的稳定性,保证摄像头稳定工作,实际制作中,将MC34063的输入接至LM29405的输出,也即采用稳定输出的5V电压作为9V升压图466V稳压电路图模块的输入,以利于提高9V输出电压的稳定性。43图像采集模块431摄像头工作原理摄像头分黑白和彩色两种,根据赛道特点可知,为达到寻线目的,只需提取画面的灰度信息,而不必提取其色彩信息,所以本设计中采用的是黑白摄像头。摄像头主要由镜头、图像传感芯片和外围电路构成。图像传感芯片是其最重要的部分,但该芯片要配以合适的外围电路才能工作。将芯片和外围电路制作在一块电路板上,称为“单板”。若给单板配上镜头、外壳、引线和接头,就构成了通常所见的摄像头,如聊天用的摄像头;若只给单板配上镜头,这就是“单板摄像头”。单板摄像头日常生活中不多见,生产单板的公司通常将它们卖给其它公司,其它公司再按自己的要求包装这些单板。单板通常有三个端子电源端、地端和视频信号端有的还多出一个端子,那是音频信号端。电源接的电压要视具体的单板而定,目前一般有两种规格69V或912V。视频信号的电压一般位于05V2V之间。图479V升压电路摄像头的工作原理是按一定的分辨率,以隔行扫描的方式采集图像上的点,当扫描到某点时,就通过图像传感芯片将该点处图像的灰度转换成与灰度一一对应的电压值,然后将此电压值通过视频信号端输出。具体而言,摄像头连续地扫描图像上的一行,则输出就是一段连续的电压信号,该电压信号的高低起伏反映了该行图像的灰度变化。当扫描完一行,视频信号端就输出一个低于最低视频信号电压的电平如03V,并保持一段时间。这样相当于,紧接着每行图像信号之后会有一个电压“凹槽”,此“凹槽”叫做行同步脉冲,它是扫描换行的标志。然后,跳过一行后因为摄像头是隔行扫描的,开始扫描新的一行,如此下去,直到扫描完该场的视频信号,接着会出现一段场消隐区。该区中有若干个复合消隐脉冲,其中有个远宽于即持续时间远长于其它的消隐脉冲,称为场同步脉冲,它是扫描换场的标志。场同步脉冲标志着新的一场的到来,不过,场消隐区恰好跨在上一场的结尾和下一场的开始部分,得等场消隐区过去,下一场的视频信号才真正到来。摄像头每秒扫描25帧图像,每帧又分奇、偶两场,先奇场后偶场,故每秒扫描50场图像。奇场时只扫描图像中的奇数行,偶场时则只扫描偶数行10。摄像头输出的视频信号如图48所示。432信号分离电路1信号分离方案介绍要能有效地对视频信号进行采样,首先要处理好的问题是如何提取出摄像头信号中的行同步脉冲、消隐脉冲和场同步脉冲。这里有两种可行的方法。第一,直接通过单片机AD进行提取。因为行同步脉冲、消隐脉冲或场同步脉冲信号的电平低于这些脉冲以外摄像头信号的电平,所以据此可设定一个信号电平阈值来判断AD采样到的信号是否为上述三类脉冲。第二,就是给单片机配以合适的外围芯片,此芯片要能够提取出摄像头信号的行同步脉冲、消隐脉冲和场同步脉冲以供单片机作图48摄像头视频信号图49LM1881端口定义控制之用。考虑到单片机的速度有限,而一些脉冲的间隔时间又较短,为了减轻其处理负担,采用了第二种方法进行信号提取。LM1881视频同步信号分离芯片可从摄像头信号中提取信号的时序信息,如行同步脉冲、场同步脉冲和奇、偶场信息等,并将它们转换成TTL电平直接输给单片机的I/O口作控制信号之用。LM1881的端口定义如图49所示1112。其中,引脚2为视频信号输入端;引脚1为行同步信号输出端;引脚3为场同步信号输出端,当摄像头信号的场同步脉冲到来时,该端将变为低电平,一般维持230US,然后重新变回高电平;引脚7为奇偶场同步信号输出端,当摄像头信号处于奇场时,该端为高电平,当处于偶场时,为低电平。事实上,不仅可以用场同步信号作为换场的标志,也可以用奇偶场间的交替作为换场的标志。2LM1881的特点LM1881主要特点如下交流耦合的复合视频输入信号源;大于10的输入阻抗;K小于10MA的消耗电流;复合同步和垂直同步输出;奇偶场输出;色同步输出;水平扫描频率可达到150KHZ;边沿触发的场输出;对于非标准视频信号产生默认的场同步输出。3图像采集电路由LM1881及其外围电路构成的摄像头图像采集电路如图410所示。摄像头视频信号端接LM1881的视频信号输入端,同时也接入S12单片机的一路AD转换端口,这里选用PAD0。LM1881的行同步信号端引脚1接入单片机的外部中断引脚IRQ,同时将LM1881的场同步信号输入到单片机具有中断功能的PH0口,将奇偶场同步信号输入到ECT模块中PT6口,这样,既可以采用查询方式获取奇偶场信号跳变,又可以采用脉冲捕捉方式获取电平变化。通过这样的接线,为软件开发提供了多种选择的机会,使程序更加灵活。44速度检测模块441速度检测方案比较由于受车模机械结构的限制,必须采用体积小、重量轻的速度传感器,目前常用的有三种方案可供选择,分别介绍如下1霍尔传感器配合稀土磁钢在主后轮驱动齿轮处,通过打孔,将几块很小的稀土磁钢镶在里面,然后将霍尔元件安装在附近,通过检测磁场变化,可以得到电脉冲信号,获取后轮转动速度。该方案的优势是获取信息准确,体积小,而且不增加后轮负载。劣势是齿轮处靠近主驱动电机,容易受磁场干扰;对齿轮打孔,容易损坏齿轮。2光电编码器购买光电编码器安装在主驱动齿轮上,通过齿轮传过来的转动信息,获取后轮转角。该方案的优势是获取信息准确,精度高,搭建容易。劣势是增加后轮负载;光电编码器体积较大,导致车重增加。图410图像采集电路3光电传感器在主驱动齿轮表面附上黑白间隔的彩带,将反射型光电传感器安装在齿轮附近,当黑白彩带交替通过时,产生一系列电脉冲,由此获取转动速度。也可以对齿轮打孔,采用直射型光电传感器,通过间断接受到的红外光,产生电脉冲信号,获取转动速度。该方案的优势是体积小,不增加后轮负载。劣势是精度受到光电管体积的限制。比较以上3种方案,考虑到系统的可靠性,首先排除霍尔元件方案,又由于很难买到体积较小、且较轻的光电编码器,考虑到车重的任何增加都有可能影响到车速,因此放弃光电编码器方案。在实际设计中,最终采用直射式光电传感器方案。442直射式光电传感器速度检测方案1直射式光电传感器测速原理如图411所示,直射式光电传感器测速方案是由一个具有一定缝隙的编码盘,以及一对直射式红外发射与接收管所组成。红外发射与接收管安装在编码盘两侧,当电机转动时,带动编码盘一起转动,这样由编码盘间断性地遮挡红外发射与接收管,即可产生一系列的电脉冲,电机转动的速率加快,也即编码盘遮挡红外发射与接收管的频率升高,单位时间内所产生的电脉冲数就会相应地增多。由红外发射与接收管直接输出的电脉冲信号是不规则的脉冲,尤其在脉冲频率较高的情况下,其输出的脉冲信号接近于正弦波,应此,须对红外发射与接收管输出的脉冲信号进行整形才便于微控制器进行脉冲采集。施密特触发器是常用的脉冲整形电路。施密特触发器是一种双阈值的特殊电压比较器。当输入电压高于上阈值时,触发器输出高电平;当输入电压低于下阈值时,触发器输出低电平;当输入电压处于下阈值和上阈值之间的“死区”时,触发器的状态不发生改变。“死区”作用也常被称为“滞回”。这一特点很有用,因为它具有一定的抗噪声干扰的能力13。由红外发射与接收管图411速度检测原理图所输出的脉冲信号经施密特触发器整形后,变成标准的脉冲信号。经施密特电路整形后的脉冲波形如图411中所示。2速度检测电路考虑到编码盘制作精度以及制作过程较复杂,智能车测速模块实际制作时直接采用机械式鼠标中的编码盘作为测速码盘,并直接选用机械式鼠标中的红外发射与接收管作为速度检测的光电传感器。编码盘为一个直径为20MM的圆盘,在其周围均匀地分布着45个缝隙。在编码盘的中心打孔,将其固定在智能车的后轮转轴上,这样,当小车的后轮转动一周时编码盘也转动一周。红外发射与接收管固定在编码盘的两侧,当小车运动时,编码盘随后轮转轴一起转动,其齿部断续地遮挡红外线光束,使得接收管接收到断续的光脉冲信号。经过如图412所示的电路,将接收管接收到的光脉冲信号转换为电脉冲信号。编码盘的齿部间断地遮挡红外发射与接收管,就会在接收管的输出端间断地产生高低电平,当遮挡的频率较高时,接收管输出的高低电平的波形是不规则的,这里采用常用的集成施密特触发器74HC14对接收管的输出波形进行整形。经施密特触发器整形后得到比较理想的脉冲信号,将其输入单片机的脉冲计数模块,从而对小车的速度脉冲进行计数。实验证明,采用此方案进行速度检测能满足小车控制精度的要求。45转向控制模块舵机的转向控制模块是智能车上的重要模块,小车灵巧的转向是其能快速过弯的保证,所以如何加快舵机的响应速度是转向控制模块要考虑的关键问题。实际制图412速度检测电路作中对舵机的安装方式进行了调整,具体调整方式已在“智能车机械结构调整”一章,“舵机安装调整”这一节进行详细的介绍,在此就不再进行赘述。这一节主要介绍一下舵机的结构、原理及其控制方式。451舵机的机械结构一般来讲,舵机主要由以下几个部分组成舵盘、减速齿轮组、位置反馈电位计5K、直流电机、控制电路板等。其中,小型直流电机提供了原始动力,带动减速齿轮组,产生高扭力的输出,齿轮组的变速比愈大,输出扭力也愈大,越能承受更大的重量,但转动的速度也愈低。舵机内部机械结构图如图413所示。452舵机的工作原理舵机是一个典型闭环反馈系统。控制信号由接收机的通道进入信号调制芯片,获得直流偏置电压。它内部有一个基准电路,产生周期为20MS,宽度为15MS的基准信号,将获得的直流偏置电压与电位器的电压进行比较,获得电压差输出。最后,电压差的正负输出到电机驱动芯片决定电机的正反转。当电机转速一定时,电机带动一系列齿轮组,减速后传动至输出舵盘。舵机的输出轴和位置反馈电位计是相连的,舵盘转动的同时,带动位置反馈电位计,电位计将输出一个电压信号到控制电路板,进行反馈,然后控制电路板根据所在位置决定电机的转动方向和速度,直到电压差为0,电机停止转动。453舵机控制1舵机的接线方式图413舵机机械结构舵机有三根引出线,分别为红色、黑色与白色。其中,红色引线为舵机的电源线,为舵机提供工作电压;黑色引线为地线;白色引线为舵机的控制信号线,由此线为舵机提供转向控制信号。舵机接线图如图414所示。2舵机的控制方式舵机的转向角度与输入舵机的正脉冲的宽度成对应关系,当输入舵机的正脉冲的宽度为1MS时,舵机转向60度位置;当输入舵机的正脉冲的宽度为15MS时,舵机转向0度位置;当输入舵机的正脉冲的宽度为2MS时,舵机转向60度的位置。舵机控制脉冲宽度如图415所示。产生舵机控制信号的方式一般有三种软件计数方式;定时中断方式;PWM硬件产生方式。在本智能车系统设计中采用了MC9S12DG128单片机的PWM控制器模块。MC9S12DG128单片机具有8路8位PWM输出,且可以通过寄存器设置将其设置成4路16位PWM输出;各路PWM具有较宽的输出频率范围,其时钟逻辑可通过编程来选择;各路PWM的输出周期以及占空比也可通过程序独立设定。为了提高舵机转向的控制精度,在实际制作中,采用了1路16位的PWM输出PWM23来产生舵机的转向控制信号。图415舵机控制脉冲图414舵机接线图3舵机控制电路本次智能车制作所采用的舵机为智能车赛事组委会统一提供的FUTABAS3010型舵机。该舵机的工作角度为45度,其有两种工作电压,分别是48V和60V。当工作电压为48V时,其工作速度为011SEC/60,堵转力矩为61KGCM;当工作电压为60V时,其工作速度为008SEC/60,堵转力矩为77KGCM。在实际使用中,为了提高舵机的响应速度和工作力矩,采用了60V工作电压。舵机控制具体电路图如图416所示。其中,端子1、3为舵机提供工作电压,端子2为单片机PWM模块输出的PWM控制信号,该端子与舵机的信号输入端相接,由单片机的16位PWM信号控制舵机的转动。46电机驱动模块智能车的速度是智能车设计所追求的主要目标之一,而驱动电路和电机的选取决定了智能车速度所能达到的最高极限。因此,电机驱动模块也是智能车设计最重要的模块之一。本次智能车设计所采用的电机是由智能车赛事组委会提供的RS380ST/3545型小型直流电机,驱动电路采用了4片由FREESCALE公司提供的电机驱动芯片MC33886来实现。461MC33886简介及其特点1MC33886简介MC33886是一个具有20个引脚的单片理想的H桥式小功率直流电机驱动芯片。它的集成电路包含内部逻辑控制,电荷泵,门控驱动,及低读选通金属氧化物半导体场效应晶体管输出电路。MC33886能够控制连续感应直流负载上升到5A,输出负载脉宽调制频率可达10KHZ,其有一个故障状态输出端,可以及时报告欠压、短路、过热等异常情况。两路独立输入控制两个半桥的推拉输出电路的输出,两个无效使能输入使H桥产生三态输出呈现高阻抗状态。MC33886的内部原理图如图417所示。2MC33886的特点工作电压540V;导通电阻120;M图416舵机控制电路输入信号兼容TTL/CMOS输入;PWM频率可达10KHZ;具有短路保护、欠压保护、过温保护;具有错误报告端口等。462MC33886的工作方式MC33886外部引脚图如图418所示。其中,V是为直流电机供电的电源。IN1和IN2两个逻辑电平输入端分别控制输出端OUT1和OUT2。当IN1输入为高电平时,OUT1输出也为高电平;当IN1输入为低电平时,OUT1输出也为低电平。IN2和OUT2的关系与IN1和OUT1的关系相同。FS为故障信号开漏极输出,当该引脚为低电平时有效。D1、D2为输出三态使能控制端,当D1为高电平或者D2为低电平时,同时禁用OUT1和OUT2的输出,使OUT1和OUT2同时变为高阻态。通过控制IN1和IN2的电平,即可控制电机正转、反转、停止。对IN1和IN2的电平信号进行脉宽调制,即可控制电机的转速。图417MC33886内部原理图MC33886工作方式的真值表如表41所示。表41MC33886工作方式真值表输入状态错误报告输出状态电机状态D1D2IN1IN2FSOUT1OUT2正转LHHLHHL反转LHLHHLH自由运转LHLLHLL自由运转LHHHHHH欠压XXXXLZZ过温XXXXLZZ短路XXXXLZZ注H表示高电平、L表示低电平、X表示高电平或者低电平、Z表示高阻状态463电机控制电路由于一片MC33886的额定输出流为5A,如果采用一片此芯片驱动电机,此芯片发热将比较严重。再考虑到电机RS380ST/3545在额定电压即72V下堵转时电流可超过16A,这个电流已远远大于一片MC33886所能承受的电流,因此,如果采用一片MC33886来驱动电机,当电机赌转时间稍长时,芯片将会由于电流过大而被烧毁。在实际制作中,采用了4片MC33886相并联的形式来驱动电机。采用4片芯片并联驱动,即使达到了电机的电流极限,也即16A时,理想状态下每片芯片平均图418MC33886外部引脚分配的电流为4A,这样,一方面能减少每一片芯片的发热量,避免了芯片因为过热或者过流而出现故障;另一方面也减小了每一片MC33886的带载,从而也就增加了对电机的驱动能力。一片MC33886的电路图如图419所示。其中,输入端IN1、IN2分别由单片机PWM模块的PWM1与PWM5来控制,两个输出端OUT1与OUT2分别接电机的两个极。4片MC33886相并联,也即将各芯片的输入、输出引脚分别并联在一起,其他引脚的连接方式相同。经过多次调试发现,采用此方案让小车在22M的赛道上连续运行30多圈,在对驱动芯片不采取任何散热措施的情况下,每片芯片不会产生明显发热。然而,采用4片MC33886相并联也带来了一定的问题,首先4片芯片所占面积比较大,使得安装难度增加;另一方面,虽然驱动能力增强了,但电池能量的消耗也相应加快了。但总的来说,在智能车比赛规则的要求下,也即让智能车连续运行两圈,能保证小车的电能供应,且具有较大的驱动能力。47辅助调试模块471状态显示模块1状态显示方案设计在智能车的实际赛道调试中,需要实时观察小车行进过程中的各种状态,也即需要将小车行进过程中的各种信息进行实时显示。一般采取的显示方案主要有LCD显示、LED数码管显示、以及发光二极管显示。考虑到采用LCD方案所需费用较高,且在小车行进中不便于观察;而采用发光二极管显示的信息量较少,故最终选用LED数码管来实时显示小车行进过程中的各种状态。图419一片MC33886电路图数码管显示模块主要用来显示小车行进中的实时速度以及小车跑完全程即一圈所需要的时间,考虑到显示精度以及功耗,采用3个8段共阴极数码管来分时显示以上两种信息,且采用拨码开关在两种显示信息之间进行切换。状态显示模块具体电路原理图如图420所示,数码管采用串行输入、共阴极LED数码管驱动器MAX7219驱动。2MAX7219介绍MAX7219是美国MAXIM公司生产的串行输入、共阴极LED数码管驱动器。它集BCD码译码器、多路扫描器、段驱动器和位驱动器于一体,内含8个字节显示静态RAM和6个特殊功能寄存器,每片MAX7219最多可同时驱动8个LED数码管。它与微处理器的接口非常简单,采用同步串行通信接口SPI进行数据传输,占用微处理器资源少。它可以单独对每一个显示位进行寻址和刷新,而不需要重写其他的显示位,另外,其可以通过数字和模拟两种方式来改变数码管每段的显示亮度,而不需要加限流电阻,使得应用比较简单。如图420中所示,MAX7219的DIN端为串行数据输入端;CLK为数据传输的时钟信号输入端;LOAD为数据锁存信号输入端;SEGAG、SEGDP分别为数码管7段驱动和小数点驱动;DIG07为8位数码管位选端;ISET端通过电阻R1与电源相接,改变电阻R1的阻值可改变流过数码管每段的电流峰值;DOUT端主要在多片MAX7219级联中使用,其与下一级的数据输入端相接。图420状态显示模块472在线调试模块在智能车的实际赛道调试中,需要不断的修改控制方案以及各类参数,不可避免地要进行反复的程序下载,为方便小车实际赛道调试,故在智能车控制系统中加入一个8位拨码开关,在一次程序下载后,可在多个方案以及参数间进行选择,减少了程序下载次数,提高了小车调试进度。8位拨码开关由单片机的PA口输入,其具体的电路原理图如图421所示。其中,其最高位用于状态显示模块显示信息的选择,即作为速度与时间显示的切换开关,其他七位作为小车行驶方案及其参数的选择开关。图421在线调试模块第5章智能车系统软件设计方案硬件系统设计是智能车制作的前提,完成了硬件设计,接下来的软件设计也是智能车正常运行所不可缺的。在本智能车控制系统中,软件系统设计主要包括以下几部分图像采集模块、引导线识别模块、速度采集模块、转向控制模块、速度控制模块以及辅助调试模块等。微控制器根据图像采集模块所采集的图像信息进行赛道路径识别,结合速度采集模块反馈回的小车当前状态,进行相应的算法处理,并做出转向与车速控制。智能车系统整体软件控制流程图如图51所示。以下将依次对软件控制系统各模块的设计方案进行详细介绍。51图像采集模块在硬件电路设计中通过视频同步信号分离电路已经将视频信号中的行同步信号、场同步信号、奇偶场同步信号等分离出来,接下来如何根据这些同步信号将摄像头YN系统初始化摄像头场信号跳变图像采集当前速度检测路径识别转向控制速度控制图51智能车系统整体软件控制流程图输出的模拟信号数字化是图像采集模块软件所要完成的主要内容,以下将对图像采集的软件设计进行详细介绍。511图像采集软件方案分析由摄像头输出的信号为模拟信号,要将这些信号输入微控制器进行处理,首先要将该模拟信号进行数字化,也即要对摄像头输出的模拟信号进行ATD转换。MC9S12DG128B单片机具有ATD0与ATD1两组AD转换模块,共16个AD转换通道;其转换精度可通过程序选择10位或者8位;在不进行超频的情况下,其最高转换频率可达到2MHZ,即如果采用8位数字量
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论