您的当前位置:首页正文

H桥电路原理图

2023-06-23 来源:要发发教育
H桥电路原理及直流电机驱动编程

标签:

h桥电路原理

分类: MCS-51单片机

上图中所示为一个典型的直流电机控制电路。电路得名于“H桥驱动电路”是因为它的形状酷似字母H.4个三极管组成H的4条垂直腿,而电机就是H中的横杠(注意:图只是示意图,而不是完整的电路图,其中三极管的驱动电路没有画出来)。

H桥式电机驱动电路包括4个三极管和一个电机。要使电机运转,必须导通对角线上的一对三极管。根据不同三极管对的导通情况,电流可能会从左至右或从右至左流过电机,从而控制电机的转向。

要使电机运转,必须使对角线上的一对三极管导通。例如,如下图所示,当Q1管和Q4管导通时,电流就从电源正极经Q1从左至右穿过电机,然后再经 Q4回到电源负极。按图中电流箭头所示,该流向的电流将驱动电机顺时针转动.当三极管Q1和Q4导通时,电流将从左至右流过电机,从而驱动电机按特定方向转动(电机周围的箭头指示为顺时针方向)。

上图所示为另一对三极管Q2和Q3导通的情况,电流将从右至左流过电机。当三极管Q2和Q3导通时,电流将从右至左流过电机,从而驱动电机沿另一方向转动(电机周围的箭头表示为逆时针方向).

典型的H桥驱动电路如下:

PWM1为1,PWM2为1时,Q1和Q2导通,节点1和2都是低电平,Q15和Q16导通,电机不工作

PWM1为0,PWM2为0时,Q1和Q2不导通,节点1和2都是高电平,Q13和Q14导通,电机不工作

PWM1为1,PWM2为0时,Q1导通而Q2不导通,节点1是低电平而2是高电平,Q14和Q15导通,电机逆时针旋转

PWM1为0,PWM2为1时,Q1不导通而Q2导通,节点1是高电平而2是低电平,Q13和Q16导通,电机顺时针旋转

C语言代码:

功能:能是电机正转,逆转,停止。 #includesbit Key_UP=P3^2; //正转按键 sbit Key_DOWN=P3^3; //反转按键 sbit Key_STOP=P3^4; //停止按键

sbit ZZ=P1^0; //控制端,用单片机的P1.0口 sbit FZ=P1^1; //控制端,用单片机的P1。1口

sbit FMQ=P3^6; uchar KeyV; uchar TempKeyV;

void delaynms(uint aa) { uchar bb; while(aa—-) {

for(bb=0;bb〈115;bb++){ ; } } }

void delay500us(void) { int j;

for(j=0;j〈57;j++) { ; } }

void beep(void) { uchar t;

基准延时程序 //1ms for(t=0;t〈100;t++) {

delay500us(); FMQ=!FMQ; //产生脉冲 }

FMQ=1; //关闭蜂鸣器 delaynms(300); }

void main(void) { ZZ=1;

FZ=1; //使直流电机停止运转 while(1) {

if(!Key_UP) KeyV=1; if(!Key_DOWN) KeyV=2; if(!Key_STOP) KeyV=3; if(KeyV!=0) {

delaynms(10); if(!Key_UP) TempKeyV=1; if(!Key_DOWN) TempKeyV=2;

if(!Key_STOP) TempKeyV=3;

if(KeyV==TempKeyV) {

if(KeyV==1) { beep(); ZZ=1; FZ=0; }

if(KeyV==2) { beep(); ZZ=0; FZ=1; }

if(KeyV==3) { beep(); ZZ=1; FZ=1; } } } KeyV=0; TempKeyV=0; } }

因篇幅问题不能全部显示,请点此查看更多更全内容