单片机原理及接口技术课程设计报告副本文档格式.docx
- 文档编号:16234321
- 上传时间:2022-11-21
- 格式:DOCX
- 页数:45
- 大小:511.51KB
单片机原理及接口技术课程设计报告副本文档格式.docx
《单片机原理及接口技术课程设计报告副本文档格式.docx》由会员分享,可在线阅读,更多相关《单片机原理及接口技术课程设计报告副本文档格式.docx(45页珍藏版)》请在冰豆网上搜索。
4.3避障模块………………………………………………………………………15第五章程序清单……………………………………………………………………第六章设计心得…………………………………………………………………
………………………………………………………………………………18
…………………………………………………………………………………19
参考文献……………………………………………………………………………19
设计题目
(选自山东省大学生机器人大赛比赛-智能避障避险小车比赛)
(一)比赛任务
小车从出发区出发后,沿车道行驶一圈,并返回出发区。
(二)比赛场地
图4比赛场地俯视图(注1有变化)
1、比赛场地平面(即车道表面)俯视图如图4所示。
2、比赛场地平面(即车道表面)由2块细木工板(尺寸规格:
宽度122.0cm,长度244.0cm,厚度不定)拼接而成。
细木工板表面未进行任何特殊处理(如:
抛光、刷漆和贴纸等),保持木材本身的材质和颜色。
3、比赛场地下方的地面的颜色不确定(不作规定)。
4、车道表面距离车道下方的地面的高度不小于6cm,可用垫高物垫在场地下方,垫高物不外露。
5、在直行车道转入环形车道和环形车道转入直行车道处均有提示线(为直线),提示线由黑色防滑胶带(线宽1.5~2.0厘米,常规为1.7厘米)粘贴而成。
6、图4中的⑤⑥⑦⑧⑨遮挡墙和遮挡柱的位置,在开始正式比赛前由裁判组协商后确定位置(所有参赛队采用相同位置)。
(三)车子规格
1、车体(安装传感器后)的长度和宽度均不得超过20cm,高度不限。
2、所用电压不超过24V。
3、所用处理器类型不限。
(四)比赛规则
1、车子必须按图4中指定的方向离开和返回出发区。
2、车子通过车道中的环形区时,采用顺时针或逆时针方向均可。
3、车子不能以任何方式人为遥控,如:
使用激光束或通过无线通信遥控车子等。
凡是违反此项规定者,取消其比赛资格。
4、每队有3次运行机会。
每次运行前有1分钟准备时间。
5、比赛过程中,如果车子出现以下异常表现,则认定运行失败:
(1)车子启动运行后,未在5分钟内完成任务;
(2)车子出现严重故障或失控;
(3)车子掉下场地;
(4)参赛队员未经裁判同意干预车子工作;
(5)车子进行钻、挖等破坏场地(包括撞倒遮挡墙或遮挡柱属于破坏比赛场地的行为,判一次运行失败)活动。
6、认定运行失败后,参赛队员可以向裁判提出重新运行的请求。
经裁判同意,参赛队员可以将车子重新放回到出发区,重新启动运行。
7、比赛过程中,只允许一名参赛队员进入场地操作。
第一章设计目的
整个系统的设计以单片机为核心,利用了多种传感器,将软件和硬件相结合。
本系统能实现如下功能:
(1)自动沿预设轨道行驶小车在行驶过程中,能够自动检测预先设好的轨道,实现直道和弧形轨道的前进。
若有偏离,能够自动纠正,返回到预设轨道上来。
(2)当小车探测到前进前方的障碍物时,可以自动调整,躲避障碍物,从无障碍区通过。
小车通过障碍区后,能够自动循迹
(3)自动检测
号遮挡墙并自动入库停车。
机器人要实现自动导引功能和避障功能就必须要感知导引线和障碍物,感知导引线相当给机器人一个视觉功能。
使用传感器感知路线和障碍并作出判断和相应的执行动作。
该智能避障避险机器人可以作为机器人的典型代表。
它可以分为三大组成部分:
传感器检测部分、执行部分、CPU。
机器人要实现自动避障功能,还可以扩展循迹等功能,感知导引线和障碍物。
可以实现小车自动识别路线,选择正确的行进路线,并检测到障碍物自动躲避。
基于上述要求,传感检测部分考虑到小车一般不需要感知清晰的图像,只要求粗略感知即可,所以可以舍弃昂贵的CCD传感器而考虑使用价廉物美的光电开关和红外对管来充当。
智能避障避险机器人的执行部分,是由直流电机来充当的,主要控制小车的行进方向和速度。
单片机驱动直流电机一由软件模拟PWM输出调制,需要占用单片机资源,难以精确调速,但单片机型号的选择余地较大。
考虑到实际情况,本文选择第二种方案。
CPU使用STC89C52单片机,配合软件编程实现。
现在智能机器人发展很快,从智能玩具到其它各行业都有实质成果。
其基本可实现循迹、避障、检测贴片、寻光入库、避崖等基本功能,电子设计大赛智能小车又在向声控系统发展。
比较出名的飞思卡尔智能小车更是走在前列。
我此次的设计主要实现循迹避障避险这两个功能。
第二章设计思路
根据要求,确定如下方案:
购买小车组件和塑料板材进行改装制作小车,加装光电开关和红外对管,实现小车对道路和障碍物的检测,并将测量数据传送至单片机进行处理,然后由单片机根据所检测的各种数据实现对电动车的智能控制。
这种方案能实现对电动车的运动状态进行实时控制,控制灵活、可靠,精度高,可满足对系统的各项要求。
2.1主控系统
根据课题的设计要求,我认为此设计属于多输入量的复杂程序控制问题。
据此,拟定了以下两种方案并进行了综合的比较论证,具体如下:
方案一:
选用一片CPLD(如EPM7128LC84-15)作为系统的核心部件,实现控制与处理的功能。
CPLD具有速度快、编程容易、资源丰富、开发周期短等优点,可利用VHDL语言进行编写开发。
但CPLD在控制上较单片机有较大的劣势。
同时,CPLD的处理速度非常快,而小车的行进速度不可能太高,那么对系统处理信息的要求也就不会太高,在这一点上,MCU就已经可以胜任了。
若采用该方案,必将在控制上遇到许许多多不必要增加的难题。
为此,我们不采用该种方案,进而提出了第二种设想。
方案二:
采用单片机作为整个系统的核心,用其控制行进中的小车,以实现其既定的性能指标。
充分分析我们的系统,其关键在于实现小车的自动控制,而在这一点上,单片机就显现出来它的优势——控制简单、方便、快捷。
这样一来,单片机就可以充分发挥其资源丰富、有较为强大的控制功能及可位寻址操作功能、价格低廉等优点。
因此,这种方案是一种较为理想的方案。
针对本设计特点——多开关量输入的复杂程序控制系统,需要擅长处理多开关量的标准单片机,而不能用精简I/O口和程序存储器的小体积单片机,D/A、A/D功能也不必选用。
根据这些分析,我选定了STC89C52单片机作为本设计的主控装置,51单片机具有功能强大的位操作指令,I/O口均可按位寻址,程序空间多达8K,对于本设计也绰绰有余,更可贵的是51单片机价格非常低廉。
在综合考虑了传感器、两部电机的驱动等诸多因素后,我们决定采用一片单片机,充分利用STC89C52单片机的资源。
2.2电机驱动模块
采用继电器对电动机的开或关进行控制,通过开关的切换对小车的速度进行调整.此方案的优点是电路较为简单,缺点是继电器的响应时间慢,易损坏,寿命较短,可靠性不高。
采用电阻网络或数字电位器调节电动机的分压,从而达到分压的目的。
但电阻网络只能实现有级调速,而数字电阻的元器件价格比较昂贵。
更主要的问题在于一般的电动机电阻很小,但电流很大,分压不仅回降低效率,而且实现很困难。
方案三:
采用功率三极管作为功率放大器的输出控制直流电机。
线性型驱动的电路结构和原理简单,加速能力强,采用由达林顿管组成的H型桥式电路(如图2.1)。
用单片机控制达林顿管使之工作在占空比可调的开关状态下,精确调整电动机转速。
这种电路由于工作在管子的饱和截止模式下,效率非常高,H型桥式电路保证了简单的实现转速和方向的控制,电子管的开关速度很快,稳定性也极强,是一种广泛采用的PWM调速技术。
现市面上有很多此种芯片,我选用了L298N(如图2.2)。
这种调速方式有调速特性优良、调整平滑、调速范围广、过载能力大,能承受频繁的负载冲击,还可以实现频繁的无级快速启动、制动和反转等优点。
因此决定采用使用功率三极管作为功率放大器的输出控制直流电机。
图2.1H桥式电路
图2.2L298N
2.3循迹模块
采用简易光电传感器结合外围电路探测,但实际效果并不理想,对行驶过程中的稳定性要求很高,且误测几率较大、易受光线环境和路面介质影响。
在使用过程极易出现问题,而且容易因为该部件造成整个系统的不稳定。
故最终未采用该方案。
采用两只红外对管(如图2.3),分别置于小车车身前轨道的两侧,根据两只光电开关接受到白线与黑线的情况来控制小车转向来调整车向,测试表明,只要合理安装好两只光电开关的位置就可以很好的实现循迹的功能,但是检测不到停车线。
(参考文献[3])
采用四只红外对管,两只置于小车中间,两只置于小车外侧,当小车脱离轨道时,即当两侧的任意一只光电开关检测到空地时,做出相应的转向调整,直到两边的光电开关检测不到到空地再恢复正向行驶。
中间的两只光电对管检测到停车线时,停车。
经过试验,此方案小车行驶稳定。
通过比较,我选取第三种方案来实现循迹。
图2.3红外对管
2.4避障模块
采用一只红外对管置于小车中央。
其安装简易,也可以检测到障碍物的存在,但难以确定小车在水平方向上是否会与障碍物相撞,也不易让小车做出精确的转向反应。
采用两只光电对管分别置于小车的前端两侧,方向与小车前进方向平行,对小车与障碍物相对距离和方位能作出较为准确的判别和及时反应,两只光电对管分别放在小车的两侧,确保能够检测到障碍物,避免因小车运行轨迹的变化而检测不到障碍物。
通过比较我采用方案二。
2.5机械系统
本题目要求小车的长、宽较小,转向稳定、灵活,将电机树立放置减小小车的长度,
电池的安装:
将电池树放减小小车的宽度,降低车体重心,提高稳定性,同时可增加驱动轮的抓地力,减小轮子空转所引起的误差。
采用实验室有线电源通过稳压芯片供电,其优点是可稳定的提供5V电压,但占用资源过大。
采用4支1.5V电池单电源供电,但6V的电压太小不能同时给单片机与与电机供电。
采用8支1.5V电池双电源分别给单片机与电机供电可解决方案二的问题且能让小车完成其功能。
所以,我选择了方案三来实现供电。
第三章硬件电原理图和连接图
3.1总体设计
智能小车采用四轮驱动,前后轮左右两边各用一个电机驱动,调制前后四个轮子的转速起停从而达到控制转向的目的。
将循迹红外对管分别装在车体前方偏下的左右。
当车身下左边的传感器检测到黑线时,主控芯片控制左轮电机停止,车向左修正,当车身下右边传感器检测到黑线时,主控芯片控制右轮电机停止,车向右修正。
检测黑线红外对管装在前方中间,两只红外对管对称固定,当检测到黑线时调整车的行进方向。
避障的原理和循线一样,在车身前方两边装两个红外对管,当其检测到障碍物时,主控芯片给出信号报警并控制车子倒退,转向,从而避开障碍物。
3.1.1主板设计框图如图3.1
图3.1主板设计框图
3.2驱动电路(参考文献[4])
电机驱动一般采用H桥式驱动电路,L298N内部集成了H桥式驱动电路,从而可以采用L298N电路来驱动电机。
通过单片机给予L298N电路PWM信号来控制小车的速度,起停。
其引脚图如3.2,驱动原理图如图3.3。
图3.2L298N引脚图
图3.3电机驱动电路
3.3信号检测模块
小车循迹原理是小车在细木工板表面上行驶,由于细木工板表面和空地对光线的反射系数不同,可根据接收到的反射光的强弱来判断行进路线。
本小车采用红外对管采集数据
红外探测法,即利用红外线在不同颜色的物理表面具有不同的反射性质的特点。
在小车行驶过程中不断地向地面发射红外光,当红外光遇到白色地面时发生漫发射,反射光被装在小车上的接收管接收;
如果遇到黑线则红外光被吸收,则小车上的接收管接收不到信号,再通过LM324作比较器来采集高低电平,从而实现信号的检测。
避障亦是此原理。
电路图如图3.4。
市面上有很多红外传感器,在这里我选用TCRT5000型光电对管。
图3.4循迹原理图
3.4主控电路
本模块主要是对采集信号进行分析,同时给出PWM波控制电机速度,起停。
以及再检测到障碍转弯等作用。
其电路图如图5。
图3.5主控电路
第四章程序流程图
4.1
主程序框图:
图4.1主程序框图
voidmain()
{
a=0;
b=0;
Time0();
zhouqi=100;
while
(1)
{
zhixing();
jiance_a();
qianfang_b();
}
}
4.2循迹模块
循迹框图:
图4.2循迹框图
voidjiance_a()
if(a==0&
&
jiancezr==1&
jiancezl==1)//光电对管检测到前方障碍,微倒车,停车250ms
++a;
duanting();
ltui_pwm=50;
rtui_pwm=50;
ljin_pwm=0;
rjin_pwm=0;
Delay(35);
ltui_pwm=0;
rtui_pwm=0;
Delay(20);
//you转90/////////111111111111
ljin_pwm=50;
Delay(180);
Delay(30);
zhixing_a0zhuanyong();
}
if(a==1&
jiancezl==1)//&
jiancer==1)//光电对管检测到前方障碍,微倒车,停车250ms
{
++a;
duanting();
ltui_pwm=50;
rtui_pwm=50;
ljin_pwm=0;
rjin_pwm=0;
Delay(40);
ltui_pwm=0;
rtui_pwm=0;
Delay(150);
//zuo转90///////////////2222222222
ltui_pwm=60;
rjin_pwm=20;
Delay(110);
Delay(100);
zhixing();
}
if(a==2&
jiancezl==1)//光电对管检测到前方障碍,微倒车,停车250ms
{
Delay(80);
//you转90/////////5555555555555555555555555
rtui_pwm=60;
ljin_pwm=60;
pianzuo();
if(a==3&
//zuo转<
90
ltui_pwm=40;
rjin_pwm=60;
if(a==4&
jiancel==1)//光电对管检测到前方障碍,微倒车,停车250ms
Delay(90);
rjin_pwm=50;
if(a==5&
jiancezl==1&
jiancel==1)///////////圆盘
if(a==6&
jiancezl==1)
{
Delay(35);
Delay(50);
//you转90/////////111111111111
ljin_pwm=50;
Delay(180);
}
4.3避障模块
避障框图:
图4.3避障框图
voidqianfang_b()
if((b==0&
qianfangr==0)||(b==0&
qianfangl==0))//斜挡板
++b;
Delay(45);
////////////可以加检测到边a=2````
//zuo转小于90////////////////33333333333
if((b==1&
qianfangr==0)||(b==1&
qianfangl==0))/////////
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机原理及接口技术课程设计报告 副本 单片机 原理 接口 技术 课程设计 报告