机器人实训总结Word下载.docx

上传人:b****5 文档编号:8519116 上传时间:2023-05-11 格式:DOCX 页数:15 大小:162.19KB
下载 相关 举报
机器人实训总结Word下载.docx_第1页
第1页 / 共15页
机器人实训总结Word下载.docx_第2页
第2页 / 共15页
机器人实训总结Word下载.docx_第3页
第3页 / 共15页
机器人实训总结Word下载.docx_第4页
第4页 / 共15页
机器人实训总结Word下载.docx_第5页
第5页 / 共15页
机器人实训总结Word下载.docx_第6页
第6页 / 共15页
机器人实训总结Word下载.docx_第7页
第7页 / 共15页
机器人实训总结Word下载.docx_第8页
第8页 / 共15页
机器人实训总结Word下载.docx_第9页
第9页 / 共15页
机器人实训总结Word下载.docx_第10页
第10页 / 共15页
机器人实训总结Word下载.docx_第11页
第11页 / 共15页
机器人实训总结Word下载.docx_第12页
第12页 / 共15页
机器人实训总结Word下载.docx_第13页
第13页 / 共15页
机器人实训总结Word下载.docx_第14页
第14页 / 共15页
机器人实训总结Word下载.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

机器人实训总结Word下载.docx

《机器人实训总结Word下载.docx》由会员分享,可在线阅读,更多相关《机器人实训总结Word下载.docx(15页珍藏版)》请在冰点文库上搜索。

机器人实训总结Word下载.docx

任务二:

机器人触觉导航

该任务要求机器人碰到障碍物时,接触开关会有所察觉,通过编程让机器人避开障碍物。

在安装胡须时,需要注意胡须距传感立柱既不能太远也不能太近,太远会导致机器人碰到障碍物后反应过慢,太近则会使机器人在前方没有障碍物的情况下进行避障操作,影响小车正常行进。

胡须机器人避障程丿宇如下:

#includeO

ttincludeO

intPl_4state(void)//获取Pl_4的状态,右胡须

return(Pl&

OxlO)1:

0;

intP2_3state(void)//获取P2_3的状态,左胡须

return(P2&

0x0S)1:

voidForward(void)

Pl_l=l:

delay_nus(1700);

Pl_l=0:

delay_nus(1300);

delay_nras(20);

voidLeftTurn(void)

inti;

for(i=l;

i<

=26;

i++)

delay_nus(1300);

delay_nras(20);

voidRight_Turn(void)

for(i=l;

i<

i++)

Pl_l=l;

voidBackward(void)

=65:

i++)delay_nus(1300);

intmain(void)

printf("

ProgramRunning!

\n"

whiled)

辻((Pl_4state()==0)&

&

(P2_3state()==0))

Backward();

//向后Left_Turn();

//向左Left_Turn();

//向左

elseif(Pl_4state()==0)

//向后

Left_Turn();

else辻(P2_3state()==0)

//向后

Right_Turn();

//向右

else

Forward():

//向前

任务三:

机器人红外线导航

任务二触须接触导航是依靠接触变形来探测物体,而本任务是依靠红外线探

测机器人前进路线,然后确定何时有光线从被探测物体反射回来,通过检测反射

回來的红外光就可以确定前方是否有物体。

在本次任务中,我们需要使用三极管9013,这是因为C51的10驱动能力较弱,

这里我们加入三极管使其工作在开关状态。

三极管是一种控制元件,主要用來控

ttincludeOttincludeOftincludeO

^defineLeftIR

Pl_2

//左边红外接收连接到Pl_2

★defineRightIR

P3_5

//右边红外接收连接到P35

#defineLeftLaunch

Pl_3

//左边红外发射连接到Pl_3

ftdefineRightLaunch

P3_6

//右边红外发射连接到P36

voidIRLaunch(unsigned

charIR)

intcounter;

if(IR==L'

for(counter=0;

counter<

38;

counter++)

辻(IR==R'

counter<

counter++)//右边发射

voidForward(void)//向前彳丁走子程序

delay_nus(1300);

delay_nnis(20):

voidLeft_Turn(void)//左转子程序

for(i=l;

i〈=26;

voidRight_Turn(void)//右转子程序

delay_nnis(20);

voidBackward(void)//向后行走子程丿字

int1;

for(1=1;

i〈=65;

delay_nus(1700);

intirDetectLeft,irDetectRight;

uart_Init();

IRLaunch('

R'

);

//右边发射irDetectRight=RightIR;

//右边接收

L^);

//左边发射

irDetectLeft=LeftIR:

//左边接收

辻((irDetectLeft==0)&

(irDetectRight==O))//两边同时接收

到红外线

Backward():

Left_Turn();

else辻(irDetectLeft==O)//只有左边接收到红外线

Backward();

Right_Turn();

else辻(irDetectRight==O)//只有右边接收到红外线

Left_Turn();

Forward0;

任务四:

尾随小车该任务的设计线路与任务三相同,故完成较为简单,试验程序如下:

ttincludeOftincludeO#1ncludeOintmain(void)

if(IR==L'

)//左边发射

counterOS;

counter++)

)//右边发射

intpulseLeft,pulseRight;

do

IRLaunchR'

//右边发射

irDetectRight=RightIR:

//右边接收

IRLaunchCL'

//左边发射irDetectLeft=LeftIR;

//左边接收if((irDetectLeft==0)&

