Arduino驱动L298N控制直流电机的正反转和调速

一、前言

本模块使用ST公司的L298N作为主驱动芯片,具有驱动能力强,发热量低,抗干扰能力强的特点。LN298N可以用来驱动直流电机和步进电机、继电器线圈等感性负载;采用标准逻辑电平信号控制;具有两个使能控制端,在不受输入信号影响下允许或禁止器件工作有一个逻辑电源输入端,使内部逻辑电平在低电压下工作。模块使用大容量滤波电容,续流保护二极管,可以提高可靠性。
在这里插入图片描述

二、产品参数

1.驱动芯片:L298N 双 H 桥直流电机驱动芯片
2.驱动部分端子供电范围 Vs:+5V~+35V ; 如需要板内取电,则供电范围 Vs:+7V~+35V
3.驱动电流 :2A
4.逻辑部分端子供电范围 Vss:+5V~+7V(可板内取电+5V)
5.逻辑部分工作电流范围:0~36mA
6.控制信号输入电压范围:
低电平:-0.3V≤Vin≤1.5V
高电平:2.3V≤Vin≤Vss
7.使能信号输入电压范围:
低电平:-0.3≤Vin≤1.5V(控制信号无效)
高电平:2.3V≤Vin≤Vss(控制信号有效)
8.最大功耗:25W(温度 T=75℃时)
9.存储温度:-20℃~+135℃

三、驱动直流电机

1.控制直流电机正反转的状态图如下:

在这里插入图片描述
2.对直流电机进行 PWM 调速,设置 IN1 和 IN2信号分别为0,1,电机的转动方向为反转,然后对使能端输出 PWM 脉冲,即实现直流电机的速度从小到大调速。
3.利用电位器读取值实现脉宽调制调速。

三、接线图

ArduinoL298N直流电机电位器模块电源
9ENA---
8IN1---
5V--V-
GNDGND-GNDGND
A0--S-
-Out1任意引脚--
-Out2任意引脚--
-+12V--9V

四、程序

 #define ENA 9
#define IN1 8
#define IN2 7
void setup()
{
pinMode(ENA,OUTPUT);
pinMode(IN1,OUTPUT);
pinMode(IN2,OUTPUT);
Serial.begin(9600);
}
void loop()
{
//Pos_NegRotation();//控制电机正反转
//PWMcontrol();//脉宽调制速度从小到大
Potentiometer();//利用电位器读取实现脉宽调制调速
}
void Pos_NegRotation()//控制电机正反转
{
analogWrite(ENA,60);
digitalWrite(IN1,HIGH);//反转2秒
digitalWrite(IN2,LOW);
delay(2000);
digitalWrite(IN1,HIGH);//刹车停2秒
digitalWrite(IN2,HIGH);
delay(2000);
digitalWrite(IN1,LOW);//正转2秒
digitalWrite(IN2,HIGH);
delay(2000);
digitalWrite(IN1,LOW);//刹车2秒
digitalWrite(IN2,LOW);
delay(2000);
}
void PWMcontrol()//脉宽调制速度从小到大
{
int i;
digitalWrite(IN1,LOW);//反转
digitalWrite(IN2,HIGH);
for(i=0;i<=255;i++)
{
 Serial.print("Value_i=");
 Serial.println(i);
 analogWrite(ENA,i);
 delay(20);
 }
digitalWrite(IN1,HIGH);//刹车停2秒
digitalWrite(IN2,HIGH);
delay(2000); 
}
void Potentiometer()//利用电位器读取值实现脉宽调制调速
{
int pValue=analogRead(A0);
//读取电位器的数值:0-1023
int PWMout=map(pValue,0,1023,0,255);
//把0-1023的数值映射 到0-255 
Serial.print("PWMot=");//串口打印数值
Serial.println(PWMout);
analogWrite(ENA,PWMout);
//把获得的0-255数值写入使能口=D9
digitalWrite(IN1,HIGH);//反转1秒
digitalWrite(IN2,LOW);
delay(1000);
}

五、实验结果

电机正反转:
在这里插入图片描述

脉宽调速串口显示:
在这里插入图片描述
电位器调速:

在这里插入图片描述

在这里插入图片描述

总结

注意:Arduino 、L298N、电位器和电源要共地。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值