基于51单片机的多功能蓝牙循迹避障测距小车Word格式.docx
- 文档编号:19400438
- 上传时间:2023-01-06
- 格式:DOCX
- 页数:19
- 大小:173.18KB
基于51单片机的多功能蓝牙循迹避障测距小车Word格式.docx
《基于51单片机的多功能蓝牙循迹避障测距小车Word格式.docx》由会员分享,可在线阅读,更多相关《基于51单片机的多功能蓝牙循迹避障测距小车Word格式.docx(19页珍藏版)》请在冰豆网上搜索。
随着汽车工业的迅速进展,关于汽车的研究也就愈来愈受人关注。
遥控小车起源于美国,由于政府对无线遥控小车研发的资助和相关资助的推动作用,日本、美国、德国等工业大国在遥控小车技术上占据着明显优势。
我国的无线遥控小车研究工作始于20世纪中后期,在国家的863、973等技术进展打算的重点支持下,国内已大范围地进行无线遥控小车的研究。
全国电子大赛和省内电子大赛几乎每次都有智能小车这方面的题目,全国各高校也都很重视该题目的研究,可是与国际先进还存在必然的差距。
可见其研究意义专门大。
本设计确实是在如此的背景下提出的。
设计的智能小车能够实现无线遥控,串口通信,循迹,避障碍等功能。
无线遥控实现方式包括蓝牙、红外、射频几种,其中蓝牙技术具有必然优势,目前在信息家电方面应用正在铺设。
各类家电共用遥控,并可组网与公众互联网相接,共享有效信息。
目前蓝牙技术实现无线遥控的短板在于传输距离短和芯片价钱高方面。
但随着科技进展,这些问题正在慢慢得以解决。
无线遥控机械人有着广漠的应用前景。
依照题目的要求绘制电路原理图,制作电路板;
在KeilC编译环境下编写操纵程序并调试,确信如下方案:
在蓝牙无线遥控的基础上,加装光电红别传感器、超声波传感器、舵机,实现对小车的位置、运行状况的实时监测,并将测量数据传送至单片机进行处置,然后由单片机依照所检测到的各类数据,对电动车经行对应的操纵并将计算出的数据送至上位机显示,实现真正的实时监控。
本次设计能够对电动车的运动状态进行实时监控,可知足对系统的各项要求。
本设计采纳STC系列中的STC89C52单片机。
以单片机为操纵核心,利用传感器检测道路上的各类信息,操纵小车的无线遥控、自动避障、自动寻迹、三向测距等功能。
第二章方案比较与论证
本次设计主若是针对无线遥控智能车进行分析、设计和制作。
本次设计以STC89C52单片机为主控芯片,实现了智能车的蓝牙遥控功能、自动避障功能、自动循迹功能、多方向距离检测功能等。
2.1整体方案设计
本小车是以STC89C52为主操纵器。
开始由电话发送蓝牙无线信号来启动小车,由超声波传感器或红外光电传感器进行障碍检测,通过单片机操纵小车行驶、测距、避障和循迹。
智能车利用4WD驱动,以提高整车运动的平稳性;
在智能车进驶进程中,通过红外光电传感器实现自动避障,自动循迹等功能;
通过舵机、超声波传感器实现多方向测距;
最后通过蓝牙无线传输功能将智能车的行驶信息实时地传送给上位机,以实现实时监控功能。
固然也可通过蓝牙无线遥控来操纵小车的行驶状态。
这确实是本设计的整体设计思路。
无线操纵是为了能够实现对智能车的远程遥控,使小车能够在遥控状态下代替人类完成一些危险项目。
目前短距离无线数据传输技术要紧有两大类,一类是基于IrDA红外无线通信技术,另一类是基于ISM(IndustrialScientificMedical)频段射频通信技术。
较为主流的几种通信技术之间既存在着彼此竞争,但又在某些实际应用领域内彼此补充、彼此配合,究竟选择何种技术更优越,需要由具体的工作环境来决定。
表2.1所示为四种短距离无线通信技术要紧性能参数。
表2.1几种典型无线传输方案比较
蓝牙技术
红外技术
WiFi技术
通信距离
<
100m
10m
300m
通信速率
10Mb/s
16Mb/s
11Mb/s
通信频率或波长
方案:
通过表格能够看出,他们在近距离通信领域都能够提供靠得住的通信效劳,可是同时他们的应用有着各自的技术架构的限制。
在以上的几种中,我最终选择了蓝牙无线传输方式。
显示模块的要紧功能是显示小车所测得的距离等信息。
经常使用显示器件有1602LCD显示器、5110LCD显示器等。
依照这次设计需要我提出了以下实现方案。
方案一:
采纳1602LCD显示器(或5110LCD显示器)显示。
此方案采纳集成显示模块,硬件电路加倍简单,而且液晶显示器消耗电流小,更节能,同时软件实现也简单。
方案二:
电话上位机显示。
通过上位机的串口软件来监控智能车的行驶信息。
软件实现简单,无需其他的外部硬件设计。
表2.2几种典型显示方式比较
LCD显示
手机上位机显示
模块成本
低
高
观察方式
繁琐
方便
通过表格能够看出,方案二加倍简单方便,且在智能车行驶进程中,通过LCD来观看智能车行驶信息也不方便,因此我最终选择方案二为本设计中的显示方案。
2.4循迹模块设计
探测路面黑线的原理:
光线照射到路面并反射,由于黑线和白线的反射系数不同,可依照接收到的反射光的强弱来判定传感器和黑线相对位置。
采纳反射式红外发射-接收器。
直接用直流电压对发射管进行供电,其优势是实现简单,对环境光源的抗干扰能力强,在要求不高时能够利用。
避障模块设计
红外式探测
采纳红外式发射、检测一体化模块。
由于单个发射器的照射范围不能过小,因此不利用激光管。
用波瓣较宽的脉冲调制型红外发射管和接收器。
其优势是电路实现简单,但抗干扰性较弱。
第三章智能车机械结构分析
在本次设计中,小车利用四轮驱动。
四轮驱动式的结构中因为后轮的转动力矩的增大,因此在横向上的轮胎阻力要大于2轮驱动式的,因此四轮驱动式的车子不易发生方向偏移。
而且四轮驱动的车子动力更大,爬坡能力更强。
但存在一些不足,如:
四轮驱动式的车子加倍耗电,而且车体比一样的2轮驱动式的车体重。
从整体的性能来看四轮驱动式结构的优势是很明显的。
图3.1智能小车电机安装图
车身是车体的要紧部件。
同时也是用来固定车子零部件的,车身上要紧有红别传感器安装槽、舵机安装孔、电机定位槽和走线孔。
电机的安装位置如图3.1所示。
底板采纳的是废旧PCB板。
废物利用,结构靠得住稳固。
第四章操纵系统电路设计
在本设计中包括的外围设备有电机驱动模块﹑红别传感器模块、蓝牙模块﹑舵机模块、超声波模块等,还要设计适合的接口电路。
4.1MCU的选型
本设计中利用的是STC89C52单片机。
STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微操纵器,具有8K在系统可编程Flash存储器。
STC89C52利用经典的MCS-51内核,但做了很多的改良使得芯片具有传统51单片机不具有的功能。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式操纵应用系统提供高灵活、超有效的解决方案。
4.2电机驱动电路设计
图电机驱动电路图
本次设计本想采纳以上电路,由于自己手上恰好有两块集成的BTS7970电机驱动模块,因此就直接采纳了该集成模块作为本次设计的电机驱动电路。
4.3红别传感器模块设计
4.3.1循迹电路设计
由光电管搜集的信号经三极管单级放大以后,送入单片机,本次设计共设计了四路光电管搜集电路,能够使小车平稳的沿黑线行驶。
避障采纳的是红外发射接收一体化的光电传感器,大体不需要外围电路,只在信号输出端接了一个上拉电阻。
蓝牙模块设计
蓝牙模块主若是为了实现上位机与下位机的数据传输,本设计是通过蓝牙转串口模块,实现上位机与下位机的无线通信功能,因此本质上利用的是单片机串口通信。
串行通信的特点是:
数据按位顺序传送,最少仅需一根传输线即可完成,本钱低但传送速度慢。
串行通信的距离能够从几米到几千米。
在本设计中采纳HC-06蓝牙模块。
通过电话发送指令来操纵智能车的前进、后退、转弯和其他功能。
4.5舵机模块设计、
舵机的安装如以下图所示
4.6超声波模块设计
本次设计将超声波模块置于舵机上面,可实现多方向测距。
电源电路设计
图4.2电源电路图
如图4.2中,VP1为LM2940稳压芯片,VP2为LM7806稳压芯片,C2、C3、C4、C五、C10、C1一、C1二、C13为滤波电容。
第五章调试结果分析
5.1各模块功能调试
一、蓝牙遥控调试及结果分析
在小车上电后HC-06蓝牙模块上的工作状态指示灯会快速闪烁,当与电话上位机配对成功进行通信时,蓝牙模块上的连接指示灯常亮。
在非开阔地的环境下对不同的距离的通信情形经行测试,通过电话端串口工具操纵小车直行,观看小车的极限距离为多少。
统计本次调试的结果说明,HC-06蓝牙模块的有效通信距离为0m到25m,在此范围内电脑与小车通信正常
表5.1距离对通信的阻碍
距离
(M)
5
10
15
20
25
30
35
通讯
状态
正常
无法通讯
二、红外避障调试及分析
在进行红外避障时,第一要调剂红别传感器的灵敏度,若是发觉传感器在距离障碍物很远时就检测到了障碍,就将滑动电阻调大些,降低红外线的发射频率;
若是发觉传感器在距离障碍物很近时才检测到了障碍,就将滑动电阻调小些,提高红外的发射频率。
总之将传感器的检测范围调在20-30CM之内。
上电运行后,放到没有障碍物的空地上,小车直走。
当前方没有障碍物的的时候车就一直直走。
若是前方碰到障碍物,那么小车做后退—右转运动。
直至前方没有障碍物,这时小车恢复直走。
若是左方有障碍物,那么小车右转。
直至左侧没有障碍物,这时小车恢复直走。
若是右方有障碍物,那么小车左转。
直至右边没有障碍物,这时小车恢复直走。
若是前面没有障碍物,那么先执行直走。
也确实是说若是前方没有障碍物,即便其他任意方向都有障碍那么小车仍然直走。
在调试时,小车发生没有发生误判定动作,
3、循迹功能调试及分析
循迹功能中利用的是红别传感器,在调剂传感器时,始终维持红外检测距离在4CM之内。
上电后,当小车对着轨迹中间行驶时,左右传感器都没检测到黑线,小车高速直行;
当小车偏轨道左侧时,左侧的传感器检测到黑线,小车低速右转;
当小车偏轨道右边时,右边的传感器检测到黑线,小车低速左转;
当小车的左右红别传感器都检测到黑线时,小车停车。
在进行循迹功能调试时,小车常常会冲出跑道。
通过改变小车转弯方式,解决了这一问题
5.2总结
随着时刻的流逝,咱们的设计也接近尾声固然这次设计并非是超级完美,还有一些地址需要后续的改良,比如小车的测距方式能够改成实时测距的。
固然车子能够在以后再做大些,在上面安装机械臂,如此就能够够加倍方便地操纵小车进行一些生产作业。
固然,没有任何事物能够做到十全十美的,我相信只要咱们不断尽力去完善,那做出来的产品才会更超卓。
致谢
历时一个月左右的设计进程中,我第一边查资料,我感觉到即便是一个简单的电路,要想很轻松的焊好,也不是很容易的情形。
有时可能是阻值选错。
这使我深深感受到理论与实际间的差距。
通过如此的设计,提高了我的动手能力,使我软件调试知识也提高了。
本设计采纳的是STC89C52单片机,固然还能够采纳其它系列的单片机。
通过自己不断的搜索尽力和庞教师的耐心指导和热情帮忙,本设计已经大体完成。
庞教师的态度和热忱的工作作风令我十分钦佩,他的指导使我受益非浅。
在此对庞艳荣教师表示深深的感激。
通过这次设计,使我深刻地熟悉到学好专业知识的重要性,也明白得了理论联系实际的含义,而且查验了大学三年的学习功效。
尽管在这次设计中关于知识的运用和衔接还不够熟练。
可是我将在以后的工作和学习中继续尽力、不断完善。
这一个月的设计是对过去所学知识的系统提高和扩充的进程,为尔后的进展打下了良好的基础。
由于自身水平有限,设计中必然存在很多不足的地方,敬请列位教师批评指正。
参考文献
1何立民,单片机应用系统设计[M],,92京:
航天航空大学出版社,44~57
2李广弟,单片机基础[M],北京:
北京航空航天大学出版社,2001年
3何希才,新型有效电子电路400例[M],电子工业出版社,2000年
4赵负图,传感器集成电路手册,第一版[M],化学工业出版社,2004年
5张毅刚,彭喜元,新编MCS-51单片机应用设计,第一版[M],哈尔滨工业大学出版社,2003年,24~27,410~416
6马长芳,资丽芳,通信原理[M],北京:
科学出版社,2005年
7陈万寿,通信电源系统[M],北京:
人民邮电出版社,2020年11月
8富军,单片机开关电源,北京:
电子工业出版社,2007年7月
9MichaelMiller,蓝牙技术起跳,北京:
电子工业出版社,2002年1月
10郭洁,蓝牙技术原理与协议,北京:
北京交通大学出版社,清华大学出版社,2002年8月
11李永龙,李祖枢,王牛.直流电机双闭环调速系统(DLM)的建模与辨识[J],操纵理论与应用,2020,25(6):
78-85
[J],电力自动化设备,2002,22(5),59-67
[J],中南大学学报,2005,36(5),121-127
附录部份程序
#include<
>
/***********概念变量************/
#definestop0//停止
#definefront1//前进
#defineaway2//后退
#defineleft3//左转
#definebigleft4//大左转
#defineright5//右转
#definebigright6//大右转
#definexj7//循迹
#definebz8//避障
#definedd9//舵机
#definecj10//测距
sbitllun1=P2^0;
sbitllun2=P2^1;
//左轮输入
sbitrlun1=P2^2;
sbitrlun2=P2^3;
//右轮输入
sbitlin1=P1^0;
//左外
sbitlin2=P1^1;
//左中
sbitrin1=P1^2;
//右外
sbitrin2=P1^3;
//右中//红外光电4个输入
sbitllin1=P1^4;
sbitllin2=P1^5;
sbitrrin1=P1^6;
//右中
sbitrrin2=P1^7;
//右外//红外光电收发4个输入
sbitRX=P0^2;
//ECHO
sbitTX=P0^3;
//TRIG//超声波模块
sbitdj=P0^1;
ucharldata=0;
uinttime=0;
floatS=0;
bitflag=0;
/***********串口初始化************/
voidSCI_init(void)
{
TMOD=0X21;
//设置按时器1为模式2,做为波特率发生器//设T0为方式1,GATE=1;
SCON=0x50;
//串口方式2
TL1=0xFb;
//9600波特率的初值,板子利用18.432M晶振,初值=256-18432000/32/12/9600
TH1=0xFb;
//自动重装初值
TR1=1;
//开启按时器//启动波特率发生
//TH0=0;
//TL0=0;
ES=1;
//开始串口中断
EA=1;
//开启总中断
}
/***********ms延时**************/
voiddelayms(uintms)
uchara,b;
for(;
ms;
ms--)
{
for(b=4;
b>
0;
b--)
for(a=190;
a>
a--);
}
unsignedchara,b;
for(a=94;
/***********小车行走函数************/
voidgo()//直走
llun1=1;
llun2=0;
rlun1=1;
rlun2=0;
voidturnleft()//左转
llun2=1;
voidturnright()//右转
rlun2=1;
voidturnbigleft()//大左转
llun1=0;
voidturnbigright()//大右转
rlun1=0;
voidback()//后退
voidting()//停车
/************循迹函数*************/
voidxunji()
go();
if(lin1==1&
&
lin2==1&
rin1==1&
rin2==1)//直走
go();
if(lin1==0&
lin2==0&
rin2==1)//大转左
turnbigleft();
rin2==1)//转左
rin1==0&
rin2==0)//大转右
turnbigright();
rin2==0)//转右
rin2==0)//停车
ting();
/************避障函数*************/
voidbizhang()
if((llin1==1&
llin2==1&
rrin1==1&
rrin2==1)||(llin1==0&
rrin2==0))//直走
if((llin1==0&
llin2==0&
rrin1==0&
rrin2==1))//大转右
rrin2==0)||(llin1==1&
rrin2==0))//大转左
rrin2==1))//后退
/***********超声波距离计算*************
voidConut(void)
time=TH0*256+TL0;
TH0=0;
TL0=0;
S=(time*1.87)/100;
//算出来是CM
if(flag==1)//超出测量
flag=0;
printf("
-----\n"
);
S=%f\n"
S);
/*****************启动超声波
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 51 单片机 多功能 蓝牙 循迹避障 测距 小车