当前位置:文档之家› 飞思卡尔智能车摄像头组技术报告

飞思卡尔智能车摄像头组技术报告

飞思卡尔智能车摄像头组技术报告
飞思卡尔智能车摄像头组技术报告

第七届“飞思卡尔”杯全国大学生

智能汽车竞赛

技术报告

(校徽)

学校:*********

队伍名称:******

参赛队员:******

******

******

带队老师:******

关于技术报告和研究论文使用授权的说明

本人完全了解第七届“飞思卡尔”杯全国大学生智能汽车邀请赛关保留、使用技术报告和研究论文的规定,即:参赛作品著作权归参赛者本人,比赛组委会和飞思卡尔半导体公司可以在相关主页上收录并公开参赛作品的设计方案、技术报告以及参赛模型车的视频、图像资料,并将相关内容编纂收录在组委会出版论文集中。

参赛队员签名:

带队教师签名:

日期:

摘要

本文以第七届全国大学生智能车竞赛为背景,介绍了智能赛车控制系统的软硬件结构和开发流程。该比赛采用组委会规定的标准车模,以 Freescale 半导体公司生产的 16 位单片机MC9S12X128为核心控制器,在 CodeWarrior IDE开发环境中进行软件开发,要求赛车在未知道路上完成快速寻线。整个系统涉及车模机械结构调整、传感器电路设计及信号处理、控制算法和策略优化等多个方面。为了提高智能赛车的行驶速度和可靠性,对比了不同方案(如摄像头与光电管检测方案)的优缺点,并结合 Labview 仿真平台进行了大量底层和上层测试,最终确定了现有的系统结构和各项控制参数。它采用摄像头对赛道进行检测,通过边缘提取获得黑线位置,用 PID 方式对舵机进行反馈控制。通过速度传感器获取当前速度,采用增量式数字PID控制实现速度闭环,根据预判信息和记忆信息对速度进行合理分配。同时采用拨码开关和LCD显示屏实现人机交互系统。测试结果表明,在该控制系统下,自寻迹机器人小车具有良好的位置跟踪和快速切换速度性能。

关键词:智能车,跟踪寻迹,摄像头,传感器,PID,最优曲率

ABSTRACT

In the background of the 7nd National Intelligent Car Contest for College Students, this article introduces the soft hardware structures and the development flow of the vehicle control system. This contest adopting the standard model car prescribed by the contest organization committee, using the 16-bit MCU MC9S12X128 produced by Freescale Semiconductor Company as the core controller, developing under the CodeWarrior IDE, requires the car track the line fast on the road. The whole system includes the aspects of the mechanism structure adjustment, the sensor circuit design and signal process, controlalgorithm and strategy optimization etc.In order to increase the speed and the reliability of the car, the advantage and disadvantage of the different schemes (such as the camera and photoelectric cell scheme) are compared, and a great number of the bottom layer and the upper layer tests are carried on combined with the Labview simulation platform. At last, the current system structure and each control parameters are determined. It captures the road information through a camera, then abstracts the black line position by edge-detection method. After that, PD feedback control is used on the steering. The system obtains the current speed using a speed sensor, so that it can realize the feedback control of the speed by the increased digital PID algorithm control method. At the same time, the use of an LCD displays trails information and keyboard is used to achieve the man-machine interaction. According to the pre-judge inform and the memorized inform, it allocates the speed properly. The test results showed that the self-tracing robot car had good position tracking and fast speed switching performance .

Key words:intelligent vehicle,line track, camera,sensor, PID, optimal curvature

目录

第一章:引言 (1)

1.1背景介绍 (1)

1.2发展现状 (1)

1.3章节安排 (2)

第二章:系统整体框架 (3)

2.1系统框架 (3)

2.1.1硬件系统 (3)

2.2.2软件系统 (4)

2.2方案简介 (4)

第三章:机械设计 (6)

3.1汽车行驶的数学模型 (6)

3.2整体布局与调整 (7)

3.2.1车模分析 (7)

3.2.2 车模布局思想 (8)

3.3机械结构调整 (9)

3.3.1前后轮定位 (9)

3.3.2其他机械模块调整 (9)

3.3摄像头的安装 (9)

3.4舵机的安装 (10)

3.5编码器的安装 (10)

第四章:硬件电路设计 (12)

4.1硬件设计方案 (12)

4.2传感器的选择 (12)

4.2.1摄像头 (12)

4.2.2编码器 (12)

4.3电路设计方案 (13)

4.3.1单片机最小系统板 (13)

4.3.2稳压模块电路 (14)

4.3.3驱动模块电路 (14)

第五章:软件系统设计 (16)

5.1 软件各功能模块设计 (16)

5.1.1 时钟模块 (16)

5.1.2 PWM输出模块 (16)

5.1.3 ECT模块 (17)

5.1.4外部中断 (17)

5.2视频采集与图像处理 (17)

5.2.1摄像头工作原理 (17)

5.2.2图像处理 (18)

5.3路径识别思想 (21)

5.4舵机转向和速度调节 (23)

5.4.1PID控制算法介绍 (23)

5.4.2舵机转向控制 (24)

5.4.3速度控制 (25)

5.4.4细节控制 (25)

第六章:开发环境、调试工具 (28)

6.1软件开发平台Codewarrior IDE (28)

6.2辅助调试方法 (28)

6.2.1 Labview调试 (28)

6.2.2人机交互界面 (29)

6.2.3无线模块 (29)

第七章:结论 (31)

参考文献 (32)

鸣谢 (32)

第一章:引言

1.1背景介绍

智能汽车就是一种无人驾驶汽车,也可以称之为轮式移动机器人,主要依靠车内以计算机系统为主的智能驾驶仪来实现无人驾驶。它一般是利用车载传感器来感知车辆周围环境,并根据感知所获得的道路、车辆位置和障碍物信息,控制车辆的转向和速度,从而使车辆能够安全、可靠地在道路上行驶。无人驾驶汽车从根本上改变了传统的“人一车一路”闭环控制方式,将不可控的驾驶员从该闭环系统中请出去,从而大大提高了交通系统的效率和安全性。现代无人驾驶汽车以汽车工业为基础,以高科技为依托,遵循由低到高、由少到多、由单方面到多方面、螺旋上升的规律发展。其横向发展离不开各种用途的实际需要,而其纵向发展的生命力在于持续不断的技术创新。

全国大学生飞思卡尔智能汽车竞赛是受教育部高等教育司委托,由教育部高等自动化专业教学指导分委员会主办的全国大学生智能汽车竞赛。该竞赛以智能汽车为研究对象的创意性科技竞赛,是面向全国大学生的一种具有探索性工程实践活动,是教育部倡导的大学生科技竞赛之一。该竞赛以“立足培养,重在参与,鼓励探索,追求卓越”为指导思想,旨在促进高等学校素质教育,培养大学生的综合知识运用能力、基本工程实践能力和创新意识,激发大学生从事科学研究与探索的兴趣和潜能,倡导理论联系实际、求真务实的学风和团队协作的人文精神,为优秀人才的脱颖而出创造条件。

大赛按照传感器类别的不同分为三个组别:光电组、摄像头组、电磁组。各组自己设计、选择规则允许内的传感器件,结合赛会指定的微控制器件,进行车辆运行中赛道信息的识别、动力控制、转向控制等具体内容。在赛会规则的允许范围内,最快完成比赛的将取得最好成绩。

本报告将从硬件到软件一一的为大家呈现本智能车的设计方案和制作过程。

1.2发展现状

智能汽车,是一种集环境感知、规划决策、自动行驶等功能于一体的综合系统,集中地应用到自动控制、模式识别、传感器技术、汽车电子、电气、计算机、机械等多个学科,是典型的高新技术综合体,具有重要的军用及民用价值。

在20世纪80年代,美国就提出自主地面车辆(ALV)计划,这是一辆8轮车,能在校园的环境中自主驾驶,但车速不高。1995年,一辆由美国卡耐基梅隆大学研制的无人驾驶汽车Navlab—V,完成了横穿美国东西部的无人驾驶试验。2005年,美国国防部“大挑战”比赛上,最终由美国斯坦福大学工程师们改装的一辆大众途锐多功能车经过7个半小时的长途跋涉完成了全程障碍赛,第一个到达了终点。在无人驾驶技术研究方面位于世界前列的德国汉堡Ibeo公司,最近推出了其研制的无人驾驶汽车。我国国防科技大学从20世纪80年代开始进行无人驾驶汽车技术研究。2000年6月,国防科技大学研制的第4代无人驾驶汽车试验成功,最高时速达76 km,创下国内最高纪录。以上转述只是冰山一角,智能车的技术正在不断发展中。

