L298n - Driver Pont H
L298n - Double pont H
Le module L298n est un driver double pont H, permettant de gérer 2 (ou 4) moteurs CC en même temps ou un moteur pas-à-pas seulement, à partir d'un microcontrôleur (Arduino, Raspberry Pi, Orange Pi, etc...)
Tension d'alimentation:
- Partie logique: 6 à 12 V DC
- Partie moteur: 4.8V à 35 V DC
- Sortie: 2 Ampères par canal
- Contrôle de la vitesse et du sens de rotation
- Plage de température: -25 à +130°C
- Dimensions: 55 x 60 x 30 mm
Les borniers moteurs:
- Moteur 1: OUT1 et OUT2
- Moteur 2: OUT3 et OUT4
(Le sens de polarité permet de faire tourner les moteurs dans un sens ou dans l'autre sens)
Le bornier alimentation:
- A gauche: Entrée alimentation (+35v max)
- Au centre: GND la masse
- A droite: Sortie +5v ou Entrée +5v
Le cavalier régulateur: Si le cavalier régulateur est en place, l’alimentation ne doit pas dépasser +12v
Les broches:
- ENA - Active le moteur 1
- IN1 - Commande le sens de rotation du moteur 1
- IN2 - Commande le sens de rotation du moteur 1
- IN3 - Commande le sens de rotation du moteur 2
- IN4 - Commande le sens de rotation du moteur 2
- ENB - Active le moteur 2
Les pins ENA et ENB, activent les moteurs 1 et 2 lorsque l'on applique une tension positive +5v
(on peut moduler la vitesse des moteurs en faisant varier une tension entre 0v et +5v avec le PWM de l'Arduino - Voir rubrique PWM)
Les pins IN1, IN2, IN3 et IN4 permettent de faire tourner les moteurs dans un sens ou un autre, en appliquant 1 ou 0 (+5v ou 0v) via l'Arduino
Moteur 1 | Moteur 2 | Arrêt | Sens + | Sens - | Freinage |
---|---|---|---|---|---|
IN1 | IN3 | 0 | 1 | 0 | 1 |
IN2 | IN4 | 0 | 0 | 1 | 1 |
Cablage Arduino et L298n
Câbler l'Arduino et le L298n comme indiqué dans le tableau ci-dessous
L298n | Arduino Uno | Autre |
---|---|---|
ENA | --- | Jumper |
IN1 | D13 | --- |
IN2 | D12 | --- |
IN3 | D11 | --- |
IN4 | D10 | --- |
ENB | --- | Jumper |
Regulateur +12v | --- | Jumper |
Bornier +12v | --- | + de la batterie |
Bornier GND | GND | - de la batterie |
Bornier +5v | +5v | --- |
OUT1 | --- | Moteur 1 |
OUT2 | --- | Moteur 1 |
OUT3 | --- | Moteur 2 |
OUT4 | --- | Moteur 2 |
Code Arduino
Le code ci-dessous, fait tourner les moteurs une fois dans un sens et une fois dans l'autre sens.
/*
L298n – Arduino – 2 ou 4 moteurs
connecter L298n / Arduino
in1 sur D13
in2 sur D12
in3 sur D11
in4 sur D10
*/
int In1 = 13;
int In2 = 12;
int In3 = 11;
int In4 = 10;
int Tempo = 2000;
void setup() {
pinMode(In1, OUTPUT);
pinMode(In2, OUTPUT);
pinMode(In3, OUTPUT);
pinMode(In4, OUTPUT);
}
L298n – Arduino – 2 ou 4 moteurs
connecter L298n / Arduino
in1 sur D13
in2 sur D12
in3 sur D11
in4 sur D10
*/
int In1 = 13;
int In2 = 12;
int In3 = 11;
int In4 = 10;
int Tempo = 2000;
void setup() {
pinMode(In1, OUTPUT);
pinMode(In2, OUTPUT);
pinMode(In3, OUTPUT);
pinMode(In4, OUTPUT);
}
void loop() {
digitalWrite(In1, HIGH);
digitalWrite(In2, LOW);
digitalWrite(In3, HIGH);
digitalWrite(In4, LOW);
delay(Tempo);
digitalWrite(In1, LOW);
digitalWrite(In2, HIGH);
digitalWrite(In3, LOW);
digitalWrite(In4, HIGH);
delay(Tempo);
}
(Fichier est zippé)