基于51单片机的巡线小车Word格式.docx
《基于51单片机的巡线小车Word格式.docx》由会员分享,可在线阅读,更多相关《基于51单片机的巡线小车Word格式.docx(10页珍藏版)》请在冰豆网上搜索。
![基于51单片机的巡线小车Word格式.docx](https://file1.bdocx.com/fileroot1/2022-10/9/8911d3cc-517b-4705-81ee-c0945cae8d93/8911d3cc-517b-4705-81ee-c0945cae8d931.gif)
小车能正确的识别其中的黑线,并由STC89C52RC单片机控制处理,驱动两个直流电机转动,使得小车能沿着正确的路径行进。
第三章、系统方案比较与论证
整个电路系统分为检测、控制、驱动三个模块。
首先利用关电对管度路面信号进行检测,通过比较器处理之后,送给控制模块进行实时控制,输出相应的信号给驱动芯片驱动电机转动,从而控制整个小车的运动。
系统方案如图
该智能小车在画有黑线的白纸“路面“上行驶,由于黑线和白纸对光线的反射系数不同,课根据接收的反射光的强度来判断黑线。
用红外检测综合比较是最佳的方案。
ST系列的集成红外谈都价格便宜、体积小、使用方便、用途广泛,系统最终选择了ST168反射传感器作为红外的发射和接收器件,其原理图如下:
ST168采用高发射功率红外光、电二极管和灵敏的光点晶体管组成。
采集距离很小。
实践检测时加上5V电压时,最佳的检测距离为10mm-15mm.因此在架车时要充分考虑ST168的检测距离,合理设好高度高度。
采用如图的方案将4个光点传感器一字排列。
两个个点击分别设置在小车的后方,前面用个万向轮导向。
通过电子差速控制。
单片机IO口输出的信号无法直接驱动电机转动,因此需要驱动模块来驱动电机。
为了简化电路,小车驱动模块采用了两块ULN2003并联组成的驱动电路驱动直流电机转动。
直流电机外接齿轮减速器,增大扭力,让小车能顺利前进。
第四章、系统电路设计
1,检测模块
基于ST168光点传感器的检测电路
2,系统控制模块
基于STC89C52单片机的控制电路
信号比较电路
单片机最小系统电路
3,驱动模块
ULN2003驱动电路
第五章系统硬件设计
鉴于小车的制作成本和效率等因素,本小车采用了4节5号电池串联供电。
6V直接供电电机,驱动小车前进;
4.5V供给51单片机,控制小车运行。
采样电压有4.5V和6V两个选择,经过对比测试,6V供电能使小车采集的信号更稳定。
直流电机和减速器制作比较麻烦,这里采用网购这样套件。
用薄木板坐车身钻孔固定各种部件模块。
两个驱动轮放置小车后方,前部用外向轮协助转向,提高稳定性。
最后测试时网购买了来的轮子轮胎与路面摩擦不够,打滑严重,我们采用了网球拍的防滑带用双面胶贴在轮胎上增大摩擦。
第六章、系统软件设计
#include<
reg52.h>
#defineucharunsignedchar
#defineuintunsignedint
#defines10
#defines01
sbitdj0=P2^4;
sbitdj1=P2^5;
sbitqy0=P1^0;
sbitqy1=P1^1;
sbitqy2=P1^2;
sbitqy3=P1^3;
voiddelayus(ucharn)
{
while(n--);
}
voidinit()
{
P1=0x00;
dj0=dj1=0;
voidmain()
init();
while
(1)
{
while(qy0==1&
&
qy1==0&
qy2==0&
qy3==0)
dj0=1;
delayus(20);
dj0=0;
}
while(qy0==0&
qy1==1&
dj1=1;
dj1=0;
while(qy0==1&
qy2==1&
qy3==1)//全白,冲出轨道了
{
dj0=dj1=0;
}
while(qy0==0&
qy3==0)//全黑,跑到交叉路口
dj0=dj1=1;
qy3==1)//
qy3==1)
dj0=1;
delayus(10);
dj0=0;
delayus
(2);
//dj0=1;
//delayus(0);
//delayus
(2);
dj1=1;
dj1=0;
//dj1=1;
//delayus(10);
第七章、测试方法与数据
在确定方案后,我们首先对各模块电路进行测试。
单片机最小系统、信号采集模块、电机驱动模块。
再确定各电路正常后,我们用单片机开发板模拟各电路,用LED灯检查程序运行情况。
硬件软件均测试成功后才将各电路组装,架车调试。
最后将小车放在实际跑道中进行实际测试,根据实际情况调整部分参数,使得小车以最佳的状态巡线前进。
第八章、结论
基于51内核的STC89C52RC单片机是电子设计入门级别的单片机,学习51单片机能很好的提高自己的C语言编程能力,为以后学习更高级的控制系统打下基础。
51单片配合一些简单的电路能制作出很多很实用的电子作品,例如:
无线红外控制器、数字万年历、电子闹钟。
本51巡线小车,设计方式简单,电路可靠性高,程序简单。
适合初学者学习自动控制思想,能为参加飞思卡尔智能车打好基础。