灌篮机器人设计说明书.docx

上传人:b****5 文档编号:4399838 上传时间:2022-12-01 格式:DOCX 页数:30 大小:488.60KB
下载 相关 举报
灌篮机器人设计说明书.docx_第1页
第1页 / 共30页
灌篮机器人设计说明书.docx_第2页
第2页 / 共30页
灌篮机器人设计说明书.docx_第3页
第3页 / 共30页
灌篮机器人设计说明书.docx_第4页
第4页 / 共30页
灌篮机器人设计说明书.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

灌篮机器人设计说明书.docx

《灌篮机器人设计说明书.docx》由会员分享,可在线阅读,更多相关《灌篮机器人设计说明书.docx(30页珍藏版)》请在冰豆网上搜索。

灌篮机器人设计说明书.docx

灌篮机器人设计说明书

燕山大学

课程设计说明书

 

题目:

智能车及灌篮机器人系统的设计与制作

 

学院(系):

机械电子工程系

 

燕山大学课程设计(论文)任务书

院(系):

机械工程学院基层教学单位:

机器人及机电系统研究所

组号

2(S1)

学生姓名

设计题目

智能车及灌篮机器人系统的设计与制作

在课程研究项目智能移动小车的基础上,自主设计一个灌篮的机械臂和抓手,并装配或安装到原有的小车上,完成灌篮机器人的设计、制作,进行机器人运动控制规划,控制机器人完成一系列复杂的动作,如手爪张合、车体回转、智能循迹和避障、协同作业等任务。

要抓取的“篮球”直径38-40mm,重量<500g。

车体:

(1)负载能力2kg

(2)重量2kg(3)外形尺寸参照抓持物体

手抓:

(1)负载能力(含执行器)1kg

(2)重复定位精度1cm

(3)外形尺寸能够完成送料、灌篮并与车体和谐(4)重量5kg以内

5)手爪张合30-150度(6)机械臂最大展开半径0.4-0.5m

(1)资料分析:

查阅相关文献资料,对资料进行分析总结。

(2)机器人总体设计:

确定机器人的具体任务要求,根据任务初步拟定机器人的技术参数、运动形式、驱动方案、传动方案、控制方案等。

(3)机器人机械结构设计:

将机器人分解为车身结构、机械臂、手爪和传动结构等若干部分,分别对各个结构的关键部件进行详细设计并校核,绘制机器人总装图和关键零部件图。

(4)运动控制方案设计:

基于单片机完成机器人控制系统硬件和软件设计。

(5)根据比赛要求,编程实现规定的动作,最终完成比赛。

(6)编制课程设计说明书。

(7)最终提交的文档:

主要内容包括机械图纸一套,电气原理图一套,设计说明书一套。

设计说明书必须包括方案论证、所用方案成本分析,必要的设计计算,市场前景分析与预测,设备的使用说明书,程序清单等。

(1)资料查阅、设计准备,所需天数1天

(2)资料分析、总结,所需天数1天

(3)总体方案设计,所需天数2天(4)机械结构设计,所需天数2天

(5)绘制总装图和关键零件图,所需天数3天(6)运动控制系统的设计,所需天数3天

(7)绘制电路图所需天数2天(8)设计制作所需天数3天

(9)编制课程设计说明书所需天数2天(10)答辩考核、演示所需天数1天

参考

资料

通过校园网在我校订阅的电子资料库中可以搜索到大量的有关机电一体化以及电机和电力拖动的参考资料。

同学们也可到学校的图书馆查找纸质期刊资料。

机械学院的计算机中心上班时间免费对本院学生开放。

指导教师签字

基层教学单位主任签字

燕山大学课程设计评审意见表

指导教师评语:

成绩:

指导教师:

年月日

答辩小组评语:

成绩:

评阅人:

年月日

课程设计总成绩:

答辩小组成员签字:

 

年月日

目录

 

1.摘要···························································5

2.方案分析························································6

3.成本预算·······················································21

4.市场分析·······················································22

5.心得体会······················································23

6.参考文献······················································24

摘要

灌篮智能小车是一个集环境感知、轨迹规划、机械手应用等功能于一体的机电一体化系统。

它集中地运用了计算机、传感器、信息、通讯、导航、人工智能及自动控制等技术—是典型的高新技术综合体。

