SKU: Model-V-v1.0 | Driver motore DC L293DD a doppio ponte H con porte servo
Il modulo driver motore OSOYOO Model V è una scheda compatta a doppio ponte H basata sull’IC L293DD quad mezzo-ponte H. Pilota due motori a corrente continua in modo indipendente — controllando sia la velocità che la direzione — rendendolo ideale per robot su ruote e progetti di veicoli intelligenti.
Dal punto di vista elettrico è completamente compatibile con il popolare driver L298N: stessa interfaccia di controllo ENA / IN1–IN4 / ENB, stessa tabella di verità del ponte H e regolatore 5 V a bordo. Il miglioramento chiave è che tutti i collegamenti motore e di alimentazione utilizzano connettori JST con chiave di polarità (K1–K4, CN1–CN2) che impediscono fisicamente errori di cablaggio per inversione di polarità.
Due pin di segnale servo dedicati (S, S) sul connettore multiuso consentono di collegare una staffa pan-tilt o servomotori di sterzo senza hardware aggiuntivo. La scheda è compatibile con Arduino Uno / Nano / Mega, ESP32 e Raspberry Pi (tramite level shifter).

Indice
Il Model V è progettato per progetti di robotica, veicoli intelligenti e didattica dell’automazione:
| Applicazione | Descrizione |
|---|---|
| Robot car 2WD / 4WD | Controllo indipendente dei motori sinistro/destro per avanzare, retrocedere e sterzare a carro armato. Abbinabile a un sensore ultrasonico per l’elusione degli ostacoli. |
| Robot segui-linea | I sensori IR rilevano il percorso; il PWM regola in tempo reale la velocità del Motore A / Motore B per correggere la rotta. |
| Robot risolutore di labirinti | Sensori di distanza dalla parete combinati con il controllo a trazione differenziale consentono la navigazione autonoma nei labirinti. |
| Auto radiocomandata | Ricevere comandi via Bluetooth (HC-05), Wi-Fi (ESP32) o telecomando IR e mapparli su velocità e direzione dei motori. |
| Piattaforma a ruote Mecanum / Omni | Utilizzare due schede Model V per quattro motori ruota indipendenti e ottenere il movimento olonomico (in tutte le direzioni). |
| Telecamera pan-tilt / braccio sensore | Azionare i motori del telaio utilizzando contemporaneamente le porte servo integrate per controllare una staffa telecamera o un braccio di scansione ultrasonico. |
| Nastro trasportatore / sistema di smistamento DIY | Controllare due nastri trasportatori o meccanismi di alimentazione con velocità e direzione indipendenti. |
| STEM / Robotica scolastica | La logica compatibile L298N, le etichette serigrafate chiare e i connettori con chiave di polarità riducono gli errori di cablaggio degli studenti — ideale per l’istruzione. |
analogWrite() su ENA / ENB per un controllo velocità variabile e progressivo (0–100%).| Parametro | Valore | Note |
|---|---|---|
| IC driver motore | L293DD | Quad mezzo-ponte H, SOIC-20 |
| Canali motore | 2 (Motore A, Motore B) | Ponte H indipendente completo per canale |
| Porte servo | 2 | Pin di segnale sul connettore multiuso |
| Tensione di ingresso (VIN) | 7 V – 12 V DC | Intervallo consigliato per il regolatore a bordo |
| Tensione motore max. | 36 V (nominale L293DD) | Rimuovere il jumper Motor PWR; fornire 5 V logici separatamente se >12 V |
| Tensione di alimentazione logica | 5 V (a bordo) / 3,3 V–5 V (est.) | Regolatore a bordo attivo quando jumper ON |
| Corrente di uscita (continua) | 600 mA per canale | Come da datasheet L293DD |
| Corrente di uscita (picco) | 1,2 A per canale | Brevi picchi; garantire una ventilazione adeguata |
| Interfaccia di controllo | TTL (3,3 V / 5 V) | ENA, IN1, IN2, IN3, IN4, ENB |
| Frequenza PWM max. | 25 kHz | Limite di commutazione del L293DD |
| Uscita regolatore a bordo | 5 V, ≤ 1 A | Per logica e alimentazione servo |
| Connettori motore | 4 × JST 2 pin con chiave (K1–K4) | Impedisce il collegamento inverso |
| Connettori di ingresso alimentazione | 2 × JST con chiave (CN1, CN2) | VIN & GND polarizzati |
| Protezione | ESD (L293DD) + diodi flyback D1–D8 | — |
| Temperatura di esercizio | 0 °C – 70 °C | — |
| Dimensioni PCB | ca. 64 × 56 mm | Vedere Informazioni meccaniche |
| Peso | ca. 20 g | Senza cavi |
Il diagramma seguente e la tabella identificano i componenti principali della scheda Model V.

