智能小车设计报告.docx
- 文档编号:28253726
- 上传时间:2023-07-09
- 格式:DOCX
- 页数:16
- 大小:18.21KB
智能小车设计报告.docx
《智能小车设计报告.docx》由会员分享,可在线阅读,更多相关《智能小车设计报告.docx(16页珍藏版)》请在冰豆网上搜索。
智能小车设计报告
设计报告
基于AT89S52单片机的智能小车设计
姓名:
王芳壁班级:
2013级8班学号:
201309340836指导教师:
陈元莉日期:
2016年3月20日星期日
引言………………………………………………………..1
1方案的选择与论证…………………………………….2
1.1主控芯片的选择...................................2
1.2显示方案的选择………………………………...2
1.3避障传感器的选择……………………………..3
1.4追光方案的选择………………………………...3
2系统的硬件设计………………………………………..3
2.1系统的总体结构框图……………………………4
2.2显示器电路………………………………………4
2.3蜂鸣器电路………………………………………4
2.4传感器电路……………………………………...4
3系统的软件设计……………………………………...4
3.1主程序流程图…………………………………..6
3.2循迹程序流程图……………………………….7
3.3追光程序流程图……………………………….7
3.4金属检测程序流程图………………………….8
4测试数据……………………………………………….8
5结束语……………………………………………………9
附录………………………………………………………10
基于AT89S52单片机的智能小车设计
摘要:
本设计给出了以AT89S52单片机为核心芯片的智能小车的简易控制,使小车沿给定轨道实现循迹,金属检测,避障,寻光等基本功能,通过了传感器的输出电平来控制小车走向,基本功能实现后,可完全由程序控制给出极大的发挥空间,车体采用两个轮子一个万向轮,更加简化了小车的控制。
关键词:
AT89S52 单片机 智能小车
Abstract:
ThedesigngivesthetheoryofthesmartcarofthesimplecontrolanditismakedbyAT89S52asthecorechip.Smartcarcanrealizegoingalongthetrack,detectingmetal,avoidingobstacle,searchinglightsuchasfunctions.Wecanthroughtheleveloftheoutputofthesensortocontrolthecar.Wecanbecompletelybytheprogramcontrolandtherearegreatspacetoplayaftertherealizationofthebasicfunctions.Thesmartcararemakedbyabodytwowheelsandauniversalwheel,soithighlysimplifiesthecontrolofsmartcar.
Keywords:
AT89S52 Single-chip Smartcar
引言
随着汽车工业的迅速发展,关于汽车的研究也就越来越受人关注。
从2001年起全国电子大赛和省内电子大赛几乎每次都有智能小车这方面的题目,全国各高校也都很重视该题目的研究。
可见其研究意义很大。
在智能小车现今发展最好的当是飞思卡尔举行的比赛,比赛分为光电组、摄像组、电磁组,比赛主要追求的是速度,速度最快者获胜。
我们研究的智能小车主要以完成相应的功能为主,同时要求有一定的速度。
1方案的选择与论证
1.1主控芯片的选择
方案1:
选用MSP430系列单片机,MSP430单片机处理能力强,运行速度快,超低功耗,片内资源丰富,包括定时器,模拟比较器,液晶驱动电路,运算能力强,但价格较贵,指令系统较复杂。
方案2:
选用ATMEL公司的AT89s52单片机,该单片机片内集成有定时器,中断系统,丰富的I/O端口,有较强的位处理功能,且价格便宜,指令系统较简单。
考虑本系统主要用于控制,不需要复杂的运算,选用AT89s52完全可以实现控制功能,且价格便宜,编程较容易,故选用方案2。
1.2显示方案的选择
方案1:
选用液晶屏显示器,可以显示汉字,电路设计,程序控制较为复杂,可观察度不高。
方案2:
选用数码管,不能显示汉字,设计,操作均简单,可观察度高。
本设计显示模块仅显示数字,选用易操作,价格便宜的数码管。
既选方案2。
1.3避障传感器的选择
方案1:
漫反射式光电开关:
利用被检测物体对红外光束的吸收或反射来检出物体的有或无,而且检测距离是可调的。
方案2:
三线制输出的碰撞开关模块,模块最前端开关有碰撞,模块输出低电平,没有碰撞,输出高电平。
因碰撞开关需有碰撞时才可控制,所以选择方案1。
1.4追光方案的选择
方案1:
利用硅光电池进行光源检测,硅光电池在有光线照射时,会产生电动势,光照越强,电动势越大。
方案2:
利用光敏二极管进行光源检测,当光敏二极管加上反向电压时,管子中的反向电流随着光照强度的改变而改变,光照强度越大,反向电流越大。
因硅光电池较光敏二极管较为便宜,所以选择方案1。
2系统的硬件设计
2.1系统的总体结构框图
显示模块
循迹模块
单片机
AT89S52
图1系统总体框图
键盘模块
电机模块
追光模块
避障模块
图2显示器电路原理图
2.2显示器电路
2.3蜂鸣器电路
图3 蜂鸣器电路原理图
2.4传感器电路
图4 追光电路原理图
3系统的软件设计
3.1主程序流程图
开始
循迹
有金属
Y
N
第4块
N
Y
Y
计数显示
5次声光提醒
Y
直行
有障碍
N
Y
避障
追光
结束
图5 主程序流程图
3.2循迹程序流程图
开始
A1=0&A2=0
直走
Y
N
左转
Y
A1=1&A2=0
N
Y
A1=0&A2=1
右转
N
Y
A1=1&A2=1
停止
N
结束
图6 循迹程序流程图
开始
3.3追光程序流程图
B1=0&B2=0
N
Y
直走
B1=1&B2=0
Y
左转
N
Y
右转
B1=0&B2=1
结束
图7 追光程序流程图
3.4金属检测程序流程图
开始
直走
N
有金属
Y
计数
N
第4块
Y
声光提示5次
直走
结束
图8 金属检测程序流程图
4测试数据
表一 系统测试数据
测试次数
循迹
金属探测
避障
追光
运行时间
第一次
第二次
第三次
5结束语
经过半个学期的努力,终于完成了这次智能小车的设计,把课堂上的理论运用到了实践中,对课本的理论有了更好的理解,在这次的设计中,因为缺乏经验,在画原理图的时候出现过很多细节错误,同时也就积累了很多的经验,每次制板完,焊接好以后都会出现许多的问题,慢慢的也了解到了常见的错误,相信自己第二次做作品的时候可以避免许多类似的错误,通过这次系统的设计,也大大增加了自己对专业的兴趣,更加了解到自己的不足之处,更有方向的去学习欠缺的理论知识。
感谢负责卓越工程师班的老师们的悉心指导,让我们能自己独立做出一个作品。
附录1
附录2
#include
//定义数码管IO口
#defineDATAPORTP0
//定义电机驱动IO口
sbitKM1=P2^4;
sbitKM2=P2^5;
sbitKM3=P2^6;
sbitKM4=P2^7;
//定义光电传感器IO口
sbitguangdian1=P3^7; //检测到黑线是高电平
sbitguangdian2=P3^6;
//定义避障传感器接口
sbitbizhang=P3^5;
//定义追光IO口
sbitzhuiguang1=P3^4;
sbitzhuiguang2=P3^3;
//定义喇叭IO口
sbitBzzer=P3^0;
sbitwei1=P3^2;
sbitshu=P2^3;
voidqianjin(); //前进函数声明
voidzuozhuan();//左转函数声明
voidyouzhuan();//右转函数声明
voidstop();//停止函数声明
voidhoutui();//后退函数声明
voidDelay(unsignedintx);//延时函数声明
//定义数码管显示0~9数组
unsignedcodeTable[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};
unsignedinti=0;
//函数入口(主函数)
voidmain()
{
//初始化操作
EA=1;
EX0=1;
IT0=0;
shu=0;
while
(1)
{
DATAPORT=Table[i];
//无光或者在黑线两边—前进
if((guangdian1==0&&guangdian2==0)|(zhuiguang1==0&&zhuiguang2==0))
qianjin();
//左边在黑线里或者左侧有光–左转
if((guangdian1==1&&guangdian2==0)|(zhuiguang1==1&&zhuiguang2==0))
zuozhuan();
//右边在黑线里或者右侧有光–右转
if((guangdian1==0&&guangdian2==1)|(zhuiguang1==0&&zhuiguang2==1))
youzhuan();
//左右两侧都在黑线里–暂停两秒然后前进
if(guangdian1==1&&guangdian2==1)
{
stop();
Delay(2000);
qianjin();
}
//如果前面有障碍物–后退并延迟2秒后右转
if(bizhang==0)
{
houtui();
Delay(2000);
youzhuan();
}
}
}
//延时函数的实现
voidDelay(unsignedintx)
{
unsignedinti,j;
for(i=x;i>0;i--)
for(j=110;j>0;j--);
}
//中断,定时器函数实现
voidISR_Key()interrupt0
{
if(wei1==0)//如果位为0,则增加
i++;
if(i==10) //位为10,归零
i=0;
DATAPORT=Table[i];
stop();
Bzzer=0;
P1=0X00;
Delay(400);
Bzzer=1;
P1=0Xff;
if(wei1==0)
qianjin();
if(i==4)
{
unsignedcharm;
stop();
for(m=5;m>0;m--)
{
Bzzer=0;
P1=0X00;
Delay(400);
Bzzer=1;
P1=0Xff;
Delay(400);
}
}
}
//前进函数的实现
voidqianjin()
{
KM1=KM4=1;
KM2 =KM3=0;
}
//左转函数的实现
voidzuozhuan()
{
KM1=1;
KM2 =0;
KM3=KM4=0;
}
//右转函数的实现
voidyouzhuan()
{
KM4=1;
KM3=0;
KM1=KM2=0;
}
//暂停函数的实现
voidstop()
{
KM1=KM2=KM4=KM3=0;
}
//后退函数的实现
voidhoutui()
{
KM1=KM4=0;
KM2 =KM3=1;
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 智能 小车 设计 报告