关于智能小车的各种设计方法.docx
《关于智能小车的各种设计方法.docx》由会员分享,可在线阅读,更多相关《关于智能小车的各种设计方法.docx(12页珍藏版)》请在冰点文库上搜索。
关于智能小车的各种设计方法
《关于智能小车的各种设计方法》
编辑人:
杨正勇学校:
长沙民政职业技术学院协会:
电子协会
大学生在校就应该做一些有意义的事情,不能整天整天呆在寝室里打游戏,下面关于学院设计智能小车的比赛,我初步的提供部分资料供学弟学妹们学习与参考。
智能小车分三种,分别是,遥控型,非遥控型(比如循迹)遥控与循迹智能切换型。
接下来,我就讲解一下吧。
1.遥控型,我们使用的315MHZ超再生模块来制作遥控,这种遥控的优点就是发射距离远。
抗干扰能力强(排除发射器与发射器之间的干扰)高中的物理学过,当两个波的频率一样时就会发生干涉。
导致控制失效。
而且这种遥控造价十分低,相比原始的模拟电路的遥控,不是一个档次。
这就是PT2262与2272组成一个遥控的发射与接收。
各引脚功能如下:
PT2262与2272组成遥控还分为暂存型(M)与锁存型(L)芯片上若标有M则为暂存型,反之为锁存型。
暂存型简单理解就是你要一直按着键,相应的功能才会被执行,锁存型只需要按下就触发了相应的功能。
即使你松开按键,相应的功能也会一直保持下去。
PT2262:
1~6脚为编址端,在这6脚你可以任意接高电平或低电平,那么排列组合后有6!
(6*5*4*3*2*1)/2*1种。
只要编码不一样,别人的遥控就无法控制你的接收机,但是会对你造成干扰。
使你遥控控制无效。
7~9,10~13脚,为编码端(也可以作为编码端)意思就是你要制作几路功能的遥控。
无键按下时,应该就下拉电阻使他置0,若有键按下时,内部会对你的按键进行判断然后再输出相应的数据(串行输出)。
9脚电源接地端。
14脚为发射使能端,低电平有效。
15~16脚为时钟发生输入端,接的电阻叫振荡电阻。
与内部的电容形成RC振荡。
接电阻后面有个匹配表
17脚为串行码输出端。
送至后面的声表面滤波器,进行滤波(不是315MHZ的波段滤除,提高抗干扰能力),滤波后,数据经过LC高频振荡载波发出。
18脚接电源正极。
注意:
二极管4148是起保护作用的防止编址端电压高于电源电压的。
编址开关另一头接搞电平。
图中用高频部分手工焊接无效一般市面把它制作成一个小小的模块供DIY者制作。
图的右边为超再生的发射模块。
左边为接受模块。
PT2272接收电路:
LC组成串联谐振后对空气中的电磁波选频,接收机选频之后,对信号进行放大后送入PT2272的14脚进行解码。
解码与你编码的一致时执行相应的指令,不一致时,无输出。
注意:
2272编码必须要与2262的一致,不然解码无效。
图中画黑线的部分也是高频部分,手工焊接无效。
制作与发射模块一样,使用超再生接受模块。
D1~D5是要执行的指令输出端,VT端(接受到有效的信号时就会亮)。
15~16接脚振荡电阻(至于多大有个匹配表)
振荡电阻匹配表
那么下面就教大家如何制作遥控。
利用超再生模块制作的发射模块
建议芯片工作电压为12V,那样发射距离到会几百米。
超再生构成的接收电路,芯片电压不得超过5V,这时把LED与电阻去掉就可以驱动芯片带动马达了。
下面给大家介绍几种驱动马达的方法!
此图片就是常用电机驱动芯片L298能提供2A驱动电流C4,C5,电容是起滤波作用,给芯片提供工作电压。
二极管尤为重要,我们知道,电机属于感性负载断电瞬间,会产生一个反向的逆电动势,这个电压很高会对芯片有伤害,所以加续流二极管,如电机B正转时两端电压上正下负,但是断电后电流不能突变,电压变成上负下正,这时这个反电动势会被D5和D2泄放掉,从而保护了芯片。
相反电机反转时,下正上负,掉电时变为上正下负,这时这个高电压被D1和D6迅速泄放掉,注意的是没掉电时所有二极管均是截止的,原因是,二极管的压塌有0.7伏。
这时将接收机的驱动电平加在这上面,便可以实现电机的正反转。
2另外一种驱动电机的方式叫做H电桥驱动,这种驱动方法一般应用小功率的电机场合使用,成本最低。
驱动原理如下:
VCC接电源,假设这时A来了驱动电压三极管C945导通,Q10导通,总压塌为0.3+0.3=0.6V反之,驱动电压加到B上,这时是Q8,Q9导通,电流与上相反,电机反转。
只要再做一个同样的电路即可实现控制两个电机的正反转了。
3,第三种驱动方法是本人自己设计的电机驱动方法,优点能驱动电流非常大,适合驱动大力矩电机,缺点就是需要两组电源,控制电路复杂。
继电器驱动
原理如下:
当车要向前时,继电器K1,K2吸和,这是电流经过电机与下面的两个大功率二极管,到第一个电源的地,反转时K3,K4吸合。
电流经过电机经过上面大功率二极管到第二个电源的地,本人设计时,去反转的电源为接收机提供工作电压,原因是倒退的电源相对少用。
转弯时,则对脚的继电器吸合就完成了或是K1.K2交替导通(坦克的转弯系统)。
控制系统
我的车是履带式的,所以控制电路前进时1有信号,两个三极管都导通。
两个继电器吸合。
转换时2或3导通一个就可以了。
图中二极管是用来隔离作用的。
标准的电路设计继电器的线圈两端还应该并联两个二极管,图中没画出来。
倒退时,另外焊一个这样的驱动电路,信号从1入就可以了。
下面介绍循迹的只能小车原理。
这是循迹小车的循迹模块的电路图,观察发现,电路构造是一样的,那么以第二个电路作为基元电路讲解。
跑道上是黑白道(黑在中间)。
R613,与R64分压加到比较器的同相输入端且U+比较器输出低电平。
RP62是精度调节电阻,建议使用精密可调电位器。
发光二极管发的光照到跑道上时,黑的部分反射光的能力大大减弱,那么是光敏电阻电阻急剧上升,使U+>U-,这时比较器输出高电平。
由于LM339内部是开路输出所以要加上R620上拉。
经过74LS14反向之后,灯灭。
此信号要加到单片机的I/O口上进行分析判断的。
单片机判断与分析后,便输出逻辑结果。
程序如下。
#include"reg52.h"
#defineuintunsignedint
voiddelay()
{uintm,n;
for(m=1;m<100;m++)
for(n=1;n<121;n++);
}
voiddelay1(uinta)
{uinti,j;
for(i=a;i>0;i--)
for(j=121;j>0;j--);
}
voidmain()
{
/*if(P1==0xe4)//黑底白色轨迹赛道程序
{
P1=0xff;P2=0xff;
while
(1)
{//P1=0xff;
switch(P1)
{case0xe4:
//前进,两灯灯
P2=0x55;break;
case0xe8:
//左转,右灯亮
P2=0x95;break;
case0xf0:
//左转,右灯亮
P2=0x95;break;
case0xe2:
//右转,左灯亮
P2=0x59;break;
case0xe1:
//右转,左灯亮
P2=0x59;break;
case0xff:
//全速前进
P2=0x55;break;
case0xe0:
//后退,两灯不亮
P2=0xee;break;
}
}
delay();
}*/
//if(P1==0xfb)//白底黑色轨迹赛道程序
{
P1=0xff;P2=0xff;
while
(1)
{
switch(P1)
{case0xfb:
P2=0x55;break;//前进,两灯灯
case0xf9:
P2=0x55;break;//前进,两灯灯
case0xf3:
P2=0x55;break;//前进,两灯灯
case0xf7:
P2=0x95;break;//左转,右灯亮
case0xef:
P2=0x95;break;//左转,右灯亮
case0xfd:
P2=0x59;break;//右转,左灯亮
case0xfe:
P2=0x59;break;//右转,左灯亮
case0xff:
{P2=0xee;delay1(60);};break;//后退,两灯不亮
case0xe0:
P2=0x55;break;//全速前进
delay1(60);
}
}
}
}
若:
你设计的爱车功能比较多,你需要输出比较多来控制时,这时我也设计一种方法拓展输出功能。
原理图如下:
使用138译码器,就可以实现3入,八出的功能口线拓展。
图中二极管的作用是有输入时就使G1为1,译码生效。
电阻的作用是使A,B,C上电时全部置0.配合二极管。
达成整个逻辑协议。
此电路是刚刚设计完的,也许还有地方设计部科学,还希望大家积极改进。
基本程序如下:
(根据你想要的逻辑状态你可以任意改程序的)#include//杨正勇
#defineuintunsignedint
#defineucharunsignedchar
voiddelay(uintb);
voidmain()
{
P1=0XFF;
switch(P1)
{case0xff:
P2=0xff;break;
case0xfe:
P2=0xfe;break;
case0xfd:
P2=0Xfd;break;
case0xfb:
P2=0Xfb;break;
case0xf7:
P2=0xf7;break;
case0xef:
P2=0xef;break;
case0xdf:
P2=0xdf;break;
case0xbf:
P2=0xbf;break;
case0x7f:
P2=0x7f;break;}
delay(10);}
voiddelay(uintb)
{ucharc,d;
for(d=0;d
for(c=0;c<114;c++);
}