智能小车实验报告.docx

上传人:b****7 文档编号:15891383 上传时间:2023-07-08 格式:DOCX 页数:14 大小:20.54KB
下载 相关 举报
智能小车实验报告.docx_第1页
第1页 / 共14页
智能小车实验报告.docx_第2页
第2页 / 共14页
智能小车实验报告.docx_第3页
第3页 / 共14页
智能小车实验报告.docx_第4页
第4页 / 共14页
智能小车实验报告.docx_第5页
第5页 / 共14页
智能小车实验报告.docx_第6页
第6页 / 共14页
智能小车实验报告.docx_第7页
第7页 / 共14页
智能小车实验报告.docx_第8页
第8页 / 共14页
智能小车实验报告.docx_第9页
第9页 / 共14页
智能小车实验报告.docx_第10页
第10页 / 共14页
智能小车实验报告.docx_第11页
第11页 / 共14页
智能小车实验报告.docx_第12页
第12页 / 共14页
智能小车实验报告.docx_第13页
第13页 / 共14页
智能小车实验报告.docx_第14页
第14页 / 共14页
亲,该文档总共14页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

智能小车实验报告.docx

《智能小车实验报告.docx》由会员分享,可在线阅读,更多相关《智能小车实验报告.docx(14页珍藏版)》请在冰点文库上搜索。

智能小车实验报告.docx

智能小车实验报告

北京邮电大学实习报告

实习名称

电子工艺实习

学院

电子工程学院

学生姓名

张阗

班级

2010211205

学号

10211090

实习时间

2012.8.27-9.7

实习地点

北京邮电大学主楼510

学习电子工艺实习的基本技能,完成简单的发光二级管交替闪烁电路的安装和调测,两个一组完成迷宫机器人的焊接、组装、编程及调试等工作,完成自动穿越迷宫的机器人。

学生

实习

总结

(附页,不少于2000字)

见附页。

遵照实习大纲并根据以下三方面按五级分制(优秀、良好、中等、及格、不及格)综合评定成绩:

1、思想品德、实习态度、实习纪律等

2、技术业务考核、笔试、口试、实际操作等

3、实习报告、分析问题、解决问题的能力

实习评语:

 

实习成绩:

指导教师签名:

实习单位公章

年月日

附1实习总结

为期两周的电子工艺实习,我过得十分忙碌和充实。

从茫然地走进实验室,到学习最基本的焊接,到组装小车,再到无数次地调试程序,最后获得全院比赛的二等奖,有很多的辛苦,但是有更多的收获。

焊接是电子工艺实习最基本的部分,也是我们小学期的第一课。

最开始是焊接基本的元件,包括电阻、电容、二极管、三极管等,虽然看起来是很简单的工作,但总是掌握不好电烙铁和焊锡,于是焊点有大有小,还有一些虚焊和漏焊的点。

直到按照老师的要求一点一点把整块板子焊满,才逐渐掌握了标准、规范的焊接方法,最后烙铁往上一提很重要。

到后来焊连着的四十个点时,焊点已经比较整齐划一了。

对于焊接这种基本功来说,反复练习真的十分重要,这也考验了我们的耐心和细心。

焊接部分的小测试,是焊一个发光二级管交替亮的功能电路,老师要求正面用硬线布线,背面用软线连接。

由于一开始设计布线的时候,元件之间距离比较近,导致在背面焊接连线时必须把线剪得特别短,我们两个人一个扶着线,一个焊,位置十分不好把握,一不小心就会碰到旁边的焊点,又需要吸掉重焊,浪费了很多时间。

所以我们的工作进行得十分慢,到中午很晚才焊完。

虽然焊完后通电顺利地亮了,但以后再布线的时候一定要考虑到背面连线的问题,把原件之间的距离排得大一些。

基本焊接技术后就正式进入小车的组装了。

小车的零件有很多都不认识,电路板也很复杂,刚拿到手里有些摸不着头脑,还好说明书上对焊接步骤有详细的说明。

