Comment utiliser L298n pour contrôler le moteur CC avec Arduino

Bonjour tous le monde,

Bienvenue dans ce tutoriel, vérifiez d'abord la vidéo qui contient un peu d'explication, nous utilisons ici un pilote de pont en H double L298n pour contrôler un moteur à courant continu en utilisant Arduino, vous pouvez vérifier plus sur Internet si vous avez besoin de plus d'informations mais ici nous devons faire en sorte que les choses fonctionnent afin que vous puissiez l'adapter facilement à vos projets, j'espère que vous l'aimez.

Étape 1: Contrôle simple et changement de direction

Dans cette étape, vous pouvez câbler le pilote comme dans l'image ou le changer pour l'adapter à votre projet, n'oubliez pas de câbler le GND du pilote avec le GND d'Arduino, pour l'alimentation ici, j'ai utilisé une batterie 9v, vous peut l'alimenter à partir d'une source d'alimentation ou d'une batterie, la broche + 5v du pilote peut également alimenter votre Arduino si vous le mettez dans Vin à partir de la carte Arduino,

Ici, je n'ai utilisé qu'un seul moteur, ce module peut faire fonctionner 2 moteurs CC ou 1 moteur pas à pas.

Test 1: Tout d'abord, nous essayons de mettre le moteur dans une direction, puis de l'éteindre, donc vous le câblez comme dans l'image et voici le code.

 // Ce code est à utiliser avec le pilote de moteur à double pont en L L298n 
// Il allume simplement un moteur CC pendant un certain temps et l'éteint // reportez-vous à surtrtech.blogspot.com pour plus d'informations int in1 = 9; // Déclaration des broches où sont connectés in1 in2 du pilote
 int in2 = 8; // ici, ils sont câblés avec D9 et D8 d'Arduino 
 void setup () {pinMode (in1, OUTPUT); // Déclaration des modes de broche, évidemment ce sont des sorties pinMode (in2, OUTPUT); 
 } 
 // Avant de démarrer la boucle, vous devez créer des fonctions de type "void" pour contrôler les broches du pilote // Ici, j'ai créé deux fonctions, la première tourne un moteur dans une direction (vous pouvez le changer en commutant LOW et HIGH // et le deuxième pour arrêter le moteur 
 void TurnMotorA () {digitalWrite (in1, HIGH); digitalWrite (in2, LOW); } 
 void TurnOFFA () {digitalWrite (in1, LOW); digitalWrite (in2, LOW); } 
 boucle vide () {TurnMotorA (); // dans la boucle, nous utilisons la fonction pour tourner le moteur pendant 3s et l'arrêter pendant 2s (3000); TurnOFFA (); retard (2000); } 

Test 2: Turing on / off, changer de direction puis allumer / éteindre (vous conservez le même câblage que ci-dessus)

 // Ce code est à utiliser avec le pilote de moteur à double pont en L L298n 
// Il allume simplement un moteur à courant continu pendant un certain temps dans une direction, l'éteint, tourne dans l'autre sens et l'éteint à nouveau // se référer à surtrtech.blogspot.com pour plus d'informations
 int in1 = 9; // Déclaration des broches où in1 in2 du pilote sont câblés int in2 = 8; // ici, ils sont câblés avec D9 et D8 d'Arduino 
 void setup () {pinMode (in1, OUTPUT); // Déclaration des modes de broche, évidemment ce sont des sorties pinMode (in2, OUTPUT); 
 } 
 // Avant de démarrer la boucle, vous devez créer des fonctions de type "void" pour contrôler les broches du conducteur // Ici, j'ai créé trois fonctions, l'une pour tourner le moteur dans le sens "# 1", l'autre dans l'autre sens "# 3 "// et le second pour arrêter le moteur // Pour changer de direction, vous commutez le HIGH avec LOW et vice-versa 
 void TurnMotorA () {digitalWrite (in1, HIGH); digitalWrite (in2, LOW); } 
 void TurnOFFA () {digitalWrite (in1, LOW); digitalWrite (in2, LOW); } void TurnMotorA2 () {digitalWrite (in1, LOW); digitalWrite (in2, HIGH); } 
 boucle vide () {TurnMotorA (); // On tourne dans la direction 1 pendant 3s puis on s'arrête pour 2s de retard (3000); TurnOFFA (); retard (2000); TurnMotorA2 (); // On tourne dans la direction 2 pendant 3s puis on s'arrête pour 2s de retard (3000); TurnOFFA (); retard (2000); } 

Étape 2: Contrôle de vitesse

Dans cette étape, nous retirerons le cavalier qui se trouve sur la broche ENA, et nous contrôlerons cette broche par un signal PWM délivré par la carte Arduino, et cela nous permettra de contrôler la vitesse du moteur CC.

Test 3: Allumer / éteindre à basse vitesse puis allumer / éteindre à haute vitesse (le câblage est comme le précédent mais maintenant vous retirez le cavalier et connectez la broche enA avec la broche pwm d'Arduino, ici j'ai utilisé D10)

 // Ce code est à utiliser avec le pilote de moteur à double pont en L L298n 
// Il allume simplement un moteur à courant continu pendant un certain temps avec une faible vitesse et l'éteint puis s'allume à haute vitesse // se référer à surtrtech.blogspot.com pour plus d'informations
 int in1 = 9; // Déclaration des broches où in1 in2 du pilote sont câblés int in2 = 8; // ici, ils sont câblés avec D9 et D8 d'Arduino int ConA = 10; // Et nous ajoutons la broche pour contrôler la vitesse après avoir retiré son cavalier // Assurez-vous qu'il est connecté à une broche qui peut fournir un signal PWM 
 void setup () {pinMode (in1, OUTPUT); // Déclaration des modes de broche, évidemment ce sont des sorties pinMode (in2, OUTPUT); pinMode (ConA, OUTPUT); } 
 // Avant de commencer la boucle, vous devez créer des fonctions de type "void" pour contrôler les broches du conducteur // ici j'ai créé trois fonctions, la première consiste à tourner le moteur dans une direction avec vitesse (100) // La seconde à tourner it off // Et le dernier à le tourner dans le même sens que la première mais plus rapide (250) // Plage de vitesse (0-255) 
 void TurnMotorA () {digitalWrite (in1, LOW); digitalWrite (in2, HIGH); analogWrite (ConA, 100); } 
 void TurnOFFA () {digitalWrite (in1, LOW); digitalWrite (in2, LOW); analogWrite (ConA, 0); } void TurnMotorA2 () {digitalWrite (in1, LOW); digitalWrite (in2, HIGH); analogWrite (ConA, 250); } 
 boucle vide () {TurnMotorA (); // Séquence: mise en marche à basse vitesse, arrêt, remise en marche à grande vitesse et délai d'arrêt (2000); 
 TurnOFFA (); retard (2000); 
 TurnMotorA2 (); retard (4000); 
 TurnOFFA (); retard (2000); } 

Articles Connexes