Certaines parties de ce site Web ne sont pas encore disponibles dans votre langue. Nous travaillons à résoudre ce problème et nous nous excusons pour tout inconvénient.
Tutoriel ESP32 15/55 - Contrôle de la vitesse du moteur CC avec ESP32 L293D | Kit d'apprentissage IoT ESP32 de SunFounder
Tutoriel ESP32 15/55 - Contrôle de la vitesse du moteur CC avec ESP32 L293D | Kit d'apprentissage IoT ESP32 de SunFounder
Contrôler un moteur DC avec un ESP32 peut sembler intimidant, mais c'est tout à fait gérable avec les bons composants et une bonne compréhension. Dans ce tutoriel, nous allons créer un projet qui nous permettra de contrôler la vitesse et la direction d'un moteur DC en utilisant le driver de moteur L293D. À la fin, vous aurez un système fonctionnel qui peut faire tourner le moteur en avant et en arrière tout en ajustant sa vitesse. Pour une référence visuelle, n'oubliez pas de consulter la vidéo à (dans la vidéo à 00:00).
ESP32-15_L293D_moteur_schéma
Matériel expliqué
Les principaux composants de ce projet incluent le microcontrôleur ESP32 et le driver de moteur L293D. L'ESP32 est un microcontrôleur puissant avec des capacités Wi-Fi et Bluetooth intégrées, ce qui le rend adapté aux applications IoT. Il peut contrôler divers composants matériels, y compris des moteurs, grâce à ses broches GPIO. Le L293D est un driver de moteur à double pont en H qui vous permet de contrôler la direction et la vitesse de deux moteurs à courant continu. Chaque pont en H peut entraîner un moteur dans les deux sens en inversant la polarité de la tension appliquée aux bornes du moteur. De plus, le L293D peut gérer un courant allant jusqu'à 600 mA par canal, ce qui le rend adapté aux moteurs de petite à moyenne taille.
L293D-Driver-Moteur-IC
Détails de la fiche technique
Fabricant
Texas Instruments
Numéro de pièce
L293D
Tension logique/IO
2,5 - 7 V
Tension d'alimentation
4,5 - 36 V
Courant de sortie (par canal)
600 mA (typ.)
Courant de crête (par canal)
1,2 A (max)
Guide sur la fréquence PWM
20 kHz (typ.)
Seuils logiques d'entrée
0,8 V (élevé), 2,0 V (bas)
Chute de tension / RDS(on)/ saturation
1,5 V (max)
Limites thermiques
150 °C (max)
Paquet
16-DIP
Remarques / variantes
Conducteur demi-H quadruple
Assurez un bon refroidissement pour les applications à courant élevé.
Découplez l'alimentation avec des condensateurs pour prévenir les surtensions.
Soyez prudent avec le câblage pour éviter une polarité inversée.
Utilisez la PWM pour le contrôle de la vitesse afin d'éviter la surchauffe.
Vérifiez la tension nominale du moteur pour éviter tout dommage.
Instructions de câblage
ESP32-15_L293D_motor_wiring
Pour câbler l'ESP32 et le pilote de moteur L293D, commencez par connecter l'alimentation. Connectez la broche 16 du L293D au terminal positif de votre alimentation, et la broche 4 à la terre. Ensuite, connectez le moteur : un terminal à la broche 3 et l'autre à la broche 6 du L293D. Pour les signaux de contrôle, connectez la broche GPIO 13 de l'ESP32 à la broche 2 du L293D et la broche GPIO 14 à la broche 7. Enfin, assurez-vous de connecter la terre de l'ESP32 à la terre du L293D pour garantir une référence commune. Si la vidéo mentionne un câblage alternatif (dans la vidéo à 05:00), assurez-vous de suivre les changements spécifiques montrés.
Exemples de code et guide étape par étape
Le code pour contrôler le moteur consiste à définir les broches pour le moteur et à configurer leurs modes. Voici un extrait de la fonction de configuration :
Dans cet extrait, nous définissons les broches de contrôle du moteur comme des constantes et les configurons en sorties dans la fonction setup. C'est crucial car cela prépare les broches à contrôler le moteur. La fonction loop est l'endroit où le comportement du moteur est contrôlé. Voici une partie clé de la boucle :
Ce code fait tourner le moteur dans une direction pendant 2 secondes, puis inverse la direction pendant encore 2 secondes, et enfin arrête le moteur pendant 3 secondes. Cette boucle se répétée indéfiniment, permettant un contrôle continu. Pour des informations plus détaillées et le code complet, référez-vous au programme complet qui se charge en bas de l'article.
Démonstration / À quoi s'attendre
Après avoir réussi à câbler et à télécharger le code, vous devriez voir le moteur tourner dans une direction pendant 2 secondes, changer de direction pendant encore 2 secondes, puis s'arrêter pendant 3 secondes. Si le moteur ne répond pas comme prévu, vérifiez les problèmes courants tels que la polarité inversée ou des connexions de broches incorrectes (dans la vidéo à 08:00). Cette configuration offre un moyen simple de contrôler la vitesse et la direction d'un moteur CC en utilisant l'ESP32 et le L293D.
Horodatages vidéo
00:00 Début
2:01 Introduction au moteur à courant continu
6:14 Pilote de moteur L293D
9:17 Documents du projet.
11:04 Explication du câblage
14:41 Contrôle de moteur Arduino avec ESP32
17:10 Sélection des ports Arduino pour la carte ESP32
18:52 Démonstration du projet
22:08 Contrôle de la vitesse du moteur avec ESP32
26:22 Démo de Contrôle de Vitesse
28:01 Code Arduino de contrôle de la vitesse et de la direction
29:05 Démonstration de la vitesse et de la direction
Images
L293D-Motor-Driver-IC
ESP32-15_L293D_motor_schematic
ESP32-15_L293D_motor_wiring
L293D-Motor-Driver-IC
ESP32-15_L293D_motor_schematic
ESP32-15_L293D_motor_wiring
814-ESP32 Tutorial 15/55- Arduino code for L293D motor control