在焊芯片和散热片的时候,我们把顺序搞反了,应该先焊散热片,再根据螺丝孔的位置焊芯片,才能把两个元件固定在一起。

但我们先焊了芯片,把散热片插在板子上后,发现两个孔怎么也对不上,可是芯片已经焊死了,即使用吸锡器也拆不下来。

最后我们只好在散热片上又钻了一个孔,才勉强把螺丝拧上去。

所以焊接的顺序是极其重要的,不光要考虑元件的高低,还要考虑元件之间的关系,才能少做无用功。

还好其他步骤我们没有再出问题,小车焊出来后把测试程序烧进去,也能够正常的跑。

进入程序编写阶段,我们两个人先一起在测试程序的基础上编写了一个逻辑,预想了小车在行进过程中可能遇到的各种状况,主要使用了if……elseif……else的多层嵌套。

这个逻辑我们梳理了好长时间,在纸上画了逻辑图,想办法把所有的情况都包含进去。

除了正常行进的程序,我们还添加了轮子卡住时的情况。

对于延时函数中的参数,我们先写了一个待定值,这要在以后的调试中不断调整。

当这个基本的程序写好后,我们把它烧进单片机试验了一下,结果是不出意料的磕磕碰碰。

于是,漫长的调试阶段开始了。

我相信对于每一组同学来说,调试都是最劳心劳力的工作。

因为前期的工作比较标准化,大家的工作内容有着高度一致性,可以互相帮助、讨论,但是调试阶段就是靠每个组自己的思考、观察和调整了。

因为每个车的焊接情况都有差别,大家各自编的程序也不一样,所以小车跑的时候出的问题也不一样。

我们的第一个任务是是小车顺利冲出班级内测的小跑道,然后还有全院比赛的大跑道等着我们。

在小跑的调试中,我们组的分工是:

我负责观察每次测试时问题出在哪里,我的搭档负责根据我找出的问题调试。

我们调试的主要问题有三个:

传感器的灵敏度,小车转弯的幅度,和转弯的优先级。

传感器的灵敏度直接决定了小车转弯的位置,如果传感器感应距离太近,小车就容易直接撞到障碍上;如果传感器感应距离太远,小车则会转弯太早,无法进入预定轨道。

小车转弯的幅度是靠延时函数的参数来控制的,参数较大,小车容易转过头撞在障碍上;参数较小,小车转的幅度不够也会撞在障碍上。

经过反复的测试,我们终于把传感器的灵敏度和小车转弯的幅度调得比较合适,小车走迷宫的前几个弯道也很顺利,但是总卡在出口处。

经过不断地讨论和思考,我们发现是程序中的优先级问题,当前方和右方都无障碍时,我们编写的是“前进”,但根据迷宫的实际状况,应该“右转”才能顺利出去。

当我们修改了这个问题后,小车就能走出迷宫了,不过成功的几率并不是很高,中间还有许多的磕磕碰碰。

在小车与障碍的不断碰撞中,传感器与电路板的连接线会比较容易脱落,导致走迷宫的过程中小车会出现一些反常的行为,于是我决定把原本插在电路板上的连接线直接焊死在板子上。

但是三个10pin排针挨在一起,焊点都离得很近,焊的时候还是很困难的,还好在搭档的帮助下顺利的完成了。

此后传感器的稳定性就比较好了,不会再出现连接不好的问题。

当小车路线基本正确后,我们又不断调整传感器的灵敏度和小车转弯的幅度,让小车在行走在道路的中央,转弯也更准确。

最后验收时我们走得十分顺利,一次都没有撞障碍,用了11秒多走出了迷宫。

小迷宫走成功后,我们开始向大迷宫进发。

这一个阶段我主要负责硬件的改装,我的搭档主要负责程序的调试。

刚开始我们观看了几组跑大迷宫的小车,速度都比我们快好多,于是我们决定再加电池。

