基于52单片机的智能小车的设计与制作
扫描二维码
随时随地手机看文章
引言:
随着电子技术、计算机技术和制造技术的飞速发展,消费产品呈现光、机、电一体化、智能化、小型化的趋势。各种智能化小车在市场玩具中占一个很大的比例。传统玩具的市场比重正在逐步缩水,高科技含量的电子玩具蒸蒸日上,日益成为电子玩具行业的发展主流。智能控制与传统控制有机的结合起来,取长补短,提高整体优势,更好地满足人们的需求。智能技术必将迎来它的发展新时代,因此,我们设计了这款智能小车。
1、机械部分总方案
在小车的机械要求保证预定的功能的前提下,我们还考虑到小车的经济、可靠、外形美观,性能好、富有时代特点。
转向机构与驱动系统的设计是至关重要的。为了保证小车转向时精确、灵敏、可靠性高且在转向时小车前轮纯滚动而无滑动,利用阿克曼原理及解析算法,设计出等腰梯形的双摇杆机构,小车的完美转向变为现实。
1.1、机械控制原理
在以单片机为核心的控制下,直流减速双电机驱动小车后轮,舵机通过等腰梯形双摇杆机构控制小车转向。
如图一所示:
图一:机械控制原理图
1.2、阿克曼原理:
如图二所示:
图二:阿克曼原理示意图
转弯时因轮距与轴距的关系,两前轮转角不同,内侧轮转向角比外侧转向角大,要使车辆转向顺利,车轮在地面纯滚动而不产生滑移,必须使所有车轮都绕同一瞬时转动中心滚动,两前轮转轴延长线与后轮轮轴延长线交与一点,这是阿克曼原理。此时,转向的内外轮转角关系为 :
ctgβ-ctgα=M/L
由解析法计算等腰梯形双摇杆机构连杆、连架杆长度:
已知连架杆AB的三个位置与连架杆CD的三个位置相对应,即三组对应位置为
,用解析法设计该四杆机构。
建立直角坐标系,如图所示,和分别为AB和CD的初始角,各杆长度分别用矢量和表示。将各矢量分别在轴和轴投影,得到投影方程
在上述方程中消去并整理,可得与之间的函数关系
在上式中令:
通过化简可得到:
将两连架杆对应的参数分别代入到方程得到,再根据其他条件选定机架长度,据此,可求出其余杆的长度
有了小车的驱动结构和转向结构,将小车其他零件装配好,可得到小车的装配图,如图三:
图三:小车整体装配图
2、电路部分总体方案
智能小车采用52单片机作为控制器,通过控制电路控制舵机转向和直流减速电机的转速、转动方向,使小车能够走直线和转弯。运用集成的红外对管GP2A25来巡线,安装在车子前方,并排安装三个,采集路面信号反馈给单片机,再由单片机控制电机的转动和方向的调整,从而达到巡线的效果。整个小车还采用金属传感器来识别小车巡线上的金属。
整个小车的结构图如图四所示:
图四:电路部分总方案图
下面分别讨论以上五个模块。
2.1、单片机最小系统
单片机要能够工作,必须加上晶振和复位电路,如果用到P0口的话还得给其加上上拉电阻,保证通电后P0为高电平。另外还得有给单片机烧写程序的下载器,这个老师已给。单片机是此电路的核心部分。设计采用的52单片机,其工作电压为5V(20引脚接5V,40引脚接地)。单片机根据程序输出逻辑电压从而完成控制作用。本设计使用单片机的P0.5到P0.7引脚来作为红外巡线的反馈控制引脚。P0.4为金属传感器的控制端口,只可惜时间上不允许我们把金属探测的功能做出来。P2.0到P2.3,为直流减速电机的控制线接口,能控制左右电机的正转、反转和停转;P2.4和P2.5为电机的使能端接口,分别控制左右电机的转速。P2.6为舵机的控制线接口,通过控制占空比来控制舵机的转向及转角大小。电路图如图五:
图五:单片机最小系统
2.2、电源模块
首先单片机用到的是5V的数字电,而电机驱动要用到L298的芯片,这种芯片用到12V的模拟电压,驱动舵机用到的又是5V的模拟电压。这就用到了三种电压。我手上有一块12V的电池,能够供给L298作为电机驱动的电源。然后我选择L7805来得到5V的模拟电压。最后供给单片机的也是此电压,然后把数字地和模拟地共地,从而得到了整个智能小车的总体供电系统。但是由于数字电和模拟电共在一起,干扰很大,系统的效果并不是很好。电路图如图六:
图六:电源模块电路图
2.3、直流电机驱动模块
电机驱动我们选择芯片L298,当然在单片机和L298之间我们加了光耦,用来隔离数字电路和模拟电路。设计采用的光耦是TLP521-4,它主要由发光二极管和光敏三极组成。其工作原理如下:当光耦的输入端(如IN1)接收到高电压时,发光二极管没有导通不发光,光敏三极管呈高阻态(可以认为其为断路),此时输出端(如OUT1)输出高电压;当光耦的输入端接收到低电压时,发光二极管导通发光,光敏三极管导通呈低阻态(可以认为其短路),此时输出端输出低电压。由此可以看出通过光耦可以顺利地将数字电路的逻辑电压信号转换到模拟电路中。而L298是双H高电压大电流功率集成电路.直接采用11L逻辑电平控制.可以驱动继电器、直流电动机、步迸电动机等电感性负载。在此电路中L298连接保护电路根据单片机提供的逻辑电压对电机进行驱动。具体驱动方式如下:当使能端为高电平时。输人端1N1(IN3)为高电平信号,IN2(IN4)为低电平信号时,电机正转;输人端INl(IN3)为低电平信号,IN2(IN4)为高电平信号时,电机反转;INl(IN3)与IN2(IN4)相同时,电机快速停止。当使能端为低电平时.电动机停止转动。电机驱动采用的是PWM(脉宽调制)的方式。这是单片机上常用的模拟量输出方法,通过外接转换电路,可以将占空比不同的脉冲转换成不同的电压,以驱动直流电机转动从而得到不同的转速。PWM波的占空比越大,电机转动速度越快,当占空比达到100%时,速度达到最大。电路图如图七所示。
图七:电机驱动电路和光耦隔离电路图
2.4、舵机驱动
舵机驱动我们选择的是单片机的P2.6端口,在接到舵机之前我们也用了光耦来隔离数字电路和模拟电路,如图七所示。而舵机的连接电路也很简单,仅仅只有三根线:红线接5V电压,黑线接地,白线为信号控制线,接入单片机即可。舵机的内部有一个基准电路,产生周期为20ms,宽度为1.5ms的基准信号,将获得的直流偏置电压与电位器的电压比较,获得电压差输出。最后,电压差的正负输出到电机驱动芯片决定电机的正反转。当电机转速一定时,通过级联减速齿轮带动电位器旋转,使得电压差为0,电机停止转动。接口连接图如图八所示。
2.5、红外探测电路和金属传感器电路
红外探测采用的是GP2A25集成红外对管。其工作原理是当其检测到黑线,即发射管发射的信号被黑线吸收而不能接收时单片机的端口得到一个高电平,否则为低电平。金属传感器的原理和红外对管的原理相差无几。接口连接图如图八所示。
图八:舵机、红外以及金属探测器接口电路
3、程序部分
我所设计的三个红外对管探测地面的算法是:首先中间检测到黑线,则车直行,这时当黑线偏离时,左右的红外对管都有可能检测到。到检测到就向相应方向转。这时黑线必将到达中间的红外对管下面,车又直行。以下(图九)为程序流程图。
图九:程序流程图
程序有很多都是老师提供,只有红外巡线的程序是我自己编写,故我将此段程序写于附录之中。
4、调试部分
当电路板焊接好以后,首先是在不通电的情况下进行测试,看有无短路断路问题存在。还好,我此次焊接的电路板并没有这种问题。下一步就是通电测试了。主要是看单片机有没有起振,有没有开始工作,各管脚的电压值等等啊。还好,一切正常。第三步就是烧写程序以后的程序测试了。这也是耗费我最多时间的地方。在测试中,我先是发现自己的电路数字电路和模拟电路的相互干扰特别严重,舵机在工作的时候会很颤。于是我把电路分离开,重新测试。这时在测试的过程中我先后发现了其中一个直流电机存在问题,舵机也坏了。我又更换它们再次测试。
在整个测试过程中,我收获颇丰。以前没有调试过舵机,这次终于在自己的努力和老师的不吝赐教下学会了如何调试舵机。还有就是对整个电路系统的把握上也得到了很大的提高。
5、总结
看到小车比赛的视频或是现场的比赛,勾起了儿时的美好回忆,兴起了自己动手制作智能巡迹小车的念头。曾经还认为小车的硬件部分应该是比较简单的,通过自己的实践才明白,从小车的整体构思设计到每个零件的设计和加工,都蕴含了机械设计的各项原则,满足性能要求,经济、可靠、外形美观的诸多限制。
在小车转向方面,我们认真研究了阿克曼原理并查阅了相关的资料最终采用解析法确定了平面等腰梯形四双摇杆机构,实现了小车转向时灵敏、准确,纯滚动无滑动的完美结构。
电路方面,我们的收获也很大。不仅锻炼了自己在电路板焊接、测试方面的能力,包括了检查错误,改正错误的能力;还学习了单片机的有关知识,这其中包括了直流电机、舵机、红外巡线等方面的知识。
附录:
1、 总电路图
2、 机械结构总图