基于图像识别的智能小车系统设计[精选]_第1页
基于图像识别的智能小车系统设计[精选]_第2页
基于图像识别的智能小车系统设计[精选]_第3页
基于图像识别的智能小车系统设计[精选]_第4页
基于图像识别的智能小车系统设计[精选]_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第1章 绪论1.1 课题背景目前,在企业生产技术不断提高、对自动化技术要求不断加深的环境下,智能车辆以及在智能车辆基础上开发出来的产品已成为自动化物流运输、柔性生产组织等系统的关键设备。世界上许多国家都在积极进行智能车辆的研究和开发设计。智能车辆也叫无人车辆,是一个集环境感知、规划决策和多等级辅助驾驶等功能于一体的综合系统。它具有道路障碍自动识别、自动报警、自动制动、自动保持安全距离、车速和巡航控制等功能。智能车辆的主要特点是在复杂的道路情况下,能自动地操纵和驾驶车辆绕开障碍物并沿着预定的道路(轨迹)行进。智能车辆在原有车辆系统的基础上增加了一些智能化技术设备: 1) 计算机处理系统,主要完成

2、对来自摄像机所获取的图像的预处理、增强、分析、识别等工作。2) 摄像机,用来获得道路图像信息。3) 传感器设备,车速传感器用来获得当前车速,障碍物传感器用来获得前方、侧方、后方障碍物等信息。智能车辆作为移动机器人的一个重要分支正得到越来越多的关注。1.2 国内外发展现状及趋势智能化作为现代社会的新产物,是以后的发展方向,他可以按照预先设定的模式在一个特定的环境里自动的运作,无需人为管理,便可以完成预期所要达到的或是更高的目标。同遥控小车不同,遥控小车需要人为控制转向、启停和进退,比较先进的遥控车还能控制其速度,而智能小车,则可以通过计算机编程来实现其对行驶方向、启停以及速度的控制,无需人工干预

3、,是一个集环境感知、规划决策,自动行驶等功能于一体的综合系统,它集中地运用了计算机、传感、信息、通信、导航、人工智能及自动控制等技术,是典型的高新技术综合体。国外智能车辆的研究历史较长。它的发展历程大体可以分成三个阶段:第一阶段 20世纪50年代是智能车辆研究的初始阶段。1954年美国barrett electronics 公司研究开发了世界上第一台自主引导车系统agvs(automated guided vehicle system)。第二阶段 从80年代中后期开始,世界主要发达国家对智能车辆开展了卓有成效的研究。在欧洲,普罗米修斯项目开始在这个领域的探索。在美洲,美国成立了国家自动高速公路

4、系统联盟(nahsc)。在亚洲,日本成立了高速公路先进巡航/辅助驾驶研究会。第三阶段 从90年代开始,智能车辆进入了深入、系统、大规模研究阶段。最为突出的是,美国卡内基.梅隆大学(carnegie mellon university)机器人研究所一共完成了navlab系列的10台自主车(navlab1navlab10)的研究,取得了显著的成就。而我国开展智能车辆技术方面的研究起步较晚,开始于20世纪80年代。而且大多数研究处在于针对某个单项技术研究的阶段。虽然我国在智能车辆技术方面的研究总体上落后于发达国家,并且存在一定得技术差距,但是我们也取得了一系列的成果,主要有:1) 中国第一汽车集团公

5、司和国防科技大学机电工程与自动化学院与2003年研制成功我国第一辆自主驾驶轿车。2) 南京理工大学、北京理工大学、浙江大学、国防科技大学、清华大学等多所院校联合研制了7b.8军用室外自主车,该车装有彩色摄像机、激光雷达、陀螺惯导定位等传感器。可以预计,我国飞速发展的经济实力将为智能车辆的研究提供一个更加广阔的前景。因此,对智能小车进行深入细致的研究,不但能加深课堂上学到的理论知识,更能将理论转化为实际运用,为将来打下坚实的基础。1.3 课题研究的目的及意义图像识别技术是信息时代的一门重要的技术,其产生目的是为了让计算机代替人类去处理大量的物理信息。随着计算机技术的发展,人类对图像识别技术的认识

6、越来越深刻。图像识别技术的过程分为信息的获取、预处理、特征抽取和选择、分类器设计和分类决策。图像处理技术的应用广泛,人类的生活将无法离开图像识别技术,研究图像识别技术具有重大意义。通过毕业设计,我们将所学的基础课,专业课等方面的知识进行一次全面的复习。能够培养我们综合运用所学知识解决实际工程技术问题的能力,培养我们设计计算、编写设计文件、使用规范手册和应用计算机的能力,培养我们独立思考,解决问题以及小组合作的能力,培养我们调查研究、查阅技术文献、编写相关文档的能力。通过毕业设计,我们将学习如何将平时所学知识运用到实际中,能够更好地将课本知识和实际结合起来。第2章 系统硬件设计2.1 系统设计方

