收藏 分享(赏)

中国民航大学三队08[1].8.19.doc

上传人:nanchangxurui 文档编号:6828853 上传时间:2022-08-17 格式:DOC 页数:38 大小:4.33MB
下载 相关 举报
中国民航大学三队08[1].8.19.doc_第1页
第1页 / 共38页
中国民航大学三队08[1].8.19.doc_第2页
第2页 / 共38页
中国民航大学三队08[1].8.19.doc_第3页
第3页 / 共38页
中国民航大学三队08[1].8.19.doc_第4页
第4页 / 共38页
中国民航大学三队08[1].8.19.doc_第5页
第5页 / 共38页
亲,该文档总共38页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、第三届“飞思卡尔”杯全国大学生智能汽车邀请赛技技 术术 报报 告告附件 A 程序源代码附件 B 基于 CMOS图像传感器的智能车赛道识别方法学 校:中国民航大学队伍名称:航大三队参赛队员:刘 宇夏 阳王海库带队教师:丁 芳 罗云林关于技术报告和研究论文使用授权的说明 本人完全了解第二届“飞思卡尔”杯全国大学生智能汽车邀请赛关保留、使用技术报告和研究论文的规定,即:参赛作品著作权归参赛者本人,比赛组委会和飞思卡尔半导体公司可以在相关主页上收录并公开参赛作品的设计方案、技术报告以及参赛车模的视频、图像资料,并将相关内容编纂收录在组委会出版论文集中。参赛队员签名: 带队教师签名: 日 期: 目 录第

2、一章第一章 绪论绪论.11.1背景介绍.11.2智能车整体简介.21.2.1硬件设计概要.21.2.2软件设计概要.3第二章第二章 车模机械结构调整车模机械结构调整.52.1前轮定位.52.2后轮差速机构调整.52.3重心位置的调整.52.4离地间隙调整.62.5底盘刚度调整.62.6摄像头的安装.62.7舵机连杆的改造.62.8主控电路板安装.72.9测速传感器的安装.7第三章第三章 系统硬件设计系统硬件设计.83.1主控电路板设计.83.2电源管理模块.83.2.15V 稳压模块.93.2.29V 稳压模块.103.3图像信息采集模块.103.4车速测量模块.123.5电机驱动模块.12第

3、四章第四章 软件设计软件设计.144.1软件设计总思想.144.2视频信号的采集.144.3速度信息提取.154.4视频信号的处理.164.4.1赛道黑线的提取.164.4.2十字交叉线的处理.174.4.3起始线的识别.184.5转向及速度控制算法.194.5.1转向控制.194.5.2速度设定.204.5.3速度调节.20第五章第五章 开发工具及制作调试过程开发工具及制作调试过程.215.1开发工具介绍.215.1.1硬件开发工具.215.1.2软件开发工具.235.2制作调试过程.245.2.1车模的制作.245.2.2车模调试.24第六章第六章 总结总结.266.1智能车主要参数.26

4、6.2体会.266.3系统不足和需要改进的地方.266.4结束语.27参考文献参考文献.291第一章 绪论当前半导体在汽车中的应用原来越普及,汽车的电子化已成为行业发展的必然趋势。它包括了从汽车电子控制装置,到车载汽车电子装置,几乎涵盖了汽车的所有系统。汽车电子的迅猛发展必将满足人们逐步增长的对于安全、节能、环保以及智能化和信息化的需求。作为全球最大的汽车电子半导体供应商,飞思卡尔一直致力于为汽车电子系统提供全范围应用的微控制器、模拟器件和传感器等器件产品和解决方案。飞思卡尔在汽车电子的半导体器件市场拥有领先的地位并不断赢得客户的认可和信任。其中在8位、16位及32位汽车微控制器的市场占有率居

5、于全球第一。飞思卡尔的S12是一个非常成功的芯片系列,在全球以及中国范围内被广泛应用于各种汽车电子应用中。例如引擎管理、安全气囊、车身电子、汽车网络和资讯娱乐等。1.1背景介绍全国大学生智能汽车竞赛已经成功举办了两届,它是以智能汽车为研究对象的创意性科技竞赛,比赛规模不断扩大、比赛成绩不断提高。它是面向全国大学生的一种具有探索性工程实践活动,是教育部倡导的大学生科技竞赛之一。本竞赛以“立足培养,重在参与,鼓励探索,追求卓越”为指导思想通过比赛,促进了高等学校素质教育,培养了大学生的综合知识运用能力、基本工程实践能力和创新意识,激发了大学生从事科学研究与探索的兴趣和潜能,倡导理论联系实际、求真务

6、实的学风和团队协作的人文精神,为优秀人才的脱颖而出创造了条件。由竞赛秘书处为各参赛队提供、购置规定范围内的标准硬软件技术平台,竞赛过程包括理论设计、实际制作、整车调试、现场比赛等环节,要求学生组成团队,协同工作,初步体会一个工程性的研究开发项目从设计到实现的全过程。该竞赛融科学性、趣味性和观赏性为一体,是以迅猛发展、前景广阔的汽车电子为背景,涵盖自动控制、模式识别、传感技术、电子、电气、计算机、机械与汽车等多学科专业的创意性比赛。本竞赛规则透明,评价标准客观,坚第三届全国大学生智能汽车邀请赛技术报告2持公开、公平、公正的原则,保证竞赛向健康、普及,持续的方向发展。1.2智能车整体简介智能车系统