(irDetectRight==O))//向后退

pulseLeft=1300;

pulseRight=1700;

else辻((irDetectLeft==O)&

(irDetectRight==l))//右转

pulseLeft=1700:

else辻((irDetectLeft==l)&

(irDetectRight==O))//左转

pulseRight=1300;

else//前进

pulseLeft=1700;

delay_nus(pulseLeft);

P1_1=O;

P1_O=1;

delay_nus(pulseRight);

P1_O=O;

delay_nms(20);

while仃);

任务五:

机器人的距离检测

用同样的IRLED/探测电路检测距离,高灵敏度的频率可以探测远距离的物体,低灵敏度的频率可以探测距离较近的物体。

这使得距离探测就简单了。

选择5个不同频率,从最低灵敏度到最高灵敏度进行测试,依赖于探测器不能再检测到物体的红外线频率,就可以推断物体的大概位置。

测试扫描频率程序如下:

^include<

>

//ttdefineRightLaunchP3_6//右边红外发射连接到P3_6

unsignedinttime;

intleftdistance;

//左边的距离

//intrightdistance;

//右边的距离

intdistanceLeft,irDetectLeft;

//intdistanceRight,irDetectRight;

unsignedintfrequency[5]={29370,31230,33050,35700,38460}:

voidtimer_init(void)

定时器模式

voidFreqOut(unsignedintFreq)

time=256-(500000/Freq);

//根据频率计算初值

voidTimer0_Interrupt(void)interrupt1

LeftLaunch=^LeftLaunch;

//取反//RightLaunch="

RightLaunch;

〃重新设值

THO=OXFF:

TLO=time:

voidGet_lr_Distances()

unsignedintcount:

for(count=0:

count<

5:

count++)

FreqOut(frequency[count])

//irDetectRight=RightIR:

//右边接收//printfC"

f=%d\n"

\time);

printf(^^irDetectLeft=%d\n"

irDetectLeft);

//printfirDetectRight=%d\n"

irDetectRight);

if(irDetectLeft==1)

leftdistance++;

//if(irDetectRight==1)

//rightdistance++;

ProgamRunning!

\n^);

printfCFREQENCYETECTED'

n"

while(l)

Get_lr_Distances():

printf("

distanceLeft=%d\n"

leftdistance);

//printfdistanceRight=%d\n^,rightdistance);

):

printfCdelay_nras(1000);

在进行串口调试时,应注意串口的接线位置,安装符合白己电脑的串口调试助手。

任务六:

寻线搬运机器人

可能是前儿个任务完成太轻松的原因,是我们对实训产生了懈怠的想法,但最后的任务再一次提醒了我需要学习的东西还有很多,永远都不能骄傲自满。

经过一天多的调试,在机器人的运行和编程中,出现了以下儿方面的问题:

一、转弯出现问题。

在一些路口中转弯出现了问题。

所以提倡用自定义转弯,提高成功率。

2.在运行机器人前要检查螺丝,检查机器人的性能是否良好,以免在运行过程中发生意外。

三、遇到错误时,要耐心,细心检查问题,分析问题,要互相讨论出解决方案。

4.电池的电量对小车运行影响极大最好选用质量较好的电池。

5.伺服电机的角度没有调好,导致机器人在运行过程中影响程序的运行。

人熟悉自己的机器人,了解一些运行、编程的小技巧。

寻线搬运机器人编程如下:

#1ncludeO

#defineuintunsignedint#defineucharunsignedcharucharQTIState;

voidTimel_init(void)

EA=

TM0D

SCON

1;

//硬件串口使用定时器1,供AT89S52与PC机通信使用1=0x20;

=0x50;

TH1=OxFD:

TLl=OxFD:

TRI=1;

TI=1;

//定时器1方式位自动重装模式

//模式1,8位数据

//波特率为9600

//起动定时器

voidPivot_Left(void)//左转子程序

delay_nus(1350);

delay_nus(1650);

delay_nus(1500);

voidRotate_right(void)

delay_nus(1650);

voidRotate_Left(void)

delay_nus(1350);

delay_nus(1350);

voidBackward(void)//向后行走子程序

delay_nus(1300);

Pl_0=l:

Pl_0=0:

delay_nms(20);

QTIState=P2&

0x0e;

voidFollow_Line(void)

Get_QTI_State();

switch(QTIState)

voidmain(void)

{intcounter;

Timel_init():

runok!

"

program

350;

counter++)//寻线

Follow_Line();

/*for(counter=0;

20;

counter++)//直走

}*/

33;

counter++)//左转90

Pivot_Left0;

65;

counter++)//直走

Forward0:

55;

counter++)//后转

Rotate_Left();

counter++)//寻线

/*for(counter=0;

counter++)//右转调整

Pivot_Right0;

counterOO;

180;

for(counter=0;

counter++)//后彳亍

Backward0;

40;

80;

for(counter=0:

counter<

135:

counter++)//右转

70;

while(l);

这次实训是我感触很深,收获很大,作为一名大学生,我应该多学习了解一

些先进的科学技术和最新的研究理论,时刻更新丰富H己的知识,用最新的理论

指导自己的学习,使自己有更大的收获和进步,为社会多做贡献。

特别是这次实

训的形式我感觉非常好,十分符合大学应有的教学模式,作为一洛工科学生学习

很有必要。

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

当前位置:首页 > 幼儿教育 > 幼儿读物

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2