直流电机驱动模块

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
=
=15mA
图中的电容都是起滤波的作用,八个二极管都是当电机反转是起泄流的作用。
图E.3电机驱动电路图
图E.4电机驱动电路顶层PCB图
图E.5电机驱动电路顶层丝印图
图E.6电机驱动电路底层丝印图
注:图详见“直流电机调速1”
程序清单:
//本设计中采用的脉冲频率为25Hz,可得hlt+llt=100,
#include<reg52.h>
一.方案论证
由于使用的是永磁式直流电机,因此只能对电枢电压进行控制来实现电机转速和方向的控制,因此电机驱动模块要能方便的实现对输出电压的大小和极性控制。可以考虑的方案有:
方案一:采用继电器对电动机的开或关进行控制,通过开关的切换对小车的速度进行调整。这个方案的优点是电路比较简单,缺点是继电器的响应时间慢、机械结构易损坏、寿命较短可靠性不高。
基于上述理论分析,拟定方案三,为了防止电机驱动电路对控制模块的影响,采用光电耦合进行隔离。
二.电路原理分析
图E.1电机驱动电路(注:图见智能小车论文模块)
图E.2 L298内部结构图
由于系统有两个电机时使用PWM信号控制直流电机电枢电压有效值来改变电机速度和方向,所以需采用L298芯片来控制两个电机,引脚6,11用来PWM控制,将5,7和7,12分别接高低电平,仅用单片机的两个端口输出PWM控制6,11引脚就可以实现直行,转弯和后退,由于前轮的驱动能力较大,提高控制的可靠性,缩短导通时间;六个光耦器件起到隔离作用,将单片机发出的控制与电机驱动电路隔离(起来),防止干扰,在电机的两端并联一个104的小电容。滤去高频谐波信号。其工作原理如下:当P1^0和P1^1的信号输入为高电平和PWM电平时,L298的2和3引脚分别输出高低电平,电机正传,如果改变P1^0和P1^1信号,则L298的2和3引脚分别输出低高电平,电机反转。因此电路的有效值功率 其中α为PWM波的占空比,U为电机的供电电压,I为流过电机的电流,通过改变占空比就能方便的改变电机的驱动功率。若左边为点电平,右边为高电平,则电机反转。光耦的工作原理是:它的内部是一个二极管和一个光电三极管组成,当二极管通电导通是发出红外光,是光电三极管导通;二极管的导通一定的电流,所以电阻R的值不能过大,VCC=5V,选取R=330欧姆,
aen=1;
//bfwd=1;
//brwd=0;
//ben=1;
delayrun(hlt);//可以测试一下fwd=0;rwd=0;
aen=0;
//arwd=0;
//aen=0;
//ben=0;
delayrun(llt);
}
else//反转
{
afwd=0;
arwd=1;
aen=1;
//bfwd=0;
#ifndef _DEFINE_
#define _DEFINE_
#define uchar unsigned char
#define uint unsigned int
#endif
//电机IO说明
sbit fwd=P1^0;
sbit rwd=PBiblioteka Baidu^1;
sbit en=P1^2;
bit turnflag;//正反转标志
uchar hlt,llt;
void delayrun(unsigned char dlylevel)//约产生DLYLEVEL*400us的延时
{
int i=50*dlylevel;
while(--i);
}
void motorrun()
{
if(turnflag==1)//正转
{
afwd=1;
arwd=0;
//brwd=1;
//ben=1;
delayrun(hlt);
aen=0;
//arwd=0;
//aen=0;
//ben=0;
delayrun(llt);
}
}
方案二:采用功率管组成H桥型电机驱动电路,并利用PWM波来实现对输出电压的有效值大小和极性进行控制。这种调速方式具有调速特性优良、调整平滑、调速范围广、过载能力大,能承受频繁的负载冲击,能耗小等优点,还可以实现频繁的无级快速启动和反转等优点。
方案三:采用L298专用芯片进行驱动。L298芯片的工作原理和方案二一致,但是其工作时较方案二稳定,且编程较为简单,便于调试。另外L298内部集成了两个H桥,能同时驱动两个电机,硬件实现较方案二简单。
相关文档
最新文档