目前,智能车领域的研究已经能够在具有一定标记的道路上为司机提供辅助驾驶系统甚至实现无人驾驶。这些智能车的设计通常依靠特定道路标记完成识别,通过推理判断模仿人工驾驶进行操作。通常,智能车接受辅助定位系统提供的信

息完成路径规划,如由GPS等提供的地图,交通拥堵状况,道路条件等信息。1.3章节安排

本文内容的安排如下所示:

第一章引言本章主要介绍了 Freescale 车模竞赛的基本情况,智能车的发展状况。

第二章系统整体框架本章对系统硬件模块方案和软件控制方法进行了

选择与论证。

第三章机械设计本章对机械结构的安装与改进,各个模块的安装技巧作了详细的介绍。

第四章硬件电路设计本章主要介绍了自行设计的基于飞思卡尔单片机

的最小系统板的设计,电源模块、驱动模块、摄像头模块和速度传感器模块的设计与实现。

第五章软件系统设计本章软件系统各模块的设计思路作了详细的介绍。特别介绍了图像处理中的各种技巧、PID 控制策略的应用和起跑线识别算法的设计等问题

第六章开发工具及其调试本章对开发工具与调试方法作了简单介绍。

结论对整个参赛过程中的经验与教训作了总结。

第二章:系统整体框架

2.1系统框架

智能汽车系统分为两个部分:硬件系统与软件系统。硬件系统包括了电路系统和机械系统;而软件系统则可以分为底层代码和实现算法,后者主要包括用于实现路径识别的算法、电机转速闭环、舵机角度控制和导引策略等。具体层次结构如图2.1所示。本文分层次展开硬件系统与软件系统。

图 2.1 智能汽车系统结构图

2.1.1硬件系统

根据需求分析,经过仔细研究,决定采用模块化设计。智能汽车的硬件系统由核心控制模块(MCU)、传感器模块、电源管理模块、存储器模块、电机驱动模块、舵机驱动模块、人机接口模块、无线通讯模块和放电器模块组成,如图2.2所示。

图2.2 智能汽车控制系统总体设计框图

2.2.2软件系统

系统的软件流程图如图2.3:

图2.3 系统流程图

2.2方案简介

智能汽车系统的工作原理是预瞄理论和闭环控制理论的典型体现。其示意图如图2.4所示。

图2.4 智能车系统工作原理示意图

在本届比赛中,组委会提供了多种单片机可供选择,分为16位和32位两种类型。我们选择了总线频率较高的16位MC9S12XS128作为主控芯片,并且自己制作了最小系统板。图像采集单元,考虑到动态性、功耗性以及复杂性,我们经过对比最终选择了CMOS的OV7620作为图像采集传感器。将图像采集来后,为了减小干扰,首先我们对整幅进行了二值化,然后利用跟踪边缘算法对黑线进行提

取,为了使提取的黑线更加准确我们对提取的黑线进行了中值滤波和限幅滤波。最终使黑线的变化更加平稳。提取出黑线后,我们采用了PD策略对舵机进行控制,增量式PID对电机进行控制;并结合最优曲率算法和中心偏移量识别赛道类型,让小S直接冲过去,大S尽量内切,最大难度的发卡弯沿线通过。然后,小车的速度根据前方的路况自动调整。

在硬件方面,我们为了使电路更加简化,自己制作了最小系统板,使得单片机,电源,电机驱动等模块集中到了一块最小系统板上,合理分布,最大限度的优化小车硬件与机械结构。

第三章:机械设计

任何的控制算法和软件程序都是需要一定的机械结构来执行和实现的,因此在设计整个软件架构和算法之前一定要对整个车模的机械结构有一个感性的认识,然后建立相应的数学模型。从而再针对具体的设计方案来调整赛车的机械结构。本章的将主要介绍赛车车模的机械特点和调整方案。

3.1汽车行驶的数学模型

汽车是现代社会的主要交通工具,在对汽车研究过程中,形成了一大批研究成果。我们在查阅了一大堆资料的前提下,形成了自己对汽车原理的首先建立汽车行驶的数学模型(见图3.1)

图3.1 汽车行驶数学模型

图中:

AP ,BN 为连接杆与主销之间的杆长L 杆

AB ,CD 为前轮轴长L 前,后轮轴长L 后

KL 为前轴与后轴的轴距L 轴距

根据汽车理论, 假设轮胎不打滑,并忽略轮胎所受的重力作用产生的形变以及左右两侧轮胎由于受力不均产生的形变,即可得到理想的汽车转向模型:如图3.1所示,即左右两轮的轴线与后轮的主轴,三点交于车身中心所处道路位置的曲率中心。不失一般性, 这里只讨论右转的情形。

对于图3.1,设左轮转向为L θ,右轮角分别为R θ,对于以上模型,显然有如下关系:,L R PAQ POC MAN NOD θθ=∠=∠=∠=∠

于是得到在理想状态下,汽车的过弯时的转角方程:

公式(1)

同样也可以得到右转时

公式(2)

采用第七届“飞思卡尔”智能车大赛组委会提供的韩国Matiz 系列1:10模型车的参数对公式(1),公式(2)进行仿真。得到车模行驶时理论转弯半径与车轮转角的关系(见图3.2)和右轮也左轮的转角关系(见图3.3)

3.2 弯半径与车轮转角关系 图3.3 右、左轮的转角关系

在模型车结构参数一定的情况,小车左右两轮的转角存在一定的函数关系,当向右过弯时,右轮转向比左轮转向大,同理向左转弯时,左轮转向较右轮转向大,同时,随着道路曲率半径的越大,车轮所需的转角越小。在实际调试过程中,要以理论为基础,配合以上理论计算公式,寻找小车的轮速参数。

3.2整体布局与调整

在整个智能车系统中,优良的系统构架是一个优秀车模不可或缺的重要基础,而车模的整体布局又是参与此类竞速比赛的车模的基础中的基础。车模的整理布局在很多方面决定了车模潜力的挖掘和技术水平的发挥,甚至在某些情况下影响着软件设计和控制算法。下面将分模块予以分析。

3.2.1车模分析

在此届比赛中,摄像头组使用的车模是由广东东莞市博思电子数码科技有 限公司提供的G768车模平台(图 3.4),配置 FUTABA3010 型号伺服器(图 3.5) 和 RN260 电机 (图 3.6)。

()()cos cos tan tan L R L R

L L L L L θθθθ---=杆杆轴距轴距

前R =

图3.4 模型车车体

图3.5伺服器图3.6电机该车模结构合理,重心位置控制较好,重心较低,前后轮距合理。特别是传动系统性能优良,相比较与上届的B型车模,该车模的动态传动系统要好很多。并且车模的本身结构也有利于参赛选手根据自身情况进行适当的改装,满足自身控制的需求。但是该车模也有一个缺陷,及其配置的驱动电机带载能力比较差,电机本身在带载情况下的加速性能比较差,这就给调速带来了很大的麻烦,这些将在调试中具体探讨。

3.2.2 车模布局思想

为了使车模在竞赛中发挥出最好的水平,我们最车模的布局有以下几个想法:第一车模的整体布局应该尽量简洁。这对于车模的整体质量影响很大,以至于影响速度的发挥。而且,在很多方面关系着车模的整理稳定性。因此,尽可能的去除车模上的冗余结构很有必要。

第二车模的整体布局应该做到稳定。车模的稳定不只是机械结构上的稳定,同样也对电路的稳定性有这很大的要求。车模的电路设计方面应该努力屏蔽噪声干扰对整个电路带来的影响。

第三车模的整体布局应该做到高效。此次智能车竞赛必竟是竞速比赛,毫秒之间可以决定胜负。因此,车模能否做到高效是关系速度的一个重要指标。

从以上角度出发,最终我们设计出自己的车模模型,实物如图3.7所示。

图3.7 实体车型