7、是一个各部分协调运作的控制系统。系统要完成从传感器采集信息、微控制器对信息进行处理和计算并控制执行机构动作的整个过程。系统设计要求微控制器把路径的迅速判断、相应的转向伺服电机控制以及直流电机的控制紧密地结合在一起。从传感器数据采集、信息处理、转向伺服电机控制、电机转速控制,任何一个环节出现问题都会导致车模不能很好的跟踪赛道行驶甚至偏离赛道。因此智能车各个部分之间的协调工作是其正常行驶的基础。在结构上智能车包括:电源模块、传感器模块、微控制器模块、电机及其驱动模块及控制转向的舵机等。该智能车使用飞思卡尔半导体公司的16位微控制器作为核心控制模块,通过设计相应的外围电路、编写驱动程序、控制程序以及

8、装配、调整车模等,制作一个能够自主识别赛道,并沿赛道行驶的模型汽车。智能车通过图像传感器感知赛道信息,控制赛车的行进方向。使用摄像头能够采集比光电传感器更多的信息,但信息处理更加复杂。1.2.1硬件设计概要智能车控制系统以MC9S12DG128微控制器为核心,包括电源模块、赛道图像采集模块、车速测量模块、电机驱动模块等几部分。赛道信息采集采用CMOS 图像传感器,图1.1为系统控制总图。图1.1 控制系统总图下面对各主要部分做简要介绍:(1)微控制器本系统使用飞思卡尔16位MC9S12DG128微控制器作为核心控制单元。第一章 绪论3MC9S12DG128微控制器是MC9S12系列中的一款,它

9、是飞思卡尔(Freescale)以StarCore为核心的十六位微控制器。MC9S12DG128微控制器有着丰富的内部资源,它包含8KB RAM、128KB Flash ROM、2KB EEPROM、2个SCI、2个SPI、2路CAN总线、16路10位A/D转换器、1个I2C总线、8路8位/4路16位PWM口、8路16位定时器,有80和112引脚两种封装。其中很多端口都可以作为普通I/O口使用。MC9S12DG128主频为16MHz,总线频率为主频一半。通过设置锁相环可将总线频率最高提高至48MHz。(2)电机驱动模块MC33886是飞思卡尔的一款H桥电机驱动芯片。它的开关频率很高,可以达到1

10、0KHz。它的导通内阻很小,只有120m,可以提供5A的电流。电机驱动采用两块33886并联方式,可以减小单片芯片输出电流,减小芯片的发热。(3)舵机舵机内部有驱动控制电路,只需为其提供直流电压和PWM波就可以使其动作,不同的PWM波占空比对应着不同的转角。工作电压越高舵机反应越迅速,为了尽可能提高舵机反应速度,将舵机直接接到+7.2v电源上(组委会要求不可使用DC-DC升压为舵机供电) 。(4)测速模块采用光电对管和自制码盘组成测速传感器,此种方法简单,测速精度已经可以满足要求,并且比市场上的光电编码器要便宜得多。由于车模无需反转,因此不用检相环节,结构简单。(5)摄像头由于赛道为白色,中间

11、有黑色引道线,因此只需提取画面的灰度信息就可以实现寻线目的,而不需色彩信息。另外由于微控制器A/D口的转换速率和其内部RAM空间的限制,我们选择了320240的CMOS黑白摄像头。1.2.2软件设计概要软件部分主要包括:信息提取、路径识别、转向控制和速度控制几个部分。软件流程可分为以下几个部分:初始化,获得赛道信息并计算出角度和位置偏第三届全国大学生智能汽车邀请赛技术报告4差,根据偏差和当前速度控制电机转速和舵机转动。软件结构框图如图1.2下:图1.2 主程序流程图(1)视频图像信号采集方法视频图像信号采集作为路径识别功能的基础,具有重要的地位。在主程序中采用软件查询的方法,得到场同步信号;采

12、用中断方法捕捉行同步信号。通过A/D口将模拟视频信号转换成数字量并根据行计数变量按照原图像位置将信息存储于RAM中。整幅图像采集完毕后将完成标志位置位。(2)路径识别方法在判断图像采集完成后,进入路径识别计算。从最近一行图像开始检测,并记录下黑点的中心左右边界位置。根据该行获得的黑线的中心位置来确定下一行检测的起始点。如此循环直到处理完整幅图像。(3)转向及速度控制算法根据检测到的黑线中心位置,可知当前车相对于赛道的位置偏差和角度偏差,进而控制舵机转向。使用最小二乘法和分段线性化的方法获得赛道的曲率信息,然后再结合位置和角度偏差量控制车速的大小,使赛车在直道上的速度较快,弯道上的速度较慢,从而

