电子设计大赛智能小车论文.docx
- 文档编号:67871
- 上传时间:2023-04-28
- 格式:DOCX
- 页数:25
- 大小:534.32KB
电子设计大赛智能小车论文.docx
《电子设计大赛智能小车论文.docx》由会员分享,可在线阅读,更多相关《电子设计大赛智能小车论文.docx(25页珍藏版)》请在冰点文库上搜索。
20XX年全国大学生电子设计竞赛
智能小车(C题)
参赛队员:
本科生 张振
本科生 郝正辉
本科生 赵双领
20XX年9月3日
摘要
本设计为以STC12C5A60S2为主控制器的智能小车控制系统。
每个小车系统由光电循迹模块、L298N电机控制模块、小车系统通讯模块、电源模块组成。
小车循迹模块由两个光电开关和一个RPR220光电对管构成,两个光电开关检测车道边沿信号,防止小车冲出行车道;RPR220光电对管检测转弯标志,三个传感器相结合使小车实现循迹功能。
通讯模块由一个光电开关与超声波传感器相结合组成,实现小车实时通讯。
两个小车供电系统采用电池组供电。
本次设计的小车系统经过测试运行比较稳定,基本实现两车交替循环超车功能,达到预期目的。
关键词:
STC12C5A60S2、循迹、两车交替循环超车
目录
0引言 1
1 系统方案设计分析 2
1.1 控制器的选择 2
1.2 光电循迹模块的论证与选择 3
1.3 小车系统通讯模块的选择 3
1.3.1 光电开关检测模块 3
1.3.2 超声波模块 3
1.45V直流电机与L298N电机控制模块的论证与选择 3
1.5电源模块的选择 4
2 理论分析与计算 4
2.1信号检测与控制 4
2.1.1 光电开关检测计算与控制 4
2.1.2RPR220检测计算与控制 5
2.1.3 超声波信号检测与控制 5
2.2两车之间的通信方法 6
2.3节能 6
3 硬件设计 6
3.1RPR220检测电路 6
3.2 光电开关检测电路 7
3.3L298N驱动电路 7
3.4 超声波收发电路 7
4 程序设计与流程 8
4.1程序功能描述与设计思路 8
4.1.1 程序功能描述 8
4.2.2 程序设计思路 8
4.2程序流程图 9
5 测试方法与测试结果 11
5.1测试方案 11
5.2 测试条件与仪器 11
5.3 测试数据与结果分析 11
5.3.1PWM调速 11
5.3.2 超车时间控制 12
6 总结 12
6.1 设计小结 12
6.2 设计收获 12
参考文献 13
附录1:
系统原理图 14
附录2:
部分源程序 15
0引言
在本设计中,要求甲车车头紧靠起点标志线,乙车车尾紧靠边界,甲、乙两辆小车同时起动,先后通过起点标志线,在行车道同向而行,实现两车交替超车领跑功能。
跑道如图1 。
图0-1 小车跑道
具体要求如下所示:
1. 基本要求
(1)甲车和乙车分别从起点标志线开始,在行车道各正常行驶一圈。
(2)甲、乙两车按图 1 所示位置同时起动,乙车通过超车标志线后在超车
区内实现超车功能,并先于甲车到达终点标志线,即第一圈实现乙车超过甲车。
(3)甲、乙两车在完成
(2)时的行驶时间要尽可能的短。
2. 发挥部分
(1)在完成基本要求
(2)后,甲、乙两车继续行驶第二圈,要求甲车通过超
车标志线后要实现超车功能,并先于乙车到达终点标志线,即第二圈完成甲车超
过乙车,实现了交替领跑。
甲、乙两车在第二圈行驶的时间要尽可能的短。
(2)甲、乙两车继续行驶第三圈和第四圈,并交替领跑;两车行驶的时间要尽可能的短。
(3)在完成上述功能后,重新设定甲车起始位置(在离起点标志线前进方向 40cm 范围内任意设定),实现甲、乙两车四圈交替领跑功能,行驶时间要尽可能的短。
基于以上要求,我们运用PWM调速,采用光电开关检测轨道两侧边沿,控制小车沿指定轨道行驶,采用红外对管检测转弯标志线,用超声波控制两车之间距离,并结合光电开关实现两车交替超车、领跑。
1 系统方案设计分析
本设计由于有两个小车,所以每个小车系统都要含有以上的外接模块电路,以便使控制器控制两小车。
每个小车系统由光电循迹模块、L298N电机控制模块、小车系统通讯模块、电源模块组成。
系统总体框图如图1-1所示。
图1-1 小车系统框图
下面分别对这几个模块的进行选择:
1.1 控制器的选择
在本设计系统中中,我们选择STC12C5A60S2为两个小车的控制器。
因为STC12C5A60S2单片机处理数据的速度是普通单片机的8-12倍,内部自带SPI、ADC、eepromPWM及双UART等。
1.2 光电循迹模块的论证与选择
方案一:
采用3个RPR220循迹。
此方案运用三个RPR220检测转弯标志及跑道两侧的边沿标志。
,它测量距离近,但反应灵敏、准确。
方案二:
采用光电开关循迹。
小车跑道两侧均有一定的高度差,可以通过控制光电开关的灵敏度实现边沿检测,实现小车的循迹。
方案三:
采用一个RPR220检测控制电机转弯,两个光电开关循迹相结合控制电机实现其循迹功能。
在本设计中在转弯处都有两厘米宽度的黑胶带,无论小车前端走到何处,都可以利用RPR220很灵敏的检测到转弯标志,由于跑道两侧的高度差,采用光电开关寻两侧效果相比RPR220更容易控制小车,防止小车冲出跑道。
因此,综合以上三种种方案,选择方案三。
1.3 小车系统通讯模块的选择
小车系统模块有两个部分组成:
1.3.1 光电开关检测模块
本设计中采用与循迹模块一样的光电开关。
当位于后面的小车,在超车区超越前面小车时,位于前面小车右侧的光电开关检测到超越信号,告知前面小车后车已经超越,从而实现了两个小车的通讯。
1.3.2 超声波模块
本模块采用一对声波收发头,通过程序控制使单片机输出一定的频率信号,驱动发射头发出声波信号,当遇到障碍物的时候,声波反射回来接收头收到信号。
通过计时,计算出两障碍物之间的距离。
1.45V直流电机与L298N电机控制模块的论证与选择
方案一:
采用继电器对电机的开关进行控制,可以完成电机的正转,反转,调速,但继电器响应时间慢,使小车运动灵敏度降低,增加了避障的难度。
而且机械结构易磨损,可靠性不高。
它适用于大功率电机的驱动,对于中小功率的电机则极不经济。
方案二:
采用L298N控制芯片,通过单片机I/O口输入改变控制端的电平,即可实现5V直流电机正反转、停止的操作。
运用此方案可以很好的利用单片机程序控制达到控制电机的目的。
基于以上两种的方案的比较,选择方案二。
1.5电源模块的选择
整个电路系统我们采用电池组供电,能够满足系统要求。
我们采用以STC12C5A60S2为小车控制器,利用两个光电开关实现小车轨道循迹,一个RPR220红外对管检测轨道转弯标志及一个光电开关、超声波实现两小车的相互通讯。
2 理论分析与计算
2.1信号检测与控制
2.1.1 光电开关检测计算与控制
在本设计中我们运用的光电开关E18-B03N1是一种灵敏度可调,可以根据不同高度进行调节以使其响应检测信号。
控制方法原理:
把光电开关接入TTL电平,根据光电开关长度与小车的高度,我们设计把光电开关放到离地面高度20cm的位置,调节光电开关旋钮,直到光电开关指示灯亮,此时光电开关只对这一位置高度产生信号反应(指示灯亮),其他位置不做反应(指示灯不亮)。
因此把光电开关以某一斜度放置在小车前端,保证光电开关能检测到一定的高度信号,控制如图2-1所示(光电开关检测到的最高距离为20cm,检测到边沿距离为b)
图2-1 光电开关放置斜度图
计算过程:
我们设光电开关放置斜度为X,测得光电开关探测头高度a=10cm,根据上图得:
cosX==14/20=0.7
计算得X大约50左右,因为我们固定光电开关的时,在高10cm处以45度倾角固定光电传感器,从而能够使光电开关检测到车道边沿的高度差,实现信号反馈。
位于小车右侧的光电开关也采用与此一样的控制原理。
2.1.2RPR220检测计算与控制
RPR20的工作原理与光电的工作原理相同。
通过调节如图2-2的滑线变位器,可使RPR20的检测高度最高达到4cm,为了保证RPR20检测信号的可靠性,我们把RPR220与轨道面的高度确定在1.5cm。
图2-2RPR220与地面垂直高度
2.1.3 超声波信号检测与控制
超声波模块发出的超声波为球面状,对很小的障碍物都能反射回信号。
通过检测,可以把超声波模块的有效作用距离为调整到1m。
行驶过程中,前车接收不到超声波,可以判断出接收不到超声波的车为前车。
后车通过超声波可以计算出与前车的距离。
当两车距离大于30cm时,后车加速;当两车距离小于15cm时,后车减速;
图2-3 超声波发射接收状态图
2.2两车之间的通信方法
由于超车区轨道为80cm,我们把前车左侧的光电开关的有效探测距离调到60cm,可以保证后车超车过程中达到两车平行时,前车一定能接受到此时后车位置的信号,即实现了两车通讯。
2.3节能
电机功耗计算:
直流电机功率=机械效率*电压*电流
扭矩=9.55*(功率/转速)
机械效率=输出功率/输入功率
输入功率=电压*电流
我们需要运用的电机是直流,并且为了方便应用于单片机,选电压值为5v。
要求电机的扭矩在一定值范围内。
由于小车要循迹和超车,小车的速度要求也比较小,通过以上直流电机功率计算公式可知:
选用5v直流电机,电机的功率小,并且机械效率高。
3 硬件设计
3.1RPR220检测电路
当红外传感器检测到黑胶带时,会传送给控制器一个跳变信号,从而使控制器实行相关操作。
电路如图3-1所示
图3-1 RPR220检测电路
3.2 光电开关检测电路
本系统采用的光电开关直接接单片机TTL电平,信号输出端接单片机I/O口,电源线直接接单片机电源,即可达到检测信号的目的。
检测灵敏,性能稳定。
3.3L298N驱动电路
电路如图3-2所示,即可通过单片机I/O直接口至电机转动。
图3-2 L298N驱动电路
3.4 超声波收发电路
把超声波模块设计成独立的电路模块,当发射头发射40MHZ的脉冲信号时,接头接收发射回来的声波信号。
此电路能够准确测量距离。
超声波收发电路如图3-3所示。
图3-3 超声波收发模块电路图
4 程序设计与流程
4.1程序功能描述与设计思路
4.1.1 程序功能描述
1、当单片机接收到光电开关与RPR220的检测到信号后,控制电机左转右转,实现循迹
2、编制程序使单片机驱动超声波模块检测前方小车距离,调整后车的车速,使两小车之间距离保持在15cm至25cm之间,并判断出哪辆车为前车。
3、光电开关程序实现两个小车之间的相互通信,实现超车、领跑功能
4.2.2 程序设计思路
1、循迹转弯设计思路
当左右两边光电开关都接收检测到信号时,两光电开关都输出低电平,小车直行;当左右光电开关分别为接收不到信号、接收到信号时,左右光电开关分别输出高、底电平,小车右拐;当左右光电开关分别为接收到信号、接收不到信号时,左右光电开关分别输出底、高电平,小车左拐;
当中间RPR220检测到拐弯标志线时,输出为高电平,并实现对标志线计数功能,作为小车起始、拐弯、超车标志,实现小车的起始、拐弯与超车。
2、两车车距控制思路
前车超声波传感器接收不到超声波,后车超声波传感器接受超声波,通过程序计算实现后车加、减速,来控制两车距离
3、小车超车程序设计思路
两车正常行驶,前车接受不到后车的信号。
继续行驶,直到前车进入超车区行驶道中间位置时,前车停止,等待5.5秒。
只有当超车过程中两车平行时,前车才能接收到后车信号。
此时前车开始定时7.6秒,7.6秒后后车超车结束,前车再继续开始行驶。
4.2程序流程图
1、主程序流程图
图4-1 主程序流程图
2、循迹子程序流程图
图4-2 循迹子程序流程图
3、超车子程序流程图
在超车子程序编写时,使用时间控制的原理控制小车直走转弯的时间进行控制。
其流程图如图4-3所示。
图4-3 超车子程序流程图
5 测试方法与测试结果
5.1测试方案
一、硬件模块测试:
系统本身由三个独立的模块构成,所以分三部分进行调试。
1、在不驱动电机的状态下,对超声波进行测试。
2、接入5V电源,把光电开关与RPR220固定在小车上,单独调试,调整其灵敏度
3、接入5V电源,调试L298N电机驱动电路。
二、软件模块测试:
采用自下而上的调试方式,先进行模块测试程序的调试,待全部通过之后将所有的软件程序串接起来并结合硬件电路进行整体调试。
5.2 测试条件与仪器
测试条件:
检查多次,仿真电路和硬件电路必须与系统原理图完全相同,并且检查无误,硬件电路保证无虚焊。
测试仪器:
数字万用表、秒表,计算器、直尺。
5.3 测试数据与结果分析
5.3.1PWM调速
测试数据如表5-1所示:
表5-1 小车前进10s行驶的距离(单位:
cm)
次数
占空比1:
3
占空比1:
2
占空比1:
1
占空比1:
0.5
占空比1:
0.3
1
0.4
0.7
1.3
2.2
3.4
2
0.5
0.7
1.1
2
3.3
3
0.4
0.6
1.2
2.1
3.3
4
0.4
0.5
1.1
2.1
3.4
拐弯误差
太大
较小
可以
较小
较大
结果分析:
当车速过快过慢时,小车容易冲出轨道。
当占空比为1:
1时,小车行驶最稳定,可以作为小车正常行驶速度。
当占空比为1:
2与1:
0.5时拐弯误差较小,所以可选用占空比1:
0.4与1:
1.8应用于小车的加速与减速。
5.3.2 超车时间控制
测试数据如表5-2、5-3所示:
表5-2 前车每圈第三次拐弯结束到前车停止在超车区中间位置时间(单位:
秒)
次数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
时间
5.2
5.4
5.9
5.6
5.6
5.3
5.7
5.6
5.5
5.4
5.1
5.6
5.8
6.1
5.3
表5-3 前车收到后车信号开始到后车结束超车时间(单位:
秒)
次数
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
时间
7.8
7.6
7.3
7.3
7.9
7.1
7.4
8
7.7
7.2
7.3
7.1
7.5
7.7
7.3
由于小车行驶存在误差前车停止位置在一定距离范围内,通过15次测量前车每圈第三次拐弯结束到停到超车区中间位置的平均时间为5.5秒。
再通过15测量前车收到后车信号开始到后车结束超车平均时间为7.6秒来控制超车过程。
综上所述,本设计达到设计要求。
6 总结
6.1 设计小结
本设计每辆小车利用光电开关与RPR220光电对管实现循迹功能,通过调整能够使每辆小车沿着跑道行驶一圈。
两车同时行驶时,通过超声波传感器很容易控制两车间的距离。
当后车行驶到超车区时实现超车。
在循迹的过程中,光电开关与RPR220光电对管反应灵敏,能够非常正确的捕获信号,实现循迹。
在超车区,通过前后小车的通讯协调与信号反馈,实现了后车成功超越前车的设计目标。
本系统性能稳定,达到了设计目标。
6.2 设计收获
在四天三夜的奋斗之中,我们组的每一个人都在全力以赴。
从焊接每一个电路,到程序的编制协调,硬件电路的故障检测,我们都在非常细心去发现问题,寻求解决问题的方法。
我们三个人虽然每天睡得少,想问题想得多;但是我们每天都在为同一个目标在奋斗。
虽然辛苦,但富有激情。
这就是电子设计大赛带给我们的团队精神,它让我们每一个大家每一个深深领悟到它的重要性。
同时三个人之间的相互交流,也让我们每一个人学到了很多东西。
参考文献
[1]童诗白. 模拟电子技术基础 第三版. 北京:
高等教育出版社,2001.1
[2]孙肖子. 实用电子电路手册(模拟分册).北京:
高等教育出版社,1992
[3]谭浩强.C语言程序设计(第二版). 北京:
清华大学出版社,2000
[4]黄智伟. 全国大学生电子设计竞赛训练教程. 北京:
电子工业出版社,2005
附录1:
系统原理图
附录2:
部分源程序
voidchaoche()
{
uchari,j;
time=0;
while(time<50){ //直走
zhi_zou();
}
time=0;
while(time<25){
in1=0;in2=0;in3=1;in4=0; //左拐
os_wait(K_TMO,speed,0);
in1=0;in2=0;in3=0;in4=0;
os_wait(K_TMO,10-speed,0);
}
time=0;
while(time<28){
zhi_zou();
}
time=0;
while(time<14){
in1=1;in2=0;in3=0;in4=0; //右拐
os_wait(K_TMO,10,0);
in1=0;in2=0;in3=0;in4=0;
os_wait(K_TMO,10,0);
}
time=0;
while(time<40){
zhi_zou();
}
time=0;
while(time<16){
in1=1;in2=0;in3=0;in4=0; //右拐
os_wait(K_TMO,10,0);
in1=0;in2=0;in3=0;in4=0;
os_wait(K_TMO,10,0);
}
time=0;
while(time<23){
zhi_zou();
}
time=0;
while(time<15){
in1=0;in2=0;in3=1;in4=0; //左拐
os_wait(K_TMO,10,0);
in1=0;in2=0;in3=0;in4=0;
os_wait(K_TMO,10,0);
}
}
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子设计 大赛 智能 小车 论文