本次课程设计的灌篮智能小车就是这种综合体的一种尝试。

小车以单片机为核心,附以外围电路,采用光电检测器进行检测信号和循线运动。

运用单片机的运算和处理能力来实现小车的自动行驶、停止、转弯、寻迹检测、蔽障等功能的智能控制系统。

 

方案分析

1.智能小车的总体概述

单片机是智能小车的控制核心,系统有黑线检测模块,电机驱动模块,LED灯指示模块,数码管显示模块,红外检测避障模块等几部分组成。

总的电路图如下

2.智能小车的驱动系统

小车的驱动包括电机的选择、驱动方案的选择、供电电源的选择下面将依次介绍。

2.1电动机的选择及驱动

2.1.1电动机的选择

方案一:

采用步进电机,步进电机的一个显著特点就是具有快速起停能力,如果负荷不超过步进电机所能提供的动态转矩值,就能够立即使步进电机启动或者反转,另一个显著特点就是转换精度高,正反转控制灵活。

方案二:

采用普通直流电机,直流电动机具有优良的调速特性,调速平滑、方便,调整范围广;过载能力强,能承受频繁的冲击负载,可实现频繁的无级快速启动、制动和反转;能满足各种不同的特殊运行要求。

综合考虑小车的各种要求,因需要寻迹和避障的等功能,对快速起停,转换精度正反转控制要求较高。

2.1.2电动机的驱动方案的选择

电动机驱动方案有以下几种:

方案一:

采用电阻网络或数字电位器调整电动机的分压,从而达到调速目的。

但是电阻网络只能实现有级调速,而数字电阻的元器件价格比较昂贵,而且可能存在干扰,更主要的问题在于一般电动机的电阻比较小,但电流很大,分压不仅会降低效率,而且实现很困难。

方案二:

采用继电器对电动机的开或关进行控制,通过控制开关的切换速度实现对小车的速度进行调整,这个电路的优点是电路较为简单,缺点是继电器的响应时间长,易损坏,寿命较短,可靠性不高。

方案三:

采用四个大功率晶体管组成H桥电路,四个大功率晶体管分为两组,交替导通和截止,用单片机控制是指工作在开关状态,进而控制电动机的运行。

该控制电路由于四个大功率晶体管之工作在饱和和截止状态下,效率非常高,并且大功率晶体管开关的速度很快,稳定性也极强,是一种广泛采用的电路。

经过综合考虑选用方案三。

该方案使用单片机控制易于实现集成化,减少体积和重量。

而且晶体管效率极高,稳定性好,操作较为容易。

考虑到电压电流的等级及尺寸,外观等因素,可选用集成电机驱动芯片L298。

该芯片是双H桥高电压大电流集成电路,其输出脚(SENSEA和SENSEB)用来连接电流检测电阻。

Vss接逻辑控制部分的电源,常用+5V。

IN1~IN4输入引脚采用标准TTL逻辑电平信号,用来控制H桥的开与关,EnA,EnB,引脚则是是能控制端,其控制表如下:

输入

功能

 

V=H

C=H,D=L

正转

C=L,D=H

反转

C=D

制动

V=L

C=X

停止

D=X

2.2供电电源的方案选择

虽然整个机电系统都需要用到电源,但是为了叙述方便将此内容放到此处一起讨论。

方案一:

采用两个电源供电。

将电动机驱动电源与单片机及其周围电路完全隔离,利用光电耦合器传输信号。

这样可以使电动机驱动所造成的干扰彻底消除,提高了系统的稳定性,但是多一组电池,增加了车身重量,增大了小车的惯性。

方案二:

采用单一电源供电。

电源直接给电动机供电,因电动机启动瞬间电流较大,会造成电源电压波动,因而控制与检测部分通过集成稳压块供电。

其供电电路比较简单。

经过综合的考虑,采用方案二。

这样既可以减轻小车的重量,减小惯性;而且通过集成稳压块又可以是电压稳定,不受启动时的波动。

 

2.3驱动系统的电路和程序设计

驱动模块电路图

根据电路图连接单片机和此模块。

其中:

80c51的p2.5与p2.6分别和驱动芯片L298的两个使能控制口相连。

然后进行直走调试。

程序如下:

•SETBP2.5;使能控制1

