Arduino线小车.doc

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第八届“挑战杯”全区大学生课外学术科技作品 山地探测机器人研究报告 作者:高艳飞 院校:内蒙古机电职业技术学院 系别:水利与土木建筑工程系 班级:建筑工程技术1203班 2013/4/22 山地探测机器人介绍:山地探测机器人是基于Arduino开放源代码的硬件设计平台制作而成。它是为解决偏远山区探测问题而设计的智能化机器人,它可以代替人工进行室外红外探测、自动寻址等功能。其基本思路是:通过计算机I/O端口将编程指令代码考录到具有Atmega328微控制器中,单片机就会执行电脑所考录的程序,通过单片机引脚连接传感器、电机等设备达到机器人能够具有自动探测的功能。 Arduino介绍 Arduino是一块基与开放原始代码的Simple I/O平台,並且具有使用类似java,C语言的开发环境。可以使用Arduino语言与Flash或Processing…等软件作出互动作品。Arduino可以使用开发完成的电子元件例如Switch或Sensors或其他控制器、LED、步进电机或其他输出裝置。Arduino也可以独立运作成为一个可以跟软件沟通的平台,例如说:flash processing Max/MSP VVVV 或其他互动软件… Arduino是最经典的开源硬件项目,诞生于意大利的一间设计学校。2005年冬天,Massimo Banzi跟David Cuartielles设计自己的电路板,并引入了Banzi的学生David Mellis为电路板设计编程语言。这块电路板被命名为Arduino。1、开放源代码的电路图设计,程序开发接口免费下载,也可依需求自己修改;2、可以采用USB 接口供电,也可以外部供电,双向选择;3、Arduino支持ISP 在线烧写,可以将新的“bootloader”固件烧入 ATmega168 或AT mega328芯片。有了bootloader之后,可以通过USB 更新程序;4、可依据官方提供的Eagel格式PCB 和SCH 电路图,简化Arduino模组,完成独立运作的微处理控制。可简单地与传感器,各式各样的电子元件连接(红外线、超音波、热敏电阻、光敏电阻、伺服舵机…等);5、支持多种互动程序,如:Flash、Max/Msp 、VVVV 、C、Processing....等;6、应用方面,利用Arduino,突破以往只能使用鼠标、键盘,CCD等输入的装置的互动内容,可以更简单地达成单人或多人游戏互动。 寻址模块是山地探测机器人的关键技术,具体功能为: 按照一定的路线行走。在行进的过程当中地面上有纵横交错的白线做引导,并 通 过 白 线 来 判 断 是 否 达 到 指 定位置。如图1所示。 图一:山地探测机器人寻线路径和关键电路红外光电检测电路 寻线方法如下:机器人必须对自身进行准确定位。场上纵横交错的白线就是用于辅助机器人定位的,在行进的过程当中,如果偏离了预定的轨道,则无法到达指定的位置,这就需要随时检测路面信息,并反馈给单片机, 由单片机发出指令来矫正偏差;机器人不可能以直线行走,如果检测到转向信号,单片机就向电机发出指令,进行转向。这里的关键部件就是检测设备,我们采用的红外光电检测管为单光束反射式光电传感器ST188 ,结构如图1所示。图1中比较器LM311的同相输入端在没有检测到反射信号(不在白线区)时为高电平,而反相输入端提供电压( 一般1.5V左右)。当在白线区的时候,反射的红外线导致光敏三极管导通,同相端输入低电平,比较的结果是输出为低电平,发光二极管发亮;当不在白线区的时候,光敏三极管截止,同相端输入底电平,比较的结果为输出为高电平,发光二极管灭。检测器采用了10个传感器构成的检测阵列,如图2 所示: 图二 光电传感器结构 由于机器人按照一定的路线行走,可将其分为若干个步骤,将每个步骤对应与任务数据组中的数据,当要修改路径的时候只需要修改数组的数据。将机器人的基本动作如行走、后 退、转弯、加速、减速等做成函数供调用即可。 为了使机器人平稳的行走、准确的到达指定位置进行电机调速和寻线。在整个软件系统中,以执行任务数组为主程序,电机调速以及寻线以中断方式进行。每隔一定的采样时间对传感器进行采样处理。 3、山地探测机器人主函数 山地探测机器人是是由Atmega328单片机作为其主芯片,在程序编程方面有类似于C、C++和Java编程语言,叫做Arduino语言。由于Arduino被列为开源硬件项目,Arduino是不需要付版税,甚至不用取得Arduino团队的许可。Arduino电路板也一样的自由和开放。int?IN1=8;??????? int?IN2=9;??????? int?ENA=10;??????? int?ENB=11;????? int

文档评论(0)

huang37168huan + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档