13、保证了赛车在整个行驶过程的稳定性。车速的调节采用遇限削弱积分PID调节算法。5第二章 车模机械结构调整赛车使用竞赛规定的车模套件,车模套件包括:车模底盘、舵机和电机。控制采用前轮转向,后轮驱动方案。2.1前轮定位现代汽车在正常行驶过程中,为了使汽车直线行驶稳定,转向轻便,转向后能自动回正,并减少轮胎和转向系零件的磨损等,在转向轮转向节和前轴之间形成一定的相对安装位置,叫车轮定位,其主要参数包括:主销后倾,主销内倾,车轮外倾和前束。Matiz车模轮的四项定位参数均可调1。在调整车模时,使其前轮略微前束,其余倾角都保持0。2.2后轮差速机构调整差速机构的作用是:在车模转弯的时候,降低后轮与地面之间

14、的滑动,并且可使车转弯时阻力更小。车模右后轮轮轴轮处装有差速器。当车辆转弯时,内外两侧车轮的转弯半径明显不同,车轮不打滑的前提就是两侧车轮转速不同。在摩擦力的作用下,差速机构发挥作用,使两侧车轮都能与地面无滑动的转动,这对于保持车身的稳定性十分重要,同时也能减小轮胎的磨损。由于车模使用的差速机构是由滚珠组成,在两端预紧力较小时,差动效果较好,但齿轮容易与车轴间打滑,影响速度控制;如果两端预紧力过大,则又使差速效果很差。在调整差速机构的预紧力时,应该使其大小合适,既不会影响速度又不会使差速失效。2.3重心位置的调整汽车重心指汽车重力的作用点,其位置的改变会影响汽车的动力性,制动性,操纵稳定性,平

15、顺性,通过性和舒适性等重要特性1。通过参阅相关文献和测试得出:重心靠近后轴,对车模的动力性能有益;重心靠近前轴,对车模的制动性和操纵稳定性有益。车模所需要达到的最快车速也远没有现实中那么高,只有4m/s。所以我们在安装传感器,CMOS摄像头,电池和电路板时,都尽量布置于车身中间略靠近前轴。因为电池是车中可以改变位置的部件中最重的,因此我们将电池前置,使车的重心明显前移。经过反复的测试和赛区的初第三届全国大学生智能汽车邀请赛技术报告6赛我们认为这种方法有一定效果。图2.1为电池安装的位置。图2.1 电池的安装2.4离地间隙调整在离地间隙调整中,使用车模提供的垫片来调整后轮轴处底盘离地高度。使车模

16、底盘后半部分的离地间隙变小,从而降低了重心、提高了行驶时的稳定性。2.5底盘刚度调整通过改变悬挂支柱的位置将其后移使悬挂弹簧压缩增加了预紧力,可以提高底盘刚度。2.6摄像头的安装摄像头的安装有两点要求:首先是摄像头支架在车的快速运动中不能出现较大的摆动。因为如果支架摆动会使摄像头位置偏离车的中心,造成计算出的偏差量不是车实际的偏差,这将造成车的误动作或不稳定。其次是整个支架要轻,以便不使是车的重心高度过高。为了能够得到较远的视野,并且保证图像的梯度变化不是很大,摄像头安装的比较高,视角偏向前下。摄像头支架为装芯片的塑料管,这种塑料管强度高、质量轻,虽然支架很高,但基本不影响重心高度。2.7舵机

17、连杆的改造第二章 车模机械结构调整7舵机是整个控制系统中延迟较大的一个环节,为了提高舵机的灵敏度、减小舵机动作时间,可以通过改变舵机的安装位置,并适当增加了舵机连杆的长度,使得舵机连杆顶端动作同样距离时, 舵机所转角度明显减小,有效缩短了动作时间。图2.2为舵机安装图。2.8主控电路板安装主控电路板将各部分的电路集成在一块板上,减少了各部分的电路之间连接的导线,提高了硬件稳定性,同时也减小了体积。系统电路板安装于原电池安装位置。安装如图2.3。图2.2 舵机安装图图2.3 主控电路板安装2.9测速传感器的安装采用对射式光电管和自制的码盘组成的测速传感器。对射式光电管模块很小,可以直接安装在传动

18、齿轮上方;自制码盘安装在轮子的差动器一侧,通过光电管中心。如图2.4。第三届全国大学生智能汽车邀请赛技术报告8图2.4 测速传感器安装9第三章 系统硬件设计3.1主控电路板设计在进行硬件系统设计初期,使用了最小系统板,但为了减少接线、提高系统的可靠性,并减小电路板的面积,将DG128芯片及其外围辅助电路、电源模块、视频信号分离电路以及调试时所需的LED指示灯、按钮都整合到一片电路板上。如图3.1为主控电路版PCB板图。图3.1 主控电路版PCB板3.2电源管理模块电源模块主要有:主电源、舵机电源、摄像头电源、电机驱动电源、传感器电源等组成。电源模块的作用是为系统中其它各个模块提供所需要的电源。