3.3机械结构调整

3.3.1前后轮定位

在调试中我们发现,模型车过弯时,转向舵机的负载会因为车轮转向角度增大而增大。为了尽可能降低转向舵机负载,我们对前轮定位进行了调整。前轮定位的作用是保障汽车直线行驶的稳定性和转向轻便。前轮定位参数主要包括:主销后倾角(图3.8)、主销内倾角(图3.9)、前轮外倾角和前轮前束。我们将前轮外倾角和前轮前束分别设为0 度、0mm,主销稍微内倾和后倾。后轮采用窄轮距,可有效避免切弯过度时有一个后轮跑出去。

图3.8主销后倾角图3.9主销内倾角

3.3.2其他机械模块调整

除了以上部分的调整外,还对主悬架弹簧松紧、底盘高度和齿轮传动机构进行了适当调整。通过增加避震弹簧的刚性、降低底盘高度、调整齿轮间隙,改善了赛车的行驶表现。

3.3摄像头的安装

摄像头安装主要考虑的问题有:固定摄像头的材料,摄像头的安装位置和摄像头的安装高度。为了降低整车重心,需要严格控制CMOS摄像头的安装位置和重量,我们自行设计了轻巧的铝合金夹持组件并采用了碳纤维管作为安装CMOS的主桅,这样可以获得最大的刚度质量比,整套装置具有很高的定位精度

和刚度,使摄像头便于拆卸和维修,具有赛场快速保障能力。摄像头的安装如图3.10/3.11所示。

图3.7底座-单杆安装图图3.8单杆-摄像头安装图

3.4舵机的安装

舵机转向是整个车模系统中延迟最大的一个环节,为了减小此时间常数,通过改变舵机的安装位置,加长力臂可以提高舵机的响应速度。鉴于往届经验以及本届车模舵机性能,我们进行多套方案的试验,诸如将舵机竖直、水平以及其它不同方向的摆放方法。考虑到舵机响应时间、稳定性以及虚位的诸多因素,我们最终选择倒卧式安装舵机,延长舵机臂杆至 33mm,并自行设计了舵机安装支架,达到了很好的效果。具体安装见图3.12。

图3.12舵机安装效果图

3.5编码器的安装

对光电编码器的安装,可以将光栅盘安装在电机轴上,通过先计算电机转速再来计算模型车后驱动轴得知车速。但是,这种方法太麻烦,并且在电机轴上装光栅盘会影响电机的性能。所以,我们将光栅盘安装在模型车后驱动轴上,根据

光电编码器的输出脉冲计算不同时刻模型车的后轮转速。光电编码器的固定如图3-10 所示(欧姆龙500p)。此处要注意的是,装在光电编码器上的齿轮个数不要太多,太多了就会降低检测精度。我们用的齿轮是 17齿。配齿轮时还要注意模数这个参数,模数不匹配齿轮就会装不上,此处齿轮模数为0.5。装齿轮时注意不要过紧也不要过松。

图3.10光电编码器

第四章:硬件电路设计

4.1硬件设计方案

从最初进行硬件电路设计时我们就既定了系统的设计目标:可靠、高效、简洁,在整个系统设计过程中严格按照规范进行。

可靠性是系统设计的第一要求,我们对电路设计的所有环节都进行了电磁兼容性设计,做好各部分的接地、屏蔽、滤波等工作,将高速数字电路与模拟电路分开,使本系统工作的可靠性达到了设计要求。

高效是指本系统的性能要足够强劲。我们主要是从以下两个方面实现的:

(1) 采用运算放大器设计的比较器实现了图像二值化的高速转换,大大提高了图像采集的分辨率;

(2) 使用了由分立元件BTS7960制作的直流电动机桥式驱动器,该驱动器的额定工作电流可以轻易达到100A以上,大大提高了电动机的工作转矩和转速。

简洁是指在满足了可靠、高效的要求后,为了尽量减轻整车重量,降低模型车的重心位置,应使电路设计尽量简洁,尽量减少元器件使用数量,缩小电路板面积,使电路部分重量轻,易于安装。我们在对电路进行了详细分析后,对电路进行了简化,合理设计元件排列、电路走线,使本系统硬件电路部分轻量化指标都达到了设计要求。

4.2传感器的选择

4.2.1摄像头

目前市面上常见的摄像头主要有CCD和CMOS两种:CCD摄像头具有对比度高、动态特性好的优点,但需要工作在12V电压下,对于整个系统来说过于耗电,且图像稳定性不高;CMOS 摄像头体积小,耗电量小,图像稳定性较高。因此,经过实验论证之后我们决定采用CMOS摄像头。

对于CMOS摄像头分为数字和模拟两种。在往届比赛中,我们看到有不少参赛队采用涉资摄像头,本着严谨的态度,我们选用了OV7620进行实验,对数字摄像头的可行性进行了论证。经过实验,得到结论:数字摄像头OV7620可以直接输出 8 路数字图像信号,使主板硬件电路的简化成为可能,且能够达到60帧/S的帧速率,能够满足要求。

4.2.2编码器

考虑到智能车的实际速度控制对速度反馈信号波形要求不是太高,因此在满足比赛要求的基础上,我们使用了自制的光电编码器来测速,从而尽量简化电路。我们实验室使用线切割在直径为30mm 的圆盘周围加工出100 个细缝,使用红外光电对射管作为采集码盘脉冲可鉴向的传感器。速度传感器实物图如图4.1所示。

虽然自制的光电编码器结构简单,价格便宜,但是容易受到外部光线和灰尘的干扰,影响测速的精度。因此,我们改用了高性能的欧姆龙EE6A2-CWZ3C如图4.2所示。码盘内部经发光二极管等电子元件组成的检测装置检测输出脉冲信号,通过计算每秒光电编码器输出脉冲的个数就能反映当前驱动电机的转速。

图4.1光电码盘图4.2欧姆龙编码器

4.3电路设计方案

智能车控制系统电路由三部分组成:MC9S12XS128 为核心的最小系统板、主板、ZLG7290键盘。最小系统板可以插在主板上,组成了信号采集、信号处理、电机控制、舵机控制单元。为了减小电机驱动电路带来的电磁干扰,我们把控制单元部分和电机驱动部分分开来,排布在主板的两端。

主板上集成了本系统的主要电路,它包括如下部件:电源稳压电路、最小系统板插座、摄像头接口、舵机接口、电机驱动模块、编码器模块、键盘接口、LCD 电路、拨码开关、指示灯等。

4.3.1单片机最小系统板

单片机最小系统部分使用MC9S12XS128 单片机,112 引脚封装,为减少电路板空间,板上仅将本系统所用到的引脚引出,包括PWM 接口,计数器接口,外部中断接口,若干普通IO 接口。其他部分还包括电源滤波电路、时钟电路、复位电路、串行通讯接口、BDM 接口和SPI接口。单片机最小系统板电路原理图如图 4.3。

图4.3单片机最小系统板电路原理图

4.3.2稳压模块电路

赛会指定的镍镉可充电电池的额定电压为 7.2V,实际调试中,我们发现其电压实际值有时会达到8V 甚至于 8V以上。因此需要有性能优越的抗干扰稳压芯片。

由于电路中的不同电路模块所需要的工作电压和电流容量各不相同,因此电源模块应该包括多个稳压电路,将充电电池电压转换成各个模块所需要的电压。并且单片机的电源好坏直接关系到单片机能否正常工作以至于整个系统的控制稳定。我们在测试了许多类型的稳压芯片之后觉得采用了性能优异的LM2596(图4.4)。它是一款微功耗低压差线性电源芯片使用这个芯片。该芯片稳定工作时所需要的外围器件很少,使用方便。2596 的工作压降很低,静态电流也很小,散热少,很适合这种情况下的使用。

图4.4 LM2596驱动电路

4.3.3驱动模块电路

电机的驱动方案有 MOS 管,MC33886,BTS7960 三种主要的方案。MOS 管的搭建效率较高,驱动电流很大,但是针对现有的双电机情况,用 MOS 管搭建两个电机的驱动较为复杂。MC33886 芯片的内阻较大,发热明显,芯片较大引脚较多。我们最终采用了功能较为完善,性能稳定的 BTS7960 芯片。原理图如图 4.5。为保证 PWM信号的稳定,我们使用了 74LS244 加强信号的稳定,原理图如图4.6。

