|
原理图如下:
74HC244是三态门八路缓冲/线路驱动器,在这里主要起两个作用:一是驱动MOS管;二是防止上下桥同时导通短路。
MOS管采用N和P型增加型MOS管,上桥是AP9565(P-MOS)*2,下桥是AOU454(N-MOS)*2,这两颗MOS都是公司现有的,虽然不是对管,但参数还是满足要求了。
AP9565:VDS=-40V VGS=+/-20V ID=-17A
AOU454:VDS=40V VGS=+/-20V ID=12A
这个电路工作电压是3.3V,最大电流不超过1A(包括堵转电流),所以这两颗管足足有余了。
工作原理:P-MOS低电平导通,N-MOS高电平导通,控制信号只需2个信号(单片机控制)。真值表如图,当控制信号都为1或都为0时,MOS不构成回路,电机不转。当控制信号为1,0(或0,1)时,构成回路,电机得电正转(或反转)。
这个电路已经实际测试通过了,具体程序参考后面。
经验总结:
1.电源电流要大于1A,如果采用降压型芯片供电,要注意散热问题。
2.74HC244可以采用同类型功能的芯片,不必雷同。
3.MOS管也可以采用其它型号,ID为2A以上最好。(看电机电流而定)
4.4颗电阻是上拉电阻,给MOS提供偏置电压。
5.MOS管不提倡用晶体管代替,因为晶体管电流小,压降大,相对来说功耗也变大了,而MOS管内阻小,电流大,压降小,从而功耗低。这个电路测试时用5V供电,满载电流约1A,MOS管基本没热。
6.做实验的时候一定在电路中串一个30R/1W的电阻,防止短路,起到限流作用,起码不会爆管子。等调试确定没问题后,再拿掉限流电阻。如果有条件的话,也可以在电路中串一个数字电流表,实时观察电流变化。
下面是电机调速程序,基本原理是采用PWM脉宽调制,即占空比。Vout=k*VCC,k是占空比,比如k=30%,VCC=5V,那么Vout=30%*5V=1.5V,不同的占空比,可以得到不同的电压,而电压大小与转速成正比,所以PWM起到了调速作用。
- #include<reg52.h>
- #define uchar unsigned char
- uchar i,k;
- sbit pwm0=P0^0;
- sbit pwm1=P0^1;
- sbit led=P2^7;
- void main()
- {
- TMOD=0x01;//定时器方式一
- TH0=(65536-100)/256;//100us
- TL0=(65536-100)%256;
- ET0=1;
- EA=1;
- TR0=1;
- pwm1=1;
- pwm0=0;
- while(1)
- {
- }
- }
- void t0() interrupt 1
- {
- TH0=(65536-100)/256;
- TL0=(65536-100)%256;
- i++;k++;
- if(i==1)//占空比10%,
- {pwm0=1; led=1;}//100us时间到,停止
- if(k==10)//设定周期为1000us,停止时间为700us.
- {pwm0=0;led=0;k=0;i=0;}//1000us周期结束,电机启动,计数清零。
- }
复制代码
程序目的是让电机以10%的速度转动,周期是1000ms,改变i的值(1=<i<=10),即可改变转速。
如果与PC串口通信,则可以通过发送命令来调速。
具体程序我就不写了,给大家发挥吧。
完整原理图和程序下载:
直流电机正反转控制电路.rar
(50.44 KB, 下载次数: 119)
|
|