




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第六届“飞思卡尔”杯全国大学生 智能汽车竞赛 技 术 报 告 学 校:湖北汽车工业学院队伍名称:鹰眼一号参赛队员:曾 勇 甘永超 徐萍萍带队老师:杨正才 姜 斌 2011年8月10日关于技术报告和研究论文使用授权的说明本人完全了解第六届“飞思卡尔”杯全国大学生智能车邀请赛关保留、使用技术报告和研究论文的规定,即:参赛作品著作权归参赛者本人,比赛组委会和飞思卡尔半导体公司可以在相关主页上收录并公开参赛作品的设计方案、技术报告以及参赛模型车的视频、图像资料,并将相关内容编纂收录在组委会出版论文集中。 参赛队员签名: 指导老师签名: 日 期:2011-8-13目录目录第一章第一章 引言引言 .5 5
2、1.1 智能车的由来、应用前景.51.2 智能车大赛的介绍.61.2.1 大赛简介 .61.2.2、有关赛场的规定.71.2.4、分赛区、决赛区比赛规则.71.2.5. 其他 .9第二章第二章 主要思路及技术方案概要主要思路及技术方案概要 .13132.1 系统硬件结构.132.2 系统软件结构.14第三章第三章 电路设计说明电路设计说明 .15153.1 系统电源模块设计.153.2 电机驱动模块设计.163.3 转速传感器电路设计.163.4 摄像头供电模块电路设计.173.5 最小系统模块 .17第四章第四章 视频采集和图像处理视频采集和图像处理 .18184.1 视频采集.184.1.
3、1 摄像头工作原理 .184.1.2 摄像头的选择 .194.1.3 信号分离电路 .194.2 图像处理.214.2.1 目标指引线的提取.214.2.2 虚线目标线的提取.22第五章第五章 模型车机械设计说明模型车机械设计说明 .22225.1 车体的具体参数.225.2 前轮倾角调节.225.3 齿轮传动机构调节.235.4 舵机安装方式.235.5 其他机构的调节.24第六章第六章 控制策略控制策略 .24246.1 转向控制.246.2 速度控制.25第七章第七章 开发与调试开发与调试 .27277.1 软件开发平台 CODEWARRIOR IDE.287.2 在线编程软件设计与应用
4、 .297.3 串口调试软件应用 .29结语结语 .3030参考文献:参考文献: .3131附录源代码附录源代码 .3131第一章 引言1.1 智能车的由来、应用前景智能车的由来、应用前景1953 年,美国 Barrett Electric 公司制造了世界上第一台采用埋线电磁感应方式跟踪路径的自动导向车,也被称作“无人驾驶牵引车”。20 世纪 60 年代和 70 年代初,AGV 仍采用这种导向方式。但是,20 世纪 70 年代中期,具有载货功能的 AGV 在欧洲得到了应用并被引入到美国。这些自动导向车主要用于自动化仓储系统和柔性专配系统的物料运输。在 20 世纪 70 年代和 80 年代初,A
5、GV 的应用领域扩大而且工作条件也变化多样,因此,新的导向方式和技术得到了更广泛的研究与开发。在最近的 10-15 年里,各种新型 AGV 杯广泛地应用于各个领域,单元式 AGV 主要用于短距离的物料运输并与自动化程度较高的加工设备组成柔性生长线。例如,自动导向叉车用于仓储货物的自动装卸和搬运;小型载货式 AGV 用于办公室信件的自动分发和电子行业的装配平台。除此之外,AGV 还用于搬运体积和重量都很大的物品,尤其是在制造过程中用于载货平台 AGV 组成移动式输送线,构成整车柔性装配生产线。最近,小型AGV 应用更为广泛,而且以长距离不复杂的路径规划为主。AGV 从仅由大公司应用,正向小公司单
6、台应用转变,而且其效率和效益更好。至此出现了智能车的概念。城市公共交通是与人民群众生产生活息息相关的重要基础设施。然而,目前世界上许多大城市都面临着由私人汽车过度使用而带来的诸多问题,例如道路堵塞、停车困难、能源消耗、噪声污染和环境污染等,这些问题严重降低了城市生活的质量。优先发展城市公共交通是提供交通资源利用效率,缓解交通拥堵的重要手段。国务院总理温家宝于 2005 年 10 月做出重要批示,要求优先发展城市公共交通,这是贯彻落实科学发展观和建设节约型社会的重要举措。大容量城市公共交通,如地铁、轻轨等,其最大优点是空间利用率和能源利用率较高。然而,由于缺乏足够的时间、空间、运行成本过高,难以
7、大力推广和应用。回顾汽车发展的百年历史,不难发现其控制方式从未发生过根本性改变,即由人观察道路并驾驶车辆,形成“路-人-车”的闭环交通系统。随着交通需求的增加,这种传统车辆控制方式的局限性日益明显,例如安全性低(交通事故)和效率低(交通堵塞)。最新调查表明,95%的交通事故是由人为因素造成,交通堵塞也大都与驾驶员不严格遵守交通规则有关。如果要从根本上解决这一问题,就需要将“人”从交通控制系统中请出来,形成“车-路”闭环交通系统,从而提高安全性和系统效率。这种新型车辆控制方法的核心,就是实现车辆的智能化。智能车有着极为广泛的应用前景。结合传感器技术和自动驾驶技术可以实现汽车的自适巡航并把车开得开
8、得又快又稳、安全可靠;汽车夜间行驶时,如果装上红外摄像头,就能实现夜晚汽车的安全辅助驾驶;他也可以工作在仓库、码头、工厂或危险、有毒、有害的工作环境里,此外他还能担当起无人值守的巡逻监视、物料的运输、消防灭火等任务。在普通家庭轿车消费中,智能车的研发也是有价值的,比如雾天能见度差,人工驾驶经常发生碰撞,如果用上这种设备,激光雷达会自动探测前方的障碍物,电脑会控制车辆自动停下来撞车不会发生了。1.21.2 智能车大赛的介绍智能车大赛的介绍1.2.11.2.1 大赛简介大赛简介受教育部高等教育司委托,高等学校自动化专业教学指导委员会负责主办全国大学生智能车竞赛。该项比赛已列入教育部主办的全国五大竞
9、赛之一。首届“飞思卡尔”杯全国大学生智能车邀请赛于 2006 年在清华大学成功举办。此项赛事,在韩国已举办过多届,其专业知识涉及控制、模式识别、传感技术、汽车电子、电气、计算机、机械等诸多学科,对学生的知识融合和动手能力的培养,对高等学校控制及汽车电子学科学术水平的提高,具有良好的推动作用。在前两届比赛中参赛选手必须使用大赛组委会统一提供的竞赛车模,以Freescale 公司生产的 16 位微控制器 MC9S12XS128 作为核心控制单元,我对用了 MC9S12XS128 作为核心控制单元,自主构思控制方案及系统设计,包括传感信号采集处理、控制算法及执行、动力电机驱动、转向舵机控制等,最终实
10、现一套能够自主识别路线,并且可以实时输出车体状态的智能车控制软硬件系统。各参赛队伍之名次以赛车现场成功完成赛道比赛时间排名。但与以往的比赛来看,今年又增大了难度,即要在车跑完两圈自动停在出发线的 3 米内。本文所述的内容即为本届比赛而准本的技术方案。1.2.21.2.2、有关赛场的规定、有关赛场的规定1. 赛道基本参数(不包括拐弯点数、位置以及整体布局)见附件三;2. 比赛赛道实际布局将在比赛当日揭示,在赛场内将安排采用与制作实际赛道相同的材料所做的测试赛道供参赛队进行现场调试;1.2.31.2.3、裁判及技术评判、裁判及技术评判竞赛分为分赛区(省赛区)和全国总决赛两个阶段。其中,全国总决赛阶
11、段是在全国竞赛组委会秘书处指导下,与决赛承办学校共同成立竞赛执行委员会,下辖技术组、裁判组和仲裁委员会,统一处理竞赛过程中遇到的各类问题。 所有竞赛组织委员会工作人员,包括技术评判组及现场裁判组人员均不得参与任何针对个别参赛队的指导或辅导工作(提供微控制器培训除外),不得泄露任何有失公允竞赛的信息。在分赛区(省赛区)阶段中,裁判以及技术评判由各分赛区(省赛区)组委会参照上述决赛阶段组织实施。1.2.41.2.4、分赛区、决赛区比赛规则、分赛区、决赛区比赛规则分赛区和总决赛的比赛规则相同,都具有电磁组、光电组和摄像头组比赛。三个赛题组比赛一般在同一个场馆同时进行,所遵循的比赛规则是相同的,但如果
12、受到主办方场馆条件限制,三个赛题组也可安排在不同场馆分别进行。三个赛题组分别独立进行成绩排名。 分赛区和总决赛的现场比赛均包括初赛与决赛两个阶段。下面列出的现场预赛、决赛阶段的比赛规则适用于各分赛区及总决赛的三个赛题组。1初赛与决赛规则 1)初赛规则比赛场中有三条赛道。参赛队根据比赛题目分为三个组,并以抽签形式决定组内比赛次序。比赛分为两轮,三个赛题组同时在三个赛道上进行比赛,每支参赛队伍可以在每轮比赛之前有 10 分钟的现场调整时间。在此期间,参赛队伍只允许对赛车的硬件(不包括微控制器芯片)进行调整。第二轮比赛在同一赛道沿逆向进行。在每轮比赛中,选手首先将赛车放置在起跑区域内赛道上,赛车至少
13、静止两秒钟后自动启动。每辆赛车在赛道上跑一圈,以计时起始线为计时点,跑完一圈后赛车需要自动停止在起始线之后三米之内的赛道内,如果没有停止在规定的区域内,比赛计时成绩增加 1 秒。每辆赛车以在两个单轮成绩中较好的一个作为赛车最终初赛成绩;计时由电子计时器完成并实时显示。根据参赛队伍数量,由比赛组委会根据成绩选取一定比例的队伍晋级决赛。晋级决赛的赛车在决赛前有 10 分钟的调整时间。在此期间,参赛队伍只允许对赛车的硬件(不包括微控制器芯片)进行调整。技术评判组将对全部晋级的赛车进行现场技术检查,如有违反器材限制规定的(指本规则之第一条)当时取消决赛资格,由后备首名晋级代替。由裁判组申报组织委员会批
14、准公布决赛名单。全部车模在整个比赛期间都统一放置在车模的展示区内。2)决赛规则参加决赛队伍按照预赛成绩进行排序,比赛顺序按照预赛成绩的倒序进行。决赛的比赛场地使用一个赛道。决赛赛道与预赛赛道形状不同,占地面积会增大,赛道长度会增加。每支决赛队伍只有一次比赛机会,在跑道上跑一圈,比赛过程与要求同预赛阶段。计时由电子计时器完成并实时显示。预赛成绩不记入决赛成绩,只决定决赛比赛顺序。没有参加决赛阶段比赛的队伍,预赛成绩为最终成绩,参加该赛题组的排名。3)比赛过程规则按照比赛顺序,裁判员指挥参赛队伍顺序进入场地比赛。同一时刻,一个场地上只有一支队伍进行比赛。在裁判员点名后,每队指定一名队员持赛车进入比
15、赛场地。参赛选手有 30 秒的现场准备时间。准备好后,裁判员宣布比赛开始,选手将赛车放置在起跑区内,即赛车的任何一部分都不能超过计时起始线。赛车应在起跑区静止两秒钟以上,然后自动出发。赛车应该在 30 秒之内离开出发区,沿着赛道跑完一圈。由计时起始线两边传感器进行自动计时。赛车跑完一圈且自动停止后,选手拿起赛车离开场地,将赛车放置回指定区域。 如果比赛完成,由计算机评分系统自动给出比赛成绩。4)比赛犯规与失败规则 比赛过程中,由比赛现场裁判根据统一的规则对于赛车是否冲出跑道进行裁定。赛车前两次冲出跑道时,由裁判员取出赛车交给比赛队员,立即在起跑区重新开始比赛。选手也可以在赛车冲出跑道后放弃比赛
16、。比赛过程中出现下面的情况,算作模型车冲出跑道一次。裁判点名后,30 秒之内,参赛队没有能够进入比赛场地并做好比赛准备;比赛开始后,赛车在 30 秒之内没有离开出发区;赛车在离开出发区之后 60 秒之内没有跑完一圈;比赛过程中如果出现有如下一种情况,判为比赛失败:赛车冲出跑道的次数超过两次;比赛开始后未经裁判允许,选手接触赛车;决赛后,赛车没有通过现场技术检验。如果比赛失败,则不计成绩5)比赛组织说明现场正式比赛前,每个参赛队伍都有现场环境适应性调试阶段。调试跑道与比赛跑道形状不一样。比赛开赛之前,所有车模都由比赛组委会收集并存放在同一保管区域,直到比赛结束。在比赛期间,大赛组委会技术处将根据
17、情况对参赛车模进行技术检查。如果违反了比赛规则的禁止事项,大赛组委会有权取消参赛队伍的成绩。1.2.5. 其他其他 1比赛过程中有其他作弊行为的,取消比赛成绩; 2参加预赛并晋级决赛的队伍人员不允许改变; 3本规则解释权归竞赛秘书处和比赛组织委员会所有。附件一:智能竞赛车模的规定禁止改动车底盘结构、轮距、轮径及轮胎;禁止采用其它型号的驱动电机,禁止改动驱动电机的传动比;禁止改造车模运动传动结构,包括滚珠轴承;禁止改动舵机,但可以更改舵机输出轴上连接件;禁止改动驱动电机以及电池,车模前进动力必须来源于车模本身直流电机及电池;禁止增加车模地面支撑装置。在车模静止、动态运行过程中,只允许车模原有四个
18、车轮对车模起到支撑作用。为了安装电路、传感器等,允许在底盘上打孔或安装辅助支架等。附件二:电路器件及控制驱动电路限制车模控制电路须采用飞思卡尔半导体公司的 8 位、16 位 MCU 作为唯一的微控制器。16 位 MCU 只能采用 9S12XS128(封装不限),也可以选用 16 位 DSC或 8 位 MCU(8 位 MCU 可以使用 2 片)。核心控制模块可以采用组委会推荐的9S12XS128 模块,也可以选用飞思卡尔公司微控制器自行设计制作控制电路板。每台模型车的电路板中只允许使用一种型号微控制器。8 位微控制器最多可以使用 2 片,16 位微控制器限制使用 1 片;不得同时使用 8 位和
19、16 位微控制器。除了上述规定的微控制器之外不得使用辅助处理器以及其它可编程器件;伺服电机数量不超过 3 个;传感器数量不超过 16 个:光电传感器接受单元计为 1 个传感器,发射单元不计算;CCD 传感器计为 1 个传感器;磁场传感器在同一位置可以有不同方向传感器,计为一个传感器。直流电源使用大赛指定的电池;禁止使用 DC-DC 升压电路直接为驱动电机以及舵机提供动力;全部电容容量和不得超过 2000 微法;电容最高充电电压不得超过 25 伏;本竞赛智能车中,除单片机最小系统的核心子板、摄像头、舵机自身内置电路外,所有电路均要求为自行设计制作,禁止购买现成的功能模块。如果自制电路采用 PCB
20、 印制电路板,必须在铜层(TopLayer 或 BottomLayer)醒目位置放置本参赛队伍所在学校名称、队伍名称、参赛年份,对于非常小的电路板可以使用名称缩写,名称在车模技术检查时直接可见。可以选择参数:1. 开发软件可以选择 CodeWarrior 调试软件,也可以另行选择;2. 开发调试硬件可以选择秘书处统一推荐的 BDM 工具,也可以另行选择;3. 电路所使用元器件(传感器、各种信号调理芯片、接口芯片、功率器件等)种类与数量都可以自行设计选择。附件三:赛道基本参数(不包括拐弯点数目、位置以及整体布局)1. 赛道路面用专用白色基板制作,在初赛阶段时,跑道所占面积在 5m7m左右,决赛阶
21、段时跑道面积可以增大。2. 赛道宽度不小于 50cm。3. 铺设赛道地板颜色不作要求,它和赛道之间可以但不一定有颜色差别。4. 跑道表面为白色,中心有黑线作为引导线,黑线宽 25mm5。引导黑线大部分为连续黑线,部分线段会是虚线。虚线的规格如下: 虚线段可能出现在赛道的直线部分,也可能出现在赛道的转弯部分,如下图所示:每段虚线长度不超过 1 米。虚线不会出现在十字交叉路口、坡道中。5. 赛道中心黑色线下铺设有直径 0.1-0.8mm 漆包线,其中通有 20KHz,100 mA 的交变电流。频率范围 20K1K,电流范围(10020mA)。6. 跑道最小曲率半径不小于 50cm。7. 跑道可以交
22、叉,交叉角为 90。8. 赛道直线部分可以有坡度在 15之内的坡面道路,包括上坡与下坡道路。 9. 赛道有一个长为 1m 的出发区,如下图所示,计时起始点两边分别有一个长度 10cm 黑色计时起始线,赛车前端通过起始线作为比赛计时开始或者结束时刻。在黑色计时起始线中间安装有永久磁铁,每一边各三只。磁铁参数:直径 7.5 - 15mm,高度 1-3mm,表面磁场强度 3000-5000 高斯。 起跑线附近的永磁铁的分布是在跑道黑色中心线两边对称分布。相应的位置如下图所示:第二章 主要思路及技术方案概要2.12.1 系统硬件结构系统硬件结构此智能车辆定位系统用摄像头拍车辆前方的赛道,通过 MC9S
23、12XS128 采样视频信号,获得图像数据。然后用合适的算法,如跟踪边缘检测法,分析图像数据,提取目标指引线。然后,系统根据目标指引线的位置信息,对舵机和电机施以合适的控制。本智能车定位系统的结构图如图 2-1 所示:摄摄像像头头视频采样视频采样辅助电路辅助电路MC9S12XS128 数据处理数据处理舵机驱动舵机驱动电路电路舵机舵机电机驱动电机驱动电机电机图2.1 智能车定位系统结构图因为系统是一个有机的整体,所以任何一部分的改进都能提高小车的性能。虽然轮胎、驱动电机、舵机和电池等车模主要结构不能作改动,但是一个机械结构上的细节仍然会对小车的性能产生影响,为此我们对这些细节进行了一定的调整。系
24、统所用的传感器包括光电(1 个用于测速)、JY043W(黑线识别)和摄像头(路径识别),它们可以完成赛道信息的采集和小车行驶参数的获取,算法部2.22.2 系统软件结构系统软件结构系统硬件位于底层,是整个系统的基础,系统软件结构则根据硬件和控制需要来制定。系统的基本软件流程为:首先,对各功能模块和控制参数进行初始化。然后,通过图像采集模块获取前方的图像数据,同时通过速度传感器模块获取小车的速度,用前排传感器获取路面的信息,采用模糊算法来控制舵机的转向。另外根据检测到的速度,结合速度控制策略,对小车速度进行不断的调整,使小车在符合比赛规则的前提下,沿赛道快速行驶。系统的基本软件结构如图 2-2
25、所示。系统初始化场同步信号检测视频采集速度采集图 2-2 系统的基本软件机构第三章 电路设计说明3.13.1 系统电源模块设计系统电源模块设计全部硬件电路的电源由 7.2V,2A/h 的可充电镍镉电池提供。由于电路中的不同电路模块所需要的工作电压和电流容量各不相同,因此电源模块应该包括多个稳压电路,将充电电池电压换成各个模块所需要的电压。主要包括如下不同的电压:5V 电压。主要为单片机、信号调理电路及部分接口电路(如速度传感器)提供电源,电压要求稳定、噪声小,电流容量大于500mA。6V 电压。主要是为舵机提供工作电压。实际工作时,舵机所需要的工作电流一般在几十毫安左右,电压无需十分稳定。7.
26、2V 电压。这部分直接取自电池两端电压,主要为后轮电机驱动模块提供电源。12V 电压。采用摄像头进行路径检测时,需要12V 工作电源。整个电源模块的电路结构为: 图 3-1 电源模块电路结构3.23.2 电机驱动模块设计电机驱动模块设计根据汽车机械式差速器的原理,在过弯时,汽车内外车轮行驶的路径不同,所以长短不一,这样导致两轮的转速不一样,差速器就是通过机械结构决汽车在行驶过程中的相互干扰。我们这套车模提供的是双电机,为了让汽车具有差速功能,我们通过控制双电机来模拟电子差速,来保障小的常行驶。3.33.3 转速传感器电路设计转速传感器电路设计车速传感器为对射式光电传感器,具体电路如图 3-3。
27、由光电对管采集输出为类似正弦波的信号,为使最终的车速信号为单片机所能处理的数字信号,在光电对管输出端接电压比较器 LM2903。 图 3-3 车速传感器电路3.43.4 摄像头供电模块电路设计摄像头供电模块电路设计图3-4 摄像头供电模块电路3.5 最小系统模块最小系统模块图3-5 最小系统电路图第四章 视频采集和图像处理4.14.1 视频采集视频采集视频采集模块由摄像头、1881 视频采集信号分离芯片以及 S12 的 AD 模块构成。视频信号是 AD 采集的基础,下面先介绍视频信号的特征,然后再展开。4.1.14.1.1 摄像头工作原理摄像头工作原理摄像头分为黑白和彩色两种,根据赛道特点可知
28、,为达到寻线目的,只要提取到画面的灰度信息,而不必要提取其色彩信息,所以本设计中采到的是黑白摄像头。摄像头主要由镜头、图像传感芯片和外围电路构成。图像传感芯片是其最重要的部分,但该芯片要配以合适的外围电路才能工作。将芯片和外围电路制作在一块电路板上,称为“单板”。若给单板配上镜头、外壳、引线和接头,就构成了通常所见的摄像头。摄像头的工作原理是:按一定的分辨率,以隔行扫描的方式采集图像上的点,当扫描到某点时,就通过图像传感芯片将该点处图像灰度转换成与灰度一一对应的电压值,然后将此电压值通过视频信号端输出。具体而言(参见图 5-1),摄像头连续地扫描图像上的一行,则输出就是一段连续的电压信号,该电
29、压信号的高低起伏反映了该行图像灰度变化。当扫描完一行,视频信号端就输出一个低于最低视频信号电压的电平(如0.3V),并保持一段时间。这样相当于,紧接着每行图像信号之后会有一个电压“凹槽”,此“凹槽”叫做行同步脉冲,它是扫描换行的标志。然后,跳过一行后(摄像头是隔行扫描的),开始扫描新的一行,如此下去,直到扫描完该场的视频信号,接着会出现一段场消隐区。该区中有若干个复合消隐脉冲,其中有个远宽于(即持续时间远长于)其它的消隐脉冲,称为场同步脉冲,它是扫描换场的标志。场同步脉冲标志着新的一场的到来,不过,场消隐区恰好跨在上一场的结尾和下一场的开始部分,得等场消隐区过去,上一场的视频信号才真正到来。摄
30、像头每秒扫描 25 幅图像,每幅又分奇、偶两场,先奇场后偶场,故每秒扫描 50 场图像。奇场时只扫描图像中的奇数行,偶场时则只扫描偶数行。图 4-1 摄像头视频信号4.1.24.1.2 摄像头的选择摄像头的选择因为 S12 单片机的 AD 转换时间在不超频的情况下最短为 7us,所以如果选用一个分辨率为 320 的摄像头,则单行视频信号持续时间约为20ms/320=62.5us,AD 对单行视频信号采样的点数将不超过62.5/7+1=9 个。若使用分辨率越高的,则其采到的点数将更少。如前所述,摄像头的分辨率越高,尽管可提高纵向分辨能力,却会减少单片机 AD 采样单行信号的点数,削弱了横向分辨能
31、力。现在市场上摄像头的分辨率通常都在 300 线以上,由此推得单行视频信号的持续时间至多为 20ms/300=66us,AD 采样每行视频信号的点数至多为66/7+1=10 个(不超频的情况下),这对赛车定位来说是不够的,所以在选用摄像头时,应当尽量选择分辨率低的摄像头,这样做会降低摄像头的纵向分辨率能力(但降低都仍然远远够用),却可以增加单片机采样视屏信号的点数,提高横向分辨能力。在本次设计过程中,在市场上我们找到了索尼的 CCD 摄像头,其分辨率为 200 万像素,以下章节中的视频采集工作就是基于此摄像头。4.1.34.1.3 信号分离电路信号分离电路要对有效地对视频信号进行采样,首先要处
32、理好的问题是如何提取出摄像头信号中的行同步脉冲,消隐脉冲和场同步脉冲。这里有两种可行的方法。第一,直接通过单片机 AD 进行提取。因为行同步脉冲、消隐脉冲或场同步脉冲信号的电平低于这些脉冲以外摄像头信号的电平,所以据此可设定一个信号电平阀值开判断 AD 采样到的信号是否为上述三类脉冲。第二,就是给单片机配以合适的外围芯片,此芯片要能够提取出摄像头信号的行同步脉冲、消隐脉冲和场同步脉冲以供单片机作控制之用。考虑到单片机的速度有限,而一些脉冲的间隔时间又较短,为了减轻其处理负担,采用了第二种方法进行信号的时序信息,如行同步脉冲、场同步脉冲和奇、偶场信号信息等,并将它们转换成TTL 电平直接输出给单
33、片的 I/O 口作控制信号之用。1881 的端口接线方式如图 5-2 所示。图 4-2 LM1881其中,引脚 2 为视频信号的输入端,引脚 1 为行同步信号输出端(图 5-3 中的 b)。引脚 3 为场同步信号输出端,当摄像头信号的场同步脉冲到来时,该端将变为低电平,一般维持 230us,然后重新变回高电平(如图 5-3 中的c)。引脚 7 为奇-偶场同步信号端输出端,当摄像头信号处于奇场时,该端为高电平,当处于偶场时,为低电平。事实上,不仅可以用场同步信号作为换场的标志,也可以用奇-偶场间的交替作为换场的标志。图 4-3 LM1881 信号时序图4.24.2 图像处理图像处理4.2.14.
34、2.1 目标指引线的提取目标指引线的提取智能车通过图像采样模块获得车前方的赛道图像信息,往下介绍如何分析此二维数组来提取黑线,我们采用边缘检测的方法。二维数组的行数和列数即为像素的图像坐标,我们若求出了黑线边缘的图像坐标,就知道了黑线的位置。黑线边缘的特点是其左、右两像素为一黑一白,两像素值的差的绝对值大于某阀值,大于可根据试验确定;而其余处的相邻两像素或全白,或全黑,像素值差的绝对值小于该阀值。这样,只要我们对两数组每行中任何相邻两点做差,就可以根据差值的大小是否大于该阀值来判断此两点处是否为黑线边缘,还可以进行根据差值的正负来判定边缘处是左白右黑,还是右黑左白。从最左端的第一个有效数据点开
35、始依次向右进行阀值判断:由于实际中黑白赛道边缘可能会出现模糊偏差,导致阀值并不是个很简单介于两相邻之间,很可能要相隔两个点。因此:第 line 为原点,判断和 line+3 的差是否大于该阀值,如果是则将 line+3 记为 i,从 i 开始继续在接下的从 i+3 到该行最末一个点之间的差值是否大于阀值,如果大于则将 line+i/2+1 的坐标赋给中心给黑线中心位置值,如 5-4图4-4 单行黑线提取法利用该算法所得到的黑线提取效果不仅可靠,而且实时性好;在失去黑线目标以后能够记住是从左侧还是从右侧超出视野,从而控制舵机转向让赛车回到正常赛道。试验表明:只要阀值取得合适,该算法不仅可靠,而且
36、实时性较好。如果更进一步可以设置阀值根据现场情况的变化而变化。在黑线引导线已经能够可靠提取的基础上,我们可以利用它来进行相应的弯、直道判定,以及速度和转向舵机控制算法的研究。4.2.24.2.2 虚线目标线的提取虚线目标线的提取这届比赛同以往规则还有另外一处不同,这在比赛规则中已经有所介绍。为了将虚线识别开来,而不使小车在虚线处跑出赛道,我们对虚线做特殊处理。根据线是由点连成的,由点生成线。点线结合将虚线模糊掉,这样在循迹中实线虚线也就没有什么差别。第五章 模型车机械设计说明任何的控制算法和软件程序都是需要一定的机械结构来执行和实现的,因此在设计整个软件架构和算法之前一定要对整个机械结构有一个
37、感性的认识,然后建立相应的数学模型。从而再针对具体的设计方案来调节整赛车的机械结构。本章将主要介绍车模的机械特点和调整方案。5.15.1 车体的具体参数车体的具体参数此次比赛用的车模采用 1/10 的仿真车模。车模机械结构只使用竞赛提供车模的底盘部分及转向和驱动部分。控制采用前轮转向,后轮驱动方案。车模具体参数如下:表5-1 车模基本尺寸参数:基本参数尺寸(cm)轴距198前轮距122后轮距138车轮直径52车长286车宽163传动比18/765.25.2 前轮倾角调节前轮倾角调节调试中发现,在车模过弯时,转向舵机的负载会因为车轮转向角度增大而增大。为了尽可能降低转向舵机负载,对前轮的安装角度
38、,即前轮定位进行了调整。前轮定位的作用是保障汽车直线行驶的稳定性,转向轻便和减少轮胎的磨损。前轮是转向轮,它的安装位置由主销内倾、主销后倾、前轮外倾和前轮前束等 4 个因素决定,反映了转向轮、主销和前轴等三者在车架上的位置关系。主销内倾是由主销装在前轴略向内倾斜的角度,它的作用使前轮自动回正。角度越大前轮自动回正的作用就越强烈,但转向时就越费力,轮胎磨损增大;反之,角度越小前轮自动回正的作用就越弱。主销后倾是指主销装在前轴,上端略向后倾斜的角度。它使用车辆转弯时产生的离心力所形成的力矩方向与车轮偏转方向相反,迫使车轮偏转自动恢复到原来的中间位置上。由此,主销后倾角越大,车速越高,前轮稳定性也越
39、好。主销内倾和主销后倾都有使转向自动回正,保持直线行驶的功能。不同之处是主销的回正与车速无关,主销后倾的回正与车速有关,因此高速时后倾回正作用大,低速时内倾的回正作用大。前轮外倾角对汽车的转弯性能有直接影响,它的作用是提高前轮的转向安全和转向操纵的轻便性。前轮外倾角俗称“外八字”,如果车轮垂直地面一旦满载就易产生变形,可能引起车轮上部向内倾侧,导致车轮联接件损坏。所以事先将车轮校偏一个外八字角度,这个角度约为 1左右。所谓前束是指两轮之间的后距离数值与前轮数值之差,也值前轮中心线与纵线向中心线的夹角,其惯性力会自然将轮胎向内偏斜,如果前束适当,轮胎滚动时的偏斜方向就会抵消,轮胎内外侧磨损的现象
40、就会减少。5.35.3 齿轮传动机构调节齿轮传动机构调节这套车模采用双电机差速,点击直接与车轮相连。因为电机的转速相当大,为便于调节转换,我们采用了齿轮减速,即二级齿轮传动。为了使双电机差速具有很好的差速效果,这就需要两边轮性能无比接近。不但需要保证电机本身的性能接近,而且由两电机传到轮的齿轮传动机构也要区别不大,保证传动过程机械阻力,灵活度相当。所以齿轮调节很重要。在调节中,需要保证传动轴的同轴度,让他在允许的误差范围内,这将减小齿轮打齿现象。齿轮轴的距离也要适中,过大会导致齿轮啮合面减小,不利于力的传递;过小会是齿轮啮合过紧,传动受阻;同时也要保证结构紧蹙,在有限的空间里容纳下双电机。5.
41、45.4 舵机安装方式舵机安装方式舵机转向是整个控制系统中延迟较大的一个环节,为了减小此时间常数,通过改变舵机的安装位置,而并非改变舵机本身机构的方法可以提高舵机的响应速度。分析舵机控制转向的理论可以发现,在相同的舵机转向条件下,转向连杆在舵机一端的连接点离舵机轴心距离越远,转向轮转向变化越快。这相当于增大力臂长度,提高线速度。针对上述特性,改变了原装车模的安装方式,将舵机安装在相对的一对称面上。这样安装的优点是:1)改变了舵机的力臂,使转向更灵敏,2)舵机安装在正中央,使左右的转向基本一致;3)重心相对来说靠后,减轻舵机的负载。 5.55.5 其他机构的调节其他机构的调节小车机械性能的好坏会
42、影响到小车跑车的姿态,灵活性。对小车的整体布局的布置就相当必要,为提高小车与地面的附着力,让小车有好的抓地力,同时也保证小车在过弯时不发生侧翻。我们想出各种办法来降低底盘,底盘的高度需要适中。考虑到坡道的影响,当小车在上坡时,如果底盘过低,会在梯形坡拐角处被卡住,因此小车底盘不能太低。第六章 控制策略6.16.1 转向控制转向控制为了保持系统的快速性,本系统采用比列 P 控制方法对小车的舵机进行控制,在获得一场图像的白线的中点后,去中心线的最近一点(Xi,Yi)最远一个点的坐标值(Xj,Yj),则由方向偏差图 8 可以得出方向偏差:tan=W/L=(Xj-Xi)/(Yj-Yi)tan 的大小反
43、应了小车前方道路与当前位置的方向关系,其值越大表明当前小车与路径的夹角 也越大。出了夹角 ,还应考虑白线中心与小车轴线(设为 D/2)的偏离程度 D,即 D=Xi-D/2,因此小车在道路上行驶时,它与白线中心相对位置可由小车的方向偏差 tan 和位置偏差来描述,这两个参数为小车的转角控制提供了依据,其控制示意图如图 9 所示,基于以上分析,小车多级采用开环双比例 P 控制策略,计算公式如图 2 所示:Angel=K1*(Xi-Xj)/(Yi-Yj)+K2*(Xi-D/2)式中:比例系数 K,K:可通过实验得出。得到舵机转角控制值后,再将转角映射成相应的舵机转角 PWM 信号,最终实现小车的路劲
44、跟踪。这种开环双比例 P 控制方法保证了小车在任意道路上能快速稳定的沿白线行驶。6.26.2 速度控制速度控制本车模安装了车速传感器(图 6-3),来采集速度图6-3 车速传感器本次车模配备了两个电机,为获取两个车轮的速度,我们安装了两个光栅测速,将它们的测速之和作为车速。这个值就为 PID 调速需要调节的目标值。那么对车速的控制便可采用 PID 闭环控制。数字 PID 控制分位置式 PID、增量式 PID 和速度式 PID 控制,本次采用增量式 PID 调速策略,其计算公式为:n=KP(en-en-1)+Kien+Kd(en-2en-1+en-2)其中,n 为第 n 次输出增量;en 第 n
45、 次偏差;en-1 第 n-1 次偏差;en-2 第 n-2 次偏差具体控制流程如 6-4 所示:图 6-4 速度PID 控制原理图通过大量试验;并采集转速信号,如图 6-5 可看到 PID 调速效果。从此采样周期为 20ms,目标转速设为 45,从图可看出,从启动稳定速度调节时间大约只有 300ms 响应较快,并且调速稳定,速度基本在目标速度的 5% 之间波动。图 6-5 PID调节速度图形第七章 开发与调试前面的章节中,已经对小车的 CCD 传感器方案从硬件设计到软件构架都做了详尽的介绍和分析,但是这只是如同河的两岸只能遥遥相对却无法相互沟通。所以在对算法进行开发和软硬件联调的过程中就需要
46、一整套的软件开发与调试工具。在整个开发调试过程中,除汇编语言开发的方式以外,使用Metrowerks 公司为 MC9S12 系列专门提供的全套开发工具(Metrowerks CodeWarrior IDE) 。采用 MATLAB 作为辅助开发调试工具,对大量的数据分析。7.17.1 软件开发平台软件开发平台 CodeWarriorCodeWarrior IDEIDECodeWarrior 是由 Metrowerks 公司提供的专门面向 Freescale 所有 MCU 与 DSP 嵌入式应用开发的软件工具,支持摩托罗拉汇编语言、ANSI C 语言和C+语言。现在最新版本以到 CodeWarri
47、or V4.7,本系统在软件开发过程中使用的是 CodeWarrior V4.7。其主要包括集成开发环境 IDE、处理器专家、全芯片仿真、可视化参数显示工具、项目工程管理、专家生成系统、C 交叉编译器、汇编器、链接器以及调试器。CodeWarrior IDE 能够自动地检查代码中的明显错误,它通过一个集成的调试器和编辑器来扫描你的代码,以找到并减少明显的错误,然后编译并链接程序以便计算机能够理解并执行你的程序。每个应用程序都经过了使用象 CodeWarrior 这样的开发工具进行编码、编译、编辑、链接和调试的过程。其主界面如图 6.1 所示。图 6.1 CodeWarrior 主界面7.27.
48、2 在线编程软件设计与应用在线编程软件设计与应用用户在对程序编译完成后,可用两种方式讲 S19 文件下载到单片机:(1)通过专用的背景调试器(BDM)下载;(2)通过串口由事先写入到单片机内的监控程序(BootLoader)下载。本系统采用 BDM 下载方式。在源程序员编译、链接通过之后就可以程序下载了。通过 USB 口与调试工具相连。调试工具通过 BDM 插头与目标板连接。IDE 调试过程:编译汇编连接程序下载调试 进入调试窗,界面如图 5.2 所示。图 6.2 程序调试窗口界面7.37.3 串口调试软件应用串口调试软件应用为实时监控软件流程,可通过 SCI 将单片机 RAM 或 FLASH
49、 中的数据发送到上位机,上位机通过串口调试软件接收单片机发送的数据。本系统中应用的串口调试工具为串口调试软件 ComMaster,其主要有以下几个功能: 可灵活选择、设置串行端口及波特率 发送、接收 16 进制数或 ASCII 字符 定时发送数据 测试串口设备/串口线路 模拟数据传输中出现的各种误码,丢失字符,调试串口的通信协议 监视程序对串口的访问流程串口调试软件 ComMaster 的控制台界面如图 6.3 所示。图 6.3 串口调试软件 ComMaster 界面结语很高兴能够参加 2011 年第六届全国大学生“飞思卡尔”杯智能车大赛,此项比赛是对智慧和毅力的双重挑战。通过本次车模的制作,
50、我们收获颇多。根据赛车总体方案,针对性的查找了大量资料,设计制作了赛车各模块的测试电路。通过实验测试设计方案的可靠性,针对实验结果对方案进行修改,最终确定了各模块的方案,并完成设计。至此,赛车的所有硬件部分已经设计完毕。在编写了流程图后,我们首先提取了赛道各典型位置的图像数据,并对数据进行分析,获得了宝贵的数据资料,为算法的编写提供了依据。最后在编写完程序后,经实道调试不断修改、优化,赛车的性能不断提高。制作完成的智能车模各项技术指标都满足大赛组委会的要求,并在测试赛道上顺利完成了自主的寻迹行驶, 整个过程完全由我们参赛队员自己制作,并在指导老师的指导督促下顺利完成。我们的小车并不十分完善,还
51、有很多需要改进的地方,有些问题任然存在,我想整个比赛过程也就是不但发现问题解决问题的过程。参加这个比赛的意义也就是培养我们不但发现问题和解决问题的能力。参考文献:1 邵贝贝。单片机嵌入式应用的在线开发方法M.北京:清华大学出版社,2004.2 王宜怀,刘晓升。嵌入式应用技术基础教程M. 北京:清华大学出版社,2005.73 陈家瑞。汽车构造M。第2 版,北京:机械工业出版社.2005.14 余志生,汽车理论M。第4 版。北京:机械工业出版社 2006.55 王晓明。电动机的单片机控制M.北京:北京航空航天大学出版社,2002.56 苏明,陈伦军,林浩。模糊PID 控制及其MATLAB 仿真J.
52、现代机械,2004 年第4 期7 胡晨晖,陆佳南,陈立刚。第二届“飞思卡尔”智能车大赛技术报告J.2007。108 附录源代码*部分源代码*LCM1010 initialize;*LCM1010_initialize: * KCB control and status flag;*;/设置为输入 BCLR KBUpDown_D,#KBUpDownBite;* BCLR KBIncrease_D,#KBIncreaseBite BCLR KBDecrease_D,#KBDecreaseBite;指示灯 BSET ZhiShiDeng_D,#ZhiShiDeng_Pin BSET ZhiShiDe
53、ng_P,#ZhiShiDeng_Pin*;*;定义输出BSET LCM1010_CS_P,#LCM1010_CS_ADR ;CS=1 BSET LCM1010_CS_D,#LCM1010_CS_ADR* CLR LCM1010_Command CLR LCM1010_DATA CLR LCM1010_Addr CLR LCM1010_NumRTS*Definition LCD*LCD_start: MOVB #%00100100,LCM1010_Command;写入模块专用初始化命令定义模块 JSR WriteCommand MOVB #%00011000,LCM1010_Command;定
54、义内部 RC 振荡方式 JSR WriteCommand MOVB #%00000001,LCM1010_Command;开振荡器 JSR WriteCommand MOVB #%00000011,LCM1010_Command;开显示器 JSR WriteCommand RTS*KCB CONTURE LCD*System_Set:*;*InstrumentSetting_01: MOVB #%00000000,LCM1010_Addr MOVW #00100,LCM1010_DataBB MOVW STEERING_CENTER,LCM1010_DataAA;/舵机中指(第一个参数的设定)
55、 JSR DisplayWriteData JSR LCD_delay100ms JSR LCD_delay100ms JSR LCD_delay100msCheckSetting_01: BRCLR KBUpDown_P,#KBUpDownBite,InstrumentSetting_01End;/ BRCLR KBIncrease_P,#KBIncreaseBite,IncreaseSetting_01 BRSET KBDecrease_P,#KBDecreaseBite,CheckSetting_01DecreaseSetting_01: JSR LCD_delay BRSET KBDe
56、crease_P,#KBDecreaseBite,CheckSetting_01 JSR LCD_delay100ms LDD LCM1010_DataAA SUBD #2 ;单次递减量 STD LCM1010_DataAA STD PWMDTY0 JSR DisplayWriteData BRA CheckSetting_01IncreaseSetting_01: JSR LCD_delay BRSET KBIncrease_P,#KBIncreaseBite,CheckSetting_01 JSR LCD_delay100ms LDD LCM1010_DataAA ADDD #2 ;单次累
57、加量 STD LCM1010_DataAA STD PWMDTY0 JSR DisplayWriteData BRA CheckSetting_01InstrumentSetting_01End: JSR LCD_delay BRSET KBUpDown_P,#KBUpDownBite,CheckSetting_01 JSR LCD_delay100ms JSR LCD_delay100ms JSR LCD_delay100ms MOVW LCM1010_DataAA,STEERING_CENTER ;设置成功后给该参数 MOVW STEERING_CENTER,PWMDTY0*;*Instr
58、umentSetting_02:MOVB #%00000000,LCM1010_AddrMOVW #00200,LCM1010_DataBB LDD CCDHighSpeed ;第二个参数的设置STD LCM1010_DataAAJSR DisplayWriteDataCheckSetting_02: BRCLR KBUpDown_P,#KBUpDownBite,InstrumentSetting_02End BRCLR KBIncrease_P,#KBIncreaseBite,IncreaseSetting_02 BRSET KBDecrease_P,#KBDecreaseBite,Chec
59、kSetting_02DecreaseSetting_02: JSR LCD_delay BRSET KBDecrease_P,#KBDecreaseBite,CheckSetting_02 JSR LCD_delay100ms LDD LCM1010_DataAA SUBD #2 ;单次递减量 STD LCM1010_DataAA JSR DisplayWriteData BRA CheckSetting_02IncreaseSetting_02: JSR LCD_delay BRSET KBIncrease_P,#KBIncreaseBite,CheckSetting_02 JSR LCD
60、_delay100ms LDD LCM1010_DataAA ADDD #2 ; ;单次累加量 STD LCM1010_DataAA JSR DisplayWriteData BRA CheckSetting_02InstrumentSetting_02End: JSR LCD_delay BRSET KBUpDown_P,#KBUpDownBite,CheckSetting_02 JSR LCD_delay100ms JSR LCD_delay100ms JSR LCD_delay100ms LDD LCM1010_DataAA;- STD CCDHighSpeed ;设置成功后给该参数 ;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 协议书和合同怎么查找
- 租地协议书合同
- 求兼职主播合同协议书
- 租房协议书没有合同
- 双人餐饮合同协议书
- 合同违约协议书范本
- 运费协议书合同
- 种植基地终止合同协议书
- 男女合同协议书
- 网络员考试题及答案
- 人工智能训练师(中级数据标注员)理论考试题库(含答案)
- 中考数学解题技巧专题巧用旋转进行计算全国公开课一等奖百校联赛微课赛课特等奖课件
- MOOC 人工智能原理-北京大学 中国大学慕课答案
- 《杠杆 第1课时》示范公开课教学设计【初中物理苏科版九年级上册】
- 泛血管疾病抗栓治疗中国专家共识2024版解读课件
- 2021年4月自考00372公安信息学试题及答案含解析
- 消防安全演习题含答案
- 超星尔雅学习通《创新创业(同济大学)》2024章节测试含答案
- 工程项目管理(第五版)课件
- 旅拍跟酒店合作协议
- 好老师是民族的希望
评论
0/150
提交评论