图4.5 BTS7960原理图

飞思卡尔智能汽车设计技术报告

第九届“飞思卡尔”杯全国大学生 智能汽车竞赛 技术报告 学校:武汉科技大学队 伍名称:首安二队参赛 队员:韦天 肖杨吴光星带队 教师:章政 0敏

I

关于技术报告和研究论文使用授权的说明 本人完全了解第九届“飞思卡尔”杯全国大学生智能汽车竞赛关保留、使用技术报告和研究论文的规定,即:参赛作品著作权归参赛者本人,比赛组委会和飞思卡尔半导体公司可以在相关主页上收录并公开参赛作品的设计方案、技术报告以及参赛模型车的视频、图像资料,并将相关内容编纂收录在组委会出版论文集中。 参赛队员签名: 带队教师签名: 日期:

II

目录 第一章引言 (1) 1.1 概述 (1) 1.2 内容分布 (1) 第二章系统总体设计 (2) 2.1 设计概述 (3) 2.2 控制芯片的选择 (3) 2.3 线性 CCD 检测的基本原理 (3) 2.3 系统结极 (5) 第三章机械系统设计 (7) 3.1 底盘加固 (7) 3.2 轮胎处理 (7) 3.3 四轮定位 (8) 3.4 差速器的调整 (12) 3.5 舵机的安装 (13) 3.6 保护杆的安装 (15) 3.7 CCD的安装 (16) 3.8 编码器的安装 (17) 3.9 检测起跑线光电管及加速度计陀螺仪的安装 (18) 第四章硬件系统设计 (19) 4.1 最小系统版 (20) 4.2 电源模块 (21) 4.3 CCD模块 (22) 4.4 驱动桥模块 (23) 4.5 车身姿态检测模块 (24) 4.7 测速模块 (24) 4.8 OLED液晶屏及按键、拨码 (25) 第5章程序设计 (27)

飞思卡尔智能车比赛细则

2016

目录

第十一届竞赛规则导读 参加过往届比赛的队员可以通过下面内容了解第十一届规则主要变化。如果第一次参加比赛,则建议对于本文进行全文阅读。 相对于前几届比赛规则,本届的规则主要变化包括有以下内容: 1.本届比赛新增了比赛组别,详细请参见正文中的图1和第四章的“比赛任务” 中的描述; 2.第十届电磁双车组对应今年的A1组:双车追逐组。其它组别与新组别的对应 关系请参见图2; 3.为了提高车模出界判罚的客观性,规则提出了两种方法:路肩法和感应铁丝 法,详细请见赛道边界判定”; 4.改变了原有的光电计时系统,所有赛题组均采用磁感应方法计时,详细请参 见“计时裁判系统”; 5.取消了第十届的发车灯塔控制的方式; 6.赛道元素进行了简化,详细请参见“赛道元素”; 7.赛道材质仍然为PVC耐磨塑胶地板,但赛题组A2不再需要赛道。 8.对于车模所使用的飞思卡尔公司MCU的种类、数量不再限制。 9.比赛时,每支参赛队伍的赛前准备时间仍然为20分钟,没有现场修车环节。

一、前言 智能车竞赛是从2006开始,由教育部高等教育司委托高等学校自动化类教学指导委员会举办的旨在加强学生实践、创新能力和培养团队精神的一项创意性科技竞赛。至今已经成功举办了十届。在继承和总结前十届比赛实践的基础上,竞赛组委会努力拓展新的竞赛内涵,设计新的竞赛内容,创造新的比赛模式,使得围绕该比赛所产生的竞赛生态环境得到进一步的发展。 为了实现竞赛的“立足培养、重在参与、鼓励探索、追求卓越”的指导思想,竞赛内容设置需要能够面向大学本科阶段的学生和教学内容,同时又能够兼顾当今时代科技发展的新趋势。 第十一届比赛的题目在沿用原来根据车模识别赛道传感器种类进行划分的基础类组别之上,同时增加了以竞赛内容进行划分的提高类组别,并按照“分赛区普及,全国总决赛提高”的方式,将其中一个类别拓展出创意类组别。第十一届比赛的题目各组别分别如下: ●基础类包括B1光电组、B2摄像头组、B3电磁直立组、B4电轨组; ●提高类包括A1双车追逐组、A2信标越野组; ●创意类包括I1 电轨节能组。 图 1 不同组别,不同挑战度 每个组别在选用的车模、赛道识别方法、完成任务等方面存在差别,对于参赛选手不同学科知识和能力要求也不同,制作的挑战度也有较大的区别。相比较而言,

飞思卡尔智能车摄像头组freescale程序代码

extern int left,w,top,h; extern HDC m_hdc; CBrush brush3(RGB(0,255,0)); CBrush brush4(RGB(255,0,0)); CBrush brush5(RGB(255,255,0)); #else #include #include "math.h" // #include "LQfun.h" #endif #ifdef ccd #define MAX_VIDEO_LINE 39 #define MAX_VIDEO_POINT 187 #else //#define MAX_VIDEO_LINE 26 // #define MAX_VIDEO_POINT 301 #define MAX_VIDEO_LINE 78 #define MAX_VIDEO_POINT 57 #endif extern unsigned char g_VideoImageDate[MAX_VIDEO_LINE][MAX_VIDEO_POINT]; #define INT8U unsigned char #define INT8S signed char #define INT16U unsigned int #define INT16S int #define INT32S int #define NO_DATA_180 254 //#define INT32U unsigned int unsigned char LIMIT=((MAX_VIDEO_POINT)/2); unsigned char MIDDLE[MAX_VIDEO_LINE]; #define MAX_BLACK_NUM 7 INT8S n;

飞思卡尔智能车经验

RT,留下一点不算成功的经验吧。 先说说个人认为要取得好成绩的两个最重要的先决条件。 1. 人,这个是大前提,对于一个好的队伍,判别标准其实很简单,就是队员3个人是玩伴关系还是领导和下属关系。前者,大家都是来玩这个智能车的,自然主观能动性就会很高,能自主学习。不会总是“等着所谓队长分配任务”。这样效率就会很高。成绩自然不会低,后者,如果“队长”个人能力很强的话,就会出现到最后只有“队长”一个人在干。其他的队员就会因为自己技术不行,渐渐退出。而不会因为自己不会而去主动的学习。如果“队长”能力一般,再没有一些强力指导老师的情况下,这样的队伍一般会悲剧掉。所以,新人在参加这个智能车比赛的时就要明确动机。参加智能车确实是来学习知识的,但不会有人真正的来教你。一切都靠自己。 2.跑道,这个是客观条件中最重要的,一条污浊、破损、不符合规则的跑道,是不可能出成绩的。我们学校的赛道就是因为当初制作和后期保养不到位,导致赛道诸多永久性污浊、破损。一开始车刚能爬的时候,问题还不明显,后来在测试让车能平滑过S弯时问题就来了,由于赛道污浊,远处的跑道在CCD看了是错误,导致S弯和普通弯看起来一样,致使S弯策略根本没有启用,当时一直到修改S弯策略,到后来调出图像来看才发现是采集的问题。至于赛道污浊破损带来的干扰要不要处理,答案是肯定的,因为就算是比赛用的跑道也会有擦不掉,补不了的地方。但处理这些问题,应该是放在车辆原先行驶策略都调试正确的情况下,再人为的加入这些干扰。这样修改程序起来就有的放矢。 下面再以个人的观点介绍一下3个组别的特点,给新人选择做一个参考。 摄像头:有点像开卷考试,能得到的东西很多,但是如何把这些东西用好就是一个学问。摄像头的关键就是如何从采集回来的图像所包含的诸多信息中,选出一些高效方便的信息来控制车辆。至于控制策略,个人觉得一个能根据不同赛道类型而变化比例系数的比例控制器就能很好的满足控制需要。 光电组:想象起来很容易,其实很累的一个组,原理最简单,但是为了能有30CM以上的前瞻,和比较连续的偏差变化,就要下大功夫,先不说别的,让你装15个激光管,而且要保证不焊烧并要把光点打在一条线上,就是很繁琐的事情。总得来说,光电组拼的就是电路和传感器结构。不过对于看客来说,光电组是最好“看”的组,一排壮观的激光加上摆头的机械~ 电磁组:听起来有点复杂,其实比前两个组都轻松的组,电磁组又可分为数字和模拟两个类别。数字传感器就是和光电一样弄一排的传感器,看看哪个传感器接收到的信号最强以判断中线位置。模拟的就是比较两个传感器之间信号强度的差值来判断。电磁组好处就是不容易受到干扰,比赛上也见的,电磁车跑完的成功率是很高的,而且很容易判别起跑线。基本不用懂脑筋。而且如果选用是模拟传感器的话,能得到比较平滑的控制。 先说这些,想到再继续 关于摇头激光车的一点个人理解:为什么光电的车,要多花一个舵机去让传感器摇头呢?因为。为了能获得赛道上一个比较宽范围的信息,就必须把传感器做的很长。这样的后果 就是重量。折中的办法就是摇头,通过摇头,可以使一个小尺寸的传感器检测到大范围 DEMOK工作室淘宝小店