•SETBP2.6;使能控制2

•SETBP2.1

•cplP2.2

•SETBP2.3

•cplP2.4

•jmp$

程序输入后,小车能够直走,则驱动系统完成。

3.智能小车寻迹功能的实现

3.1方案选择

探测路况黑线的基本原理:

光线照射到路面并反射,由于黑线和白纸对光线的反射系数不同,可根据接收到的反射光强弱来判断黑线,可实现的方案有以下方案:

方案一:

采用普通发光二极管及光敏电阻组成的发射接收方案。

该方案在实际使用时,容易受到外界光源的干扰,有时甚至检测不到,主要是因为可见光的反射效果跟地表的平坦程度,地表材料的反射情况均对检测效果产生直接影响。

虽然可采取超高亮度的发光二极管降低一定的干扰,但这又增加额外的功率损耗。

方案二:

脉冲调制的反射式红外发射接收器。

由于采用该有交流分量的调制信号,则可大幅度减少外界干扰。

另外红外发射接收管的最大工作电流取决于平均电流,如果采用占空比小的调制信号,在平均电流不变的情况下,瞬时电流很大(50~100mA),则大大提高了信噪比,并且其反映灵敏,外围电路也很简单。

比较以上两种方案,方案而有很大的优势。

市场上很多红外光电探头都是基于这个原理。

这样不但准确完成测量,而且能避免电路的复杂性。

3.2设计实现过程

路面黑线检测主要通过黑白线检测传感器实现,黑白线检测传感器,有效探测距离5cm,通过调节电位器,最远可以达到10cm(该距离下,探测黑白线的精度较低)。

本项目选用的黑白线传感器受可见光干扰小,输出量为开关量,信号处理简单。

输出的TTL电平可以直接和单片机连接,但需要在输出端加上拉电阻,以使电平输出稳定。

当检测黑线是红外光管就收到反射回来的红外光,其输出立即发生高低电平跳变,该信号经逻辑比较后送单片机处理。

为保证小车沿黑线行驶,采用了两个检测器并行排列。

在校车行走过程中,若向左方向偏离黑线,则右侧的探头就会检测到黑线,把信号传给单片机,单片机控制车头向右转。

相关程序见7.2.2

4.智能小车路程检测功能的实现

方案一:

采用霍尔元件的集成片,该器件内部有三片霍尔元件组成,当磁铁正对金属板时,由于霍尔反应,可以产生电流的变化,对此加以判断,但需要在车轮上安装磁片,将霍尔元件集成片安装在固定轴上,通过对脉冲的计数进行车速的测量。

方案二:

采用光电码盘进行检测。

旋轴转动,带动码盘转动,码盘上刻有许多狭缝,码盘转动时发射光透过狭缝接收元件接收。

用计数器对接收到的信号进行计数,用这种方案能很精确的算出小车已经走过的距离。

由于霍尔元件成本较光电码盘低很多,虽然精度也低些,但是对小车整体的精度已经足够了,所以选择方案一。

5.智能小车的避障功能实现

方案一:

脉冲调制的反射式红外发射接收器。

由于采取该有交流分量的调制信号,则可大幅度减少外界干扰;另外红外发射接收管的最大工作电流取决于平均电流,如果采用占空比小的调制信号,在平均电流不变的情况下,瞬时电流(50~100mA),则可大大提高了信噪比并且其反应灵敏,外围电路也很简单。

方案二:

采用超声波传感器,如果传感器接收到反射的超声波,则如果单片机前方有障碍物,否则通知单片机可以向前行驶。

脉冲调制的反射式红外发射接收器较超声波灵敏度高,符合此次要求,故选用方案一。

避障检测和处理采用集发射与接收于一体的光电传感器,该传感器具有探测距离远,受可见光干扰小,易于安装的有点。

避障原理统寻迹相似,通过A/D将模拟信号转换为数字信号传给单片机,再由单片机做出分析判断,发出信号,控制路子启停,从而完成避障。

6.智能小车的数码管显示功能实现

为实现小车速度的两位显示需要两个数码显示器。

但是显示器与单片机的连接如果采用并行连接,虽然连接简单,但出现单片机引脚不够的矛盾。

所以采用8位串行输入转并行输出移位寄存器74HC595。

只要三个引脚连接即可,而且相对简单。

