简介
该模块具有极小的尺寸,仅5.5cm×5.5cm。支持电压范围6.5-40V,具有欠压保护功能。最大负载电流12A(不加散热),15A(需加简易散热),20A(需加厚型大散热器);瞬间峰值电流可达110A。可三线控制调速、正反转及刹车。支持满PWM,PWM有效范围0.1%~100.0%。支持5V电源输出,可直接为单片机提供5V电源。接口具有ESD防护功能。
配合Arduino源码,可以轻松实现电机控制。创客时代,我们能为您带来更多!
产品参数
- 工作电压(VM):DC 12 ~ 36 V
- 支持电压范围: 6.5 ~ 40V
- 控制信号高电平(Vhi):DC2.0 ~ 5.5V(兼容3.3V和5V TTL电平)
- 控制信号低电平(Vli):DC0 ~ 0.8V
- 最大持续工作电流:12A(无散热)、15A(简易散热)、20A(厚型大散热器)
- 峰值电流:110A
- 支持PWM调速方式
- PWM最小有效脉宽:200ns
- 5V电压最大输出电流:500mA
- 工作温度:-25 ~ 85 °C
- 尺寸:55mm * 55mm
- 固定孔:M3
- 重量:42g
引脚说明
标号 | 名称 | 功能描述 |
---|---|---|
1 | 5VO | 5V电压输出口,用于给单片机供电 |
2 | PWM | 调速控制端 |
3 | IN1 | 电机正反转控制端注1 |
4 | IN2 | 电机正反转控制端 |
5 | COM | 信号地 |
6 | OUT2 | 电机电源线 |
7 | OUT1 | 电机电源线 |
8 | 9-36V | 电源输入正 |
9 | PGND | 电源输入地 |
控制方式
IN1和IN2为电机正反转、制动(或称刹车)控制信号。PWM为速度调节。控制逻辑下表。其中0为低电平、1为高平、×为任意电平,悬空时为低电平。
IN1 | IN2 | PWM | OUT1、OUT2电机输出 |
---|---|---|---|
0 | 0 | x | 刹车 |
1 | 1 | x | 悬空 |
1 | 0 | 1 | 全速正转 |
0 | 1 | 1 | 全速反转 |
1 | 0 | PWM | 正转调速 |
0 | 1 | PWM | 反转调速 |
⚠**注1:**电机正反转控制端
在进行正反转切换的时候最好先刹车0.1S以上再反转,否则有可能损坏驱动器。在PWM为100%时,如果要切换电机方向,必须先刹车0.1S以上再给反转信号。
使用教程
准备
- 硬件
- UNO x1
- 15A大功率直流电机驱动 x1
- 连接线 若干
- 软件
- Arduino IDE 版本1.6.9 点击下载Arduino IDE
接线图
⚠
- 使用开关电源芯片为模块内部电路提供5V电源,建议在电源处串联20A的保险丝。
- 5VO为输出端口,并非逻辑输入电源口!
安装说明
⚠此驱动器在额定电流12A时可以不做散热,额定电流12A~15A需做简易散热,15A~20A需做厚型散热.
驱动模块尺寸如图所示。长宽为5.5cm×5.5cm,高为2.0cm。安装孔直径为3mm,建议使用M3的螺丝进行固定。安装时请注意别让背面元件短路,建议使用1mm厚的导热硅胶垫贴于模块背面,再使用5mm高的铜柱固定模块。
样例代码
/*
@file Motor driver DRI0042_Test.ino
@brief DRI0042_Test.ino Motor control program
control motor positive inversion
@author bernie.chen@dfrobot.com
@version V1.0
@date 2016-8-10
*/
const int IN1 = 5;
const int IN2 = 4;
const int PWM = 6;
void setup() {
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(PWM, OUTPUT);
}
void loop() {
Motor_Brake();
delay(100);
Motor_Forward(200);//电机正转,PWM调速
delay(1000);
Motor_Brake();
delay(100);
Motor_Backward(200);//电机反转,PWM调速
delay(1000);
}
void Motor_Forward(int Speed) //正向模式,Speed值越大,电机转动越快
{
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
analogWrite(PWM, Speed);
}
void Motor_Backward(int Speed) //反向模式,Speed值越大,电机转动越快
{
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
analogWrite(PWM, Speed);
}
void Motor_Brake()
{
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
}
常见问题
还没有客户对此产品有任何问题,欢迎通过qq或者论坛联系我们!
更多问题及有趣的应用,可以 访问论坛 进行查阅或发帖!