基于嵌入式STM32的飞思卡尔智能车设计



飞思卡尔智能车大赛是面向全国大学生举办的应用型比赛, 旨在培养创新精 神、协作精神,提高工程实践能力的科技活动。大赛主要是要求小车自主循迹并 在最短时间内走完整个赛道。针对小车所安装传感器的不同,大赛分为光电组、 电磁组和摄像头组。 本文介绍了本院自动化系第一届大学生智能汽车竟赛的智能车系统。 包括总 体方案设计、机械结构设计、硬件电路设计、软件设计以及系统的调试与分析。 机械结构设计部分主要介绍了对车模的改进,以及舵机随动系统的机械结构。硬 件电路设计部分主要介绍了智能车系统的硬件电路设计, 包括原理图和 PCB 设计 智能车系统的软、 硬件结构及其开发流程。该智能车车模采用学校统一提供的飞 思卡尔车模,系统以 STM32F103C8T6 作为整个系统信息处理和控制命令的核心, 使用激光传感器检测道路信息使小车实现自主循迹的功能
关键字:飞思卡尔智能车STM32F103C8T6
激光传感器
第一章 概述

1.1 专业课程设计题目
基于嵌入式 STM32 的飞思卡尔智能车设计
1.2 专业课程设计的目的与内容
1.2.1 目的 让学生运用所学的计算机、传感器、电子电路、自动控制等知识,在老师的 指导下,结合飞思卡尔智能车的设计独立地开展自动化专业的综合设计与实验, 锻炼学生对实际问题的分析和解决能力,提高工程意识,为以后的毕业设计和今 后从事相关工作打下一定的基础。 1.2.2 内容 本次智能车大赛分为光电组和创新做,我们选择光电组小车完成循迹功能。 该智能车车模采用学校统一提供的飞思卡尔车模, 系统以 STM32F103C8T6 作为整 个系统信息处理和控制命令的核心,我们对系统进行了创造性的优化: 其一, 硬件上采用激光传感器的方案, 软件上采用 keil 开发环境进行调试、 算法、弯道预判。 其二,传感器可以随动跟线,提高了检测范围。 其三,独立设计了控制电路板,充分利用 STM32 单片机现有模块进行编程, 同时拨码开关、状态指示灯等方便了算法调试。
1.3 方案的研讨与制定
1.3.1传感器选择方案 方案一:选用红外管作为赛道信息采集传感器。 由于识别赛道主要是识别黑白两种不同的颜色, 而红外对管恰好就能实现区 分黑白的功能,当红外光照在白色KT板上时,由于赛道的漫反射作用,使得一部 分红外光能反射回来, 让接收管接的输出引脚的电压发生变化,通过采集这个电 压的变化情况来区分红外光点的位置情况,以达到区分赛道与底板的作用。 红外管的优点在于价格便宜,耐用;缺点却用很多:1、红外光线在自然环 境中,无论是室内还是室外均比较常见,就使得其抗干扰能力不强,容易受环境 变化的影响。2、调试不方面,由于红外光是不可见光,调试的时候需要采用比 较麻烦的方法来判断光电的位置。3、由于红外管光线的直线性不好,就使得红 外传感器所能准确的判断的最远距离比较小,也就是通常所说的前瞻不够远。

飞思卡尔智能车电机资料

3.1.6驱动电机介绍 驱动电机采用直流伺服电机,我们在此选用的是RS-380SH型号的伺服电机,这是因为直流伺服电机具有优良的速度控制性能,它输出较大的转矩,直接拖动负载运行,同时它又受控制信号的直接控制进行转速调节。在很多方面有优越性,具体来说,它具有以下优点: (1)具有较大的转矩,以克服传动装置的摩擦转矩和负载转矩。 (2)调速范围宽,高精度,机械特性及调节特性线性好,且运行速度平稳。 (3)具有快速响应能力,可以适应复杂的速度变化。 (4)电机的负载特性硬,有较大的过载能力,确保运行速度不受负载冲击的 影响。 (5)可以长时间地处于停转状态而不会烧毁电机,一般电机不能长时间运行于 停转状态,电机长时间停转时,稳定温升不超过允许值时输出的最大堵转转矩称为连续堵转转矩,相应的电枢电流为连续堵转电流。 图3.1为该伺服电机的结构图。图3.2是此伺服电机的性能曲线。 图3.1 伺服电机的结构图

图3.2 伺服电机的性能曲线 3.1.7 舵机介绍 舵机是一种位置伺服的驱动器,适用于那些需要角度不断变化并可以保持的控制系统。其工作原理是:控制信号由接收机的通道进入信号调制芯片,获得直流偏置电压。它内部有一个基准电路,产生周期为20ms,宽度为1.5ms的基准信号,将获得的直流偏置电压与电位器的电压比较,获得电压差输出。最后,电压差的正负输出到电机驱动芯片决定电机的正反转。当电机转速一定时,通过级联减速齿轮带动电位器旋转,使得电压差为0,电机停止转动。舵机的控制信号是PWM信号,利用占空比的变化改变舵机的位置。一般舵机的控制要求如图3.3所示。图3.4为舵机的控制线。

飞思卡尔智能车竞赛新手入门建议

每年都会有很多新人怀着满腔热情来做智能车,但其中的很多人很快就被耗光了热情和耐心而放弃。很多新人都不知道如何入手,总有些有劲无处使的感觉,觉得自己什么都不会,却又不知道该干什么。新人中存在的主要问题我总结了以下几点: l缺乏自信,有畏难情绪 作为新人,一切都是新的。没有设计过电路,没有接触过单片机,几乎什么都不会。有些新人听了两次课,看了两篇技术报告,就发现无数不懂不会的东西,于是热情在消退,信心在减弱。这些都是放弃的前兆。殊不知,高手都是从新人过来的,没有谁天生什么都会做。一件事件,如果还没开始做,就自己否定自己,认为自己做不到,那么肯定是做不到的。 l习惯了被动接收知识,丧失了主动学习的能力。 现在的学生大多从小习惯了被灌输知识,只学老师教的,只学老师考的。殊不知一旦走向社会,将不再有老师来教,不再有应付不完的考试。做智能车和传统的教学不同,学生将从被动学习的地位转变为主动学习。就算有指导老师,有指导的学长,但也都处于被动地位,往往都不会主动来教。有的学生一开始就没有转变思想,还希望就像实验课一样,老师安排好步骤1,2,3……,然后自己按照老师安排好的步骤按部就班的完成。这样的学生,往往都丧失了提出问题和分析问题的能力,只是一个应付考试的机器。要知道,解决问题的第一步是提出问题,如果总等着别人来教,那么问题永远会挡在你面前。 l缺乏团队精神和合作意识 智能车比赛是以团队的形式参赛,只依靠个人能力单兵作战就能取得好成绩的是很少很少的。当今社会,任何人的成功都离不开身后的团队的支撑。智能车是一个很复杂的系统,电路、机械、传感器、单片机、底层驱动、控制算法……。如果所有的任务都是一个人去完成,固然锻炼了自己,但想做的很好却很不现实。很多新人,来到实验室,来到一个陌生的环境和团队,连向学长请教,和同学交流的勇气都没有,又如何融入团队呢。除了要主动融入团队,还要培养自己的团队意识。团队精神往往表现为一种责任感,如果团队遇到问题,每个人都只顾自己,出了错误,不想着解决问题,而是互相推诿埋怨。这样的团队,肯定是无法取得好成绩的。 l缺乏耐心和细心的精神 其实把一件事做好很简单,细心加上耐心。不细心就想不到,没有耐心,即使想到了也做不到。做事怕麻烦,将就,说白了就是惰性在作祟。明明可以把支架做的更轻更漂亮,明明可以把程序写的更简洁,明明可以把电路设计得更完善……。其实,每个人都有很大潜力,如果不逼自己一次,你永远不知道自己的潜力有多