其电路图如下图。

74HC595电路连接图

7机械手的选定及夹取动能实现

7.1设计方法和设计方案论证

设计方案有如下三种:

A方案如图2-1所示,该方案虽然灵活性好,但Z轴转动只能靠小车的转动来实现,耗能多,不符合“多动小关节、少动大关节”原则,而且需要控制车轮方能实现,车轮依靠步进电机控制,从而给编程和后期调试。

图2-1

B方案如图2-2所示,该方案改进了方案A的机械手不能Z0轴转动的缺点,但是由于电机数量有限,就限制了该机械手的灵活性,抓手方向不能保证垂直地面,抓球时容易把球碰离原来位置,从而难于实现功能。

图2-2

C方案如图2-3所示,该方案灵感源于IRB1410二关节和三关节处的设计。

此方案改进了方案B的缺点,通过平行四边形的特点,使抓手所在臂能够垂直地面,从而加持稳定。

图2-3

经过分析比较,最终决定选用方案才C

7.2任意位姿控制

 

i

ai-1

αi-1

di

θi

θi

1

0

0

130

θ1

0

2

125

90

0

θ2

0

3

200

0

0

θ3

0

根据运动学公式,可知:

cosθ1–sinθ100

01T=sinθ1cosθ100

001130

0001

cosθ2–sinθ20125

00-10

12T=sinθ2cosθ200

0001

cosθ3sinθ30200

23T=sinθ3cosθ300

0010

0001

1000

34T=010-60

0010

0001

7.3速度控制

当初值如上表所示

应用MATLAB编程

symss1s2s3s4

s1=0*pi/180

s2=(0)*pi/180

s3=(0)*pi/180

s4=0

T10=[cos(s1)-sin(s1)00;sin(s1)cos(s1)00;001130;0001];

T21=[cos(s2)-sin(s2)0125;00-10;sin(s2)cos(s2)00;0001];

T32=[cos(s3)-sin(s3)0200;sin(s3)cos(s3)00;0010;0001];

T43=[1000;010-60;0010;0001];

T2=T10*T21;

T3=T2*T32;

T4=T3*T43

T42=T32*T43;

T41=T21*T32;

Z1=[T10(1,3);T10(2,3);T10(3,3)];

Z2=[T2(1,3);T2(2,3);T2(3,3)];

Z3=[T3(1,3);T3(2,3);T3(3,3)];

Z4=[T4(1,3);T4(2,3);T4(3,3)];

P44=[0;0;0];

P43=[T43(1,4);T43(2,4);T43(3,4)];

P42=[T42(1,4);T42(2,4);T42(3,4)];

P41=[T41(1,4);T41(2,4);T41(3,4)];

R10=[T10(1,1)T10(1,2)T10(1,3);T10(2,1)T10(2,2)T10(2,3);T10(3,1)T10(3,2)T10(3,3)];

R20=[T2(1,1)T2(1,2)T2(1,3);T2(2,1)T2(2,2)T2(2,3);T2(3,1)T2(3,2)T2(3,3)];

R30=[T3(1,1)T3(1,2)T3(1,3);T3(2,1)T3(2,2)T3(2,3);T3(3,1)T3(3,2)T3(3,3)];

R40=[T4(1,1)T4(1,2)T4(1,3);T4(2,1)T4(2,2)T4(2,3);T4(3,1)T4(3,2)T4(3,3)];

A1=CROSS(Z1,R10*P41);

A2=CROSS(Z2,R20*P42);

A3=CROSS(Z3,R30*P43);

A4=CROSS(Z4,R40*P44);

A=[A1A2A3A4];

Z=[Z1Z2Z3Z4];

J=[A;Z]

算的结果:

060600

325000

J=020000

0000

0-1-1-1

1000

100325

00-10

T4=01070

0001

8程序清单

 

SDATA_595EQUP1.3;串行数据输入

SCLK_595EQUP1.1;移位时钟脉冲

RCK_595EQUP1.2;输出锁存器控制脉冲

codd:

db0c0h,0f9h,0a4h,0b0h,099h,92h,82h,0f8h,80h,90h,77h,7ch,39h,51h,79h,71h,00h

org0000h

ajmpstart

org0000bh

ajmptimer0

org001bh

ajmptimer1