之前我们的小车是四节电池供电,现在要加到六节(我们怕八节太多不好控制)。

这需要在小车上再加一个电池盒,还要把其中两节电池的位置用导线短路。

由于小车已经装得比较慢了,我最终把电池盒加在了小车底下的前方。

在用导线短路的时候,由于电池盒是塑料材质的,烙铁一碰到烧化,所以焊接时需要非常小心。

这样加上两节电池后,小车的前部变重了,跑的时候经常头点地,于是我又在尾部绑了两节废电池增加重量,这样小车跑起来平衡性就比较好了。

由于马力加大,小车冲得比原来快了,再加上大迷宫比小迷宫跑道宽,所以转弯的地方幅度全都有变化。

而且根据大迷宫的实际情况,我们还需要改动一些之前预设情况,比如当前方和左方都无障碍时,优先左转;当左方和右方都无障碍时,优先右转。

这样又经过了多次测试和程序的改进,我们的小车才跑的比较顺畅了。

可是我们又发现,一旦小车侧面卡在障碍上,就很难再前进,于是我们决定在小车前方加一个导轮,这样就可以让小车在遇到这种情况时滑过去。

添加导轮需要把电路板裁开,用来连接导轮和小车。

电路板材质较硬,裁制、打孔都费了很大的劲,我左右两边分别裁了一块三角形的板子用来连接导轮和小车。

导轮是在瓶盖中间钻孔制成的。

第一次做出来的导轮没有超出车轮的宽度,位置也容易移动,所以在实际跑的过程中并没有起到很大的作用。

于是我每边又加了一块长方形的板子,这样把两个导轮之间的距离拉得更长一些。

每个节点我从原来的一根螺丝换成了两根螺丝固定,这样即使遇到碰撞也不会改变位置。

经过这样的改进后,导轮就比较完善了,能够在调整小车的方向上起到应有的作用。

相对于其他小组的大动力车来讲,我们的小车主要求稳。

在比赛的前一天晚上,我们已经能大部分测试都走出迷宫了,并且成绩稳定在12到13秒。

这主要是因为我们的小车从头到尾碰障碍比较少,很少卡住。

再跑迷宫能力已经比较好的的情况下,我给小车设计了外观。

由于我们的导轮做得很像触角,我们索性给小车起名为“金龟号”,取形似金龟子之意。

还给小车加上了绿色的外衣,更美观一些。

最后的全院比赛,我们发挥出了应有的水平,以12秒多的成绩获得了二等奖。

近两周的辛苦没有白费,终于得到了回报,我十分开心。

这次的小学期,和大二小学期时的理论课不同,需要我们自己动手,一点一点把一堆零件变成智能的迷宫小车。

纵使反复调试的过程中烦躁过,也迷茫过,纵使加班加点付出了很多的辛苦,但当反复看着小车最后成功跑出迷宫的视频,我觉得这一切都是值得的。

我所为之高兴的,不是最后的奖项,也不是奖金,是我和我的搭档合作的劳动成果,是在这个小学期里动手能力的提高,是很多次失望时候终于成功的满足。

感谢电路中心给了我们这个平台,让我们靠自己的努力做了一件很有意义的事情。

小车就像我们自己的孩子,一点一点把它培养出来,看着它不断地成长,从跌跌撞撞到顺利跑出迷宫。

我想,我们都应该为自己的作品感到骄傲。

附2程序代码

#include

#defineucharunsignedchar

#defineuintunsignedint

#definet100

sbitIN1=P1^0;

sbitIN2=P1^1;

sbitIN3=P1^4;

sbitIN4=P1^5;

sbitLED1=P2^6;

sbitLED2=P2^7;

sbitS1=P1^6;

sbitrecieve_left=P3^3;

sbitrecieve_right=P3^6;

sbitrecieve_front=P3^0;

uintcount=0;

/********以下是延时函数********/

voidDelay_ms(uintxms)//延时程序,xms是形式参数