Fig. 1 — Vista dall’alto del PCB OSOYOO Model V (riferimento componenti)
| Riferimento | Componente | Descrizione |
|---|---|---|
| U2 | IC driver motore L293DD | Chip driver principale. Quad mezzo-ponte H che forma due ponti H completi per il Motore A e il Motore B. 600 mA continui / 1,2 A di picco per canale; protezione ESD integrata. |
| U1 | Regolatore di tensione 5 V | Regolatore lineare D-PAK che converte l’alimentazione motore 7–12 V in 5 V stabili per la logica a bordo, il pin 5V del connettore e l’alimentazione servo. Attivo solo quando il jumper Motor PWR è inserito. |
| K1, K2 | Connettori uscita Motore A | Lato sinistro — due connettori JST con chiave corrispondenti a OUT1 e OUT2. I due fili del Motore A si collegano a K1 e K2. Il corpo con chiave impedisce l’inserimento inverso. |
| K3, K4 | Connettori uscita Motore B | Lato destro — due connettori JST con chiave corrispondenti a OUT3 e OUT4. I due fili del Motore B si collegano a K3 e K4. |
| CN1, CN2 | Connettori di ingresso alimentazione | Connettori JST con chiave per l’alimentazione motore (VIN 7–12 V e GND). Forniti due connettori per un cablaggio flessibile — collegare l’alimentazione a uno dei due. |
| Jumper Motor PWR | Jumper di abilitazione regolatore | Jumper ON (default): il regolatore a bordo alimenta il rail 5 V da VIN. Jumper OFF: regolatore disabilitato; fornire 5 V esternamente tramite il pin 5V del connettore. |
| Connettore di controllo (6P) | Pin di controllo MCU | Connettore passante in basso a destra che trasporta i segnali ENA, IN1, IN2, IN3, IN4, ENB dal microcontrollore. |
| Connettore multiuso (7P) | Connettore alimentazione + servo | Connettore passante in basso a sinistra con pass-through VIN (×2), GND (×2), uscita 5 V regolata e due pin di segnale servo (S, S). |
| D1–D8 | Diodi di protezione flyback | Otto diodi Schottky SMD che limitano i picchi di tensione induttiva quando la corrente del motore viene interrotta — protezione aggiuntiva rispetto ai diodi interni del L293DD. |
| LED | LED indicatore di alimentazione | Si accende quando la scheda è alimentata. Se il LED è spento, controllare l’alimentazione e i collegamenti CN1/CN2. |
Situato sul bordo inferiore destro. Collegare questi pin ai GPIO digitali (e compatibili PWM) del microcontrollore.
| Pin | Direzione | Tipo | Descrizione |
|---|---|---|---|
| ENA | Ingresso | Digitale / PWM | Abilitazione Motore A. HIGH = abilitato, LOW = arresto per inerzia. Usare analogWrite(0–255) per il controllo velocità. |
| IN1 | Ingresso | Digitale | Bit di direzione 1 Motore A. HIGH con IN2=LOW → avanti. |
| IN2 | Ingresso | Digitale | Bit di direzione 2 Motore A. HIGH con IN1=LOW → indietro. |
| IN3 | Ingresso | Digitale | Bit di direzione 1 Motore B. HIGH con IN4=LOW → avanti. |
| IN4 | Ingresso | Digitale | Bit di direzione 2 Motore B. HIGH con IN3=LOW → indietro. |
| ENB | Ingresso | Digitale / PWM | Abilitazione Motore B. Stesso comportamento di ENA. |
| ENx | INx1 | INx2 | Stato motore |
|---|---|---|---|
| HIGH | HIGH | LOW | Avanti (senso orario) |
| HIGH | LOW | HIGH | Indietro (senso antiorario) |
| HIGH | HIGH | HIGH | Freno (arresto rapido) |
| HIGH | LOW | LOW | Ruota libera |
| LOW | × | × | Motore disabilitato (Hi-Z) |
| PWM | HIGH | LOW | Avanti + velocità variabile |
| PWM | LOW | HIGH | Indietro + velocità variabile |
ENx = ENA per Motore A (IN1/IN2); ENB per Motore B (IN3/IN4). “×” = qualsiasi valore.
| Pin | Direzione | Descrizione |
|---|---|---|
| VIN (×2) | Ingresso / Uscita | Pass-through della tensione di alimentazione motore (7–12 V). Utilizzabile per alimentare dispositivi esterni o come ingresso di alimentazione alternativo. |
| GND (×2) | — | Massa comune. Deve essere collegato al GND del microcontrollore. |
| 5V | Uscita | 5 V regolati da U1. Alimenta il microcontrollore o i sensori. Disponibile solo quando il jumper Motor PWR è ON e VIN è tra 7 e 12 V. |
| S (×2) | Ingresso | Pin di segnale servo — collegare ai GPIO PWM del microcontrollore. L’alimentazione del servo proviene dai pin 5V e GND dello stesso connettore. |
Questo tutorial pilota una robot car a 2 o 4 ruote con il Model V e un Arduino Uno. Le stesse assegnazioni di pin e lo stesso sketch funzionano anche con Arduino Nano, Mega ed ESP32.
Collegare il Model V all’Arduino Uno come mostrato di seguito. Il file Fritzing (OSOYOO Model V.fzz) incluso nel pacchetto prodotto fornisce una vista grafica del cablaggio.
| Pin / Connettore Model V | Pin Arduino Uno | Note |
|---|---|---|
| ENA (Connettore di controllo) | Pin 5 (PWM ~) | Controllo velocità Motore A |
| IN1 (Connettore di controllo) | Pin 6 | Bit di direzione 1 Motore A |
| IN2 (Connettore di controllo) | Pin 7 | Bit di direzione 2 Motore A |
| IN3 (Connettore di controllo) | Pin 8 | Bit di direzione 1 Motore B |
| IN4 (Connettore di controllo) | Pin 9 | Bit di direzione 2 Motore B |
| ENB (Connettore di controllo) | Pin 10 (PWM ~) | Controllo velocità Motore B |
| GND (Connettore multiuso) | GND | Indispensabile — massa comune |
| 5V (Connettore multiuso) | 5V (opzionale) | Collegare solo quando il jumper Motor PWR è ON e si desidera che la scheda alimenti l’Arduino. Non collegare se l’Arduino si alimenta separatamente. |
| CN1 o CN2 | — | Alimentatore DC esterno 7–12 V (+ a VIN, − a GND) |
| K1 & K2 | — | Motore A: fili del motore sinistro su K1 e K2 |
| K3 & K4 | — | Motore B: fili del motore destro su K3 e K4 |
myServo.attach(pin) con il pin Arduino collegato a S.Lo sketch seguente esegue in sequenza avanti, indietro, curva sinistra, curva destra e stop. Copiarlo nell’IDE Arduino, selezionare la scheda e caricare.
/*
* OSOYOO Model V Motor Driver — Robot Car Demo
* Compatible: Arduino Uno / Nano / Mega / ESP32
*
* Wiring (Arduino Uno):
* ENA → Pin 5 (PWM) ENB → Pin 10 (PWM)
* IN1 → Pin 6 IN3 → Pin 8
* IN2 → Pin 7 IN4 → Pin 9
* GND → Arduino GND (essential!)
* VIN → External 7-12 V DC supply
* K1+K2 → Left motor(s)
* K3+K4 → Right motor(s)
*/
// ── Pin definitions ───────────────────────────────────────────────
#define ENA 5 // Motor A enable (PWM speed)
#define IN1 6 // Motor A direction bit 1
#define IN2 7 // Motor A direction bit 2
#define IN3 8 // Motor B direction bit 1
#define IN4 9 // Motor B direction bit 2
#define ENB 10 // Motor B enable (PWM speed)
#define FULL_SPEED 220 // 0-255 drive speed
#define TURN_SPEED 180 // slightly lower for turns
// ── Low-level motor primitives ────────────────────────────────────
void motorA(int spd, bool fwd) {
analogWrite(ENA, spd);
digitalWrite(IN1, fwd ? HIGH : LOW);
digitalWrite(IN2, fwd ? LOW : HIGH);
}
void motorB(int spd, bool fwd) {
analogWrite(ENB, spd);
digitalWrite(IN3, fwd ? HIGH : LOW);
digitalWrite(IN4, fwd ? LOW : HIGH);
}
// ── Car movement functions ────────────────────────────────────────
void carForward (int s) { motorA(s,true); motorB(s,true); }
void carBackward(int s) { motorA(s,false); motorB(s,false); }
void carLeft (int s) { motorA(s,false); motorB(s,true); }
void carRight (int s) { motorA(s,true); motorB(s,false); }
void carStop() {
analogWrite(ENA, 0); analogWrite(ENB, 0);
digitalWrite(IN1,LOW); digitalWrite(IN2,LOW);
digitalWrite(IN3,LOW); digitalWrite(IN4,LOW);
}
// ── Setup ─────────────────────────────────────────────────────────
void setup() {
pinMode(ENA,OUTPUT); pinMode(IN1,OUTPUT); pinMode(IN2,OUTPUT);
pinMode(ENB,OUTPUT); pinMode(IN3,OUTPUT); pinMode(IN4,OUTPUT);
carStop();
Serial.begin(9600);
Serial.println("OSOYOO Model V — Robot Car Demo");
}
// ── Demo loop ─────────────────────────────────────────────────────
void loop() {
carForward(FULL_SPEED); delay(2000); // forward 2 s
carStop(); delay(400);
carBackward(FULL_SPEED); delay(2000); // backward 2 s
carStop(); delay(400);
carLeft(TURN_SPEED); delay(700); // spin left ~90°
carStop(); delay(400);
carRight(TURN_SPEED); delay(700); // spin right ~90°
carStop(); delay(1500); // pause, then repeat
}
analogWrite() accetta 0–255. Valori inferiori a ~80 potrebbero non fornire coppia sufficiente per avviare un motore carico — aumentare FULL_SPEED se necessario.analogWrite() direttamente. Per un controllo PWM più preciso usare ledcAttach() / ledcWrite() a 1–10 kHz, risoluzione 8 bit.#include <Servo.h>, chiamare myServo.attach(pin) sul pin collegato a S e controllare con myServo.write(angle) — completamente indipendente dai canali motore.
Fig. 2 — Disegno 2D layout PCB
| Dimensione | Valore |
|---|---|
| Lunghezza PCB | ca. 64 mm |
| Larghezza PCB | ca. 56 mm |
| Spessore PCB | 1,6 mm (FR4 standard) |
| Fori di fissaggio | 4 × Ø 3,2 mm, uno per angolo |
| Interasse fori (L) | ca. 57 mm |
| Interasse fori (W) | ca. 49 mm |
| Componente più alto | ca. 12 mm (corpo connettore JST) |
| Peso (PCB nudo) | ca. 20 g |
| Colore PCB | Viola, finitura ENIG |
| Distanziale raccomandato | M3 × 8 mm (ottone o nylon) |
| Documento | File | Descrizione |
|---|---|---|
| Schema elettrico | SCH_OSOYOO Model V Motor Module v1.0_1-P1_2026-05-14.png | Schema completo della scheda Model V (EasyEDA). |
| Disegno 2D PCB | PCB-2D_OSOYOO Model V Motor Module v1.0_2026-05-14.png | Layout PCB in vista dall’alto con designatori di riferimento dei componenti. |
| Schema Fritzing | OSOYOO Model V.fzz | Aprire in Fritzing per visualizzare / modificare il diagramma di cablaggio su breadboard. |
| Foto del prodotto | Motor V实物图.jpg | Fotografia ad alta risoluzione del prodotto. |
| Datasheet L293DD | — | Disponibile sul sito web di Texas Instruments / STMicroelectronics. |
| OSOYOO Model X (L298N) | Introduzione | Confronto di riferimento: driver basato su L298N con la stessa interfaccia di controllo. |

Fig. 3 — Schema elettrico OSOYOO Model V (EasyEDA)
analogWrite() predefinita di Arduino (490–980 Hz) è ben al di sotto di questo limite. Non superare i 25 kHz poiché aumenta le perdite per commutazione e il calore.Modulo driver motore DC OSOYOO Model V — Documentazione prodotto v1.0 | © OSOYOO |
www.osoyoo.com
DownLoad Url osoyoo.com