Tutorial ESP32 45/55 - Server di streaming personalizzato con controllo LED CAM-3 l Kit di apprendimento ESP32 di SunFounder

Tutorial ESP32 45/55 - Server di streaming personalizzato con controllo LED CAM-3 l Kit di apprendimento ESP32 di SunFounder

In questo tutorial, esploreremo come impostare un server di streaming personalizzato utilizzando la scheda di estensione ESP32 di SunFounder. Il progetto consente di trasmettere video in diretta al tuo browser mentre controlli un LED direttamente dall'interfaccia. Questa combinazione di funzionalità consente un'esperienza di apprendimento pratica con le tecnologie IoT e web.

Utilizzeremo le capacità Wi-Fi integrate dell'ESP32 per creare un server web che trasmette video e gestisce i comandi di controllo dei LED. Il progetto prevede la programmazione, cablaggio e comprensione di come interagiscono i componenti. Se desideri una comprensione più chiara della configurazione, assicurati di controllare il video (nel video a :00).

Hardware Spiegato

I componenti principali per questo progetto includono il microcontrollore ESP32, un modulo fotocamera, un LED e una resistenza. L'ESP32 è un microcontrollore versatile con Wi-Fi e Bluetooth integrati, rendendolo perfetto per le applicazioni IoT. Il modulo fotocamera ci consente di catturare video, mentre il LED fornisce un semplice dispositivo di uscita per il controllo.

Il LED è collegato attraverso una resistenza per limitare la corrente, prevenendo danni sia al LED che al microcontrollore. Questa configurazione ci permetterà di accendere e spegnere il LED tramite la nostra interfaccia web, mostrando le capacità dell'ESP32 nella gestione di ingressi e uscite su una rete.

Dettagli della scheda tecnica

ProduttoreEspressif
Numero di parteESP32-WROOM-32
Tensione Logica/IO3,3 V
Tensione di alimentazione3.0-3.6 V
Corrente di uscita (per canale)12 mA
Corrente di picco (per canale)40 mA
Linee guida sulla frequenza PWM1 kHz
Soglie logiche di ingresso0,2 V (basso) / 0,8 V (alto)
Caduta di tensione / RDS(on)/ saturazione0,2 V (tip.)
Limiti termiciTemperatura massima di giunzione: 125 °C
PacchettoQFN48
Note / variantiDisponibile in diverse configurazioni

  • Assicurati che l'ESP32 sia alimentato con un'alimentazione regolata a 3,3 V.
  • Usa una resistenza di limitazione della corrente (220 Ohm) con il LED per prevenire danni.
  • Mantenere connessioni adeguate per evitare ingressi flottanti.
  • Controlla che le credenziali Wi-Fi siano corrette e sensibili al maiuscolo.
  • Utilizza una fonte di alimentazione stabile per prestazioni costanti.
  • Considera la dissipaione del calore negli spazi chiusi.

Istruzioni di cablaggio

esp32-45-streaming-sever-wriing

Per collegare l'ESP32 e il LED, inizia collegando il pin più lungo del LED a un pin GPIO adatto, in questo caso utilizzeremo il pin 14. Il pin più corto dovrebbe collegarsi alla linea di massa sulla tua breadboard. Successivamente, posiziona una resistenza da 220 Ohm in serie con il LED, collegando un'estremità al pin GPIO (pin 14) e l'altra estremità alla massa. Assicurati che l'ESP32 sia alimentato correttamente, sia tramite la porta micro USB che con una batteria al litio 18650.

Per il modulo della fotocamera, assicurati di collegare i pin necessari secondo il modello di fotocamera che stai usando, poiché il cablaggio può variare leggermente. L'ESP32 gestirà il flusso video tramite le sue capacità integrate, e il controllo dei LED sarà gestito attraverso l'interfaccia web che configureremo nel codice.

Esempi di codice e guida passo passo

Il programma inizia includendo le librerie necessarie e definendo le credenziali Wi-Fi. Dovrai sostituiressidepasswordcon le tue attuali credenziali Wi-Fi per connettere l'ESP32 alla tua rete.

const char* ssid = "SSID";
const char* password = "PASSWORD";

Successivamente, definiamo il pin LED e impostiamo le configurazioni della fotocamera. Il pin utilizzato per il LED è definito comeLED_PIN, che sarà utilizzato successivamente nel codice per controllare lo stato del LED.

#define LED_PIN    14
pinMode(LED_PIN, OUTPUT);

Nella funzione di gestione della richiesta per il controllo LED, controlliamo il comando ricevuto dall'interfaccia web. A seconda che il comando sia "on" o "off", utilizziamodigitalWrite(LED_PIN, 1);accendere il LED edigitalWrite(LED_PIN, 0);per spegnerlo.

if(!strcmp(variable, "on")) {
  Serial.println("ON");
  digitalWrite(LED_PIN, 1);
}
else if(!strcmp(variable, "off")) {
  Serial.println("OFF");
  digitalWrite(LED_PIN, 0);
}

Questa logica consente all'interfaccia web di comunicare in modo efficace con l'ESP32, abilitando il controllo in tempo reale del LED basato sulle interazioni degli utenti. Il codice completo è caricato sotto l'articolo per ulteriori esplorazioni.

Dimostrazione / Cosa Aspettarsi

Una volta che tutto è configurato e il codice è caricato, dovresti essere in grado di accedere all'indirizzo IP dell'ESP32 nel tuo browser web. Il video in streaming apparirà e puoi controllare il LED utilizzando i pulsanti sull'interfaccia. Cliccando su "ACCENDE" il LED si illuminerà, mentre "SPENGI" lo spegnerà. Assicurati che l'ESP32 e il tuo computer siano connessi alla stessa rete per garantire il corretto funzionamento (nel video alle 12:30).

Timestamp video

  • 00:00 Inizio
  • 1:51 Introduzione al progetto
  • 2:31 Pagina di documentazione
  • 3:33 Spiegazione del cablaggio
  • 5:08 Codice Arduino spiegato
  • 13:28 Selezionare la scheda ESP32 e la porta COM nell'Arduino IDE
  • 15:10 Dimostrazione

Immagini

ESP32-40-micro-sd-card-2
ESP32-40-micro-sd-card-2
esp32-45-streaming-sever-wriing
esp32-45-streaming-sever-wriing
846-ESP32 Tutorial 45/55- Arduino code for Custom Streamign Server
Lingua: C++
Copia!

Risorse e riferimenti

File📁

Nessun file disponibile.