19、设计中,除了要考虑到电压范围和电流容量等基本参数之外,还要在电源转换效率、降低噪声、防止干扰和电路简单等方面进行优化。可靠的电源方案是整个硬件电路稳定可靠运行的基础。第三届全国大学生智能汽车邀请赛技术报告10主电源:是一块镍镉电池。它的额定输出电压为7.2V。舵机电源:由于舵机的反应速度和电压有关,为了使舵机的反应延迟最小,我们采用主电源直接供给的方法,即直接取电池7.2V直流电压。摄像头电源:采用MC34063DC-DC升压芯片,将电源电压由额定电压值的7.2V升到9V。电机驱动电源:直接取自7.2V的镍镉电池。主控制板电源:主控制板主要使用5V供电,其中主要包括微控制器电源、视频分离电路电

20、源、测速传感器电源。5V电源由稳压芯片LM2940提供。图3.2为电源管理模块示意图图3.2 电源管理模块示意图3.2.15V稳压模块5V电压,主要为微控制器、信号处理电路以及部分接口电路提供电源,电压要求稳定、噪声小,电流容量大于500mA。图3.3为LM2940接线图。图3.3 LM2940接线图第三章 系统硬件设计11降压稳压电路可以采用串联稳压和开关稳压两种芯片。开关稳压芯片的工作效率高,但有较高的电源噪声,耗电量比较大的电路适于采用开关稳压电路。由于该系统中5V电源主要用于微控制器及部分外围电路,耗电量不是很大,所以选择了LM2940进行5V稳压。LM2940为串联稳压,工作压差可以

21、小于0.5V。3.2.29V稳压模块采用了MC34063A进行升压的方法,将电压提高到9V,使摄像头能正常工作。 MC34063A是单片双极型线性集成电路,专用于直流直流变换器控制部分。它由一个占空比周期控制振荡器、驱动器和大电流输出开关组成,能输出1.5A的开关电流。由MC34063A及少数外部元件即可构成开关式升压变换器、降压式变换器或电源反向器。根据厂商提供的内部和参考电路,图3.4为原理图,由MC34063A与一些外部元器件可以组成boost升压电路。调结电路中的反馈电阻,可改变输出电压大小。电路图如图3.5所示。图3.4 MC34063A内部原理图图3.5 MC34063A外围电路图

22、3.3图像信息采集模块图像信息采集模块主要由摄像头、视频分离模块和A/D转换器组成。检测赛道相对车模的偏移量、方向、曲率等信息是实现车模自主沿赛道运行基础,获取更多,更远,更精确的赛道信息是提高车速的关键。采用CMOS摄像头对道路信息进行图像采集。第三届全国大学生智能汽车邀请赛技术报告12为了采集稳定图像信息,CPU需要根据行、场同步信号启动A/D转换器,采集赛道图像。为采集图像信息,还需另设同步分离电路分离出行、场同步信号。LM1881是视频同步分离芯片,它可以直接对电视信号进行同步分离,准确地获得所需的视频图像信号,并可以根据需要对该同步信号进行时序逻辑控制。视频图像信号一帧画面分2场扫描

23、,第1场先扫描奇数行1、3、5,称为奇数场;第2场扫描画面上的偶数行2、4、6,称为偶数场。输出的低电平表示为偶场,高电平表示为奇场。LM1881可以从0.52V的标准负极性NTSC制、PAL制、SECAM制等视频格式的信号中提取复合同步、场同步、奇/偶场识别等信号,这些信号都是图像数字采集所需要的同步信号,由此便确定采集点在哪一场,哪一行。图3.6为LM1881输入、输出信号的波形图。图3.7为视频分离电路图。a 复合视频信号 b 复合同步信号 c 垂直脉冲输出信号 d 奇/偶场信号图3.6 LM1881输入、输出信号波形图第三章 系统硬件设计13图3.7 LM1881视频同步分离器接线图3

24、.4车速测量模块为了使得车模能够平稳地沿赛道运行,除了控制它前轮转向舵机以外,还需要控制它的运行速度,使得车模不仅能在直道保持高速运行,而且在弯道低速行驶不冲出赛道。赛车通过控制电机驱动板输出的平均电压来控制车速,通过速度检测,对小车进行闭环反馈控制,即可消除电池电压,电机传动摩擦力和前轮转向角等因素对车模运行的影响,使车模运行的更精准。车速测量模块由对射式光电传感器MOC70T4和自制码盘来组成。对射式光电管MOC70T4是由高发射功率的砷化镓(砷铝镓)红外发射管和高灵敏的光敏晶体管组成。它是利用被检测物体对光束的遮挡,由同步回路选通电路,从而检测物体的有无。 我们根据对射式光电管的工作原理