start:

movtmod,#00010001b

movth0,#0b8h

movtl0,#0h

movth1,#0feh

movtl1,#34h

mov30h,th1

mov31h,tl1

mov33h,#0h

movr1,#0h;电机2的初始化

movie,#10001010b

mov41h,#46d;

mov45h,#7h

mov46h,#18h

MOV44h,#128d;44存放电机一要到的位置

mov34h,#0feh;;;;;电机二要到的位置

mov35h,#34h

mov36h,#0f8h

mov37h,#0d0h

mov38h,#0feh

mov39h,#34h

mov3ah,#0fDh

mov3bh,#08h

mov40h,#0h

mov61h,#0

acalldelay2;---------------------------------------------------初始化

SETBP2.5;使能控制1

SETBP2.6;使能控制2

setbp2.1

clrp2.2;直行程序

jbp1.4,rights

panduan4:

jnbp3.5,next

jbp3.5,lefts

next:

setbp2.3

setbp2.4

setbp2.1

setbp2.2

mova,61h

cjnea,#0h,finish

;ajmpdisplay

acallshou

ajmpgo

leftp:

clrp2.2;左转子程序

setbp2.1

setbp2.3

clrp2.4

mov60h,#6h

;ajmpdisplay

acalldelay8

ajmpgo

left:

clrp2.2;左转子程序

setbp2.1

setbp2.3

clrp2.4

mov60h,#6h

;ajmpdisplay

ajmpgo

right:

setbp2.4;右转子程序

clrp2.3

clrp2.1

setbp2.2

mov60h,#7h

;ajmpdisplay

ajmpgo

lefts:

setbp2.3

setbp2.4

clrp2.2

setbp2.1

mov60h,#8

;ajmpdisplay;快速左转

ajmpgo

rights:

clrp2.1

clrp2.2

setbp2.4;快速右转

clrp2.3

mov60h,#9

ajmpdisplay

ajmpgo

finish:

mov40h,#3h

movr1,#0h

last:

cjner1,#0ffh,last

acalldelay8

acalldelay8

acalldelay8

acalldelay8

acalldelay2

mov40h,#2h

llll:

nop

ajmpllll

jmp$

display:

MOVSP,#60H

movr6,#02h

mova,60h;a为要显示的数

send:

movdptr,#codd

movca,@a+dptr

MOVR0,a

MAIN1:

CALLOUT_595

CALLDELAY

mova,60h

djnzr6,send

ajmpgo

shou:

setbp0.1

setbtr0

setbtr1

mov2ch,#50;控制舵机1到初始位置

mov2dh,#200

mov41h,#114

acallmotor

mov40h,#1h

movr1,#0h

ggg:

nop

cjner1,#0ffh,ggg

acallDELAY0

mov40h,#2h

movr1,#0h

gg:

cjner1,#0h,mo

mov44h,#46d

ajmpgg

mo:

mov2ch,#114;控制舵机1到初始位置

mov2dh,#130

mov41h,#48

acallmotor1

setbp2.1

clrp2.2;直行程序

setbp2.4

clrp2.3

acalldelay8

inc61h

ret

timer0:

;mova,33h

cjnea,#0,equa

movth0,#0b8h

movtl0,#0h

movth1,30h

movtl1,31h

setbp0.1

setbtr0

setbtr1

equa:

reti

timer1:

pushacc

clrp0.1

mova,40h

cjnea,#1h,one

mov34h,36h

mov35h,37h

ajmptimee

one:

jctimee

cjnea,#2h,two

mov34h,38h

mov35h,39h

ajmptimee

two:

mov34h,3ah

mov35h,3bh

timee:

mova,31h;比较实际位置和理想位

clrc

subba,35h

mova,30h

subba,34h

jcincc

jzequal

clrc

mova,31h

subba,#5h;;;;;;;;;;控制电机二的速度,460div

mov31h,a

mova,30h

subba,#0h

mov30h,a

movr1,#0h

popacc

reti

equal:

movr1,#0ffh;r7为到位标志

popacc

reti

incc:

clrc

mova,31h

addca,#0Ah;;;;;;;;;;

mov31h,a

mova,30h

addca,#0h

mov30h,a

movr1,

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

当前位置:首页 > 高中教育 > 高中教育

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

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