本文主要是介绍51单片机直流电机控制技术,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、认识直流电机结构与工作原理
永磁式换向器直流电机,是应用很广泛的一种,永磁式换向器直流电机是由定子(主磁极)、转子(绕组线圈)、换向片(又称整流子)、电刷等组成
直流电压加在电刷上,经换向片加到转子线圈,使电枢导体有电流流过,由于电机内部有定子磁场存在,所以电枢导体将受到电磁力f的作用(左手定则),电枢导体产生的电磁力作用于转子,使转子以n(转/分)旋转,以便拖动机械负载。
二、直流电机速度控制
调节PWM技术来控制直流电机电枢的电压
所谓PWM控制技术,就是利用半导体器件的导通与关断,把直流电压变成电压脉冲序列,通过控制电压脉冲宽度或周期以达到变压的目的。
三、直流电机方向控制
直流电机的转子转动方向,可由直流电机上所加电压的极性来控制,一般是使用桥式电路来控制直流电机的转动方向。本例程是采用的是L9110S驱动器,这款芯片是为控制和驱动电机设计的两通道推挽式功率放大专用集成电路器件
序号 | 引脚名称 | 功能 |
1 | OA | A路输出管脚 |
2 | VCC | 电源电压 |
3 | VCC | 电源电压 |
4 | OB | B路输出管脚 |
5 | GND | 地线 |
6 | IA | A路输入管脚 |
7 | IB | B路输入管脚 |
8 | GND | 接地 |
IA | IB | OA | OB | 运行状态 |
1 | 0 | 1 | 0 | 正转 |
0 | 1 | 0 | 1 | 反转 |
1 | 1 | Z | Z | 高阻 |
0 | 0 | 0 | 0 | 刹车 |
任务:用四个按键实现电机的启停,方向,加速和减速
仿真:
代码实现:
#include <reg51.h>sbit k1=P1^0;
sbit k2=P1^1;
sbit k3=P1^2;
sbit k4=P1^3;sbit motor1=P3^0;
sbit motor2=P3^1;int n=4;
/****************************/
void delay1(int i)
{int k, j;for(k = 0; k < i; k++)for(j = 0; j < 200; j++);
}/**************************/
void main()
{ while(1){if(k1==1)//电机刹车{motor1=0;motor2=0;}else{if(k3==0)//电机加速{while(k3==0);if(n<26)n+=2;}if(k4==0)//电机减速{while(k4==0);if(n>4)n-=2;}if(k2==0)//电机正转,通过delay1来控制脉宽{motor1=1;delay1(n);motor1=0;delay1(28-n);}else //电机反转,通过delay1来控制脉宽{motor2=1;delay1(n);motor2=0;delay1(28-n); }}}
}
这篇关于51单片机直流电机控制技术的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!