25、自制了一个码盘,如图3.8所示。其安装在后轮轴上,当码盘的叶片挡在光电对管之间时,接收开关没有被红外线照射而关断,输出低电压;当码盘叶片间的凹槽位于光电对管之间时,接收开关被红外线照射而导通,输出高电压。在一段时间内记录光电管输出的脉冲数即可得知这段时间内通过光电对管间的叶片数,经过换算就可得到车的实际速度,为速度控制环节提供较精确的数据。目前,使用的是32齿的码盘,精度更高。硬件电路图如3.9。图3.8 自制16齿码盘图3.9 光电对管电路图3.5电机驱动模块车模后轮驱动电机型号为RS-380,工作电压为7.2V,空载电流为0.5A,转速为16200r/min。在工作电流为3.3A,转速达到

26、14060r/min时,工作效率最大。通第三届全国大学生智能汽车邀请赛技术报告14过电机驱动模块,控制驱动电机两端电压可以使车模加速运行,也对车模进行制动1。在比赛中并不需要车模倒车,但需要电机提供反向力矩以实现制动,可以选择H桥电路来驱动电机。采用MC33886驱动芯片对车模的电机进行驱动。因为车模的加减速要求很高,所以使用一片MC33886进行驱动电机,芯片很容易发热,故我们采用两片MC33886并联的方式进行驱动,并且外加散热片,若控制方法合理,可以降低驱动芯片的发热程度。图3.10为电机驱动模块的电路图。图3.10 MC33886外围电路图15第四章 软件设计4.1软件设计总思想在车的

27、硬件结构完成后,软件设计就成为了挖掘车潜力的主要工具。如果说硬件是车的身体,那么软件就是它的灵魂。好的软件能够充分发挥车的能力并在一定程度上能够克服车硬件上的不足。智能车的软件主要用于信息采集和处理、转向和速度的控制以及相关的控制方法。4.2视频信号的采集车模使用摄像头采集赛道信息,输出量为模拟量的灰度,信号电压的高低对应着图像的灰度,图像越暗输出的电压值越低,反之越高。通过MC9S12DG128的ATD00引脚将视频信号传至微控制器内部的A/D转换模块,将模拟的视频信号转换成8位的数字信号,每转换一次即得到一个像素点。若将像素点组成图像供给微控制器处理,还需知道这些像素点行和列的位置。使用视

28、频分离芯片LM1881,我们可以得到视频信号中的奇、偶场信号和行同步信号。利用这些信号就可以确定当前像素点在图像上的位置,从而可以按序将其存储,组成点阵图像。将视频分离芯片LM1881分离出的行同步信号和奇、偶场信号分别接至微控制器具有中断功的J0口和J1口,通过设置相关控制寄存器,使接行同步信号的J0口使能,接奇、偶场信号的J1口设置为普通输入口。由第三章可知,行同步信号为负脉冲,在每次换行时出现;奇、偶场信号为频率为25Hz的方波,高、低电平分别对应着奇场、偶场,电平发生变化时表示一场信号的结束和另一场信号的开始。在每次行同步信号中断时用查询方式检测场信号是否发生变化,如果场信号的状态与记

29、录其上一次状态的变量field不同说明场信号发生了变化,此时微控制器内部行计数变量line清零。每有一次行同步信号产生中断,line自增并检测场信号是否变化,当line大于场消隐区中行信号的数量(我们设定line大于42) ,每隔七行采集一行图像信息,一共采集39行图像,每行采集68点。采集到的像素点按照其所在行和列的位置存放于一个二位数组内,该点在二位数组中的位置即为其在图像中的位置。这样我们可以得到一幅分辨率为6839的图像。为了提高赛道信息检测频率并充分利用采集图像中未被利用的时间,第三届全国大学生智能汽车邀请赛技术报告16在采集完一幅图像后利用采集下一幅图像的时间去处理采集完的图像信息

30、,但这样必须占用两块图像存储空间,对内存的消耗比较严重,不过由于MC9S12DG128有8K的RAM。上述方法的程序流程图如图4.1及4.2所示。图4.1 图像信息采集程序流程图图4.2 采集图像信号函数getdot()流程图4.3速度信息提取车模通过对射式光电对管和自制码盘得到速度信息。我们自制的码盘安装在车的后轴上,码盘上有32个等分的齿,车轮每转一圈对射式光电管产生32个脉冲,将光电管输出端直接接至微控制器具有脉冲累加功能的引脚PT3,通过设置相应控制寄存器使得其工作在计数状态,脉冲上升沿和下降沿都计数。通过在等长时间间隔读取计数器的数值(读取后清零) ,经过简单的计算就可以得到当前车速

31、。为了使所得到的车速满足精度,读取的时间间隔必须足够长,第四章 软件设计17即采集频率较低,但过低的采集频率会使得系统不能及时得到速度信息,因此,读取时间间隔的选取必须同时考虑精度和延时两个方面。采用的是摄像头视频信号的场信号作为读取信号,这样不仅可以得到较精确的定时而且可以免去使用定时器中断,因为定时器中断可能会影响视频信号的采集。在每次奇场的开始进行读取脉冲数,即采集时间间隔为40ms,每次计数大约为2050,对于车模基本可以满足精度。由于每两场读取一次速度信息,也基本可以满足实时性的要求。4.4视频信号的处理采集到视频信号之后,需要从中得到我们需要的赛道信息。首先要从中提取出黑线的位置,

