履带机器人创新课程报告.docx

上传人:b****5 文档编号:2777278 上传时间:2022-11-15 格式:DOCX 页数:13 大小:561.24KB
下载 相关 举报
履带机器人创新课程报告.docx_第1页
第1页 / 共13页
履带机器人创新课程报告.docx_第2页
第2页 / 共13页
履带机器人创新课程报告.docx_第3页
第3页 / 共13页
履带机器人创新课程报告.docx_第4页
第4页 / 共13页
履带机器人创新课程报告.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

履带机器人创新课程报告.docx

《履带机器人创新课程报告.docx》由会员分享,可在线阅读,更多相关《履带机器人创新课程报告.docx(13页珍藏版)》请在冰豆网上搜索。

履带机器人创新课程报告.docx

履带机器人创新课程报告

工业中心创新课程报告

课程名称:

履带机器人组装与控制

小组成员:

指导老师

 

一、新课程任务

1、每组认领一套履带机器人套件,按照安装装配手册装配好履带机器人的车体。

在认领的套件上贴上自己组的标签。

2、学习DBH1A型双通道电机驱动板学习资料,根据资料内容设计Arduino控制板和DBH1A电机驱动板之间的硬件电气电路。

3、编写Arduino程序实现履带机器人车体的前进、后退、左转及右转的运动。

具体控制要求如下:

(1)电脑串口发送命令控制方式

命令包格式为:

动作命令

命令

动作

A

前进

B

后退

L

左转

R

右转

S

停止

(2)手机蓝牙控制方式即通过手机蓝牙发送上表的命令来实现相关的动作

(3)通过手机蓝牙遥控机器人车体实现如下轨迹运动

车体从起点出发到达终点后停留5s后再从终点返回到起点。

 

2、相关介绍

1、RoMeo控制器V1.1:

概述:

DFRduinoRoMeo控制器是一个兼容Arduino的专为机器人应用而设计的,受益Arduino开源平台,因此受到成千上万的开放源码的支持,并可以很容易地扩展arduino模块。

集成2路直流电动机驱动器和无线插座,给出了一个更简单容易的方式开始你的机器人项目。

原理:

上面的图片显示RoMeo控制器上所有的I/O线和连接器,其中包括:

调速电机电源输入端子(6Vto12v)

一个非稳压伺服电源输入端子(5V至20V)

一个串行接口APC220/Bluetooth模块的模块头

两个直流电动机的接线端子-把手电机电流绘制高达2A,每个终端

一个I2C/TWI接口的SDA,SCL的,5V,接地

内部连接到一个模拟端口,8个模拟输入-输入电源电压

一个通用的I/O端口和13个I/O线-4,5,6,7可用于控制马达

一个复位按键

启用/禁用电机控制跳线。

2、蓝牙模块

功能介绍:

BLE-LINK是基于蓝牙4.0的通讯模块,它采用XBEE造型设计,体积尺寸紧凑,兼容XBEE的扩展底座,适用于各种3.3V的单片机系统。

它也可以实现两个蓝牙模块之间点对点无线透明传输,主从机设置,无线烧录程序,甚至与PC建立HID连接。

同时我们为开发者提供了极大的自由度和支持准备,用户不仅可以通过AT指令调试BLE-Link,而且可以通过USB更新BLE-Link的芯片程序。

BLE-LinK蓝牙4.0通讯模块可以使用XBEE底座插接到Arduino控制器上,从而实现蓝牙无线控制。

规格:

蓝牙芯片:

TICC2540

工作频率:

2.4GHz

数据速率-最大值:

1MbpsGFSK

调制或协议:

蓝牙低功耗,V4.0

功耗:

工作时:

平均10.6mA;待机:

8.7mA

灵敏度:

-93dBm

电压-电源:

3.3V

工作温度范围:

-10℃~+65℃

最远传输距离:

30m左右(空旷地带)

尺寸:

32*22mm

 

3、Arduino

基本介绍:

Arduino,是一个基于开放原始码的软硬件平台,构建于开放原始码simpleI/O介面版,并且具有使用类似Java,C语言的Processing/Wiring开发环境。

Arduino能通过各种各样的传感器来感知环境,通过控制灯光、马达和其他的装置来反馈、影响环境。

板子上的微控制器可以通过Arduino的编程语言来编写程序,编译成二进制文件,收录进微控制器。

对Arduino的编程是利用Arduino编程语言(基于Wiring)和Arduino开发环境(basedonProcessing)来实现的。

基于Arduino的项目,可以只包含Arduino,也可以包含Arduino和其他一些在PC上运行的软件,他们之间进行通信(比如Flash,Processing,MaxMSP)来实现。

你可以自己动手制作,也可以购买成品套装;Arduino所使用到的软件都可以免费下载.硬件参考设计(CAD文件)也是遵循availableopen-source协议,你可以非常自由地根据你自己的要求去修改他们.

Arduino可以使用开发完成的电子元件例如Switch或sensors或其他控制器、LED、步进马达或其他输出装置。

Arduino也可以独立运作成为一个可以跟软件沟通的接口,例如说:

flash、processing、Max/MSP、VVVV或其他互动软件…。

Arduino开发IDE接口基于开放源代码原,可以让您免费下载使用开发出更多令人惊艳的互动作品。

功能说明:

可以快速使用Arduino与AdobeFlash,Processing,Max/MSP,PureData,SuperCollider等软件结合,作出互动作品。