7、案概述图2.1 系统整体框图基于图像识别自主寻迹智能小车的系统总体结构如图所示。系统由电源组件、检测组件、主控组件、输出组件共 4 个部分构成。电源组件采用电池供电,经过电压转换芯片转换之后,每个模块得到所需要的电压。检测组件由摄像头模块和测速模块组成, 主控组件采用 arm 芯片作为控制核心,输出组件由电机控制模块和显示模块组成,显示模块包含图像实时显示和速度实时显示。2.2 主控模块电路stm32最小系统如图2.2所示。最小系统由 cpu、电源模块、时钟模块、复位模块、boot 启动模块、下载模块组成。stm32f103zet6 是一款 32 位的 arm 芯片,其电源模块采用 spx11

8、17 电压转换芯片和相关电路得到系统所需电压,时钟模块采用 8 mhz 和 32.768 khz 的晶振分别作为芯片的备用时钟源和 rtc 时钟源。复位模块包括上电复位和按键复位电路。boot 启动模块的作用是设置启动模式,通过 boot0 和 boot1 设置:当 boot0 为 0 时,cpu 执行片上 flash 代码; 当 boot0 为 1、boot1为 0 时,系统的模式为串口下载模式;当 boot0 与 boot1 均为 1 时,cpu 执行 sram 内部的代码,下载模块采用 jtag 下载。图2.2 stm32最小系统2.3 电源模块电路由于各电路模块所需电压不同,本设计需多

9、种电源供电。stm32f103主控芯片采用3.3v供电,电机驱动采用5v与12v,红外收发检测电路采用5v与3.3v,液晶显示与触角传感电路均采用3.3v供电。外部电源采用12v的直流电压,因此根据设计要求,本设计进行了电源转换设计。采用ka7805芯片实现12v到5v的转换。ka7805的作用是输入大于5v的直流电压,输出5v的直流电压,且管脚较少,易于连接和实现,稳定性高,本设计采用lm1117-3.3芯片将5v转换为3.3v,具体电路设计如图2.3 所示。图2.3 电源模块电路2.4 图像采集模块电路图像采集模块电路如图 所示。该模块采用 cmos 图像传感器 ov7725 。图像采集原

10、理如下:首先,ov7725 捕捉到原始信号后,将其输入到模拟处理器中,处理后分成 g 和 rb 两路输入到 a/d 转换器,经 a/d 转换器处理后转换成数字信号,然后输入到 fifo,单片机从 fifo 读取、处理数据并采集图像。fifo 存储摄像头采集到的图像数据,其存储空间为 3 m。摄像头采集完一幅图像后,将帧中断信号输入到 cpu, cpu 收到帧中断信号后,将 wen 和 href引脚电平拉高,使图像数据存入 fifo。当 cpu 再次收到帧中断信号, 表明图像数据已存入 fifo,此时关闭帧中断,将 wen 电平拉低, 避免图像数据再次写入 fifo。图2.4 图像采集模块电路2

11、.5 速度检测模块电路小车的行驶速度常用检测方法包括霍尔传感器测速、光电编码器测速以及光电传感器测速。由于霍尔传感器体积相对较大,且光电编码器驱动齿轮靠近电机,容易受磁场干扰,而光电传感器结构简单,测速精度高、反应快,因此,本设计采用光电传感器测速。光电测速模块如图所示。速度检测原理如下:当小车行驶时,车轮会带动光电码盘转动。当码盘中没有障碍物时,红外管发出的红外信号经红外接收管接收后输出电压比较值,再经lm393n 比较后, 输出开关量。码盘上一共有 20 格没有障碍物,所以用码盘周长除以 20 就得到 1 个脉冲来临车子行走的距离 s,同时打开定时器和计数器,定时 t,得到脉冲计数 n,到

12、时间后就将时间清零重新计数,得到小车的速度:v = s n/t。图2.5 速度检测模块电路2.6 电机控制模块电路电机控制包括电机的驱动和电机的调速 2 部分,本设计采用 l293d 控制 4 台直流电机。将每台直流电机的一端接地,另一端接到 l239d 的输出端。将 l293d 的输入端接一个 i/o 口,在第 1 脚和第 9 脚都使能的状态下,只需要控制 i/o 口的电平状态即可控制电机。电机驱动模块如图所示。由于小车要在不同的赛道上行驶,为防止其冲出赛道,需要在不同的赛道上采用不同的安全速度。对于直流电机的速度调节,本设计中综合采用 pwm 控制、pid 控制和棒棒控制技术。pwm 用于