32、然后根据提取出的黑线在得到车相对于赛道的偏移量、赛道的形状等信息,进而控制电机和舵机的运动。4.4.1赛道黑线的提取视频信号经过A/D转换之后,得到八位的数字量像素点。由于摄像头输出的视频信号中有一定的噪声,并且A/D转换也会产生量化噪声,此外光线对采集到的图像也会产生较大的影响。由于赛道底色为白色,赛道中心为黑色胶布,颜色反差很大,因此提取黑线较为容易。最简单的黑线提取方法为二值化法,即选取一阈值,当像素点值大于等阈值时,将该点制改为1,即为白色;如果该点值小于阈值时,将该点值改为0,即为黑色。这种方法在外界环境光干扰较大或信号噪声较大时,较容易判断失误,因此需要对得到的数据进行去噪。因为要

33、对图像所有点进行分析,需要的处理时间较长。使用边沿检测法。首先在图像中找到黑线的起始点,因为最后一行离车最近,光线干扰较小,而且黑线在最后一行出现的概率较其它行大,黑线较宽较容易识别,所以要选择从图像的最后一行提取出黑线的起始点。如在第i行找到黑线的起始段后,用黑线左右两边界left和right得到黑线中点centeri=(left+right)/2,用第i行centeri点与i-1行该点相比较,如果相差不大,则root= centeri;如果相差较大,则比较i-1行该点左右三个点内的点,找到相差不大的点赋值给root,找不到则结束寻找。找到第i-1行root后,由root向两侧寻找黑线的中左

34、右边界left和right,并由它们得到certeri-1,以这种方法依次向上找到第三届全国大学生智能汽车邀请赛技术报告18各行的黑线的中点。下图即为黑线提取的过程,其中蓝色圆圈圈起的为黑线中点,蓝色箭头为向两侧寻找的过程,黑色箭头为向上寻找的箭头,红色圆圈圈起的为与黑线相邻的白色赛道。为增大寻找黑线的准确度,不能只比较相邻两点间的差值,而需要比较三点的差值,在找到边界点后,检测相邻白色区域灰度是否变化不大(这里取了三点,即图中红色圆圈圈起部分) ,确保能够消除噪声造成的影响。图4.3 视频数据处理过程这种方法并不需对图像中所有点都进行比较,只要准确的找到黑线的起始点,就可以在很小的一块区域内

35、寻找黑线,处理的数据量较小,由于不去考虑离黑线较远部分的数据,可有效的滤掉图像上不与黑线相邻的颜色较深的干扰。由于这种方法对黑线起始点准确性的要求很高,因此需要在算法上加强起始点的寻找,确保准确找到起始点。为了提高寻找到的起始点的准确度,在寻找起始点时,不能只考虑一行的数据而是要考虑几行的数据,只在黑色区域长度和宽度都满足一定要求后才开始向上寻找黑线。4.4.2十字交叉线的处理在比赛时,会有垂直交叉的赛道,这样给赛道的识别带来了较大的难度,如果识别不好赛车很可能会走错方向。使用由图像下部至上部寻找黑线的方法,在交叉线所在行时,黑线的宽度会较上一行突然增大很多,此时按照已经寻找第四章 软件设计1

36、9到的黑线的斜率来预测出本行上面第四行的黑线中点,如果该点或其周围几点为黑点则直接跳至该黑点继续寻找黑线;如果都不为黑点,则认为该处为曲线斜率增大所致,仍然找到黑线左右边界,求得黑先中心。如果车过交叉线时与赛道方向的夹角较小时准确率很高,随着车与赛道夹角的增大出错的概率也在增加,由于车在直道上一般不会产生较大偏差,因此通常情况下不会出错。下图为将采集到的图像数据经串口传至PC机后使用Visual C+显示的图像,左侧为赛道图像,右侧为从中提取的黑线中点,图像分辨率为4539。图4.4 赛道图像及从中提取的黑线中点4.4.3起始线的识别本次比赛要求赛车在跑完两圈之后,在通过起始线后三米范围内自动

37、停止。如果没有停止在规定的范围内,比赛成绩时间增加1秒,因此需要对起始线进行识别。起始线形状如图4.5所示。图4.5 赛道起始线示意图图4.6 起始线的识别过程第三届全国大学生智能汽车邀请赛技术报告20由图可以看出起始线与垂直交叉线类似,但它与赛道之间有两段缝隙,这是区别垂直交叉线与起始线的主要特征。识别起始线的方法是在找到整幅图像黑线的中点后一黑线中点为中心左右各偏移15点向下寻找黑点,在寻找到黑点后横向向黑线中心寻找,如果黑点与黑线中心点相连则认定其为交叉线,反之如果黑点与中心点间距离满足尺寸要求则认为其为起始线。图4.6中蓝色箭头为寻找过程。经过测试这种方法识别的准确性很高。4.5转向及