{

uinti,j;

for(i=xms;i>0;i--)//i=xms,即延时xms,xms由实际参数传入一个值

for(j=115;j>0;j--);//此处分号不可少

}

stop()//高电平有效

{

IN1=0;

IN2=0;

IN3=0;

IN4=0;

Delay_ms(50);

}

houtui()

{

IN1=1;

IN2=0;

IN3=0;

IN4=1;

}

qianjin()

{

IN1=0;

IN2=1;

IN3=1;

IN4=0;

}

turnleft()

{

LED2=0;

IN1=0;

IN2=0;

IN3=0;

IN4=0;

Delay_ms(30);

IN1=0;

IN2=1;

Delay_ms(35);

LED2=1;

while(recieve_front==1)

{

qianjin();

}

if(recieve_left==0&&recieve_right==0)

{

Delay_ms(40);

if(recieve_left==0&&recieve_right==0)

{

while(recieve_left==0&&recieve_right==0)

qianjin();

}

}

}

Delay_ms(80);//不碰到障碍物时,继续前行

Delay_ms(180);

}

turnright()

{

LED1=0;

IN1=0;

IN2=0;

IN3=0;//左轮

IN4=0;

Delay_ms(30);

IN3=1;//左轮

IN4=0;

Delay_ms(15);

LED1=1;

while(recieve_front==1)

{

qianjin();

if(recieve_left==0&&recieve_right==0)

{

Delay_ms(40);

if(recieve_left==0&&recieve_right==0)

{

while(recieve_left==0&&recieve_right==0)

qianjin();

}

}

}

Delay_ms(85);//不碰到障碍物时,继续前行

Delay_ms(180);

}

right_back()//左轮卡住时

{

LED2=0;

IN1=1;

IN2=0;

IN3=0;

IN4=0;

Delay_ms(50);

}

left_back()//右轮卡住时

{

LED2=0;

houtui();

Delay_ms(5);

LED2=0;

IN1=0;

IN2=0;

IN3=0;

IN4=1;

Delay_ms(50);

}

//****************主程序******************//

voidmain()

{P0=0xff;

P2=0xff;

P1=0xff;

while

(1)

{

if(recieve_left==1&&recieve_right==1)//两边都无障碍物

{

if(recieve_front==1)//前无障碍物,直行pass

{

qianjin();

continue;

}

else//前有障碍物,左转

{stop();

IN1=0;

IN2=1;

IN3=0;

IN4=0;

Delay_ms(170);//待定

if(recieve_front==0)

right_back();

continue;

}

}

elseif(recieve_left==1)//左边无障碍物,左转

{

if(recieve_front==1){

while(recieve_front==1)

{

qianjin();

}

turnleft();

continue;

}

else

{

turnleft();

Delay_ms(170);

if(recieve_front==0&&recieve_left==1&&recieve_right==0)

left_back();

continue;

}

}

elseif(recieve_right==1)//右边无障碍物,右转

{

if(recieve_front==1){

while(recieve_front==1)

{

qianjin()

}

if(recieve_left==1)

turnleft();

}

else

{

turnright();

Delay_ms(230);

if(recieve_front==0&&recieve_left==0&&recieve_right==1)

right_back();

continue;

}

}

elseif(recieve_front==1)

{

qianjin();

continue;

}

else

{

stop();

while(recieve_right==0&&recieve_left==0)houtui();

houtui();

Delay_ms(150);//待定

if(recieve_right==1)

{

IN1=0;

IN2=0;

IN3=0;//左轮

IN4=0;

Delay_ms(5);

IN3=1;//左轮

IN4=0;

Delay_ms(370);

}

if(recieve_left==1)

{

IN1=0;

IN2=0;

IN3=0;//左轮

IN4=0;

Delay_ms(5);

IN1=0;//右轮

IN2=1;

Delay_ms(320);

}

}

}

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

当前位置:首页 > 党团工作 > 入党转正申请

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

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