摄像头组-北京邮电大学-北邮摄像头一队-智能车技术报告-华北赛区

第八届“飞思卡尔”杯全国大学生 智能汽车竞赛 技术报告 学校:北京邮电大学 队伍名称:北邮摄像头一队 参赛队员:何映材 邬仲钧 刘涛 带队教师:高荔

技术报告和研究论文使用授权的说明 本人完全了解第八届“飞思卡尔”杯全国大学生智能汽车邀请赛关保留、使用技术报告和研究论文的规定,即:参赛作品著作权归参赛者本人,比赛组委会和飞思卡尔半导体公司可以在相关主页上收录并公开参赛作品的设计方案、技术报告以及参赛模型车的视频、图像资料,并将相关内容编纂收录在组委会出版论文集中。 参赛队员签名:何映材 邬仲钧 刘涛 带队教师签名: 日期:

目录 第一章设计概览 (4) 1 设计概述 (4) 1.1 整车设计思路 (4) 1.2 车模整体造型 (4) 图1.2车模整体造型 (5) 第二章硬件设计 (6) 2 硬件设计 (6) 2.1 机械结构 (6) 2.1.1舵机改装 (6) 2.1.2电池固定 (6) 2.1.3电机定位 (7) 2.1.4底盘固定 (7) 2.1.5差速调节 (7) 2.2 硬件电路 (7) 2.2.1电源设计 (7) 2.2.2电池电压检测模块 (8) 2.2.3驱动电路设计 (9) 2.3 摄像头选型 (9) 第三章系统软件设计 (10) 3 软件设计 (10) 3.1 程序整体设计 (10) 3.2 图像提取与处理 (11) 3.3 控制策略 (13) 3.3.1整体控制 (13) 3.3.2PID算法的引入与改进 (13) 3.3.3增量式or位置式 (15) 第四章调试工具 (16) 4 调试工具 (16) 第五章总结 (17) 5 总结 (17) 第六章车模参数 (18) 6 车模规格 (18) 参考文献 (18) 附录 (19)

飞思卡尔智能车竞赛光电组技术报告

第九届“飞思卡尔”杯全国大学生智能车竞赛光电组技术报告 学校:中北大学 伍名称:ARES 赛队员:贺彦兴 王志强 雷鸿 队教师:闫晓燕甄国涌

关于技术报告和研究论文使用授权的说明书本人完全了解第八届“飞思卡尔”杯全国大学生智能汽车竞赛关保留、使用技术报告和研究论文的规定,即:参赛作品著作权归参赛者本人,比赛组委会和飞思卡尔半导体公司可以在相关主页上收录并公开参赛作品的设计方案、技术报告以及参赛模型车的视频、图像资料,并将相关内容编纂收录在组委会出版论文集中。 参赛队员签名: 带队教师签名: 日期:2014-09-15日

摘要 本文介绍了第九届“飞思卡尔杯全国大学生智能车大赛光电组中北大学参赛队伍整个系统核心采用飞思卡尔单片机MC9S12XS128MAA ,利用TSL1401线性CCD 对赛道的行扫描采集信息来引导智能小车的前进方向。机械系统设计包括前轮定位、方向转角调整,重心设计器件布局设计等。硬件系统设计包括线性CCD传感器安装调整,电机驱动电路,电源管理等模块的设计。软件上以经典的PID算法为主,辅以小规Bang-Bang 算法来控制智能车的转向和速度。在智能车系统设计开发过程中使用Altium Designer设计制作pcb电路板,CodeWarriorIDE作为软件开发平台,Nokia5110屏用来显示各实时参数信息并利用蓝牙通信模块和串口模块辅 助调试。关键字:智能车摄像头控制器算法。

目录 1绪论 (1) 1.1 竞赛背景 (1) 1.2国内外智能车辆发展状况 (1) 1.3 智能车大赛简介 (2) 1.4 第九届比赛规则简介 (2) 2智能车系统设计总述 (2) 2.1机械系统概述 (3) 2.2硬件系统概述 (5) 2.3软件系统概述 (6) 3智能车机械系统设计 (7) 3.1智能车的整体结构 (7) 3.2前轮定位 (7) 3.3智能车后轮减速齿轮机构调整 (8) 3.4传感器的安装 (8) 4智能车硬件系统设计 (8) 4.1XS128芯片介绍 (8) 4.2传感器板设计 (8) 4.2.1电磁传感器方案选择 (8) 4.2.2电源管理模 (9) 4.2.3电机驱动模块 (10) 4.2.4编码器 (11) 5智能车软件系统设 (11) 5.1程序概述 (11) 5.2采集传感器信息及处理 (11) 5.3计算赛道信息 (13) 5.4转向控制策略 (17) 5.5速度控制策略 (19) 6总结 (19)

飞思卡尔杯智能车竞赛报告总结

1.1. 系统分析 智能车竞赛要求设计一辆以组委会提供车模为主体的可以自主寻线的模型车,最后成绩取决于单圈最快时间。因此智能车主要由三大系统组成:检测系统,控制系统,执行系统。其中检测系统用于检测道路信息及小车的运行状况。控制系统采用大赛组委会提供的16位单片机MC9S12XS128作为主控芯片,根据检测系统反馈的信息新局决定各控制量——速度与转角,执行系统根据单片机的命令控制舵机的转角和直流电机的转速。整体的流程如图1.1,检测系统采集路径信息,经过控制决策系统分析和判断,由执行系统控制直流电机给出合适的转速,同时控制舵机给出合适的转角,从而控制智能车稳定、快速地行驶。 图2.1 1.2. 系统设计 参赛小车将电感采集到的电压信号,经滤波,整流后输入到XS128单片机,用光电编码器获得实时车速,反馈到单片机,实现完全闭环控制。速度电机采用模糊控制,舵机采用PD控制,具体的参数由多次调试中获得。考滤到小车设计的综合性很强,涵盖了控制、传感、电子、电气、计算机和机械等多个学科领域,因此我们采用了模块化设计方法,小车的系统框图如图2.2。

第五届全国大学生智能汽车竞赛技术报告 图2.2 1.3. 整车外观 图2.3

1.4. 赛车的基本参数 智能车竞赛所使用的车模是东莞市博思公司生产的G768型车模,由大赛组委会统一提供,是一款带有摩擦式差速器后轮驱动的电动模型车。车模外观如图3.1。车模基本参数如表3.1。 图3.1 表3.1车模基本参数 1.5. 赛车前轮定位参数的选定

第五届全国大学生智能汽车竞赛技术报告 现代汽车在正常行驶过程中,为了使汽车直线行驶稳定,转向轻便,转向后能自动回正,减少轮胎和转向系零件的磨损等,在转向轮、转向节和前轴之间须形成一定的相对安装位置,叫车轮定位,其主要的参数有:主销后倾、主销内倾、车轮外倾和前束。模型车的前轮定位参数都允许作适当调整,故此我们将自身专业课所学的理论知识与实际调车中的赛车状况相结合,最终得出赛车匹配后的前轮参数[6]。 1.5.1. 主销后倾角 主销后倾角是指在纵向平面内主销轴线与地面垂直线之间的夹角γ,如图3-2。模型车的主销后倾角可以设置为0、 2°?3°、 4°?6°,可以通过改变上横臂轴上的黄色垫片来调整,一共有四个垫片,前二后二时为0°,前一后三为2°?3°,四个全装后面时为4°?6°。 由于主销后倾角过大时会引起转向沉重,又因为比赛所用舵机特性偏软,所以不宜采用大的主销后倾角,以接近0°为好,即垫片宜安装采用前二后二的方式,以便增加其转向的灵活性。如图3.3。 图3.2 图3.3 1.5. 2. 主销内倾角 主销内倾角是指在横向平面内主销轴线与地面垂直线之间的夹角β,如图3.4,它的作用也是使前轮自动回正。对于模型车,通过调整前桥的螺杆的长度可以改变主销内倾角的大小,由于前轴与主销近似垂直的关系,故主销内倾角

