第三章硬件电路系统设计与实现.docx
- 文档编号:9730696
- 上传时间:2023-02-06
- 格式:DOCX
- 页数:19
- 大小:457.89KB
第三章硬件电路系统设计与实现.docx
《第三章硬件电路系统设计与实现.docx》由会员分享,可在线阅读,更多相关《第三章硬件电路系统设计与实现.docx(19页珍藏版)》请在冰豆网上搜索。
第三章硬件电路系统设计与实现
第十三届“恩智浦”杯
全国大学生智能汽车竞赛
技术报告
学校:
浙江大学
队伍名称:
浙大光电一队
参赛队员:
王凯
马力
贺宇泽
带队老师:
姚维韩涛
关于技术报告和研究论文使用授权的说明
本人完全了解第十三届“恩智浦”杯全国大学生智能汽车竞赛有关保留、使用技术报告和研究论文的规定,即:
参赛作品著作权归参赛者本人,比赛组委会和恩智浦公司可以在相关主页上收录并公开参赛作品的设计方案、技术报告以及参赛模型车的视频、图像资料,并将相关内容编纂收录在组委会出版论文集中。
参赛队员签名:
王凯马力贺宇泽
带队教师签名:
姚维韩涛
日期:
2018.08.17
摘要
本文主要介绍了以MKV58F1M0VLQ24单片机为核心的智能车系统,包括机械、硬件和软件三个方面。
在稳定、简单、高效的原则下,针对三个方面设计了各种方案,做了大量调试工作,并最终修改得到现行方案。
实验结果表明,系统方案可行。
关键词:
智能车,机械调整,图像分析,PID
Abstract
Inthispaperwepresentasmartcarsystembasedonthemicro-controllerMKV58F1M0VLQ24,includingmachinery,hardwareandsoftwarethreeaspects.Intheprincipleofstability,simplicityandefficient,differentschemesaredesignedforthethreeaspects,lotsoftestsarecarriedonfortheseschemes,andfinallythecurrentsystemaredetermined.Theresultoftestsshowthatthedesignschemeofsystemisavailable.
Keywords:
Smartcar,Mechanicaladjustment,Imageanalysis,PID
引言
智能汽车竞赛最早始于韩国,在国内,全国大学生智能汽车竞赛从2006年举办以来,得到了各级领导及高校师生的高度评价。
大赛为智能车领域培养了大量后备人才,为大学生提供一个充分展示创造力的舞台,吸引着越来越多来自不同专业的大学生参与其中。
本技术报告主要包括机械系统、硬件系统、软件系统等,详尽地阐述了我们的设计方案。
这份报告凝聚了我们智慧,是我们小组共同努力的成果。
第一章系统设计概要
1.1系统工作原理
智能车系统的工作原理是:
摄像头拍摄赛道图像,将得到的数据输入KV58控制枢纽,通过一定的软件程序对图像进行分析,提取黑色引导线;通过编码器检测车速,通过KV58输入捕捉功能进行脉冲计数得到小车的实时速度。
由得到的引导线,选择参考行,通过分段P系数算法来控制舵机;通过赛道的曲率,计算得到目标速度,利用PID相结合的闭环控制算法调整电机来控制小车速度。
1.2系统设计结构图
本着稳定、简单、高效的设计原则,在将近一年的时间里,我们将小车不断改进,有以下几个特点:
机械方面:
竖直安装舵机,提高转向反应速度;采用单碳素杆支架,辅以两根细碳素杆固定,并降低摄像头位置,降低重心。
硬件方面:
保证稳定性前提下,尽量减小电路板面积;采用广角摄像头,保证各种S弯都能提取到完整的黑线。
软件方面:
采用动态阈值和跟踪算法提取黑线,保证黑线稳定性;采用简单的PID控制策略,提高赛车对赛道适应性。
赛车的整体结构框图如图1.1所示:
图1.1系统框图
第二章赛车机械系统设计与实现
经过这段长时间的调车经历,我们发现当速度达到一定值时,机械性能成为制约赛车速度提高的瓶颈。
特别是前轮的前束角和内倾角对转弯的稳定性起着决定性的作用,而后轮差速齿轮的松紧对弯道内部速度也起着关键性的作用。
在这一章我们主要介绍车模的机械结构和特点,并对舵机安装、前轮参数和后轮参数的调整和优化作简单叙述。
2.1前轮参数的调整
前轮的参数主要包括前轮主销后倾角,主销内倾角,前束角等等。
这几个参数对赛车直线的稳定性和弯道灵巧性都有很重要的影响。
2.1.1主销后倾角调整
图2.1主销后倾角
主销后倾角指车体纵向平面和地面垂直线的夹角,如图2.1所示,主销后倾角可以产生一个与转向相反的力矩使得车轮具有自动回正的能力,一般主销后倾角越大,车速越高,前轮的自动回正能力就越强。
但是主销后倾角太大,将会引起前轮回正过猛,导致转向沉重。
调试中发现,我们发现车速加快后,增加主销后倾角未必是好事,但是通过适当调整,能在一定程度上稳定车身。
2.1.2主销内倾角调整
图2.2主销内倾角β和外倾角α
如图2.2所示,主销内倾角是主销在汽车横向平面内向倾斜了一个β角,即主销轴线与地面垂线在汽车断面的夹角,调大主销内倾角的好处是,当前轮受到外力作用发生偏转,由于主销内倾,汽车前部被抬高,外力结束后,由于重力作用下又恢复到原来中间位置。
经过长时间调试发现,适当调节对赛车的影响是不大的,所以可以在不影响性能的前提下尽量将主销内倾角调大。
前轮外倾角是前轮的上端向外倾斜的角度,如果前面两个轮子呈现“V”字形则称正倾角,呈现“八”字则称负倾角。
前轮外倾可以抵消由于车的重力使车轮向内倾斜的趋势,减少赛车机件的磨损与负重。
如果前轮过于外倾,会使汽车的直道行驶变得不稳定,所以我们在不影响转角的情况下,将外倾角调至最小。
2.1.3前轮前束调整
图2.3前轮前束
前轮前束是前轮前端向内倾斜的程度,当两轮的前端距离小后端距离大时为内八字,前端距离大后端距离小为外八字。
由于前轮外倾使轮子滚动时类似于圆锥滚动,从而导致两侧车轮向外滚开。
但由于拉杆的作用使车轮不可能向外滚开,车轮会出现边滚变向内划的现象,从而增加了轮胎的磨损。
前轮外八字与前轮外倾搭配,一方面可以抵消前轮外倾的负作用,另一方面由于赛车前进时车轮由于惯性自然的向内倾斜,外八字可以抵消其向内倾斜的趋势。
外八字还可以使转向时靠近弯道内侧的轮胎比靠近弯道外侧的轮胎的转向程度更大,则使内轮胎比外轮胎的转弯半径小,有利于转向。
但是,如果前轮调成了内倾角,则选用内八字比较好,因为这样两者刚好抵消,因此在调车我们选用了内倾加前束,效果还是很好的。
2.2后轮参数的调整
2.2.1齿轮啮合调整
车模后轮采用由竞赛主办方提供的电机驱动。
电机齿轮和滑差齿轮之间的啮合对车的性能影响还是不小的。
齿轮传动部分安装位置的不恰当,会大大增加电机驱动后轮的负载,影响车的加速度,从而影响到最终成绩。
调整的原则可以归纳如下:
两传动齿轮轴保持平行,齿轮间的配合间隙要合适,过松容易打坏齿轮,过紧又会增加传动阻力,白白浪费动力;经过多次试验,啮合度在70%是比较理想的状态。
编码器的齿轮和电机齿轮的齿数和模数是一模一样的,所以安装要点是一样的。
2.2.2后轮滑差和轮距调整
在拐弯时由于弯道内侧轮比外侧轮的拐弯半径小,则内侧轮比外侧轮的速度小,这就使两轮胎有一定的速度差,称为差速。
为了考虑这种情况,车模中设计了机械差速齿轮,使赛车的内外轮在拐弯时做到协调。
差速齿轮有以下特性:
如果差速过紧,即两轮胎的速度很接近时,转弯的时候内侧轮很容易打滑,从而产生侧滑,使赛车滑出赛道。
当差速过松时,会使直道的时候两轮打滑(电机不是处于后轴中央),大大的减小了赛车的驱动能力。
所以差速调整要适当,才会使直道驱动能力强且稳定,弯道转弯容易。
调整滑差的标准时,电机全速时捏住一个轮子,另外一个轮子刚好处于转与不转的边缘就好。
2.3底盘的调整
由于比赛时可以有坡面道路,包括上坡与下坡道路。
所以摄像头安装不能非常的低,因为假如摄像头太低将会导致在上坡时赛车丢失道路信息,但是随着摄像头安装位置的提高,在高速过弯时则所需向心力比较大,同时由于惯性车很容易向一侧翻倒。
为了避免这类事情的发生,我们把车的后轮底盘放低,从而降低整车的重心,防止车翻倒。
但是后轮的底盘高度不能太低,这是为了使车能顺利的上坡而不至于由于底盘过擦到赛道。
2.4舵机的安装
全国比赛过程中车速很快,这要求舵机转向要非常灵敏,我们使用的是主办方提供的S-D5舵机,额定电压为5V。
为了解决舵机滞后问题,将舵机竖直安装,并且使输出杆等长,转角更加精确。
2.5摄像头支架安装
根据上届同学的经验,我们选用了质地坚硬但重量较小的碳素杆作为摄像头的支架。
并且用两根细碳素杆固定,以减少车身震动而引起摄像头震动。
2.6光电编码器
我们采用增量式光电编码器实现对驱动电机转速的检测,通过齿轮传动的方式将测速电机上小齿轮与差速齿轮啮合,可以实时地获得准确的运行速度。
我们考虑采用的是500线的小型编码器,该编码器的外径只有18mm,安装方便,重量也很小。
第三章硬件电路系统设计与实现
3.1硬件电路设计方案
在智能车比赛中,硬件电路的设计思路是:
稳定、高效、简单。
稳定性对于智能车这种比赛的重要性不言而喻,因此,设计电路板时,要考虑到接地,屏蔽,滤波等问题,将数字电路与模拟电路分开。
高效性主要体现在电机驱动电路上,我们采用技术成熟的MOS管作为电机的驱动芯片,它具有内阻小、转换效率高等特点。
简单性是指在满足了稳定性、高效性的前提下,为了尽量减轻整车重量,降低车体重心位置,应使电路设计尽量简单,尽量减少元器件的使用数量,缩小电路板面积,使电路板安装于车底盘上面。
3.2硬件电路的实现
整车的电路系统我们集成在了一块PCB板上:
包括电源、驱动、信号采集和处理、液晶屏显示、串口输出等功能。
3.2.1电源
本系统中电源稳压电路有三种,一种为+5V稳压电路,一种为+12V升压电路,另一种为+3.3V稳压电路。
图3.1电路原理图
图3.2电源稳压电路
系统中+5V电路功耗较小,最大可提供500mA电流,所以采用较为普遍的LM2940。
最小系统板由AMS1117提供3.3V稳压。
采用MC34063升压到12V,最大可提供1.5A电流。
3.2.2电机驱动电路
电机驱动为一个由分立元件制作的直流电动机可逆双极型桥式驱动器,其功率元件由四支N沟道功率MOSFET管组成,额定工作电流可以轻易达到100A以上,大大提高了电动机的工作转矩和转速。
该驱动器主要由以下部分组成:
PWM号输入接口、逻辑换向电路、死区控制电路、电源电路、上桥臂功率MOSFET管栅极驱动电压泵升电路、功率MOSFET管栅极驱动电路、桥式功率驱动电路、缓冲保护电路等。
我们采用IR公司的IRF3205芯片作为电机的驱动芯片,以IR公司的IR2104来控制桥臂的导通、关断。
图3.3驱动电路图
3.2.3键盘拨码电路
图3.4键盘拨码电路
3.3摄像头
在调试过程,我们发现一旦小车进入弯道内部,在大部分情况下都不能提取到黑线,在120度大S弯里采用了270度弯的控制策略,大大降低了的速度,针对这种情况进行分析后,发现这是由于摄像头角度过窄导致S弯的左边界和右边界在摄像头视角之外,如图3.8所示。
将摄像头镜头换成广角之后,这种情况基本得到解决,在大S弯能够采取比较切线的线路,大大减小了小车行使的路程。
图3.5两种摄像头镜头的视角范围
第四章软件系统设计与实现
4.1图像处理
4.1.1图像采集
图像通过MT9V034摄像头进行采集,采集回来的图像为120*188,截取为60*80,并通过大津阈法进行二值化处理,帧数通过最大曝光时间进行调整,最终调整帧率约为120帧/秒;设置自动曝光和自动增益以适应不同光照强度的环境。
4.1.2黑线提取
黑线提取实际上是一种图像分割技术。
图像分割指图像分成各具特性的区域并提取出感兴趣目标的技术和过程,是一种基本的计算机视觉技术。
只有在图像分割的基础上才能对目标进行特征提取和参数测量,使得更高层的图像分析和理解成为可能。
由摄像头得到的图像实际上是一幅灰度图像,可以将图像分为几个区域,区域内部的灰度具有灰度相似性,而在区域边q界上一般具有灰度不连续性,因此灰度图像分割一般可分为利用区域内灰度相似性的基于区域的方法和利用区域间灰度不连续性的基于边界的方法,分别称为阈值法和边界法。
阈值法是一种最常用的方法,基本思想是利用阈值来区分不同目标的灰度值,从而提取目标。
对于摄像头而言,黑线部分灰度值小,白板灰度值大,设阈值为limit,若满足iamge_data[i][j] 阈值法的优点是算法简单,提取黑线,识别三角形、起始道具有一定的优势,缺点是易于受场地光线干扰。 边界法基于边界的分割方法是利用不同区域间象素灰度不连续的特点检测出区域间的边缘,从而实现图像分割。 对于摄像头提取到的黑线而言,利用白板与黑线灰度值的差异来提取黑线,这一方法的优点是抗干扰性强,光线强度在一定范围内变化,对黑线提取基本上没有任何影响,但是算法相对较复杂,特别是在提取起始道和三角形方面。 结合上述两种方法的优点,我们采用大津阈法来提取黑线。 4.1.3起始道判断 在起始线处的特征为赛道中间有间隔相等的多条黑线,因此可提取出间隔相等的约14个跳边沿,通过多行满足条件的跳边沿判断是否为起跑线。 4.1.4图像校正 由于摄像头是在一定高度上斜着向下看赛道的,与实际的俯视图有很大的差距,并且由于摄像头广角镜头的光学畸变,会使得到的图像与实际图像有着较大的偏差。 为了使图像信息的识别更为方便和准确,使控制更加的线性化,需要对图像进行校正。 图像校正主要用了逆透视和筒形校正。 考虑到运算时间的原因,我们只对识别到的跳变沿进行了校正,而并没有对整幅图像进行校正。 下文中为了使读者更加清晰的体会到校正所带来的作用,我们用matlab对整幅图像进行了校正。 图像校正的实现如下: (1)调整好摄像头位置、前瞻,固定好; (2)将摄像头对准赛道,拍摄图像; (3)用matlab编写程序进行筒形变换、透视变换,生成变换的H矩阵; (4)在单片机程序中加入H矩阵生产x轴变换表,y轴变换直接引入变换表,然后就可进行相应的校正和反校正变换了。 最后用matlab用得到的变换表对整幅图像进行图像校正变换,得到的效果图如下: 校正前 校正后 4.2控制算法 4.2.1方向与速度控制 根据车速确定控制远行和控制近行,两行测量理论距离和实际距离的偏差,转换为角度偏差,进行远近行的角度偏差和远行附近斜率的加权和,获得偏差值,转角大小与偏差值成正比,速度大小与偏差值成反比。 控制行决定了车切内道和贴线的程度。 距离车身较近的窗口参考行决定了车贴线的程度,越靠近越贴线,走线越老实;距离车身较远的窗口参考行决定了车切道或穿S弯的程度,越靠前路线越内切或直穿。 4.2.2PID速度闭环控制 PID控制器(比例-积分-微分控制器),由比例单元P、积分单元I和微分单元D组成。 通过Kp,Ki和Kd三个参数的设定。 PID控制器主要适用于基本线性和动态特性不随时间变化的系统,如图4.1所示。 图4.1PID系统框图 控制器是一个在工业控制应用中常见的反馈回路部件。 这个控制器把收集到的数据和一个参考值进行比较,然后把这个差别用于计算新的输入值,这个新的输入值的目的是可以让系统的数据达到或者保持在参考值。 和其他简单的控制运算不同,PID控制器可以根据历史数据和差别的出现率来调整输入值,这样可以使系统更加准确,更加稳定。 可以通过数学的方法证明,在其他控制方法导致系统有稳定误差或过程反覆的情况下,一个PID反馈回路却可以保持系统的稳定。 PID是以它的三种纠正算法而命名的。 这三种算法都是用加法调整被控制的数值。 而实际上这些加法运算大部分变成了减法运算因为被加数总是负值。 这三种算法是: 比例-来控制当前,误差值和一个负常数P(表示比例)相乘,然后和预定的值相加。 P只是在控制器的输出和系统的误差成比例的时候成立。 积分I来控制过去,误差值是过去一段时间的误差和,然后乘以一个负常数I,然后和预定值相加。 I从过去的平均误差值来找到系统的输出结果和预定值的平均误差。 一个简单的比例系统会振荡,会在预定值的附近来回变化,因为系统无法消除多余的纠正。 通过加上一个负的平均误差比例值,平均的系统误差值就会总是减少。 所以,最终这个PID回路系统会在预定值定下来。 导数D来控制将来,计算误差的一阶导,并和一个负常数D相乘,最后和预定值相加。 这个导数的控制会对系统的改变作出反应。 导数的结果越大,那么控制系统就对输出结果作出更快速的反应。 这个D参数也是PID被成为可预测的控制器的原因。 D参数对减少控制器短期的改变很有帮助。 一些实际中的速度缓慢的系统可以不需要D参数。 第五章调试工具开发与使用 5.1开发工具 程序开放在IAREmbeddedWorkbenchIDE下进行,EmbeddedWorkbenchforARM是IARSystems公司为ARM微处理器开发的一个集成开发环境(下面简称IAREWARM)。 比较其他的ARM开发环境,IAREWARM具有入门容易、使用方便和代码紧凑等特点。 EWARM中包含一个全软件的模拟程序(simulator)。 用户不需要任何硬件支持就可以模拟各种ARM内核、外部设备甚至中断的软件运行环境。 从中可以了解和评估IAREWARM的功能和使用方法。 5.2串口调试 智能车的调试过程,实际上是一个分析实验数据、改进算法的过程,而这需要以大量的实验数据作为基础。 图像方面,编写了基于PC机的C#程序,用于显示实际用于单片机处理的图像;控制参数方面,在C#环境下开发了可用于显示各控制参数,以及所提取黑线的实时变化的辅助调试软件。 5.2.1C#图像显示程序 图5.1是程序界面,上位机通过串口与KV58相连,得到摄像头采集到的实时图像数据,并将其以灰度值显示,如图5.2所示。 该部分程序参照前人成果编写而成,实际效果非常不错。 图5.1C#图像显示程序界面 图5.2C#生成KV58提取到的图像 5.2.2C#辅助调试程序 该程序是在C#软件编程环境下实现的一个基于完成显示黑线信息、绘制参数变化图、存储数据和保存图像功能。 图5.3是控制参数变化图显示界面,完成将控制参数绘制成以时序为基础的曲线。 把智能车在行驶中的黑线数据和参数通过无线传输工具传到上位机中,进行参数分析,这样我们就可以知道黑线、舵机转向和马达速度在具体赛道的变化趋势,调试起来非常具有针对性。 图5.3参数传输界面 5.2.3SD卡模块 SD卡是一种基于半导体快闪存的新一代记忆设备。 由日本松下、东芝及美国SanDisk公司于1999年8月共同开发研制,其大小犹如一张邮票,重量只有2克,却拥有高记忆容量、快速数据传输率、极大的移动灵活性以及很好的安全性。 实现SD卡的功能,可以通过软件的编写实现。 首先需要将SPI模块设置为主机模式,并设置相关的寄存器使SPI模块有高速和低速之分。 SD卡的软件设计主要包括两部分内容: SD卡的上电初始化过程和对SD卡的读写操作。 SD卡上电后,主机必须先向SD卡发送74个时钟周期,以完成SD卡上电过程。 SD卡上电后会自动进入SD总线模式,并在SD总线模式下向SD卡发送复位命令(CMD0),若此时片选信号CS处于低电平态,则SD卡进入SPI总线模式,否则SD卡工作在SD总线模式。 SD卡进入SPI工作模式会发出应答信号,若主机读到的应答信号为01,即表明SD卡已进入SPI模式,此时主机即可不断地向SD卡发送命令字(CMD1)并读取SD卡的应答信号,直到应答信号为00,以表明SD卡已完成初始化过程,准备好接受下一命令。 第六章总结 综上所述,本文主要介绍了我们在稳定、高效、简单的指导原则下智能车系统的设计思想和实现方案,包括机械、硬件电路方和软件算法三个方面。 在机械方面,为了提高转向的灵敏性,竖直安装舵机;分析了前轮束角和主销倾角对转向的影响,并对其进行优化。 硬件电路方面,在保证稳定性前提下,尽量减小电路板面积;采用广角摄像头,保证各种S弯都能提取到完整的黑线。 软件算法方面,采用动态阈值和跟踪算法提取黑线,保证黑线稳定性;简化控制策略,提高小车对赛道的适应性。 然而,我们的车模仍然存在一些不足。 我们三个人对小车的机械构造缺乏深入的认识,调试过程中摸着石头过河,走了不少弯路,与一些强队相比,仍然是相形见绌。 虽然广角摄像头有利于弯道内部提取黑线,但是造成了很大的图形畸变,使图像变差,并且使小车走120度大S弯风险性很大。 在大半年的调车过程中,我们经历了学校的选拔赛、浙江赛区省赛直至即将到来的全国赛,一路走来,我们付出了很多,也收获了很多。 在一张白纸上,我们从零开始。 从学习KV58单片机到组装车模,从舵机和马达徐徐转动到摄像头采集到数据,从黑线提取到控制策略,我们见证了小车从蜗牛般爬动到猎豹般飞驰的成长历程。 付出的是汗水,收获的是硕果,在这大半年的时间里,我们不仅完成了小车的蜕变,也学到了很多,从电路板绘制到控制策略,从机械性能到单片机,从战胜失败的勇气到团队合作,我想这段经历将是一笔人生的财富。 在备战过程中,特别感谢学校和学院提供的经费和场地支持,感谢各位老师和学长的悉心指导。 参考文献 [1]卓晴,黄开胜,邵贝贝.学做智能车[M].北京: 北京航天航空大学出版社,2007.3 [2]臧杰,阎岩.汽车构造[M].北京.机械工业出版社[M].2005 [3]邵贝贝.单片机嵌入式应用的在线开发方法[M].清华大学出版社,2004 [4]楚现知,吴吉祥,李锦忠.基于LabVIEW的监控界面设计与单片机的串行通信[J].工业控制计算机,2005年18卷第7期 [5]杨晖,曲秀杰.图像分割方法综述.电脑开发与应用[J].2005.3 [6]俞斌,翁华,华文.浙江大学EE-fly队技术报告. [7]张鹏,徐怡,任亚楠.北京科技大学CCD一队技术报告. [8]庆楠,蔡兴旺,潘锦州.上海大学S.U.L挑战者技术报告. [9]胡晨晖,陆佳南,陈立刚.上海交通大学CyberSmart队技术报告. [10]林辛凡,李红志,黄颖.清华大学三角洲队技术报告. [11]卓晴,王琎,王磊.基于面阵CCD的赛道参数检测方法.电子产品世界,200
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第三 硬件 电路 系统 设计 实现