38、速度控制算法4.5.1转向控制智能车系统中,转向控制的好坏直接影响到车高速行驶时的稳定性。由于直接控制转向的舵机本身具有较大的惯性和迟延,因此需要在算法上加以补偿。采用PID与前馈反馈相结合控制方法来对舵机的转向进行控制。图4.7为控制系统结构图。图中赛道曲率e为系统的主要干扰,通过前馈补偿器的计算得出前馈控制量U2再与反馈控制器计算得出的控制量U1相加,得到最终的控制量U作用于舵机,使车转向。图 4.7 转向前馈反馈控制系统结构图具体实现方法如下:首先,根据检测出的黑线中点的起始点与结束点作直线,得到直线中点与车身中线的水平偏差为el。以直线取代原始曲线,能够使车在经过较小S弯时以较优的路径

39、通过。选取直线中点计算偏差能使车具有一定的提前动作能力,部分抵消舵机的延时。第四章 软件设计21其次,以识别到的黑线前一部分与中线之间的夹角为角度偏差e,用以控制速度和舵机。图4.8 转向控制方法示意图4.5.2速度设定为了使车模在容易通过的直道能够以较高行驶,而在弯道尤其是最小弯能够安全通过,需要根据赛道的不同状态控制车的速度,使车能够以尽量短的时间完成比赛。我们根据根据最小二乘法的误差平方和ei2、分段线性化的分段数n和赛道前端与车身的角度偏差e三个变量控制车的速度。1)ei2:我们使用最小二乘法分析赛道的线性度。最小二乘法拟合出的直线和实际曲线间的参差平方和ei2最小,在赛道为直道使得到

40、的ei2较小,一般小于10;当赛道为弯道时,ei2较大,通常会大于20。2)n:我们还将得到赛道信息进行分段线性化,如果赛道曲率较小,赛道的分段数n很小,直道一般被分成一至三段,而弯道分段较多,n可达十几。3)e:根据识别出的赛道的前端与车身的角度偏差e,如图5.7所示。根据这三个变量就可以很好的控制车在赛道上的速度。4.5.3速度调节使用遇限削弱积分PID控制算法。遇限削弱积分PID控制算法的基本思想是:当控制进入饱和区以后,便不再进行积分项的累加,只执行削弱积分的运算。这种算法可以避免控制量长时间停留在饱和区10。另外考虑到系统惯性较大,为了提高系统的减速性能,我们使用了分段比例系数方法。

41、在满足系统稳定的前提下,在实际速度高于设定速度较多时使用第三届全国大学生智能汽车邀请赛技术报告22较大的比例系数实现快速减速,而在加速和速度差不大时使用较低的比例系数,减小系统的震荡,降低驱动芯片的发热量。23第五章 开发工具及制作调试过程5.1开发工具介绍5.1.1硬件开发工具设计电路时使用Protel DXP 2004进行设计。Protel DXP 2004是一种EDA(Electronic Design Automation,电子设计自动化)设计软件,主要用于电路的设计、仿真及印刷电路板(PCB)的制作。它还提供超高速集成电路硬件描述语言的设计工具(VHDL) 。(1).Protel D

42、XP 2004的组成Protel DXP 2004是Windows XP/NT操作平台下全32位电子设计系统,它由四个部分组成:原理图设计(SCH):主要用于原理图设计,生成*.schdoc文件,为PCB的设计做好前期准备。它也可以用来单独设计电路原理图或制作生产线上使用的电路装配图,如图5.1所示:图5.1原理图设计版面印刷电路板设计(PCB):主要用于PCB图的设计,生成(*.PCBdoc)文件将直接用于PCB的生产中,如图5.2所示:第三届全国大学生智能汽车邀请赛技术报告24图5.2PCB设计版面FPGA设计系统:用于现场可编程门阵列逻辑器件(Field Programmable Gat

43、e Array)的设计。在设计完成后,可以生成相应的熔丝文件,可烧录到FPGA器件中。VHDL设计系统:用于使用VHDL语言的设计,既可以用VHDL语言直接编写文件,也可以通过绘制原理图直接编译成VHDL文件。在此次设计中,只运用了前面两个设计,设计电路时简单方便,容易上手。(2).Protel DXP 2004的特点Protel DXP 2004的特点很多下面作简单的介绍:集成式的元件与元件库:在软件中,采用了集成式的元件。一个元件包含了元件符号(Symbol) 、元件封装(Footprint) 、SPICE元件模型(电路仿真说明时用) 、SI元件模型(电路板信号分析时用)等。版本控制:设计

44、者可以从Protel的设计管理器中直接管理第三方的版本控制,以使Protel DXP 2004更适合各个公司的工作流程和文件管理。复合式设计:Protel DXP 2004提供复合式设计,类似于重复阶层是电路设计。只要设计了其中的一部分电路图,既可多次使用该电路图,就享有了多个第五章 开发工具及制作调试过程25电路图一样。这个功能支持印刷电路板的设计。同步设计功能:强化了电路原理图和PCB电路板之间的双向同步设计功能。多屏幕显示模式;对于同一个工程设你这开启多个窗户,在不同的屏幕上显示。多重组件的设计:Protel DXP 2004支持单一设计多重组件。杜于同一个设计工程,可制定要使用其中的某