13、控制不同路径小车安全行驶的速度,pid 调速用来维持同一路段的速度,棒棒控制用于路径切换时的调速。1)pwm 控制。计数器在时钟的驱动下计数,当计数器的值加到和输出比较寄存器的值相等时, i/o 口的电平翻转后接着计数。当计满后,计数器清零,重新开始计数。2) pid 控制。pid 控制就是用比例(p)、积分(i)、微分(d)通过线性组合进行控制。比例系数越大,调节速度就越快。如果比例的作用太大, 会使得系统的稳定性降低。使用积分调节会使得系统动态响应变慢,因此积分环节常以 pi 或者 pid 组合形式出现。微分环节能够反映系统偏差的变化率,预测偏差的动态变化,但是它的引入容易引起震荡, 因此

14、它一般是以 pd 或者 pid 组合的形式出现。3) 棒棒控制。棒棒控制是一种极限控制,其作用就是使得小车速度瞬间达到最大或者最小值保证小车完成路径切换动作。图2.6 电机控制模块电路小车运动状态通过电机a和b的不同方向转动来实现,电机有正转、反转和停止三种状态,每个电机由一对i/o口进行控制。表是i/o端口状态与电机制动对照表。l293d芯片采用5v(vss)与7v(vs)直压供电,ena和enb分别用stm32f103主控芯片的tim3_ch3和pb1/adc_in9/tim3_ch4控制,产生pwm1和pwm2两路pwm波输出,in1-in4分别用pe3-pe6实现i/o输出控制电机转动

15、方向。表2.1 i/o端口状态与电机制动对照表 电机ain1in2 电机bin3in4停止00停止00正转10正转10反转01反转0111112.7 oled液晶屏显示模块模块由一片 oled 玻璃屏幕和一个驱动 pcb 板组成。模块分辨率是 128x64,内置了升压电路(oled 点亮显示 814v 的高电压)和复位电路,所以只要 35v 电源输入电压即可。采用 i2c 总线通过,电路连接简洁。 0.96 英寸的大小与 1 元硬币差不多。小体积带来小的功耗,只要 3ma 左右的电流就能让它显示内容。原理:可以把 oled 屏上的像素点理解成 led 灯,小小玻璃片上嵌入了 8192( 128

16、x64)个 led,对应的 led 点亮或熄灭,则形成图案和文字,oled 与传统 lcd 屏的差异不大。但这款屏没有内部字库,不论是英文还是汉字,都要事先取模并导出数据表,可以把文字的显示理解成小像素的图片,一个汉字的像素是 16x16,一个英文或数字的像素是 8x16。oled集成模块如图2.7所示。图2.7 oled液晶显示屏第3章 系统软件设计3.1 iar开发环境简介iar embedded workbench for arm 是iar systems公司为arm微处理器开发的一个集成开发环境。比较其他的arm开发环境,iar ewarm具有入门容易、使用方便和代码紧凑等特点。iar

17、 ewarm中包含一个全软件的模拟程序(simulator),用户不需要任何硬件支持就可以模拟各种arm内核、外部设备甚至中断的软件运行环境,从中可以了解和评估iar ewarm的功能和使用用法。iar ewarm包含项目管理器、编辑器、编译连接工具和支持rtos的调试工具,在该环境下可以使用c/c+和汇编语言方便地开发嵌入式应用程序。iar ewarm界面如图3.1所示。图3.1 iar ewarm界面3.2 主程序设计小车在行驶过程中,摄像头进行图像采集。对采集的图像进行图像除噪,并提取行黑线中心位置,分析前方路径信息。针对不同的路径信息采取不同的方式控制电机的速度和方向。整个小车控制系统

18、的程序设计采用模块化的编程思想,整个主程序的流程图如图3.2所示。在系统初始化以后,首先进行不同路径行驶速度的设定,然后摄像头进行道路信息采集,将其传送给 cpu 进行路径判断,cpu 路径判断处理后采用pid 控制或者棒棒控制同时控制相应电机转动,这样,小车就能够顺利地沿着路径行驶。小车在行驶的过程中有 2 种状态,一种是沿着同一路径行驶,另一种是路径切换。对于这 2 种状态,分别采用不同的控制方法: 当沿着同一路径行驶时,采用 pid 控制,目的是保证小车在同一路径上时能以稳定的速度行驶;当进行路径切换时,采用棒棒控制,因为小车经过不同的弯道时有不同的安全速度,采用棒棒控制能够保证小车在不

