Início›2 Motores
⬤ Motor DC · Intermédio

🤖 Dois Motores DC Independentes

⏱️ 35 min🧩 Motor1 · Motor2 · Diferencial · LCD telemetria

Nesta página

🤖 Chassis Diferencial

ℹ️
Num chassis diferencial, a direção resulta da diferença de velocidade entre os dois motores. Ambos FORWARD = frente. Motor esquerdo mais rápido = vira à direita. Um FWD outro BWD = rotação no eixo.
ex_2motores.ino
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
#include <AFMotor.h>

LiquidCrystal_I2C lcd(0x27, 20, 4);
AF_DCMotor mE(1), mD(2);  // esquerdo M1, direito M2

void mover(int ve, int vd, uint8_t de, uint8_t dd, const char* label) {
  mE.setSpeed(ve); mE.run(de);
  mD.setSpeed(vd); mD.run(dd);
  lcd.setCursor(0,0); lcd.print(label); lcd.print("          ");
  lcd.setCursor(0,1); lcd.print("Esq:");lcd.print(ve);lcd.print("  Dir:");lcd.print(vd);lcd.print("  ");
}

void setup() { lcd.init(); lcd.backlight(); }

void loop() {
  mover(200,200,FORWARD, FORWARD, "FRENTE    "); delay(2000);
  mover(200,200,BACKWARD,BACKWARD,"RE        "); delay(2000);
  mover(100,200,FORWARD, FORWARD, "CURVA DIR "); delay(2000);
  mover(200,100,FORWARD, FORWARD, "CURVA ESQ "); delay(2000);
  mover(200,200,FORWARD, BACKWARD,"RODAR DIR "); delay(1000);
  mover(0,  0,  RELEASE, RELEASE, "PARADO    "); delay(1000);
}

🗺️ Tabela de Movimentos

MovimentoMotor Esq.Motor Dir.Vel E / D
FrenteFORWARDFORWARD200 / 200
RecuarBACKWARDBACKWARD200 / 200
Curva suave dir.FORWARDFORWARD100 / 200
Curva suave esq.FORWARDFORWARD200 / 100
Rotação direitaFORWARDBACKWARD200 / 200
Rotação esquerdaBACKWARDFORWARD200 / 200

🖥️ Dashboard de Dois Motores

FRENTE Esq:200 Dir:200 M1: FWD M2: FWD Estado: AUTO

🏆 Para ir mais longe

PR.FT9_5 · LCD 20×4 · L293D Motor Driver · Arduino UNO Rev3 · Início · led.dge.medu.pt