45、些元件,或不使用其中的某些元件,然后产生元件表或插置文件。5.1.2软件开发工具“CodeWarrior for S12”是面向HC12或S12为CPU的微控制器嵌入式应用开发的软件包。包括集成开发环境IDE、处理器专家库、全芯片仿真、可视化参数显示工具、项目工程管理器、C交叉编译器、汇编器、链接器以及调试器。使用CodeWarrior开发工具可以使用C语言编写程序,经过它的编译和汇编生成微控制器可执行的文件,然后通过BDM将文件写入DG128的FlashROM中。使用CodeWarrior和BDM可以进行在线的各种调试,使用非常方便。以下两幅图像分别为CodeWarrior文件编辑界面和调试

46、界面。第三届全国大学生智能汽车邀请赛技术报告26图5.3 CodeWarrior文件编辑界面图5.4 CodeWarrior程序写入和在线调试界面第五章 开发工具及制作调试过程275.2制作调试过程5.2.1车模的制作从2008年3月开始,收集各种资料、购买各种器件、设计各部分电路并进行测试,学习CodeWarrior的使用,到将各部分组合在一起组装成车,再到研究如何提高车速,从提出方案进行讨论,到实地测试验证,我们一步一步走了过来。这个过程中,我们不但将所学的知识应用在了实际系统中,更是学到了更多的知识。比如在做测速传感器的时候,我们有三种方案反射式光电对管和反光码盘、对射式光电对管和齿状码

47、盘、霍尔元件和磁钢。考虑到安装和精度,我们首先排除了霍尔测速。然后又测试了反射式测速方案,发现反射式的输出信号极易受码盘安装位置和角度的影响,性能不稳定。最后,我们测试了透射式方案,发现它对硬件要求很低,只要码盘遮光性较好即可,输出信号可不经整形直接供单片机处理,结果令我们满意。5.2.2车模调试由于时间和精力所限,我们并没有设计和使用无线通讯模块,无法在车运动过程中调试,只能使用BDM和CodeWarrior进行车的静态调试,并且这种静态调试在大部分情况下已经能够满足要求了。CodeWarrior提供的调试平台功能很强,可以随时查看RAM中的数据,单步执行程序,改变程序执行位置,设置断点等。

48、在CodeWarrior的帮助下,可以很容易的找到程序中出错的地方,使编写程序更加轻松。28第六章 总结6.1智能车主要参数表6.1 车模技术参数统计项目参数路径检测方法(赛题组)摄像头车模几何尺寸(长、宽、高) (毫米)305/175/510车模轴距/轮距(毫米)198/124车模平均电流(匀速行驶)(毫安)700电路电容总量(微法)1800传感器种类及个数CMOS 摄像头1对射式光电管1新增加伺服电机个数0赛道信息检测空间精度(毫米)4赛道信息检测频率(次/秒)50主要集成电路种类/数量MC9S12DG128B LM2940 34063 MC338862车模重量(带有电池) (千克)1.9

49、6.2体会自报名参加“飞思卡尔”杯智能车邀请竞赛以来,我们小组成员查找资料,设计结构,组装车模,编写程序,分析问题,最后终于完成了最初目标,定下了这个方案。在设计和制作车模的过程中,我们翻阅了大量的书籍和资料,并仔细阅读了第一届的部分技术报告。我们将书本中的知识运用到实际中,同时对这些知识的了解也更加深刻。这次比赛,使我们的动手能力、运用知识的能力、分析解决问题的能力、团队协作能力都有了很大提高。6.3系统不足和需要改进的地方虽然我们努力将车模做得更好,但由于时间和其它原因我们还一些不足之处:1)为了能够得到较远的视觉范围,车的摄像头安装得很高,容易受到外界的干扰;2)由于没有使用无线通信模块

50、,给我们的调试带来了一些不便,这也是留给我们改进的地方;3)控制算法并不完善;第六章 总结294)没有建立完善的排错方法,车出现问题后,很难在最短时间内找到出错环节。5)车身结构并不稳定,需要经常进行加固和调整。6.4结束语这几个月的备战中,在场地、经费方面都的到了学校和学院的大力支持,在此特别感谢一直支持和关注智能车比赛的学校和学院领导以及各位老师。同时也感谢比赛组委会能组织这样一项很有意义的比赛。现在,面对即将到来的大赛,在历时大半年充分准备以及华北赛区预赛的考验之后,我们有信心在全国比赛中取得优异成绩。也许我们的知识还不够丰富,考虑问题也不够全面,但是这个车模作为我们辛勤汗水来的结晶,凝

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 教育专区 > 胎儿教育

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:文库网官方知乎号:文库网

经营许可证编号: 粤ICP备2021046453号世界地图

文库网官网©版权所有2025营业执照举报