《毕业论文设计基于Arduino单片机避障小车机器人的设计.docx》由会员分享,可在线阅读,更多相关《毕业论文设计基于Arduino单片机避障小车机器人的设计.docx(50页珍藏版)》请在金锄头文库上搜索。
1、论文编码:TP39嗜郑饰堆九存Capital Normal University首都师范大学本科毕业设计论文基于行为设计的移动机器人设计与实现机器人机械设计模块Design and Implementation of Mobile RobotBased on Behavior DesignRobot Mechanical Solutions论文作者:张倩颖院 系:信息工程学院专 业:计算机科学与技术 学 号:1111000055指导老师:徐敏完成日期: 2015年4月25日首都师范大学木科毕业设计论文摘要木文简要介绍了基于行为设计的移动机器人设计与实现种基于Arduino新型集成开发环境的超声
2、波避障小车的工作原理。其中包括对小车的执行组件、搭建结构、 传感器、Arduino单片机软件编程及试验结果的介绍。本方案以Arduino单片机为控制核心,基于蝙蝠超声波测距的原理,利用超声波传感 器,检测小车前方障碍物的距离,然后把数据传送给单片机。肖超声波检测到距离小车前 方25CM有障碍物吋单片机就发出指令让小车左转一定角度,然后停止行进继续探测如 果前方25CM没有障碍物则直行,否则继续左转一定角度。如此通过超声波不断的循环检 测周边环境的情况进行自动避障。本系统在破件设计方面,以Ar du in o单片机为控制核心,以超声波传感器检测前方 障碍物,从而自动避障。在软件方面,利用Ardu
3、ino语言进行编程,通过软件编程来控 制小车运转。该系统在驱动方面采用L298N驱动2个直流电机带动小车运行。并且,用 PWM系统调速,控制小车前进的速度。实现小车根据外部环境,做出前进、后退和转向等动 作,从而完成避障的功能,本设计具有有一定的实用价值。关键词:Arduino单片机;超声波传感器;避障基于行为设计的移动机器人设计与实现ABSTRACTThis paper describes the design of mobile robot behavior-based design and implement A new ultrasound-based integrated devel
4、opment environment Arduino obstacle avoidance car works. These include the implementation of car components, building structures, sensors, Arduino microcontroller software programming and test results presentation.The program to Arduino microcontroller core, based on the principle of ultrasonic dist
5、ance measurement bats using ultrasonic sensors to detect obstacles in front from the car, and then transmits the data to the microcontroller. When the ultrasonic distance in front of the car detects obstacles 25CM SCM issued a directive to make the car turn left on an angle, then continue probing st
6、op traveling. If there is no obstacle in front of the 25CM straight, turn left or continue certain angle. So the case of the ultrasonic continuous loop through the surrounding environment to automatically detect avoidance.The system hardware design to Arduino microcontroller core, with ultrasonic se
7、nsors detect obstacles in front, so that automatic obstacle avoidance. On the software side, the use of Arduino programming language to control the car running through software programming. The system uses the driver side L298N drive two DC motors drive the car running. And, with the PWM system spee
8、d, speed control car forward. Realize the car according to the external environment, made forward, backward, and steering movements, thus completing the obstacle avoidanee function,the design has a certain practical value.Key words: Arduino; ultrasonic sensors;obstacle avoidance首都师范大学木科毕业设计论文第一章绪论11
9、.1论文的选题背景11.2 Arduino 单片机概述21.3 Arduino 机器人发展现状31.4 Arduino智能避障机器人研究意义和H的41.5项H主要研究内容5第二章避障小车机器人的总体设计62.1设计原理与方法62.2硬件设计62.3软件设计72.3.1 Arduino 语言72.3.2 Arduino IDE82.4实验前期准备10第三章硬件模块123.1各模块的的基本性能123.1.1单片机模块123.1.2电机、电机驱动模块123.1.3避障模块143.1.4电源模块153.2小车的基本搭建153.3连线173.3.1电机的连线173.3.2舵机的连线183.3.3超声波的
10、连线193.3.4 Arduino超声波小车总体连线图:20ill第四章软件模块214.1软件设计思路214.2电机前进模块224.2电机后退模块224.3电机停止工作模块234.4电机左转模块234.5电机右转模块244.6防卡死模块25第五章实验及结果分析265.1预期冃标265.2遇到的问题和解决方法265.3硬件的调试与整合275.3.1调试思路275.3.2调试超声波模块275.3.3电机调试285.4心得体会28第六章设想与展望30参考文献31致谢32附录33超声波智能避障车程序(ARDUINO) 33第一章绪论1.1论文的选题背景随着现代计算机技术的不断发展和普及,机器人的发展己
11、经遍及近年来机器人的 智能水平不断提高,并且迅速地改变着人们的生活方式。小到智能玩具,大到机械、 电子、冶金、交通、宇航、国防等各个领域。人们将计算机技术更加广阔的运用的人 类生活中,制造能替代人劳动的机器一直是人类的梦想,并一直在为Z努力。在我们 的生活里,有很多的机器人,如图1.1所示,这两种机器人分别是扫地机器人和灭火机 器人。他们在我们的生活中非常常见也很实用,他们的特点就是无需人们的控制,能 够自行运动完成他们的任务。那么这就需要一个非常必要的基础功能,那就是能够感 知并躲避前方的障碍物。因此,在本次的设计中,我们将设计岀一个能够避障机器人,在具有这个基本功 能的基础丄,我们就可以为
12、他附加更多的功能,赋予它更多的实用价值。选用Arduino 单片机作为控制核心,使用仿生超声波技术传感器进行避障的实现。“智能避障机器 人”作为现代社会的新产物,也是以后的发展方向,他可以按照预先设定的模式在一 个特定的环境里自动的运作,无需人为管理,便可以完成预期所要达到的或是更高的 冃标。扫地机器人灭火机罢人图1.1首都师范大学木科毕业设计论文1.2 Ardu i no单片机概述Arduino,是一个基于开放原始码的软硬件平台,构建于开放原始码simple I/O介 面版,并且具有使用类似Java, C语言的Processing/Wiring 发环境。它包含两个主要 的部分:硬件部分是可以
13、用来做电路连接和Arduino电路板;另外一个则是Arduino IDE,你的计算机中的程序开发环境。你只要在IDE中编写程序代码,将程序上传到 Arduino电路板后,程序便会告诉Arduino电路板要做些什么了。Arduino能通过各种各样的传感器来感知环境,通过控制灯光、马达和其他的装置 来反馈、影响环境。板子上的微控制器可以通过Arduino的编程语言来编写程序,编译 成二进制文件,收录进微控制器。对Arduino的编程是利用Arduino编程语言(基于 Wiring)和Arduino开发环境(based on Processing)来实现的。基于Arduino的项目,可以 只包含Ar
14、duino,也可以包含Arduino和其他一些在PC丄运行的软件,他们之间进行 通信(比如Flash, Processing, MaxMSP)来实现。可以自己动手制作,也可以购买成品套 装;Arduino所使用到的软件都可以免费下载.硬件参考设计(CAD文件)也是遵循 availableopen-source协议,你可以非常自由地根据你自己的要求去修改他们.Arduino可以使用开发完成的电了元件例如Switch或sensors或其他控制器、LED、 步进马达或其他输出装置。Arduino也可以独立运作成为一个可以跟软件沟通的接口, 例如说:flash processing、Max/MSP V
15、WV或其他互动软件。Arduino开发IDE接 口基于开放源代码原,可以让您免费下载使用开发出更多令人惊艳的互动作品。其主要特点如下:1)开放源代码的电路图设计,程序开发接口免费下载,也可依个人需求自己修改。2)使用低价格的微处理控制器(AVR系列控制器),可以采用USB接口供电,不需 外接电源,也可以使用外部9VDC输入。3)Arduino支持ISP在线烧,可以将新的bootloader固件烧入AVR芯片。有了 bootloader之后,可以通过串口或者USB to Rs232线更新固件。4)可依据官方提供的Eagle格式PCB和SCH电路图简化Arduino模组,完成独立 运作的微处理控制;可简单地与传感器,各式各样的电子元件连接(例如:红外线,超音 波,热敏电阻,光敏电阻,伺服马达等)5)支持多种互动程序,如:Flash、Max/Msp VVVV、PD、C、Processing 等。6)应用方面,利用Arduino,突破以往只能使用鼠标、键盘、CCD等输入的装置的 互动内容,可以更简单地达成单人或多人游戏互动。我们为什么要使用Arduino?有很多的单片机和单片机平台都适合用做交互式系统 的设计 o