飞思卡尔智能车比赛个人经验总结

先静下心来看几篇技术报告,可以是几个人一起看,边看边讨论,大致了解智能车制作的过程及所要完成的任务。 看完报告之后,对智能车也有了大概的了解,其实总结起来,要完成的任务也很简单,即输入模块——控制——输出。 (1)输入模块:各种传感器(光电,电磁,摄像头),原理不同,但功能都一样,都是用来采集赛道的信息。这里面就包含各种传感器的原理,选用,传感器电路的连接,还有传感器的安装、传感器的抗干扰等等需要大家去解决的问题。 (2)控制模块:传感器得到了我们想要的信息,进行相应的AD转换后,就把它输入到单片机中,单片机负责对信息的处理,如除噪,筛选合适的点等等,然后对不同的赛道信息做出相应的控制,这也是智能车制作过程中最为艰难的过程,要想出一个可行而又高效的算法,确实不是一件容易的事。这里面就涉及到单片机的知识、C语言知识和一定的控制算法,有时为了更直观地动态控制,还得加入串口发送和接收程序等等。 (3)输出模块:好的算法,只有通过实验证明才能算是真正的好算法。经过分析控制,单片机做出了相应的判断,就得把控制信号输出给电机(控制速度)和舵机(控制方向),所以就得对电机和舵机模块进行学习和掌握,还有实现精确有效地控制,又得加入闭环控制,PID算法。 明确了任务后,也有了较为清晰的控制思路,接下来就着手弄懂每一个模块。虽然看似简单,但实现起来非常得不容易,这里面要求掌握电路的知识,基本的机械硬件结构知识和单片机、编程等计算机知识。最最困难的是,在做的过程中会遇到很多想得到以及想不到的事情发生,一定得细心地发现问题,并想办法解决这些问题。 兴趣是首要的,除此之外,一定要花充足的时间和精力在上面,毕竟,有付出就会有收获,最后要明确分工和规划好进度。

飞思卡尔智能车技术报告

第六届“飞思卡尔”杯全国大学生智能汽车邀请赛技术报告 学校: 队伍名称: 参赛队员: 带队教师:

关于技术报告和研究论文使用授权的说明 本人完全了解第六届“飞思卡尔”杯全国大学生智能汽车邀请赛关保留、使用技术报告和研究论文的规定,即:参赛作品著作权归参赛者本人,比赛组委会和飞思卡尔半导体公司可以在相关主页上收录并公开参赛作品的设计方案、技术报告以及参赛模型车的视频、图像资料,并将相关内容编纂收录在组委会出版论文集中。 参赛队员签名: 带队教师签名: 日期: 摘要 随着现代科技的飞速发展,人们对智能化的要求已越来越高,而智能化在汽车相关产业上的应用最典型的例子就是汽车电子行业,

汽车的电子化程度则被看作是衡量现代汽车水平的重要标志。同时,汽车生产商推出越来越智能的汽车,来满足各种各样的市场需求。本文以第六届全国大学生智能车竞赛为背景,主要介绍了智能车控制系统的机械及硬软件结构和开发流程。 机械硬件方面,采用组委会规定的标准 A 车模,以飞思卡尔半导体公司生产的80管脚16 位单片机MC9S12XS128MAA 为控制核心,其他功能模块进行辅助,包括:摄像头数据采集模块、电源管理模块、电机驱动模块、测速模块以及无线调试模块等,来完成智能车的硬件设计。 软件方面,我们在CodeWarrior IDE 开发环境中进行系统编程,使用增量式PD 算法控制舵机,使用位置式PID 算法控制电机,从而达到控制小车自主行驶的目的。 另外文章对滤波去噪算法,黑线提取算法,起止线识别等也进行了介绍。 关键字:智能车摄像头图像处理简单算法闭环控制无线调试 第一章引言 飞思卡尔公司作为全球最大的汽车电子半导体供应商,一直致力于为汽车电子系统提供全范围应用的单片机、模拟器件和传感器等器件产品和解决方案。飞思卡尔公司在汽车电子的半导体器件市场拥有领先的地位并不断赢得客户的

飞思卡尔智能车光电组技术报告

第十届全国大学生“飞思卡尔”杯华 北赛 智能汽车竞赛 技术报告 目录 目录 (11) 第一章方案设计 (11) 1.1系统总体方案的选定 (11) 1.2系统总体方案的设计 (11) 1.3 小结 (22) 第二章智能汽车机械结构调整与优化 (33) 2.1智能汽车车体机械建模 (33) 2.2 智能汽车传感器的安装 (44) 2.2.1速度传感器的安装 (44) 1 / 26

2.2.2 线形CCD的安装 (55) 2.2.3车模倾角传感器 (55) 2.3重心高度调整 (55) 2.3.1 电路板的安装 (66) 2.3.2 电池安放 (66) 2.4 其他机械结构的调整 (66) 2.5 小结 (66) 第三章智能汽车硬件电路设计 (77) 3.1主控板设计 (77) 3.1.1电源管理模块 (77) 3.1.2 电机驱动模块 (88) 3.1.3 接口模块 (99) 3.2智能汽车传感器 (1010) 3.2.1 线性CCD传感器 (1010) 3.2.2 陀螺仪 (1010) 3.2.3 加速度传感器 ............................ 错误!未定义书签。错误!未定义书签。 3.2.3 编码器 (1111) 3.3 键盘,数码管....................................... 错误!未定义书签。错误!未定义书签。 3.4液晶屏 (1212) 3.5 小结 (1212) 第四章智能汽车控制软件设计 (1313) 4.1线性CCD传感器路径精确识别技术 (1313) 4.1.1新型传感器路径识别状态分析 (1414)

飞思卡尔智能车设计报告

飞思卡尔智能车设计报告

目录 1.摘要 (3) 2.关键字 (3) 3.系统整体功能模块 (3) 4.电源模块设计 (4) 5.驱动电路设计 (4) 6.干簧管设计 (5) 7.传感器模块设计 (6) 8.传感器布局 (6) 9.软件设计 (7) 9.1控制算法 (7) 9.2软件系统实现(流程图) (10) 10.总结 (11) 11.参考文献 (12)

1.摘要 “飞思卡尔”杯全国大学生智能汽车竞赛是由教育部高等自动化专业教学指导分委员会主办的一项以智能汽车为研究对象的创意性科技竞赛,是面向全国大学生的一种具有探索性工程实践活动,是教育部倡导的大学生科技竞赛之一。该竞赛以“立足培养,重在参与,鼓励探索,追求卓越”为指导思想,旨在促进高等学校素质教育,培养大学生的综合知识运用能力、基本工程实践能力和创新意识,激发大学生从事科学研究与探索的兴趣和潜能,倡导理论联系实际、求真务实的学风和团队协作的人文精神,为优秀人才的脱颖而出创造条件。该竞赛以汽车电子为背景,涵盖自动控制、模式识别、传感技术、电子、电气、计算机、机械等多个学科的科技创意性比赛。 本文介绍了飞思卡尔电磁组智能车系统。本智能车系统是以飞思卡尔32 位单片机K60为核心,用电感检测赛道导线激发的电磁信号, AD 采样获得当前传感器在赛道上的位置信息,通过控制舵机来改变车的转向,用增量式PID进行电机控制,用编码器来检测小车的速度,共同完成智能车的控制。 2.关键字 电磁、k60、AD、PID、电机、舵机 3.系统整体功能模块 系统整体功能结构图