Arduino可以使用现有的电子元件例如开关或者传感器或者其他控制器件、LED、步进马达或其他输出装置。

Arduino也可以独立运行,并与软件进行交互,例如:

MacromediaFlash,Processing,Max/MSP,PureData,VVVV或其他互动软件…。

Arduino的IDE界面基于开放源代码,可以免费下载使用,开发出更多令人惊艳的互动作品。

*基于知识共享开放原始码的电路图设计

*基于知识共享开放原始码的程式开发环境

*免费下载,也可依需求修改!

遵照姓名标示。

必须按照作者或授权人所指定的方式,表彰其姓名

*依相同方式分享,若改变、转变著作,当散布该衍生著作时,需采用与该著作相同或类似的授权条款

*Arduino可使用ICSP线上烧入器,将「bootloader」烧入新的IC晶片

*可依据官方电路图,简化Arduino模组,完成独立运作的微处理控制

*可简单地与传感器,各式各样的电子元件连接(例如:

红外线,超声波,热敏电阻,光敏电阻,伺服马达等)

*使用低价格的微处理控制器(ATMEGA8-168)

*USB接口,不需外接电源。

另外有提供9V直流电源输入

*应用方面,利用Arduino,突破以往只能使用鼠标,键盘,CCD等输入的装置进行互动内容的设计,可以更简单地达成单人或多人游戏互动。

3、课程成果

本次的创新课程耗时半学期,期间遇到了很多的问题,例如,程序写完,调试机器时发现,前进能正常运行,但是转弯却发生了问题,检查程序却发现不了问题,最后老师指出电机只接受pwm和低电平,我们写的程序中却出现了高电平,导致了错误。

还有履带打滑,arduino板出现错误,不一一列举。

下面是最终的程序:

#include

Servomyservo1;

Servomyservo2;

inta=3;

intb=5;

intc=11;

intd=6;

voidforward(){

Serial1.print(a);

digitalWrite(a,LOW);

analogWrite(b,120);

digitalWrite(c,LOW);

analogWrite(d,135);

}

voidback(){

digitalWrite(b,LOW);

analogWrite(a,120);

analogWrite(c,135);

digitalWrite(d,LOW);

}

voidright(){

digitalWrite(a,LOW);

analogWrite(b,170);

analogWrite(c,0);

digitalWrite(d,LOW);

}

voidleft(){

digitalWrite(b,LOW);

analogWrite(a,170);

analogWrite(d,170);

digitalWrite(c,LOW);

}

voidstop1(){

digitalWrite(a,LOW);

analogWrite(b,0);

digitalWrite(c,LOW);

analogWrite(d,0);

}

voidu(){

myservo2.write(120);

delay(20);

}

voidi(){

myservo2.write(150);

delay(20);

}

voidkai(){

myservo1.write(180);

delay(20);

}

voidjia(){

myservo1.write(0);

delay(20);

}

voidsetup(){

Serial1.begin(115200);

Serial.begin(9600);

myservo1.attach(12);

myservo2.attach(10);

pinMode(a,OUTPUT);

pinMode(b,OUTPUT);

pinMode(c,OUTPUT);

pinMode(d,OUTPUT);

pinMode(12,OUTPUT);

pinMode(10,OUTPUT);

}

voidloop()

{

if(Serial1.available()){

charval=Serial1.read();

Serial1.print(val);

if(val=='1'){

forward();

}

elseif(val=='5'){

back();

}

elseif(val=='4'){

left();

}

elseif(val=='2'){

right();

}

elseif(val=='3'){

stop1();

}

elseif(val=='J'){

jia();

}

elseif(val=='K'){

kai();

}

elseif(val=='U'){

u();}

elseif(val=='D'){i();}

}}

解释:

我们将机器人的两个电机分别用3、5、11、6号引脚连接

其中5、6控制右电机,3、11控制左电机。

前进时,轮带正转,转弯时,一正一反来控制方向。

10和12号引脚用来控制舵机的两个关节,当输入U,D时舵机分别上下摆动,输入K,J时夹爪开合。

4、心得体会

田兆礼感想:

小组选取的题目是《履带机器人组装和控制》。

首先组装履带机器人,让其可以通过Ardiuno程序实现履带机器人车体的前进、后退、左转及右转的运动,并且可以通过一段预定路程之后机器人的夹手可以完成夹取物体的目的。

在课程完成过程中,我们最深的体会就是要善于勤于思考,主动动手动脑。

创新实验不是课上的实验,只要按着老师讲的、实验指导书上步骤做就行了。

做的课题对于我们来说,是一个几乎没有接触过的新领域,没有人告诉我们每一步该怎么做。

需要自己去找文献查资料,去弄明白课程的原理,然后确定要创新的方向。

按照这个方向一点点努力,所以每一步都需要独立思考。

在项目进行过程中,越是做到后面,越是进展得深入,我们越发觉自己不懂的太多了。

就以课程中编程来说,对我们完全是一个陌生的东西。

虽然我们学习过C语言,但是用于一个之前完全没有涉及过的领域,是一个巨大的挑战。

于是我们只有认真查阅资料,去学习,问老师,一步步去试验,去挑战。

我们成功了,正如老师说的:

没有什么困难可以阻挡一群乐观而且好学的人。

做创新的过程真是一个不断在学习的过程。

当然我们遇到的困难远远不止在程序上,对于小车的组装还是十分简单的,只要按照书上说的就好。

但是真正到了去控制它的时候就不是那么简单

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 能源化工

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1