Le contrôleur de moteur L298N Il s’agit d’une option très populaire dans les projets de robotique et d’électronique en général, grâce à son faible coût et sa facilité d’utilisation. Avec ce module, nous pouvons contrôler aussi bien les moteurs à courant continu que les moteurs pas à pas, en régulant leur vitesse et leur sens de rotation. Tout au long de cet article, nous allons détailler tout ce que vous devez savoir sur le L298N, des connexions de base à la façon de l'utiliser avec un Arduino pour le contrôle du moteur. Lisez la suite pour tirer le meilleur parti de ce contrôleur polyvalent.
Si vous avez déjà travaillé sur des projets robotiques ou sur des véhicules contrôlés par un microcontrôleur comme Arduino, vous vous êtes probablement retrouvé dans la situation où vous avez besoin de plus de puissance pour déplacer des moteurs d'une certaine taille. C'est là que le Module L298N, un contrôleur qui permet de gérer de manière simple cette puissance supplémentaire pour les moteurs électriques. Examinons tous ses détails.
Qu'est-ce que le L298N et comment ça marche ?
Le L298N est un contrôleur de moteur qui utilise un système H-Bridge pour inverser la polarité du courant et donc contrôler le sens de rotation du moteur. Ce module est capable de contrôler deux moteurs à courant continu ou un moteur pas à pas. Le courant maximum qu'il peut fournir est de 2 A par sortie, avec une crête maximale de 3 A, et il prend en charge une plage de puissance comprise entre 3 V et 35 V. Il est important de noter que ce module a un rendement relativement faible, ce qui signifie que les moteurs recevront une tension d'environ 3V inférieure à celle appliquée au module. Ces pertes sont dissipées sous forme de chaleur.
La structure interne du module comprend deux ponts en H, une technologie largement utilisée en électronique pour contrôler la direction du courant. Chaque pont est composé de quatre transistors disposés dans une configuration permettant de contrôler à la fois la polarité et la déconnexion du moteur. De plus, le L298N intègre diodes de protection et d'autres mesures pour éviter d'éventuels dommages lors du fonctionnement de ces moteurs.
Composants de base et connexions
El Module L298N Il se caractérise par sa simplicité d'utilisation et sa flexibilité pour s'adapter à différents types de projets. Ci-dessous, nous expliquons les connexions les plus importantes du contrôleur :
- Vin et GND : Ces broches sont utilisées pour connecter l'alimentation du module. Il peut prendre en charge une tension d'entrée de 3 V à 35 V.
- V logique : Cette broche a deux fonctions, selon que le régulateur de tension est activé ou non via un cavalier. Si le cavalier est connecté, cette broche fournira une sortie 5 V que nous pourrons utiliser pour alimenter des appareils comme Arduino. Si le cavalier est retiré, il faut alimenter le composant logique avec une source 5V.
- IN1, IN2, IN3, IN4 : Ces broches contrôlent la direction des moteurs. Par exemple, pour le moteur A, si IN1 est à HIGH et IN2 à LOW, le moteur tournera dans un sens. Si IN1 est à BAS et IN2 à HIGH, il tournera dans le sens opposé.
- ENA et ENB : Ils contrôlent la vitesse des moteurs à l’aide de signaux PWM (Pulse width Modulation). Si les cavaliers sont en place, les moteurs fonctionneront à vitesse constante ; Sinon, nous pouvons ajuster la vitesse avec des valeurs de 0 à 255.
Fonctionnement et alimentations du L298N
Il existe deux manières principales de nourrir un L298N:
- Avec une seule alimentation : Dans ce cas, nous utilisons une source jusqu'à 12 V, nous connectons le cavalier pour activer le régulateur 5 V et nous ne connectons rien à la broche 5 V, car celle-ci fera office de sortie.
- Avec deux sources d'énergie : Une autre alternative consiste à alimenter le module avec deux sources différentes, dont l'une fournira le 5V nécessaire à la partie logique du module et l'autre 12V ou plus pour le moteur, dans ce cas en déconnectant le cavalier du régulateur pour éviter d'endommager le module. module.
Que vous utilisiez une ou deux alimentations, pensez toujours à faire attention aux broches d'entrée et de sortie pour éviter les courts-circuits ou d'éventuels dommages.
Programmation avec Arduino
Un des grands avantages de L298N est son intégration facile avec les projets basés sur Arduino. En effet, en connectant simplement quelques broches, nous pouvons contrôler à la fois la vitesse et la direction d'un ou plusieurs moteurs. Nous vous montrons ici comment programmer le L298N avec Arduino :
Tout d’abord, nous attribuons les broches que nous utiliserons pour contrôler les moteurs :
int ENA = 10; // Habilita motor A
int IN1 = 9; // Dirección Motor A
int IN2 = 8; // Dirección Motor A
int ENB = 5; // Habilita motor B
int IN3 = 7; // Dirección Motor B
int IN4 = 6; // Dirección Motor B
Nous commençons par configurer les broches comme sorties sur le setup()
et déclarant les fonctions nécessaires pour déplacer les moteurs dans les deux sens :
void Adelante() {
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
analogWrite(ENA, 255);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
analogWrite(ENB, 255);
}
void Atras() {
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
analogWrite(ENA, 128);
digitalWrite(IN3, LOW);
digitalWrite(IN4, HIGH);
analogWrite(ENB, 128);
}
On peut ajuster la vitesse des moteurs en changeant les valeurs dans la fonction analogWrite()
, qui accepte des valeurs comprises entre 0 et 255, où 255 est la vitesse maximale.
Protections L298N
Une caractéristique notable de la L298N est qu'il intègre plusieurs protections pour éviter d'endommager à la fois le contrôleur et les moteurs. Ces protections comprennent :
- Protection contre les surintensités: Si le module détecte un courant supérieur à celui qu'il peut supporter, il activera la protection pour éviter tout dommage.
- Protection contre la surchauffe: Le L298N est conçu pour dissiper la chaleur générée pendant le fonctionnement, mais si la température dépasse certaines limites, le module activera sa protection thermique.
- Diodes de protection : Ces diodes évitent que les pics de tension induits par l'inertie des moteurs n'endommagent le module.
Exemple pratique : Contrôle d'une voiture robotisée
L'utilisation du contrôleur L298N C'est très courant dans les projets de robotique, comme les voitures robotisées contrôlées avec Arduino. Dans cette configuration, en montant le L298N sur le châssis et en le connectant à l'Arduino, nous pouvons contrôler à la fois la direction et la vitesse des roues de la voiture.
Le schéma de connexion habituel est le suivant : Vous alimentez le module L298N avec une batterie externe pour les moteurs (généralement 6V ou 12V) et connectez la broche de sortie 5V à l'Arduino. Depuis l'Arduino, vous contrôlez les broches IN1, IN2, IN3 et IN4 pour piloter les moteurs. Cette configuration vous permet de faire tourner la voiture vers l’avant, vers l’arrière et d’effectuer des virages dans différentes directions.
Si vous souhaitez simplifier la programmation et le contrôle, vous pouvez utiliser des bibliothèques comme LEANTEC_ControlMotor.h. Cette bibliothèque permet de programmer les moteurs avec des commandes plus simples telles que : control.Motor(velocidad, direccion)
.
Le L298N est une excellente solution pour contrôler les moteurs dans les projets de petite et moyenne taille, et son utilisation est largement répandue dans la communauté des fabricants. Bien qu'il existe d'autres contrôleurs plus avancés et efficaces, la combinaison de polyvalence, de prix et de simplicité du L298N en fait l'une des meilleures options pour les projets de bricolage.