飞思卡尔智能车竞赛摄像头组技术报告.docx
- 文档编号:17332693
- 上传时间:2023-07-24
- 格式:DOCX
- 页数:46
- 大小:2.37MB
飞思卡尔智能车竞赛摄像头组技术报告.docx
《飞思卡尔智能车竞赛摄像头组技术报告.docx》由会员分享,可在线阅读,更多相关《飞思卡尔智能车竞赛摄像头组技术报告.docx(46页珍藏版)》请在冰点文库上搜索。
飞思卡尔智能车竞赛摄像头组技术报告
"飞思卡尔"杯全国大学生
智能汽车竞赛
技术报告
关于技术报告和研究论文使用授权的说明
本人完全了解第八届"飞思卡尔"杯全国大学生智能汽车竞赛关保留、使用技术报告和研究论文的规定,即:
参赛作品著作权归参赛者本人,比赛组委会和飞思卡尔半导体公司可以在相关主页上收录并公开参赛作品的设计方案、技术报告以及参赛模型车的视频、图像资料,并将相关内容编纂收录在组委会出版论文集中。
参赛队员签名:
孟泽民
章志诚
徐晋鸿
带队教师签名:
陈朋
朱威
日期:
2013.8.15
摘要
本文设计的智能车系统以MK60N512ZVLQ10微控制器为核心控制单元,通过Ov7620数字摄像头检测赛道信息,使用K60的DMA模块采集图像,采用动态阈值算法对图像进行二值化,提取黑色引导线,用于赛道识别;通过编码器检测模型车的实时速度,使用PID控制算法调节驱动电机的转速和转向舵机的角度,实现了对模型车运动速度和运动方向的闭环控制。
为了提高模型车的速度并让其更稳定,我们使用自主编写的Labview上位机、SD卡模块、无线模块等调试工具,进行了大量硬件与软件测试。
实验结果表明,该系统设计方案可行。
关键词:
MK60N512VMD100,Ov7620,DMA,PID,Labview,SD卡
Abstract
InthispaperwewilldesignasmartcarsystembasedonMK60N512ZVLQ10asthemicro-controllerunit.WeuseaOv7620digitalimagecameratoobtainlaneimageinformation.TheMCUgetstheimagebyitsDMAmodule.Thenconverttheoriginalimageintothebinaryimagebyusingdynamicthresholdalgorithminordertoextractblackguidelinefortrackidentification.Aninferredsensorisusedtomeasurethecar`smovingspeed.WeusePIDcontrolmethodtoadjusttherotatespeedofdrivingelectromotoranddirectionofsteeringelectromotor,toachievetheclosed-loopcontrolforthespeedanddirection.Toincreasethespeedofthecarandmakeitmorereliable,agreatnumberofthehardwareandsoftwaretestsarecarriedonandtheadvantagesanddisadvantagesofthedifferentschemesarecomparedbyusingtheLabviewsimulationplatformdesignedbyourselves,theSDcardmoduleandthewirelessmodule.Theresultsindicatethatourdesignschemeofthesmartcarsystemisfeasible.
Keywords:
MK60N512VMD100,DMA,Ov7620,PID,Labview,SDcard
引言
“飞思卡尔”杯智能汽车竞赛是受教育部高等教育司委托,高等学校自动化专业教学指导委员会负责主办全国大学生智能车竞赛。
该项比赛已列入教育部主办的全国五大竞赛之一。
其最早始于韩国,在国内,全国大学生"飞思卡尔"杯智能汽车竞赛从2006年开始举办,至今得到了各级领导及各高校师生的高度评价。
并且有越来越多的队伍加入其中。
大赛包括光电组、摄像头组和电磁组,为保持创新性,在本届比赛中各组别的规则有所改变,其中摄像头组继第七届的寻双线外,改用B型车模,前轮驱动,难度大大提升。
本技术报告主要包括小车的机械设计、硬件系统设计、软件算法设计等,详尽地阐述了我们的设计方案,具体表现在机械结构的多种尝试,硬件电路的创新设计以及人工智能控制算法的应用。
在一年的备赛过程中,我们参看了大量控制方面的书籍,如:
《先进PID控制及其MATLAB仿真》、《新型PID控制及其应用》等,智能车制作放面的书籍,如:
《学做智能车:
挑战“飞思卡尔”杯》、《“飞思卡尔”杯智能汽车竞赛设计与实践-基于S12XS和KinetisK10》等,及大量K60芯片方面的资料与书籍。
不仅如此,在这一年漫长的做车过程培养了我们电路设计、软件编程、系统调试等方面的能力,锻炼了我们心理素质、实践动手的能力、团队合作能力,对今后的学习工作都有着重大的实际意义。
第一章系统总体设计
1.1系统概述
全国大学生智能汽车竞赛中,小车的基本结构大致可分为电源模块、传感器模块和控制模块。
本智能车系统的总体结构为:
Ov7620数字摄像头拍摄赛道图像,输出PCLK、FOOD、HREF信号和8路数字图像信号,输入到MK60N512ZVLQ10微控制器,由K60的DMA模块进行图像采集,通过动态阈值算法对图像二值化,进行进一步处理获得主要的赛道信息,为舵机和电机的控制提供决策;转向舵机采用PD控制;驱动电机采用PID控制,通过PWM控制经优化的MOS管驱动电路来调整电机的功率;通过编码器来检测车速,并采用MK60N512ZVLQ10的输入捕捉功能进行脉冲计算获得转速,并对应到相应的速度,与速度PID形成闭环;而车速的目标值由优化后的决策层给出,具体的控制策略将在下文中详细介绍。
根据竞赛的规则和智能车系统的基本要求,我们设计了系统结构图,如图1-1所示。
在满足比赛要求和小车正常运行的情况下,力求系统简单高效,因而在设计过程中尽量简化硬件结构,减少因硬件而出现的问题。
图1-1系统结构图
1.2整车布局
车体整体布局的基本要求可简单归纳为一下几点:
(1)车模底盘降低,简化主板使其贴近底盘,以降低重心;
(2)改变电池位置,避免重心集中在车体前端;
(3)电机与车身连接尽量保持原状,不采用硬固定,保持车体灵活;
(4)注意编码器和舵机摆放位置,要方便控制又保持重心低;
(5)用轻便坚固的碳卷管作为摄像头杆的材料;
(4)注意摄像头固定位置,保证该区域振动小,重心分布要和盲区与前瞻匹配。
经过充分考虑与实际方案比较,我们车的整体布局如图1-2所示
图1-2整车布局图
第二章机械系统设计及实现
根据组委会的相关规定,今年摄像头组比赛车模更换为B型车模,而且将驱动轮作为前轮。
针对这一新的改动,对B型车本身就陌生的我们在机械上花了很长时间。
在组建整个小车系统之前,我们就对该车模进行了详细的系统分析。
B型车模相对于去年的A型车而言:
轮子大、底盘高、电机响应迟钝,虽然在去年的基础上加了防滑胶套,但整个模型的摩擦力不及A型车模,因此在规则允许范围内尽量改造车模,提高车模整体性能是很必要的。
本章将主要介绍我们对B型车模的机械结构认识及调整方案。
2.1车体机械建模
此次竞赛的赛车车模选用由北京科宇通博科技有限公式提供的B型车模。
车模示意图如图2-1所示。
图2-1B型车模示意图
车模具体参数:
长28.75cm,宽16.6cm,高7.0cm,轴距20cm,前轮距(主动轮)14cm,后轮距13.8cm,轮胎直径6.4cm,前轮宽2.7cm,后轮宽3.7cm,底盘采用2.5mm厚的黑色玻纤板,具有较强的弹性和刚性。
前轮调整方式简单,全车滚珠轴承,主减传动比36/105。
前后轮轴高度可调(离地间隙0.75cm/1.65cm),双滚珠差速。
电机采用DC7.2VRS540马达,转速20000r/min,内装散热风扇。
舵机采用S-D5数码伺服器,工作电压4.5-5.5V,带堵转保护电路,力矩5.0kg,动作速度≤0.14±0.02sec/60。
2.2车模转向轮的定位与调整
本届比赛要求B型车模通过四条轮胎与地面接触,主动轮作为前轮,转向轮作为后轮。
两个前轮同轴受到限位,无法调整,与模型车的前进方向保持平行,因此要改变模型车与地面的接触方式,调试出利于模型车转向、直线的四轮定位,只能通过调整转向轮来实现。
为满足参赛队员对各种机械结构的尝试,组委会同意可以将转向轮的左右轮进行位置调换。
因此在对转向轮的定位与调整过程中,不仅需要理论支持,同时需要大量的测试来验证方案的可行性。
理论上,B型模型车可以调整的转向轮参数有主销后倾角、主销内倾角、车轮外倾角、车轮束角四个。
主销后倾角:
能在汽车车轮偏转后产生一回正力矩,纠正车轮的偏转。
[1]主销后倾示意图如图2-2(a)所示。
经分析,通常后倾角值应设定在1。
~3。
。
B型车无法直接调节,只能通过增加垫片实现。
图2-2(a)主销后倾示意图图2-2(b)主销内倾示意图
图2-2(c)车轮外倾示意图图2-2(d)车轮束角
主销内倾角:
有使车轮自动回正的作用,有利于出弯回正,其示意图如图2-2(b)所示,内倾角不宜过大,过大会增加轮胎与赛道的摩擦阻力,降低车速,降低防滑胶套寿命。
车轮外倾角:
能减小因机械造成的滑动摩擦,减小转向阻力,减小转向轮机械结构负载,保持转珠灵活。
车轮外倾示意图如图2-2(c)所示。
车轮束角:
分为前束和后束。
前束能使车轮向内侧滑移,增大车轮摩擦力;当转向轮在后面后,前束的实质其实是之前的后束,因为这样可以实现过弯时,外轮打角会比内轮小,四个轮子的转弯半径将在一个圆心上,使转弯的状态达到最佳。
车轮束角示意图如图2-2(d)。
关于后轮转向束角的示意图如图2-3所示。
当然最佳束角大小应以实际测试为准。
图2-3后轮转向束角示意图
根据上述理论和实际的测试,我们将车模的转向轮最终调整为如下图2-4所示。
图2-4最终的转向轮机械
2.3底盘高度及其调整
在保证顺利通过坡道的前提下,底盘离地间隙应尽可能小,从整体上降低模型车的重心,以提高行驶稳定性并减小侧滑。
因为本次B型车是前轮驱动,B型车的电机可达到的转速比较高,所以在车模高速跑出赛道时,连接车身和电机的轴很容易被撞断,经组委会讨论,同意在底盘固定PCB板材质的板材固定车身和电机,这样整个车身变成了硬固定。
经实际测试,这样会降低车的灵动性,所以再能对车模加保护的基础上,车底盘应尽量保持原先的固定方式。
2.4编码器的安装
为了获得更为精确的电机转速返回值,我们在车模上安装的是欧姆龙500线编码器。
精确度上去的代价是编码器的质量和体积都较大,给安装带来了一定不便。
最终综合考虑了读数精准和重心分布两大因素,用自制固定板和专业的齿轮进行了安装配合,尽量使得传动齿轮轴保持平行,传动部分轻松、流畅,不存在过大噪音和丢数情况。
如图2-5所示。
图2-5编码器安装
2.5舵机安装位置及结构调整
原装车模的舵机安装在车身中间,连接着车模的避震,但考虑到需要通过改变电池的位置来获得比较满意的中心分布,同时为了主板的安装以及车模转向性能,我们对舵机安装结构进行了较大的调整。
比赛车模的转向是通过舵机带动左右横拉杆实现。
舵机的转动速度和功率是一定,要想加快转向机构的响应速度,唯一的办法就是优化舵机的安装位置及其力矩延长杆的长度。
由于功率是速度与力矩乘积的函数,过分追求速度,必然要损失力矩,力矩太小也会造成转向迟钝,因此设计时就要综合考虑转向机构响应速度与舵机力矩之间的关系,通过优化得到一个最佳的转向效果。
最终,我们参考了一套舵机的安装方式,保持舵机直立的方案,并改变其位置与车尾,综合考虑了速度与力矩的关系,再根据模型车底盘的具体结构,简化了安装方式,经多次测试,这样的安装方式能实现预期目标。
具体安装方式如图2-6所示。
图2-6舵机安装
2.6舵机转角分析
车模的转向运动主要是靠舵机带动转向轮来实现的,因此,关于舵机和转向轮转向关系的分析就显得尤为重要。
B车模采用S-D5数字舵机,经分析,其响应频率可以使用10ms以上的控制周期,在摄像头因采图而需较长的控制周期来讲是可以胜任的。
但是舵机的打角和转向轮的打角并不是简单得线性关系。
舵机转角变化范围即使较小,转弯半径的变化也会很大,因而对多级的控制显得尤为很重要。
转向轮打角越小时,随着打角变化,转弯半径变化越明显,即小转角对半径的变化会更加明显,对直道和大半径的弯道有较大的影响,因而从前桥到舵机连片的机械固定需牢靠,尽量减少虚位。
实际上舵机转角与转向轮转角呈的关系是与舵机臂的长度有关。
在某一特定高度下是可以实现线性变化的,当然这对机械的要求非常高,在多次尝试后,我们决定在让两者关系尽量线性的基础上,加一定的二次曲线补偿,这样我们就可以在在思路上为通过舵机转角改变从而获得所要前轮转角提供便利。
当然改变之前转向轮的四个参数,也能获得较为满意的舵机打角和转向轮的转弯半径关系,四个参数的调整在前文中已经提到,这里不再赘述。
2.7摄像头的安装
为了降低整车重心,我们摒弃了以往通过铝合金夹持组件来固定摄像头,采用我们自行设计的PCB材质的摄像头固定板。
采用轻质且刚度大的8mm碳卷管作为安装摄像头的主桅。
底部采用定制的铝合金固定件固定碳卷管。
这样可以保证摄像头固定的牢固和平稳性,获得最大的刚度质量比,整套装置具有很高的定位精度和刚度,摄像头不易松动,避免了因摄像头松动而反复校准的过程,为顺利完成比赛提供保障力。
摄像头的安装如图2-7所示。
图2-7摄像头安装
第三章硬件系统设计及实现
3.1硬件设计方案
从最初进行硬件电路设计时我们就既定了系统的设计目标:
可靠、高效、简洁,在整个系统设计过程中严格按照规范进行。
可靠性是系统设计的第一要求,我们对电路设计的所有环节都进行了电磁兼容性设计,做好各部分的接地、屏蔽、滤波等工作,将高速数字电路与模拟电路分开,使本系统工作的可靠性达到了设计要求。
简洁是指在满足了可靠、高效的要求后,为了尽量减轻整车重量,降低模型车的重心位置,应使电路设计尽量简洁,尽量减少元器件使用数量,缩小电路板面积,使电路部分重量轻,易于安装。
我们在对电路进行了详细分析后,对电路进行了简化,合理设计元件排列、电路走线,使本系统硬件电路部分轻量化指标都达到了设计要求。
3.2电路设计方案
智能车控制系统电路由两部分组成:
以MK60N512ZVLQ10为核心的包括电源和驱动再内的主板和外围模块。
考虑到MK60N512ZVLQ10的最小系统板比较大,会占据较大的主板空间,在电池及其他结构调整时主板的空间有限,所以在设计主板时,直接将MCU设计在主板上,直接形成信号采集、信号处理、电机控制、舵机控制单元。
同时为了整量车子的简洁,我们将电机驱动电路也设计到了主板上,为了减小电机驱动电路带来的电磁干扰,我们把控制单元部分和电机驱动部分分开来,排布在主板的两端。
驱动部分做了隔离,同时为避免元器件过于密集而引起的信号与地串扰的问题,我们在设计PCB时,将板子设计为四层板,这样主板整体的信号比原先的二层板好很多。
主板上集成了本系统的主要电路,它包括如下部件:
MCU系统,电源稳压电路、摄像头接口、舵机接口、电机驱动模块、编码器接口、拨码开关、指示灯、SD卡模块接口等。
3.2.1单片机最小系统板
MK60N512ZVLQ10是K60系列MCU。
Kinetis系列微控制器是Cortex-M4系列的内核芯片。
K60内存空间可扩展,从32KB闪存/8KBRAM到1MB闪存/128KBRAM,可选的16KB缓存用于优化总线带宽和闪存执行性能。
图3-1最小系统原理图
最小系统使用K60144PIN封装,为减少电路板空间,板上仅将本系统所用到的引脚引出,包括PWM接口,外部中断接口,若干普通IO接口。
其他部分还包括电源滤波电路、时钟电路、复位电路、串行通讯接口、J-Link接口、AD接口和SDHC接口。
用到的接口如下:
电机PWM波输出:
PTA10、PTA11
舵机PWM波输出:
PTA8
编码器两相信号输入:
PTA9、PTA19
PCLK信号输入:
PTC19
FOOD信号输入:
PTA28
HREF信号输入:
PTA29
8路数字信号输入:
PTD0~PTD7
拨码开关输入信号;PTB0~PTB7
3.2.2电源稳压电路及检测电路
本系统中电源稳压电路分别需要有+5V,+3.3V,+5.5V,+12V供电。
+3.3V给单片机、SD卡模块、拨码开关、液晶等供电;+5V为摄像头、编码器模块、无线模块供电;+5.5V为S-D5数字舵机供电;+12V和+5V共同给电机驱动电路中IR2104供电;而电机则直接由电池供电。
由于整个系统中+5V电路功耗较小,为了降低电源纹波,我们考虑使用线性稳压电路。
另外,前轮驱动电机工作时,电池电压压降较大,为提高系统工作稳定性,必须使用低压降电源稳压芯片,选用了LM2940。
LM2940是微功耗低压差线性电源芯片,具有完善的保护电路,包括过流,过压,电压反接保护。
使用这个芯片只需要极少的外围元件就能构成高效稳压电路。
另外为保证在电机启动的瞬间,电池的巨大压降影响摄像头的正常工作,为摄像头供电的5V稳压先经过了为IR2104供电的12V升压。
为配合摄像头5V的正常供电,12V升压需要有较大的容量,我们考虑使用开关稳压电路。
在MC34063、LM2577和LM2587几个方案比较中,我们选择了输出电流最大,开关频率最高的LM2587。
实验证明LM2587能胜任整个系统的需要。
图3-2LM29405V稳压原理图
图3-3LM258712V稳压原理图
TLV1117-3.3是超低噪,高电源电压抑制比,高速射频,线性调节的低压稳压芯片。
是TI公司自行设计的一款类似LM1117-3.3的LDO稳压芯片。
其稳压性能优越,因此我们选用TLV1117-3.3给单片机供电。
为排除压差使得供电不正常,我们采用电池电压直接为其供电。
图3-4TLV1117-3.3稳压原理图
3.2.3图像处理电路
我们的智能模型车自动控制系统中使用Ov7620数字摄像头采集赛道信息。
摄像头视频信号中除了包含图像信号之外,还包括了PCLK信号、行同步信号、行消隐信号、场同步信号、场消隐信号以及槽脉冲信号、前均衡脉冲、后均衡脉冲等。
PCLK信号作为DMA的触发信号,但因为其频率过高,会导致采图过快,使得图像数组不得不非常大。
实际应用中,太大的图像数组不但会导致信息的浪费,还会延长整个图像的处理时间,得不偿失。
因此,若要合理利用摄像头采集的信息,我们需要对PCLK信号进行分频。
这里我们采用74AC161超高频计数器,对PCLK信号进行分频。
74AC161供电范围可以从-0.5V~6V,可以采用本系统中的电源供电;在正常供电情况下,最高输入时钟可以到达103M,对于对PCLK信号分频完全够用。
当然为与MCU系统阻抗匹配,分频信号输入最好加33欧姆电阻进行阻抗匹配。
PCLK分频电路如图3-5所示。
图3-5PCLK分频电路
由于数字摄像头直接输出8路数字信号,在信号传输和处理上相对于模拟摄像头有优势也存在劣势。
数字摄像头不需要进行场行分离,无需使用外部AD对模拟信号数字化;但是直接从数字摄像头输出的信号,在传输的过程中会有串扰。
为保证最佳的接收效果,我们在选用引脚和设计主板时,采用统一模块的引脚,布线时尽量保证等长,摄像头和主板的连接线尽量短,等长。
同时数字摄像头很少采用硬件二值化,所以在处理上我们只能采用动态阈值进行二值化。
3.2.4电机驱动电路
电机驱动板为一个由分立元件制作的直流电动机可逆双极型桥式驱动器,其功率元件由四支N沟道功率MOSFET管组成,额定工作电流可以轻易达到100A以上,大大提高了电动机的工作转矩和转速。
该驱动器主要由以下部分组成:
PWM号输入接口、IR2104控制电路、电源电路、功率MOSFET管栅极驱动电路、桥式功率驱动电路等。
其中IR2104自带死区控制,电源电路采用上述的5V稳压、12V升压和电源电压,MOSFET管的选型也比较重要。
图3-6电机驱动模块原理图
3.2.5舵机接口电路
舵机接口电路包括,供电电路和PWM号输入接口。
其中为达到S-D5数字舵机的最佳性能,我们采用S-D5的上限电压5.5V为其供电,5.5V电压采用TLV1117-ADJ稳压,其性能与TLV1117-3.3相似,这里不再赘述。
图3-7舵机接口与供电原理图
3.2.6拨码开关电路
主板上还包括拨码开关电路,和一些外设的接口,如图3-8所示。
图3-8拨码开关、外设接口原理图
第四章软件系统设计及实现
高效的软件程序是智能车高速平稳自动寻线的基础。
我们设计的智能车系统采用CMOS摄像头进行DMA图像采集,动态二值化,边线提取,赛道识别。
在智能车的转向和速度控制方面,我们使用了鲁棒性很好的经典PID控制算法,配合使用理论计算和实际参数补偿的办法,使智能车能够稳定快速寻线。
4.1赛道双边线提取及优化处理
4.1.1原始图像的特点
在单片机采集图像信号后需要对其进行处理以提取主要的赛道信息,同时,由于十字、起点线的存在,光线、赛道远处图像不清楚的干扰,图像效果会大打折扣。
因此,在软件上必须排除干扰因素,对赛道进行有效识别,并提供尽可能多的赛道信息供决策使用。
在图像信号处理中我们提取的赛道信息主要包括:
赛道两侧边沿点位置,赛道边沿点附近的原始像素值,赛道类型。
由于摄像头自身的特性,图像会产生梯形式变形,以及筒形失真尤其在ov7620的上下左右各个角落处桶形失真和梯形失真叠加,导致图像畸变严重,因此在数据采集时我们只采集半幅图像,也就是中心上下处的图像,这样几乎不存在筒形失真。
在赛道边线提取上我们将赛道分为两大类,一类是普通的弯道,直道,上下坡等,还有一类就是十字和虚线小S。
摄像头采集到几种典型赛道图像如图4-1~图4-3所示。
图4-1连续弯图像
图4-2弯道原始图像
图4-3十字交叉原始图像
4.1.2普通赛道提线
边沿提取算法的基本思想如下:
(1)逐行扫描最近处的原始图像,根据设定的阈值提取黑白跳变点;
(2)利用赛道的连续性,根据上一行黑点的位置来确定本行的边沿点;
(3)在弯道的时候赛道有回拐的情况,所以提取本行边沿之前还要向前搜索回拐的边沿点;
(4)求边沿点时,因为近处的图像稳定,远处图像不稳定,所以采用由近及远的办法;
(5)进出十字的时候,有可能错误的提线,因此要将直角以后的线滤除;
边沿提取算法的程序流程如图4-4所示。
图4-4算法流程图
处理后得到的黑线中心如图4-5和图4-6所示。
图4-5连续弯处理后图像
图4-6弯道处理后图像
4.1.3特殊赛道提线
特殊赛道提取算法的基本思想如下:
(1)特殊赛道只是小S或十字,因此在能延伸到较远处。
(2)特殊赛道一般弯曲程度较小,每行的宽度近似等于直道上标定出来的宽度。
(3)由于图像失真以及其他影响,导致单独提取小S边线时会很困难。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 卡尔 智能 竞赛 摄像头 技术 报告