基于GT2440的智能循迹小车的研究与设计毕业论文.doc
《基于GT2440的智能循迹小车的研究与设计毕业论文.doc》由会员分享,可在线阅读,更多相关《基于GT2440的智能循迹小车的研究与设计毕业论文.doc(27页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2014届学生毕业设计(论文)材料(四)学 生 毕 业 设 计(论 文)课题名称基于GT2440的智能循迹小车的研究与设计姓 名 学 号1006402-56学 院信息科学与工程学院专 业计算机科学与技术指导教师 2014年5月28 日 湖南城市学院本科毕业设计(论文)诚信声明本人郑重声明:所呈交的本科毕业设计(论文),是本人在指导老师的指导下,独立进行研究工作所取得的成果,成果不存在知识产权争议,除文中已经注明引用的内容外,本设计(论文)不含任何其他个人或集体已经发表或撰写过的作品成果。对本文的研究做出重要贡献的个人和集体均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。 本
2、科毕业设计(论文)作者签名: 二一四年三月十五日目 录摘要 1关键词1Abstract.2Key Words21 绪论31.1 循迹控制发展现状和趋势31.2 课题研究的意义32 智能循迹的技术背景52.1 图像预处理算法52.2 设备驱动52.3 ARM简介63 嵌入式Linux开发平台的搭建73.1 OpenCV在GT2440上的移植73.1.1、GT2440开发平台搭建73.1.2、移植OpenCV所需的资源包汇总83.1.3、安装交叉编译器93.1.4、交叉编译OpenCV所需库94 智能循迹实现134.1 二值化134.2 边缘检测144.3 路径提取165 电机控制设计185.1
3、电机驱动185.1.1 电机驱动电路185.1.2 驱动的编译加载185.1.3 直流电机驱动196 模块联合测试与总结21参考文献22致谢23II基于GT2440的智能循迹小车的研究与设计摘要: 本文是基于GT2440的智能寻迹小车,通过摄像头采集视频数据,OpenCV算法处理,将视频帧里的轨迹路径提取出来,实时的传入相关控制程序,控制电机的转向来寻迹,从而达到智能控制小车的目的。随着时代的进步, 科技的发展,工业生产正在向着自动化, 智能化的阶段进步以及对人性化的要求,对各种智能机器人的要求也越来越高。智能循迹小车技术可以应用于无人驾驶机动车,无人工厂、仓库、服务机器人、未知路线探测和人类
4、不能存在或长期存在等环境中;通过功能扩展,小车具有在复杂地形条件下矿藏探测的功能。 循迹小车的研究重点是对轨迹的自动识别与自动校正,并在行进稳定的情况下进行其他拓展功能,这对整个小车系统有很高的要求。关键词: 智能循迹;OpenCV;电机1Based on the Research of Intelligent Tracking GT2440 Car and DesignAbstract: This thesis is based on GT2440 development board which is the mother board of the intelligent tracing c
5、ar, and the video data is gathered through the camera, OpenCV algorithm processing, picking up the trajectory path in the video frames, the introduction of real-time relevant control program, turn to tracing control motor, so as to achieve the aim of the intelligent control of the car. With the deve
6、lopment of science and technology, industrial production becomes automation, intelligent stage and the requirement of human progress,it is crucial to the requirement of all kinds of intelligent robots. Intelligent tracking car technology can be applied to the unmanned vehicle, unmanned factory, ware
7、house, service robot, human beings cannot exist or unknown line detection and long-standing environment. Through function expansion, the car has the function of mine detection in complex terrain. The point on tracking the car is automatic identification and automatic correction of trajectory, and ot
8、her developments under the condition of the steady marching function, which has a high requirement on the whole system of the car.Key Words: intelligent tracking;OpenCV;electrical machine1 绪论1.1 循迹控制发展现状和趋势目前,在企业生产技术不断提高、对自动化技术要求不断加深的环境下,智能车辆以及在智能车辆基础上开发出来的产品已成为自动化物流运输、柔性生产组织等系统的关键设备。世界上许多国家都在积极进行智能
9、车辆的研究和开发设计。移动机器人是机器人学中的一个重要分支,出现于20世纪06年代。当时斯坦福研究院(SRI)的Nils Nilssen和Charles Rosen等人,在1966年至1972年中研制出了取名shakey的自主式移动机器人,目的是将人工智能技术应用在复杂环境下,完成机器人系统的自主推理、规划和控制。从此,移动机器人从无到有,数量不断增多,智能车辆作为移动机器人的一个重要分支也得到越来越多的关注智能小车,是一个集环境感知、规划决策,自动行驶等功能于一体的综合系统,它集中地运用了计算机、传感、信息、通信、导航及白动控制等技术,是典型的高新技术综合体。随着时代的进步, 科技的发展,
10、工业生产正在向着自动化, 智能化的阶段进步以及对人性化的要求, 对各种智能机器人的要求也越来越高. 智能循迹小车技术可以应用于无人驾驶机动车, 无人工厂、仓库、服务机器人、未知路线探测和人类不能存在或长期存在等环境中; 通过功能扩展, 小车具有在复杂地形条件下矿藏探测的功能。1.2 课题研究的意义本课题研究的是基于GT2440的智能循迹小车的研究,本课题的意义在于:智能化的阶段进步以及对人性化的要求, 对各种智能机器人的要求也越来越高。 智能循迹小车技术可以应用于考古、机器人、医疗器械等许多方面。尤其是 在足球机器人研究方面具有很好的发展前景。无人驾驶机动车, 无人工厂、仓库、服务机器人、未知
11、路线探测和人类不能存在或长期存在等环境中;通过功能扩展, 小车具有在复杂地形条件下矿藏探测的功能。1.3 课题研究的主要工作本课题的主要工作如下:(1)OpenCV在GT2440上的移植;(2)进行路径识别;(3)通过GPIO口驱动编程控制小车电机转动。2 智能循迹的技术背景OpenCV于1999年由Intel建立,如今由Willow Garage提供支持。OpenCV是一个基于1(开源)发行的跨平台计算机视觉库,可以运行在Linux、Windows和Mac OS操作系统上。它轻量级而且高效由一系列 C 函数和少量 C+ 类构成,同时提供了Python、Ruby、MATLAB等语言的接口,实现
12、了图像处理和计算机视觉方面的很多通用算法。2最新版本是2.4.7。OpenCV 拥有包括 500 多个C函数的跨平台的中、高层 API。它不依赖于其它的外部库尽管也可以使用某些外部库。OpenCV 为Intel Integrated Performance Primitives (IPP) 提供了透明接口。 这意味着如果有为特定处理器优化的的 IPP 库, OpenCV 将在运行时自动加载这些库。 2.1 图像预处理算法(1) 膨胀腐蚀算法腐蚀和膨胀是最基本的形态学运算。腐蚀是消除物体图像无用点的一种过程,其结果是使剩下的物体沿周边比处理前小几个像素的面积,能有效地去除二值图像中小且无意义的图
13、像元素集合,可应用于二值图的去噪处理;膨胀是将与物体接触的所有点合并到该物体的过程,其结果是使物体的面积增大了相应数量的像素点,能有效地填补分割后物体中的空洞及合并相隔较少像素的两个区域。本文中先后多次应用腐蚀、膨胀算法对待测图像进行预处理并取得了较好的效果。 (2)边缘检测算法函数 cvCanny 采用 CANNY 算法发现输入图像的边缘而且在输出图像中标识这些边缘。threshold1和threshold2 当中的小阈值用来控制边缘连接,大的阈值用来控制强边缘的初始分割。 2.2 设备驱动设备驱动程序是介于硬件和Linux内核之间的软件接口,是一种低级的、专用于某一硬件的软件组件。Linu
14、x有两种方式使用设备驱动程序:直接编泽到内核中;在运行时加载(也就是内核模块)。Linux下的设备驱动程序7是一些用于完成不同任务的函数的集合,通过这些函数使得Linux下的设备犹如普通文件一般。因此对于应用程序来说设备只是一个普通的文件,应用程序可以像操作普通文件一样对硬件设备进行打开、关闭、读、写、IO控制等操作。2.3 ARM简介ARM(Advanced RISC Machines),既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。1991年ARM公司成立于英国剑桥,主要出售芯片设计技术的授权。目前,采用ARM技术知识产权(P)核的微处理器,即我
15、们通常所说的ARM微处理器,已遍及工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市场,基于ARM技术的微处理器应用约占据了32位RISC微处理器75以上的市场份额,ARM技术正在逐步渗入到我们生活的各个方面。 3 嵌入式Linux开发平台的搭建本章详述了嵌入式Linux开发平台的搭建,包括内核移植,根文件系统制作等。主要是为本系统开发搭建软件平台,对于嵌入式项目开发这是尤为关键的一步,需要充分考虑到后续应用程序设计开发中需要使用的资源。例如,本设计在内核版本的选择上,即充分考虑到对USB摄像头的驱动支持。3.1 OpenCV在GT2440上的移植3.1.1 GT2440开发平
16、台搭建Xshell软件在Windows系统下安装后,新建会话是将设置如下: a)会话基本属性设置 b)串口设置图3.1 Xshell会话设置会话设置成功后,链接串口线,并将串口设置为与目标板相同的波特率115200。开启目标板电源就可以对GT2440目标板进行操作,如下图所示:图3.2 Xshell连接GT24403.1.2 移植OpenCV所需的资源包汇总-jpegsrc.v6b.tar.gz(jpeg函数库)-libpng-1.2.18.tar.gz(png函数库)-zlib-1.2.3.tar.gz(z函数库)-x264-snapshot-20100410-2245.tar.bz2(x2
17、64函数库)-yasm-0.7.2.tar.gz(汇编编译器,编译x264时需要用到)-xvidcore-1.3.2.tar.gz(xvid函数库)-ffmpeg-0.5.3.tar.bz2(ffmpeg源码包)-OpenCV-2.0.0.tar.bz2(OpenCV源码包)-arm-linux-gcc-4.3.2.tgz (交叉编译工具链)说明:(1)以上资源包中ffmpeg是为了OpenCV能够处理视频,而ffmpeg依赖于x264和xvid两个库,而交叉编译libx264时需要用到汇编编译器yasm。3.1.3 安装交叉编译器#tar -zvxf arm-linux-gcc-4.3.2.
18、tgz -C /root/添加环境变量#vim /etc/environment在路径中添加/root/arm/4.3.2/bin刷新环境变量:#source /etc/enviroment3.1.4 交叉编译OpenCV所需库#tar -zvxf zlib-1.2.3.tar.gz#cd zlib-1.2.3#CC=arm-linux-gcc ./configure -prefix=/root/arm/4.3.2/arm-none-linux-gnueabi -shared#make#make install交叉编译libjpeg#tar zvxf jpegsrc.v6b.tar.gz#cd
19、 jpeg-6b# ./configure -prefix=/root/arm/4.3.2/arm-none-linux-gnueabi -enable-shared -enable-static修改生成的Makefile文件:CC=gcc改为CC=arm-linux-gccAR=ar rc改为AR=arm-linux-ar rcAR2=ranlib改为AR2=arm-linux-ranlib#make需在/root/arm/4.3.2/arm-none-linux-gnueabi目录下创建/man/man1目录,才能执行安装命令。#cd /root/arm/4.3.2/arm-none-li
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于GT2440的智能循迹小车的研究与设计 毕业论文 基于 GT2440 智能 小车 研究 设计
限制150内