19、同的路径切换时速度能瞬间达到弯道适合的速度值。图 主程序流程图3.3 图像采集处理子程序3.3.1 图像采集设计所示。图3.3 图像采集流程图像除噪设计图像除噪是为滤除噪声,减少噪声的影响,便于准确提取路径信息,本设计中考虑到实时性要求,采用中值滤波进行图像除噪。其实现思想是在整幅图像中选取一个大小合适的像素窗口,接着对窗口中像素点的灰度值进行排序,取最中间的点作为窗口中心点的新灰度值,移动窗口,循环执行上述过程。具体实现方法如图所示。图3.4 图像除噪流程3.3.3 黑线中心提设计在图像进行除噪后,就可以对黑线中心进行提取。目前常用的黑线中心提取方法是重心提取算法。小车行驶的路径由白色背景和

20、黑色胶带组成,两者间灰度值相差很大,所以,可以通过一个阈值来区分黑点和白点。每一行从左至右判断每一个像素点的灰度值是否大于(或小于)该阈值,从而确定此处是否为黑线上的点。图像灰度阈值一般取 128 左右为宜。针对图像矩阵数据中的每一行, 从左至右依次比较各个像素点和阈值的灰度值的大小,当某一个像素点的灰度值大于或者等于阈值,则判定该点对应的是白色;反之,则判定该点属于黑色路径区域。在图像的每一行得出每个黑点的位置坐标,然后将各黑点位置坐标相加再除以黑点数量就可以得到图像每行的黑点重心位置。黑线中心提取流程如图所示。图3.5 黑线中心提取流程图3.5黑线中心提流程图3.3.4 路径识别设计本文应

21、用了路径识别中常用的曲率计算法。得到黑线中心后, 在每幅图像取固定的 2行上的点 a、b,如图3.6(a), a、b 一般为整幅图像的 1/3 和 2/3行处的点 。连接 2 点, 做出 2 点连线的垂直平分线,垂直平分线与整幅图像第 2/3 行的交点为 c, 求出abc外接圆的半径 r,r 的倒数为路径的曲率 。实现方法如图(b)所示。在实验过程中小车行驶的轨迹由直道、弯道和 s 路径组成。在 s 路径, 曲率 = 0 是小车的方向的转折点。小车在走 s 线时既需要进行左转,又需要进行右转,此时就不能简单地按照 的大小控制小车的方向和速度。如果 不等于 0 时小车左转,那么判断小车右转。的条

22、件就是经过 1 次 = 0 之后, 再得到一个不等于 0 的 值。(a) (b)图3.5 路径识别流程3.3 循迹子程序图3.6 循迹子流程当循迹模式键按下时,小车进入循迹模式,其流程图如图3.6。将小车置于黑迹上,进入循迹模式,主控芯片控制红外探测器使能,此时左右红外探测器均未检测到出界,小车开始向前行走,此后根据左右探测器的检测信号对小车的运动状态进行相应调整,使小车按设定的轨迹行走,实现简单的循迹功能。第4章 系统样机及测试4.1 系统样机本设计的系统样机如图4.1所示。图4.1系统样机4.2 测试经测试, 本设计中研究的摄像头循迹小车实现了自主循迹功能, 摄像头采集到的图像比较清晰,

23、能够实时更新显示路径和车速, 直线行驶速度大小可达 25 cm/s,在不同路径下小车表现了较好的鲁棒性。在小车沿着黑线行驶的测试过程中, 通过设置 pwm 跳变值(定时器计数值等于跳变值时电平翻转)来控制占空比, 程序中自动重装载寄存器的值为 1 000, 即计满 1 000 重新计数。测试结果如表 1 所示。表给出了当小车左转, = 0.01时,左右两边跳变值大小、左右电机转速、小车运行效果数据记录。由表可知,当左电机跳变值小于等于600,跳变值之差为200 左右时,小车能完成循迹;但是当电机速度较大达到 650,无论右电机的速度为多少,小车都不能完成循迹。其原因在于,受调速性能限制,小车在循迹时行驶速度较小。其他弯道和曲率的分析与此类似。表4.1 1时数据记录左电机跳变值右电机跳变值左电机转速/(cms -1)右电机转速/(cms -1)小车能否循迹5507001025否5507501030能5508001035否6007501525否6008001535能6008501540否6508002035否6508502040否6509002045否第5章 总结本文根据设计内容和要求,制

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论