北邮电子工艺实习智能小车实习报告附程序
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
北京邮电大学实习报告
附页:学生实习总结
一、初步设计
走迷宫小车利用单片机STC900C52RC 作为中控核心,光电开关E18-D80NK 作为走迷宫小车的探测障碍的传感器,以及其它L298N电机驱动芯片、LM1117-5.0/LDO电源。
小车走迷宫使用的是左手算法(即摸墙算法),迷宫是简单连通的,即迷宫的墙总是相互相连的或与迷宫的外轮廓相连,那么迷宫的搜索者从起点开始将左手扶在墙面前行,总能保证不会迷失并且找到迷宫中存在的出口(若忽略出口将回到迷宫起点)。这种策略在刚进入迷宫时即执行的效果是最佳的。小车采用一个L298N电机驱动模块、LM1117-5.0/LDO电源、两个E18-D80NK光电开关(一个放置在小车正前方,一个放置在小车正左方),分别判断小车的前方和左方是否有障碍,并将高低电平传递至传递给单片机,使单片机控制电机实现左转、右转、前进、掉头(实际为连续两次右转)的功能穿越迷宫。
小车是三轮小车,前两个是驱动轮,后一个是支点轮(从动轮),两个驱动轮是分别由两个电机驱动,通过同速率同向转动前进和同速率反向转动转向。
二、具体工作
1) 元器件的焊接与组装
2) 部分代码的编写与调试
3) 小车外观的设计与制作
三、小车焊接与电路测试
1)在我们焊接小车之前,我们用了两天时间学习和熟悉焊接工艺,同时还
做了个发光二极管的小实验,这些基础让我在焊接小车电路板的时候
有了底气,做起来也有些轻车熟路。我们用了半天的时间就几乎完成
了全部的焊接任务,按照小车的装配步骤,我们依次焊接了电阻、晶
体、排阻、二极管、开关、三极管、二极管、电容、数码管、电源电
机端子、排针、驱动芯片等,同时也学会了“先焊矮的后焊高”的道
理。在完成焊接之后,小车的组装也颇为顺利,在实验步骤的指导下,
顺利完成了小车的组装,小车已初现其形。
2)在小车焊接与组装之后,开始进行小车电路测试,植入CHECK程序之后,
小车完美的实现了前进与后退的功能,而且前行的轨迹相对笔直,这
和我们的焊接与组装有很大关系。但是,在实现前进功能的同时也出
现了问题,数码管有一个数字不显示,在查看电路图,和老师同学讨
论之后,我们确定了问题的源头,是有一个三极管在焊接过程中烧坏
了,在更换了三极管之后,数码管全都亮了。同时我也帮其他电机不
转的同学发现和解决了问题,大都是电元件被烧坏了。这也提醒我们
在焊接的时候,要小心谨慎。
四、小车硬件调试
1)光电开关E18-D80NK的最远感应距离是80cm,因为迷宫的宽度不过
20cm,所以在编程调试之前,应将两个光电开关的感应距离从80cm
调整到10cm(最小)-20cm,才能编程使用。但是在将正前方的光电
开关调整到最小感应距离时,仍然不能符合硬件调试的标准,所以在
编程时,应先使其前进一小段距离,达到转弯的标准之后,再进行转
弯。
2)车轮的两轴应该先标定在同一条直线上,并且平行。首先让小车直线
前进,观察小车是否能直线行进,如果不能就需要进行编程的相应调
整。
五、小车动力控制
1)L298的逻辑功能(1是高电平,0是低电平)
端口IN1IN2IN3IN4状态
11001前进
21010左转
30101右转
40000停止
i.前进代码qianjin()
qianjin()
{ IN1=1;
IN2=0;
IN3=0;
IN4=1;
}
ii.左转代码leftro()
leftro()
{ LED2=1;//左侧灯亮
LED1=0;//右侧灯灭
IN1=1;
IN2=0;
IN3=1;
IN4=0;
}
iii.右转代码rightro()
rightro()
{ LED1=1;//右侧灯亮
LED2=0;//左侧灯灭
IN1=0;
IN2=1;
IN3=0;
IN4=1;
}
2)单片机逻辑功能
i.左侧有障碍物(低电平);前方没有障碍物(高电平)
单片机指令:前进
ii.左侧有障碍物(低电平);前方有障碍物(低电平)
单片机指令:
a.前进15步(设1步是10ms,此后都如此)
b.停止10步
c.右转30步
d.停止10步
e.判断此时障碍物情况,如果前方没有障碍物(高电平)
停止10步再前进25步
f. 否则【即前方有障碍物(低电平)】,右转30步.
iii.左侧没有障碍物(高电平)
单片机指令:
a.前进25步
b.停止10步
c.左转38步
d.停止10步
e.前进15步.
六、小车外观设计与制作
1)组装并调程序十天以后,终于可以给小车做外壳了。在有限经费的条件
下,我们的小车外壳实现了完全零成本。我们设计小车为一个超跑,所
以小车以纸箱板为骨架,每一个部分都是相互独立得,在完成基本骨架
的设计与制作之后,我又给小车涂了一层水彩,使得小车更加炫酷。
2)我们的小车除了基本的外壳以外,我还设计了超跑的挡风玻璃,大灯,
车座,以及后车厢。整个外观设计加制作用了两晚一天,凝聚了自己的
汗水和爱。
七、常见问题、故障及解决方案
1) 在焊接阶段,高温可能会损坏一些电元件,尤其是二极管。三极管。我
们的数码管有一个不亮,就是有一个相应的二极管烧坏了。因此焊接时间不宜过长,焊接时要小心谨慎。将小车主板的元器件焊接完成之后,尽量不要再用手触碰背面焊点。汗水会使焊点之间短路,影响小车的正常调试。
2) 因为传感器的感应距离和小车的制动原因,小车前进中转向会改变转角
的角度,不适合控制。所以在转弯前首先给小车一个短暂的停止时间,之后再进行转向,转向将会比较稳定,更易于控制。
3) 因为后期外壳的制作以及每一次电量的消耗,都会是使行车轨迹发生变
化,所以必须得调整程序才能使小车较好地实现功能。应避免无休止的调试代码,可以调试几个适用于不同硬件环境的代码,在不同的硬件环境下使用。
4) 在最后的验收时,小车前几次没能完全走出迷宫,这是因为刚刚改变了