基于单片机的寻迹加减速小车.docx
- 文档编号:9826650
- 上传时间:2023-05-21
- 格式:DOCX
- 页数:20
- 大小:431.29KB
基于单片机的寻迹加减速小车.docx
《基于单片机的寻迹加减速小车.docx》由会员分享,可在线阅读,更多相关《基于单片机的寻迹加减速小车.docx(20页珍藏版)》请在冰点文库上搜索。
基于单片机的寻迹加减速小车
课题:
基于单片机的寻迹小车
班级:
09级通信1班
姓名:
陈进源
学号:
0902201002
指导老师:
高丽贞
______年____月____日
基于单片机的寻迹小车
【摘要】:
本文以STC89C52单片机为核心设计了寻迹小车,单片机产生周期性脉冲信号,控制全桥驱动芯片L298N驱动直流电机实现小车的转速和转向;LM339电压比较器及红外对管组成的电路进行路面黑线寻迹,实现小车在轨道内正常行驶;加速度传感器组合系统采集信息,经单片机分析处理后用以控制直流电机前后运动使车身在没有外界的帮助条件下完成自动平衡的基本功能。
【关键字】:
STC89C52;L298N;LM339;LCD1602
一、系统方案
1、总体方案描述
(1)系统结构框图
图1-1主控系统结构框图
图1-2自平衡系统结构框图
(2)总体思路
在主控系统中,系统主要由4个模块组成:
电机驱动模块、黑线检测模块与信息采集模块、电源噪声抑制模块。
其中,主控系统采用单片机最小系统为两辆小车的控制核心。
按键按下,单片机控制电机驱动小车直线行驶,同时红外对管开始检测黑线,依黑线循线行驶,通过红外对管对跑道的检测,将检测信息反馈回单片机系统,从而控制左右电机的转速,以达到直行、拐弯加速、减速等一系列功能,直至完成整个赛道的行程。
在自平衡系统中,在小车上安装角速度传感器和加速度传感器,把它们采集的信号经过AD转换、卡尔曼算法处理和PID算法处理以后,用来控制电机运转,在电机运转的同时,传感器又会传来新的数据,从而使电机不停地改变运动状态,这样就可以使整个系统处在一个动态平衡中,从而达到小车平衡行驶的状态。
2、方案论证与比较
(1)电机驱动模块
方案一:
采用电机驱动芯片ULN2003。
ULN2003的每一对达林顿都串联一个2.7K的基极电阻,在5V的工作电压下它能与TTL和CMOS电路直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据。
ULN2003工作电压高,工作电流大,灌电流可达500mA,输出还可以在高负载电流时并行运行。
方案二:
采用L298驱动电机。
使用该芯片驱动的好处是在额定的电压和电流内使用非常方便可靠,并且可以同时驱动两个电机。
可以使用PWM调控改变PWM调制脉冲占空比,可以实现精确调速,调速范围较宽与快速响应的电机相配合,系统可以获得很宽的频带,因此快速响应性能好,动态抗干扰能力强。
相比较而言,ULN2003只能控制电机单向转动,而L298N可以实现双向转动,也就是说它有更强的驱动能力。
而且L298N有过电流保护功能,当出现电机卡死时,可以保护电路和电机,基于以上分析故我们采用方案二。
(2)黑线检测模块
方案一:
采用发光二极管与光敏电阻。
利用光敏电阻的阻值变化来控制信号。
由于环境中光线的存在,一旦光线条件改变很可能造成误判和漏判;虽然采取超高亮发光管可以降低一定的干扰,但这又将增加额外的电量损耗。
方案二:
采用反射式的集成红外对管。
红外对管只对红外线具有较高灵敏度,从而避免了外界光线的干扰;跑道两侧黑线能够吸收红外线,而白色跑道能够反射红外线,从而检测到跑道黑线。
光敏电阻的易干扰性和红外对管的对光线单一灵敏行决定方案二具有较好控制作用,所以选择方案二来进行黑线的寻迹。
(3)平衡检测和信息采集模块
方案一:
采用水银开关检测板平衡点。
其内部是由两根导线组合而成,只要当水银流动到导线的两端即水银把两根导线短接在一起。
但当小车平衡时,有可能水银开关还未闭合,可靠性不高,并且很难采集到有效的数据信息用来调节控制小车平衡。
方案二:
采用SCA60C倾角传感器检测小车是否平衡。
此倾角传感器是通过改变角度来改变其输出电压,具有良好的线性变化,通过读取输出电压的值来控制小车的速度,以调节小车平衡。
方案三:
用陀螺仪和加速度传感器(MMA7361和ENC-03)组合使用,来检测小车是否平衡,用两种传感器采集到的信息及处理后控制电机的运行,以保持小车平衡。
由于两种传感器可以互补缺点,这种方法采集的信息更加精确,更有利整个系统的运行。
考虑到以上各种因素以及小车平衡调节的精确性和保持平衡的可靠性,我们采用方案三。
(4)电源抑制噪声模块
电机转动产生的噪声对单片机的影响很大,因此我们在电源方面采用双电源供电,用9V的稳压电源给电机部分和传感电路供电,5V的稳压电源给单片机处理电路供电,两者在同一点共地,而电机控制端口通过光耦与主芯片相连,这样使电机和单片机没有直接接触,把模拟地对数字地的噪声影响降到了最低。
此外在单片机主电路中加入磁珠和滤波电容进行滤波,可以对噪声达到很好的抑制效果。
二、理论分析与计算
1、信号检测与控制
小车的直线行驶跟转弯主要通过红外探头检测路面信号的检测。
小车左右分布多个红外对管,用于跑道中的黑线和各标志线的检测,从而达到正常行驶的功能,小车在运行中,每个传感器的功能可变,通过对黑线标志线来计数判断是否到达功能变更区,若到达则改变传感器检测功能。
当检测到第一条标志线时小车加速行驶,检测到第二条标志线时小车减速行驶,检测到第三条标志线时小车恢复正常速度行驶。
当小车驶入引导线断开区域时,小车保持直线行驶状态,直至寻至下一段黑线,并能完成S行路线的行驶直至终点。
由单片机组成的最小系统是整个电路的控制核心。
2、节能分析
在小车电路的设计中,为了减少分立元件的使用量和各模块的电量消耗,我们尽可能选择集成度高、反应灵敏的器件。
比如在设计车距控制模块时就避免了超声波检测,选择以光电开关调节探测距离来控制车间距离,充分的达到了节能和题目的要求。
三、单元电路设计
1、电机驱动电路
电机的驱动使用专业集成式全桥驱动芯片L298N。
L298N内部包含4通道逻辑驱动电路,可以方便的驱动两个直流电机,或一个两相步进电机。
L298N可接受标准TTL逻辑电平信号VSS,VSS可接4.5~7V电压,4脚VS接电源电压,VS电压范围VIH为+2.5~46V,输出电流可达2.5A,L298N的OUT1,OUT2和OUT3,OUT4之间可分别接电机。
我们选用两通道来驱动小车的电机,通过调节占空比控制电机转速。
在L298N的4脚使能信号有效(逻辑电平1)时,当5脚和7脚的电平为10时,电机B1正转;当5脚和7脚的电平为01时,电机B1反转;当5脚和7脚的电平为00或11时,电机B`不工作。
B2与B1控制原理相同。
小车电机驱动电路的原理图见附录图2-1。
2、黑带检测电路
采用集成式的红外对管RPR220对跑道黑带进行检测。
主要利用集成式四通道专用电压比较器LM339与RPR220组成探测黑带的检测电路,不同位置的红外对管探测不同的路线,提供不同意义的信号。
各个电路独立的检测黑带,从而使小车稳定的行使在预想的路线上,其核心原理图如图2-1。
3、其他功能电路
为达到小车识别加减速区目的,避免了使用判断错误造成速度变更的误差,利用ST188红外对管检测纵向黑线的数目,其功能顺序依次为加速→减速
→正常速度,循环往复。
为达到小车直立行驶的目的,利用陀螺仪和加速度传感器来调节小车重心,将小车45°角放置,使其重心处于两驱动轮中间,从而依靠两轮直立行驶。
其中,最小系统、稳压系统、陀螺仪传感器、加速度传感器原理图见附录。
四、软件及算法分析
本系统软件设计部分基于STC89C52单片机平台,主要完成小车黑线循迹,加、减速区域速度变更,两轮直立行驶功能,其主要流程图如下:
图1-3自平衡系统流程图
图1-4软件系统流程图图1-5PID算法
五、系统测试
根据比赛要求,经多次调试,小车达到如下功能:
(1)小车于AB段加速行驶,BC段减速行驶,其行驶时间测试如下:
次数
AB段行驶时间(s)
BC段行驶时间(s)
1
3.4
4.7
2
2.8
5.1
3
3.1
5.3
(2)小车经过DE段引导线断开区域,能保持直线行驶至E点后循黑线行驶,其经过空白段的时间约为2.4s。
(3)小车由E点至F点且途径分岔口时能按S形路线行驶,起行驶时间约为23s。
(4)小车三轮着地,万向轮在前,完成赛道行驶一圈的时间约为52s。
六、心得体会
比赛过程中,遇到了大大小小不少的问题,但经过三个人的共同努力,最终排除了障碍,让我们不仅深刻体会到实际动手与理论上的巨大差异,并不是纸上能计算得出结果,现实就一定能实现的,其中总有许许多多不可预知的问题在等着我们,更让我们明白,身为一名电子专业的学生,除了要有过硬的专业知识基础,更应该要有持之以恒的毅力和耐心。
直至最后做出成品,让我们吸取了很多的经验与教训:
(1)良好的焊工是成功的开始。
一开始制作电机驱动系统的时候,就是由于虚焊和的原因,导致了电路的不稳定,产生不了理想的电压,以致马达扭力不足无法行驶,经过细心的排查,才发现了问题所在。
(2)持之以恒的毅力与耐心是成功的关键。
调试期间,曾多次出现小车寻不到黑线而偏离赛道的情况,几次反复的检查都找不到原因,直至最后通过回归原理图,才发现可调电阻精度不够,无法调到理想状态,才更换了精调电阻,找到临界点,才解决了问题。
(注:
程序与原理图详见附录)
参考文献
[1]童诗白,华程英.模拟电子技术基础(第四版)[M].北京:
高等教育出版社,2009.
[2]阎石.数字电子技术基础(第五版)[M].北京:
高等教育出版社,2009.
[3]黄智伟,王彦,陈文光等.全国大学生电子设计竞赛训练教程[M].北京:
电子工业出版社,2007.
附录
1、电路原理图
图2-1电机驱动电路图
图2-2黑线检测电路图
图2-1最小系统电路图
图2-2稳压系统电路图
2-3陀螺仪传感器原理图
2-4加速度传感器原理图
2、程序:
#include
unsignedchartimer1,you,zuo;
unsignedint
Adianji=55,Bdianji=60,q=1,w=1;
sbitENA=P0^0;
sbitIN1=P0^1;
sbitIN2=P0^2;
sbitENB=P0^3;
sbitIN3=P0^4;
sbitIN4=P0^5;
sbitzuo1=P3^2;
sbitzuo2=P2^1;
sbityou2=P2^2;
sbityou1=P3^3;
voidsystem_Ini()
{
TMOD|=0x11;
TH1=0xfe;
TL1=0x33;
TR1=1;
IT0=1;
IT1=1;
IE=0x8f;
}
voidzuojishu()interrupt0
{
EX0=0;
zuo++;
EX0=1;
}
voidyoujishu()interrupt2
{
EX1=0;
you++;
EX1=1;
}
voiddelay(unsignedintz)//延时函数
{
unsignedintx,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
main()
{
unsignedintz;
delay(3000);
system_Ini();
while
(1)
{
while(zuo2||you2)
{
if(q)
{
q=0;
EX0=1;
EX1=1;
delay(60);
you=0;
zuo=0;
}
if(!
zuo2)
{
IN3=0;
IN4=0;
}
elseif(!
you2)
{
IN1=0;
IN2=0;
}
else
{
IN1=0;
IN2=1;
IN3=0;
IN4=1;
}
if(you==1&&zuo==1&&w)
{
Adianji=35;
Bdianji=40;
}
if(you==2&&zuo==2&&w)
{
Adianji=75;
Bdianji=80;
}
if(you==3&&zuo==3&&w)
{
Adianji=55;
Bdianji=60;
w=0;
}
while(you==0&&zuo==1&&!
w&&z)
{
if(you2)
{
IN3=0;
IN4=0;
}
elseif(!
zuo)
{
IN1=0;
IN2=0;
}
else
{
IN1=0;
IN2=1;
IN3=0;
IN4=1;
}
z--;
}
while(you==1&&zuo==1&&!
w&&z<5000)
{
if(you2)
{
IN3=0;
IN4=0;
}
elseif(!
zuo)
{
IN1=0;
IN2=0;
}
else
{
IN1=0;
IN2=1;
IN3=0;
IN4=1;
}
z++;
}
if(you==2&&zuo==2&&!
w)
{
zuo=0;
you=0;
w=1;
}
}
while(!
zuo2&&!
you2)
{
EX0=0;
EX1=0;
if(zuo1)
{
IN1=0;
IN2=0;
}
elseif(you1)
{
IN3=0;
IN4=0;
}
else
{
IN1=0;
IN2=1;
IN3=0;
IN4=1;
}
w=0;
z=100;
if(!
q)
{
q=1;
EX0=0;
EX1=0;
}
}
}
}
/*********************************/
[t1(0.5ms)中断]中断中做PWM输出
------------1000/(0.02ms*250)=200Hz
***********************************/
voidT1zd(void)interrupt3//3为定时器1的中断号1定时器0的中断号0外部中断12外部中断24串口中断
{
TH1=0xfe;//11.0592
TL1=0x33;
timer1++;
if(timer1>100)timer1=0;
if(timer1 ENA=0; else ENA=1; if(timer1 ENB=0; else ENB=1; }
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 寻迹加 减速 小车