资源描述
电子大赛
自动循迹小车
24 / 25
目录
摘要 2
一 方案论证与比较 2
1、单片机的论证与选择 2
2、 电机的论证选择 2
二 理论分析与计算. 3
1、小车循迹功能的实现 3
三 系统实现方框图与电路设计 4
1、系统总体框架图 4
2、单元电路设计 4
(1)单片机最小系统版 4
(2) 4路红外寻迹避障传感器模块 7
(3) 电机驱动芯片L298N原理图如下 8
四 系统软件设计 9
1、总体软件流程图 9
五 测试方案与测试结果 10
1、测试方案 10
2、测试结果 10
3、问题分析与总结 11
附录一:参考文献: 11
附录二: 程序 12
附录三:作品实物图 17
摘要
本系统以89C52单片机为控制核心,采用小车专用电池为电源。在本系统中,单片机通过红外传感器实现对赛道(白面黑线)的轨道识别与小车位置的判定,并通过 4路红外寻迹避障传感器模块和驱动L298N芯片与相应程序,通过控制小车左右轮实现前进和循迹转向功能。
关键词:89C52 L298N 白面黑底轨道 循迹小车 红外传感器
一 方案论证与比较
1、单片机的论证与选择
方案一:采用公司的89S52单片机作为主控制器。89S52单片机价格便宜,控制简单,为我们平时实验所熟用;但其运算速度较慢,片内资源很少,存储器容量也很小,同时驱动多个传感器时难以实现复杂的算法。
方案二:采用公司的430系列单片机。430系列单片机具有低功耗、速度快、片上资源丰富、外部拓展能力强等特点。16位指令集处理器,14个双向口,每个口均可作为中断源,但是工作电压偏低(1.83.6V)对于很多5V的系统来说接口电路颇为麻烦,无保护,过压过流会立即击穿,。
方案三:采用公司生产的89C52。89C52是的一种低功耗、高性能8位微控制器,具有8K字节系统可编程存储器。89C52使用经典的51内核,但是做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8 位 和在系统可编程,使得89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案同时,具备很好的抗干扰能力。
综合对比以上三个方案,我们选择方案三,采用89C52单片机作为系统主控芯片。
2、 电机的论证选择
方案一:采用步进电机。步进电机具有动态响应快、精度高、易于起停,易于正反转及变速的优点,可精确控制旋转角度。但它以步进式跟进,角度小于一个步距角时是系统响应盲区,且转速较慢。
方案二:采用直流减速电机。直流减速电机具有扭矩大,体积小,驱动电路简单,稳定强,负载能力强等优点,且速度较快,能较好的满足题目对小车行进速度的要求。结合技术对其转速的控制,利用小车两侧电机的转速差可实现前进,转弯等功能。
综合比较以上两种电机,结合题目的的要求,我们选择直流减速电机用作小车的驱动(L298N驱动模块)。
二 理论分析与计算.
1、小车循迹功能的实现
本题的重点在于小车如何利用红外传感器通过黑色轨道的检测来确定自身位置,以此执行前进、左转、右转等操作。小车的直行与转弯功能可通过车身两侧电机的相对速度实现。当两侧电机转速相等时,小车直行,当右侧电机速度大于左侧电机速度,或是右侧正转,左侧反转时,小车左转。为此我们将车身同一侧两个电机并联在一起,通过两组脉冲和两个口输出高低电平实现对4个电机转速与转向的控制,从而实现小车的自由运动。
设某一电机正极接有脉冲控制信号,负极由口输出高低电平控制。当口输出低电平时,电机负极接地,电机正转,转速由脉冲高电平占空比决定。当口输出高电平时,电机负极接+12付,电机反转,转速由脉冲低电平占空比决定。单片机通过L298N驱动电机。
为了较好的实现小车对黑色轨道的检测,我们在小车底部安装了三个红外灯,与89C52芯片相连。当左侧线圈感应到黑色轨迹时,说明小车位置偏右,控制小车左移。当右侧线圈感应到黑色轨迹时,说明小车位置偏左,控制小车右移。由此小车可根据黑色轨迹的位置自动行驶直线或是转弯的功能。
循迹是指小车在白色地板上循黑线行走,由于黑线和白色地板对光线的反射系数不同,可以根据接收到的反射光的强弱来判断“道路”。通常采取的方法是红外探测法。
红外探测法,即利用红外线在不同颜色的物体表面具有不同的反射性质的特点,在小车行驶过程中不断地向地面发射红外光,当红外光遇到白色纸质地板时发生漫反射,反射光被装在小车上的接收管接收;如果遇到黑线则红外光被吸收,小车上的接收管接收不到红外光。单片机就是否收到反射回来的红外光为依据来确定黑线的位置和小车的行走路线。红外探测器探测距离有限。
小车供电后,红外光电二极管发出红外光,光线照在路面上反射回来被光电二极管接收,半导体二极管在电场作用下产生电势,将光信号转换成电信号。该智能小车在画有黑线的白纸 “路面”上行驶,由于黑线和白纸对光线的反射系数不同,可根据接收到的反射光的强弱来判断“道路”——黑线。
当小车检测到黑线时,红外线部分被黑线吸收,反射回的红外线极少被光电二极管接收,转换成比较弱的电信号;当小车未检测到黑线时,红外线大部分被反射,反射回的红外线被光电二极管接收,转换成比较强的电信号。最终,这些电信号经过比较器处理后传入单片机,再由单片机进一步做信号处理。
三 系统实现方框图与电路设计
1、系统总体框架图
整个系统主要划分为以下4个模块:控制器模块(89C51)、红外传感器模块(轨迹探测模块)、电机驱动模块、电源模块。系统总体框架如图及构造图如下。
2、单元电路设计
(1)单片机最小系统版
以89C52单片机作为核心控制器,单片机的引脚如下所示,89C52是一个高速,低功耗,超强抗干扰的8位单片机,片内含32k 空间的可反复擦写100,000 次 只读存储器,具有4K 的随机存取数据存储器(),32 个口,2个8位可编程定时计数器,且可在线编程、调试,方便地实现程序的下载与整机的调试。时钟电路和复位电路(与单片机构成最小系统)
1)采用外部时钟,晶振频率为12。
没有晶振,就没有时钟周期,没有时钟周期,就无法执行程序代码,单片机就无法工作。 单片机工作时,是一条一条地从中取指令,然后一步一步地执行。单片机访问一次存储器的时间,称之为一个机器周期,这是一个时间基准。—个机器周期包括12个时钟周期。如果一个单片机选择了12晶振,它的时钟周期是1/12,它的一个机器周期是12×(1/12),也就是1。 —51单片机的所有指令中,有一些完成得比较快,只要一个机器周期就行了,有一些完成得比较馒,得要2个机器周期,还有两条指令要4个机器周期才行。为了衡量指令执行时间的长短,又引入一个新的概念:指令周期。所谓指令周期就是指执行一条指令的时间。 提供时序的频率! 提供单片机工作的时序,其实就相当电脑主频一个原理的。
2)采用按键复位
单片机的复位有上电复位和按钮手动复位两种。上电复位是利用电容充电来实现的,即上电瞬间端的电位与相同,随着充电电流的减少,的电位逐渐下降。图(a)中的R是施密特触发器输入端的一个10KΩ下拉电阻,时间常数为10×10-6×10×103=100。只要的上升时间不超过1,振荡器建立时间不超过10,这个时间常数足以保证完成复位操作。上电复位所需的最短时间是振荡周期建立时间加上2个机器周期时间,在这个时间内的电平应维持高于施密特触发器的下阈值。
最小系统
时钟电路和复位电路
(2) 4路红外寻迹避障传感器模块
最多可同时支持4通道的采集,原理图如下,
(3) 电机驱动芯片L298N原理图如下
四 系统软件设计
程序采用汇编语言模块化编程,结构清晰易读性强。程序在环境下采用 4软件编写,用烧写。
1、总体软件流程图
系统初始化
小车沿黑线前进
是否完成全部
任务?
循迹子函数
是否完成本次
任务?
结束
开始
N
Y
N
Y
主程序流程图
启动循迹模式
探测黑线
是否检测到黑线
判断处理程序
向左转
2
向左转
1
向右转
1
向右转
2
继续前进
N
Y
循迹流程图
五 测试方案与测试结果
1、测试方案
在白色地面上,用黑色胶带布置一条轨道(含直线,曲线,一定角度的拐弯) ,将小车放置在地面上,观察是否可以循迹前行。
2、测试结果
我们对循迹小车进行了多次测试,小车可以正常沿黑色轨迹行驶,轨道含直角弯,曲线弯和直线部分。在部分
3、问题分析与总结
首先是赛道与电感传感器的问题。我们在前期测试的时候,由于赛道本身有个别地方存在转角过大,静电累积的问题,传感器感应到此种情况时会造成无法识别的情况,从而使小车冲出赛道或是传感器的失灵等情况,只能通过单片机复位来解决。另外由于电感传感器通过杜邦线与车身底部的线圈相连,偶尔会出现数据波动的情况,对小车的正常行驶有很大的影响。尽管我们使用了热胶枪对车身部件进行了固定,但仍不能完全杜绝此种情况。
其次,小车整体的稳定性与电池供电电压有着很大关系,电池电压在11.5-12.5伏时系统最为稳定。当小车供电电压过低时,可能会引起很多意想不到的情况,例如感应不到金属,小车转向异常,系统卡死等。在我们起初遇到此情况时,以为是电感传感器的问题,在多次调试无效后,换了个电池,才偶然发现问题的起因,为此耽误了很多的时间。
附录一:参考文献:
[1] 宋健,姜军生,赵文亮. 基于单片机的直流电动机 调速系统[J ] . 农机化研究,2006 , (1) :102 - 103.
[2] 边春元 李文涛 江杰 杜平等;C51单片机典型模块设计与应用;机械工业出版社;2008.4
[3] 李华. 51 系列单片机实用接口技术[M].北京:航空航天大学出版社, 2003
[4] 楼然苗.51 单片机设计实例[M].北京:航空航天大学出版社,2005.8
[5] 王晶,翁显耀,梁业宗 自动寻迹小车的传感器模块设计.武汉理工大学自动化学院 湖北武汉
[6] 刘迎春. 传感器原理设计与应用[M] . 长沙:国防科技大学出版社,1992.
[7]《430系列16位超低功耗单片机原理与应用》沈建华 等著,北京航空航天大学出版社,2008年7月第一版。
附录二: 程序
<52>
12^0;
22^1;
12^2;
22^3;
3^0;
3^1;
3^2;
3^3;
( a)
{
;
(>0)
(2>0);
}
( )
{
;
(>0);
(110>0);
}
()
{
1=1;
2=0;
1=0;
2=1;
(3);
1=0;
2=0;
1=0;
2=0;
(5);
}
()
{
1=1;
2=0;
1=0;
2=0;
(5);
1=0;
2=0;
1=0;
2=0;
(5);
}
()
{
1=1;
2=0;
1=1;
2=0;
(5);
1=0;
2=0;
1=0;
2=0;
(5);
}
()右转
{ 1=0;
2=0;
1=0;
2=1;
(5);
1=0;
2=0;
1=0;
2=0;
(5);
}
()
{ 1=0;
2=1;
1=0;
2=1;
(5);
1=0;
2=0;
1=0;
2=0;
(5);
}
()
{
(1)
{ ((0)(0)(0)(0)) 0是感应灯亮
{
();
}
((0)(1)) 左边有黑线向左转
{
();
}
((1)(0))
{
();
}
((1)(0))
{
();
}
((0)(1))
{
();
}
((1)(1)(1)(0))
{
();
}
((1)(1)(0)(1)) 黑线是1不亮,0是亮
{
();
}
((1)(1)(0)(0))
{
();
}
}
}
附录三:作品实物图
展开阅读全文