Nota

Ciao, benvenuto nella Community di SunFounder Raspberry Pi & Arduino & ESP32 Enthusiasts su Facebook! Approfondisci le tue conoscenze su Raspberry Pi, Arduino e ESP32 insieme ad altri appassionati.

Perché unirti a noi?

  • Supporto Esperto: Risolvi i problemi post-vendita e le sfide tecniche con l’aiuto della nostra community e del nostro team.

  • Impara e Condividi: Scambia consigli e tutorial per migliorare le tue competenze.

  • Anteprime Esclusive: Ottieni accesso anticipato ai nuovi annunci di prodotti e alle anteprime.

  • Sconti Speciali: Goditi sconti esclusivi sui nostri prodotti più recenti.

  • Promozioni Festive e Giveaway: Partecipa a giveaway e promozioni festive.

👉 Pronto a esplorare e creare con noi? Clicca su [qui] e unisciti oggi!

4.1 Motore

In questo entusiasmante progetto, esploreremo come pilotare un motore utilizzando l’integrato L293D.

L’L293D è un circuito integrato versatile, comunemente utilizzato per il controllo dei motori in progetti di elettronica e robotica. È in grado di pilotare due motori in entrambe le direzioni, rendendolo una scelta popolare per applicazioni che richiedono un controllo preciso del motore.

Alla fine di questo avvincente progetto, avrai acquisito una solida comprensione di come i segnali digitali e i segnali PWM possono essere utilizzati efficacemente per controllare i motori. Questa conoscenza inestimabile costituirà una solida base per i tuoi futuri progetti in robotica e meccatronica. Preparati a immergerti nel mondo affascinante del controllo dei motori con l’L293D!

Componenti Necessari

In questo progetto, avremo bisogno dei seguenti componenti.

È sicuramente conveniente acquistare un kit completo, ecco il link:

Nome

ELEMENTI IN QUESTO KIT

LINK

ESP32 Starter Kit

320+

ESP32 Starter Kit

Puoi anche acquistarli separatamente dai link sottostanti.

INTRODUZIONE AI COMPONENTI

LINK PER L’ACQUISTO

ESP32 Scheda

ACQUISTA

Estensione Fotocamera ESP32

ACQUISTA

Breadboard

ACQUISTA

Cavi Jumper

ACQUISTA

Motore DC

ACQUISTA

L293D

-

Pin Disponibili

Ecco un elenco di pin disponibili sulla scheda ESP32 per questo progetto.

Pin Disponibili

IO13, IO14, IO27, IO26, IO25, IO33, IO32, IO15, IO2, IO0, IO4, IO5, IO18, IO19, IO21, IO22, IO23

Schema Elettrico

../../_images/circuit_4.1_motor_l293d.png

Cablaggio

Nota

Poiché il motore richiede una corrente relativamente alta, è necessario inserire prima la batteria e quindi far scorrere l’interruttore sulla scheda di espansione in posizione ON per attivare l’alimentazione della batteria.

../../_images/4.1_motor_l293d_bb.png

Codice

Nota

  • Apri il file 4.1_motor.ino nel percorso esp32-starter-kit-main\c\codes\4.1_motor.

  • Dopo aver selezionato la scheda (ESP32 Dev Module) e la porta appropriata, fai clic sul pulsante Upload.

  • Vedi sempre «COMxx sconosciuto»?

Una volta che il codice è stato caricato con successo, osserverai il motore ruotare in senso orario per un secondo, poi in senso antiorario per un secondo, seguito da una pausa di due secondi. Questa sequenza di azioni continuerà in un ciclo infinito.

Scopri di più

Oltre a far semplicemente ruotare il motore in senso orario e antiorario, puoi anche controllare la velocità di rotazione del motore utilizzando la modulazione della larghezza di impulso (PWM) sul pin di controllo, come mostrato di seguito.

Nota

  • Apri il file 4.1_motor_pwm.ino nel percorso esp32-starter-kit-main\c\codes\4.1_motor_pwm.

  • Dopo aver selezionato la scheda (ESP32 Dev Module) e la porta appropriata, fai clic sul pulsante Upload.

  • Vedi sempre «COMxx sconosciuto»?

Il codice precedente imposta direttamente i due pin del motore su livelli di tensione alti o bassi per controllare la rotazione e l’arresto del motore.

Qui utilizziamo la periferica LEDC (controllo LED) per generare segnali PWM e controllare la velocità del motore. Attraverso due cicli for, il ciclo di lavoro del canale A viene aumentato o diminuito da 0 a 255 mentre il canale B rimane a 0.

In questo modo, puoi osservare il motore aumentare gradualmente la sua velocità fino a 255, poi diminuire a 0, continuando a ciclo infinito in questo modo.

Se vuoi che il motore ruoti in direzione opposta, basta scambiare i valori dei canali A e B.