Le conducteur du moteur L9110S est une solution compacte et efficace pour contrôler les moteurs DC et les moteurs pas à pas dans vos projets Arduino. Que vous construisiez un simple robot ou un système d'automatisation plus complexe, le L9110S offre un moyen fiable de gérer les opérations motrices avec un minimum de câblage et de complexité de programmation. Dans cet article de blog, nous explorerons les fonctionnalités du pilote de moteur L9110S, comment le connecter à un Arduino et fournir un exemple de code pour vous lancer.
Qu'est-ce que les L9110?
Le L9110S est un moteur à double canal IC conçu pour contrôler la vitesse et la direction de deux moteurs CC ou un moteur pas à pas. Il fonctionne sur une plage de tension de 2,5 V à 12 V, ce qui le rend polyvalent pour diverses applications. Le L9110S est connu pour sa taille compacte, sa faible consommation d'énergie et sa facilité d'intégration avec des microcontrôleurs comme l'Arduino.
Pourquoi choisir les L9110?
- Conception compacte: Sa petite empreinte le rend idéale pour les projets avec un espace limité.
- Double canaux: Contrôlez deux moteurs indépendamment, permettant des mouvements complexes.
- Facile à utiliser: Interface simple avec un étiquetage clair pour des connexions faciles.
- Rentable: Prix abordables sans compromettre les fonctionnalités.
Connecter les L9110 à Arduino
La configuration des L9110 avec un Arduino est simple. Vous trouverez ci-dessous un guide étape par étape pour établir les connexions:
-
Connexions d'alimentation:
- Connectez le
VCC
Pin du L9110S à la broche 5V sur l'Arduino. - Connectez le
GND
Pin du L9110S à la broche GND sur l'Arduino.
- Connectez le
-
Connexions du moteur:
- Connectez le premier moteur au
OUT1
etOUT2
broches. - Si vous utilisez un deuxième moteur, connectez-le au
OUT3
etOUT4
broches.
- Connectez le premier moteur au
-
Broches de contrôle:
- Connectez le
AIN1
etAIN2
Épingles à deux broches numériques sur l'Arduino (par exemple, broches 2 et 3). - Si vous utilisez un deuxième moteur, connectez-vous
BIN1
etBIN2
à deux autres broches numériques (par exemple, broches 4 et 5).
- Connectez le
Reportez-vous au diagramme ci-dessous pour une représentation visuelle des connexions:
![Diagramme de connexion Arduino L9110S](path-to-your-diagram.jpg)
Programmation de l'Arduino
Après avoir configuré le matériel, l'étape suivante consiste à programmer l'Arduino pour contrôler les moteurs. Vous trouverez ci-dessous un exemple de code qui montre comment contrôler la direction et la vitesse d'un moteur CC à l'aide du pilote de moteur L9110S.
// Define motor control pins
const int AIN1 = 2;
const int AIN2 = 3;
// Setup function
void setup() {
// Initialize the motor control pins as outputs
pinMode(AIN1, OUTPUT);
pinMode(AIN2, OUTPUT);
}
// Loop function
void loop() {
// Rotate motor forward
digitalWrite(AIN1, HIGH);
digitalWrite(AIN2, LOW);
delay(2000); // Run for 2 seconds
// Stop the motor
digitalWrite(AIN1, LOW);
digitalWrite(AIN2, LOW);
delay(1000); // Stop for 1 second
// Rotate motor backward
digitalWrite(AIN1, LOW);
digitalWrite(AIN2, HIGH);
delay(2000); // Run for 2 seconds
// Stop the motor
digitalWrite(AIN1, LOW);
digitalWrite(AIN2, LOW);
delay(1000); // Stop for 1 second
}
Explication:
-
AIN1
etAIN2
sont utilisés pour contrôler la direction du moteur. - Paramètre
AIN1
Haut etAIN2
Low tourne le moteur vers l'avant. - Paramètre
AIN1
Bas etAIN2
Haute tourne le moteur vers l'arrière. - Définir les deux
AIN1
etAIN2
Low arrête le moteur.
Contrôle la vitesse avec PWM
Le L9110S prend en charge PWM (modulation de largeur d'impulsion) pour le contrôle de la vitesse. En faisant varier le cycle de service du signal PWM, vous pouvez ajuster la vitesse du moteur. Voici comment modifier le code précédent pour inclure le contrôle de la vitesse:
// Define motor control pins
const int AIN1 = 2;
const int AIN2 = 3;
const int PWM_PIN = 9; // PWM pin for speed control
// Setup function
void setup() {
// Initialize the motor control pins as outputs
pinMode(AIN1, OUTPUT);
pinMode(AIN2, OUTPUT);
pinMode(PWM_PIN, OUTPUT);
}
// Loop function
void loop() {
// Set speed to 150 out of 255
analogWrite(PWM_PIN, 150);
// Rotate motor forward
digitalWrite(AIN1, HIGH);
digitalWrite(AIN2, LOW);
delay(2000); // Run for 2 seconds
// Stop the motor
digitalWrite(AIN1, LOW);
digitalWrite(AIN2, LOW);
delay(1000); // Stop for 1 second
// Rotate motor backward
digitalWrite(AIN1, LOW);
digitalWrite(AIN2, HIGH);
delay(2000); // Run for 2 seconds
// Stop the motor
digitalWrite(AIN1, LOW);
digitalWrite(AIN2, LOW);
delay(1000); // Stop for 1 second
}
Explication: Le analogWrite()
La fonction envoie un signal PWM au moteur, vous permettant de contrôler sa vitesse. La valeur varie de 0 (arrêt) à 255 (pleine vitesse).
Applications de L9110 avec Arduino
La combinaison du conducteur moteur L9110S et Arduino ouvre un large éventail de possibilités de projet:
- Robotique: Contrôlez le mouvement des bras robotiques ou des robots mobiles avec un contrôle moteur précis.
- Systèmes d'automatisation: Automatiser les tâches telles que les portes d'ouverture / de fermeture, de réglage des vannes ou des composants en mouvement dans les lignes de montage.
- Projets de bricolage: Créez des projets électroniques personnalisés comme les curseurs de caméras motorisés, les systèmes d'arrosage automatisés ou les véhicules télécommandés.
- Outils éducatifs: Apprenez aux élèves sur le contrôle des moteurs, l'électronique et la programmation à travers des projets pratiques.
Conclusion
Le pilote moteur L9110S est un composant polyvalent et convivial pour tous ceux qui cherchent à contrôler les moteurs à l'aide d'un Arduino. Sa capacité à double canal, combinée à la simplicité du câblage et de la programmation, en fait un excellent choix pour les débutants et les amateurs expérimentés. En suivant les étapes décrites dans cet article, vous pouvez rapidement intégrer le contrôle des moteurs dans vos projets et étendre les fonctionnalités de vos systèmes basés sur Arduino.
Expérimentez avec différentes vitesses de moteur, directions et applications pour exploiter pleinement le potentiel du conducteur moteur L9110S. Bonne bricolage!