格物致知、诚意正心
我们可以通过简单地控制直流电动机的输入电压来控制直流电动机的速度,最常用的方法是使用PWM信号。
PWM或脉冲宽度调制是一种技术,它使我们能够通过快速打开和关闭电源来调整流向电子设备的电压平均值。平均电压取决于占空比,或者信号开启的时间量与信号在单个时间段内关闭的时间量有关。
因此,根据电机的大小,我们可以简单地将Arduino PWM输出连接到晶体管的基极或MOSFET的栅极,并通过控制PWM输出来控制电机的速度。低功率Arduino PWM信号在MOSFET的栅极上打开和关闭,通过该MOSFET驱动高功率电机。
另一方面,为了控制旋转方向,我们只需要反转流过电动机的电流的方向即可,最常见的方法是使用H桥。
H桥电路包含四个开关元件(晶体管或MOSFET),并且位于中心的电机形成类似H的配置。通过同时激活两个特定的开关,我们可以改变电流的方向,从而改变电动机的旋转方向。因此,如果我们结合使用PWM和H桥这两种方法,就可以完全控制直流电动机。
然而真正的驱动板中,这四个开关是用四个三极管所代替的
电机驱动版有很多种,而我们最常见的还是使用L9110s作为驱动芯片的电机驱动板
此处我们使用MG生产的MG电机驱动板作为例子讲解
控制电机向前1s,停止1s、向后1s、停止1s。
将电机运动语句打包成函数,方便重复调用
/* *Arduino motor control by Hardi Huang 2021.4.5 *Description: motor control state: forward, backward and stop. */ void setup() { pinMode(4,OUTPUT); pinMode(5,OUTPUT); } void loop() { forward(); delay(1000); stop(); delay(1000); backward(); delay(1000); stop(); delay(1000); } void forward(){ digitalWrite(4,HIGH); digitalWrite(5,LOW); } void backward(){ digitalWrite(4,LOW); digitalWrite(5,HIGH); } void stop(){ digitalWrite(4,LOW); digitalWrite(5,LOW); }
1、单片机能通过电机驱动板控制电机实现哪几种状态?
答案:正转、反转、停转、变速转
2、H桥电路中包含_____个三极管?
答案:4个
3、通过______信号,我们可以调节电机的转速?
答案:PWM信号
4、通过电机驱动板控制电机转动,至少需要几个I/O口?
答案:两个
5、请完成下方表格,要想实现右边的电机三种状态,两个I/O口的信号是怎样的?
答案:
您的邮箱地址不会被公开。 必填项已用 * 标注
评论 *
显示名称 *
邮箱 *
网站
在此浏览器中保存我的显示名称、邮箱地址和网站地址,以便下次评论时使用。