4.电源模块设计 电源是一个系统正常工作的基础,电源模块为系统其他各个模块提供所需要的能源保证,因此电源模块的设计至关重要。模型车系统中接受供电的部分包括:传感器模块、单片机模块、电机驱动模块、伺服电机模块等。设计中,除了需要考虑电压范围和电流容量等基本参数外,还要在电源转换效率、噪声、干扰和电路简单等方面进行优化。可靠的电源方案是整个硬件电路稳定可靠运行的基础。 全部硬件电路的电源由7.2V,2A/h的可充电镍镉电池提供。由于电路中的不同电路模块所需要的工作电流容量各不相同,因此电源模块应该包含多个稳压电路,将充电电池电压转换成各个模块所需要的电压。 电源模块由若干相互独立的稳压电源电路组成。在本系统中,除了电机驱动模块的电源是直接取自电池外,其余各模块的工作电压都需要经电源管理芯片来实现。 由于智能车使用7.2V镍镉电池供电,在小车行进过程中电池电压会有所下降,故使用低压差电源管理芯片LM2940。LM2940是一款低压稳压芯片,能提供5V的固定电压输出。LM2940低压差稳压芯片克服了早期稳压芯片的缺点。与其它的稳压芯片一样,LM2940需要外接一个输出电容来保持输出的稳定性。出于稳定性考虑,需要在稳压输出端和地之间接一个47uF低等效电阻的电容器。 舵机的工作电压是6伏,采用的是LM7806。 K60单片机和5110液晶显示器需要3.3伏供电,采用的是LM1117。 5.驱动电路设计 驱动电路采用英飞凌的BTS7960,通态电阻只有16mΩ,驱动电流可达43A,具有过压、过流、过温保护功能,输入PWM频率可达到25KHz,电源电压5.5V--27.5V。BTS7960是半桥驱动,实际使用中要求电机可以正反转,故使用两片接成全桥驱动。如图下图所示。

(毕业设计)飞思卡尔智能车及机器视觉

图像处理在智能车路径识别中的应用 摘要 机器视觉技术在智能车中得到了广泛的应用,这项技术在智能车的路径识别、障碍物判断中起着重要作用。基于此,依据飞思卡尔小车的硬件架构,研究机器视觉技术应用于飞思卡尔小车。飞思卡尔智能车处理器采用了MC9S12XS128芯片,路况采集使用的是数字摄像头OV7620。 由于飞思卡尔智能车是是一款竞速小车,因此图像采集和处理要协调准确性和快速性,需要找到其中的最优控制。因此本设计主要需要完成的任务是:怎样用摄像头准确的采集每一场的图像,然后怎样进行二值化处理;以及怎样对图像进行去噪处理;最后也就是本设计的难点也是设计的核心,怎样对小车的轨迹进行补线。 本设计的先进性,在众多的图像处理技术中找到了适合飞思卡尔智能车的图像处理方法。充分发挥了摄像头的有点。经过小车的实际测试以及相关的MATLAB 仿真,最终相关设计内容都基本满足要求。小车的稳定性和快速性得到显著提高。 关键词:OV7620,视频采集,图像处理,二值化

The Application of Image Processing in the Recognition of Intelligent Vehicle Path ABSTRACT CameraMachine vision technology in the smart car in a wide range of applications, the technology identified in the path of the smart car, and plays an important role in the obstacles to judge. Based on this, based on the architecture of the Freescale car, machine vision technology used in the Freescale car. Freescale smart car the processor MC9S12XS128 chip traffic collected using a digital camera OV7620. Freescale's Smart car is a racing car, so the image acquisition and processing to coordinate the accuracy and fast, you need to find the optimal control. This design need to complete the task: how to use the camera to accurately capture every image, and then how to binarization processing; and how to image denoising; last is the difficulty of this design is the design of the core, how to fill line on the trajectory of the car. The advanced nature of the design found in many image processing techniques of image processing methods for Freescale Smart Car. Give full play to the camera a bit. The actual testing of the car and MATLAB simulation, the final design content can basically meet the requirements. The car's stability and fast to get improved significantly. KEY WORDS:OV7620,Video Capture,PictureProcessing,Binarization

飞思卡尔智能车竞赛策略和比赛方案综述

飞思卡尔智能车竞赛策略和比赛方案综述 一、竞赛简介 起源: “飞思卡尔杯”智能车大赛起源于韩国,是韩国汉阳大学汽车控制实验室在飞思卡尔半导体公司资助下举办的以HCSl2单片机为核心的大学生课外科技竞赛。组委会提供一个标准的汽车模型、直流电机和可充电式电池,参赛队伍要制作一个能够自主识别路径的智能车,在专门设计的跑道上自动识别道路行驶,谁最快跑完全程而没有冲出跑道并且技术报告评分较高,谁就是获胜者。其设计内容涵盖了控制、模式识别、传感技术、汽车电子、电气、计算机、机械、能源等多个学科的知识,对学生的知识融合和实践动手能力的培养,具有良好的推动作用。 全国大学生“飞思卡尔”杯智能汽车竞赛是在规定的模型汽车平台上,使用飞思卡尔半导体公司的8位、16位微控制器作为核心控制模块,通过增加道路传感器、电机驱动电路以及编写相应软件,制作一个能够自主识别道路的模型汽车,按照规定路线行进,以完成时间最短者为优胜。因而该竞赛是涵盖了控制、模式识别、传感技术、电子、电气、计算机、机械等多个学科的比赛。 该竞赛以飞思卡尔半导体公司为协办方,自2006年首届举办以来,成功举办了五届,得到了教育部吴启迪副部长、张尧学司长及理工处领导、飞思卡尔公司领导与各高校师生的高度评价,已发展成全国30个省市自治区200余所高校广泛参与的全国大学生智能汽车竞赛。2008年第三届被教育部批准列入国家教学质量与教学改革工程资助项目中9个科技人文竞赛之一(教高函[2007]30号文,附件2),2009年第四届被邀申请列入国家教学质量与教学改革工程资助项目。 分赛区、决赛区比赛规则 在分赛区、决赛区进行现场比赛规则相同,都分为初赛与决赛两个阶段。在计算比赛成绩时,分赛区只是通过比赛单圈最短时间进行评比。决赛区比赛时,还需结合技术报告分数综合评定。 1.初赛与决赛规则 1)初赛规则 比赛场中有两个相同的赛道。 参赛队通过抽签平均分为两组,并以抽签形式决定组内比赛次序。比赛分为两轮,两组同时在两个赛道上进行比赛,一轮比赛完毕后,两组交换场地,再进行第二轮比赛。在每轮比赛中,每辆赛车在赛道上连续跑两圈,以计时起始线为计时点,以用时短的一圈计单轮成绩;每辆赛车以在两个单轮成绩中的较好成绩为赛车成绩;计时由电子计时器完成并实时在屏幕显示。 从两组比赛队中,选取成绩最好的25支队晋级决赛。技术评判组将对全部晋级的赛车进行现场技术检查,如有违反器材限制规定的(指本规则之第一条)当时取消决赛资格,由后备首名晋级代替;由裁判组申报组委会执委会批准公布决赛名单。 初赛结束后,车模放置在规定区域,由组委会暂时保管。

飞思卡尔智能车程序

Main.c #include /* common defines and macros */ #include /* derivative information */ #pragma LINK_INFO DERIVATIVE "mc9s12db128b" #include "define.h" #include "init.h" // variable used in video process volatile unsigned char image_data[ROW_MAX][LINE_MAX] ; // data array of picture unsigned char black_x[ROW_MAX] ; // 0ne-dimensional array unsigned char row ; // x-position of the array unsigned char line ; // y-position of the array unsigned int row_count ; // row counter unsigned char line_sample ; // used to counter in AD unsigned char row_image ; unsigned char line_temp ; // temperary variable used in data transfer unsigned char sample_data[LINE_MAX] ; // used to save one-dimension array got in interruption // variables below are used in speed measure Unsigned char pulse[5] ; // used to save data in PA process Unsigned char counter; // temporary counter in Speed detect Unsigned char cur_speed; // current speed short stand; short data; unsigned char curve ; // valve used to decide straight or turn short Bounds(short data); short FuzzyLogic(short stand); /*----------------------------------------------------------------------------*\ receive_sci \*----------------------------------------------------------------------------*/ unsigned char receive_sci(void) // receive data through sci { unsigned char sci_data; while(SCI0SR1_RDRF!=1); sci_data=SCI0DRL; return sci_data; } /*----------------------------------------------------------------------------*\ transmit_sci \*----------------------------------------------------------------------------*/ void transmit_sci(unsigned char transmit_data) // send data through sci { while(SCI0SR1_TC!=1); while(SCI0SR1_TDRE!=1);

相关主题
文本预览
相关文档 最新文档