differential-drive-robot.ino

Unit 4-Encoder Motor Driver (DRV8837DSGR) · Archivo : differential-drive-robot.ino · Lenguaje : arduino · Uso : Piloter un châssis à deux roues différentielles pour une trajectoire courbe.

Control coordinado de dos motores para la navegación de un robot móvil usando velocidad diferencial.

Los motores 1 y 2 se usan como ruedas izquierda y derecha. El modo SPEED asegura una regulación estable. Ajuste los signos (+/-) según el montaje físico de los motores en el chasis.

differential-drive-robot.ino

#include <M5Stack_MotorDriverUnit.h>

M5Stack_MotorDriverUnit motorDriver;

void setup() {
  M5.begin();
  motorDriver.begin();
  motorDriver.setMode(1, MODE_SPEED);
  motorDriver.setMode(2, MODE_SPEED);
}

void loop() {
  // Avancer en ligne droite
  motorDriver.setSpeed(1, 40);
  motorDriver.setSpeed(2, 40);
  delay(2000);
  
  // Tourner à droite (roue gauche avance, roue droite recule ou s'arrête)
  motorDriver.setSpeed(1, 40);
  motorDriver.setSpeed(2, -40);
  delay(1000);
  
  // Arrêt progressif
  motorDriver.setSpeed(1, 0);
  motorDriver.setSpeed(2, 0);
  delay(1000);
}

← Volver a la ficha