🛠 Automatiser un châssis robotique avec le Driver 4-Encoder

Unit 4-Encoder Motor Driver (DRV8837DSGR) · debutant · Apprenez à contrôler quatre moteurs avec retour d'encodeur pour une automatisation précise via I2C.

Objectifs

Ce tutoriel vise à configurer le module M5Stack 4-Encoder Motor Driver pour automatiser un petit châssis robotique. Vous apprendrez à initialiser la communication I2C, à définir les paramètres des moteurs et à exécuter une séquence de mouvement autonome (avancer, tourner, s'arrêter) en utilisant la régulation de vitesse en boucle fermée. Ce cas d'usage illustre l'application de l'automatisation simple dans la robotique mobile.

Matériel nécessaire

Étapes

  1. Assemblage matériel : Connectez les quatre connecteurs PH2.0-6P aux moteurs. Assurez-vous que les fils des encodeurs sont correctement alignés. Branchez le module sur le port Grove I2C de votre carte principale.
  2. Alimentation : Si vous utilisez des moteurs puissants, connectez une source DC externe (6-12V) au port d'alimentation du module. Pour les petits moteurs TT, l'alimentation via le port Grove (5V) peut suffire, mais vérifiez que le courant reste sous 1,2A par canal.
  3. Configuration logicielle : Ouvrez l'Arduino IDE. Installez la bibliothèque M5Stack_MotorDriver ou celle fournie par M5Stack pour ce module. Sélectionnez votre carte et le port série correspondant.
  4. Initialisation du code : Démarrez avec Wire.begin(). Le module utilise l'adresse I2C par défaut 0x24. Initialisez les quatre canaux moteur en mode boucle fermée.
  5. Programmer la séquence : Écrivez une fonction moveRobot(speed, duration) qui envoie les commandes de vitesse aux quatre moteurs. Pour tourner, inversez la direction des moteurs d'un côté par rapport à l'autre.
  6. Téléversement : Chargez le code sur le microcontrôleur.

Vérification

Pour aller plus loin

Explorez la régulation de position en boucle fermée pour des mouvements précis. Vous pouvez ajouter un capteur de distance pour éviter les obstacles, créant ainsi une automatisation plus complexe. Essayez de modifier l'adresse I2C pour connecter plusieurs modules sur le même bus.

Autres tutoriels pour cette carte

Exemples de code pour cette carte

← Retour à la fiche 🛠 Tous les tutoriels