La trasmissione video wireless è oggi una richiesta molto richiesta sul mercato. Prodotti come baby monitor, campanelli video e giocattoli che devono controllare e trasmettere in remoto flussi video e audio devono essere progettati con bassa potenza, larghezza di banda ridotta (circa 1,3 Mbit/s) e comunicazione wireless diretta per applicazioni a lunga distanza. In questo articolo presenteremo la soluzione per la trasmissione video wireless per comprendere il concetto di design di questo progetto di riferimento e le caratteristiche funzionali dei relativi dispositivi.
Sistema di trasmissione video wireless a bassa larghezza di banda e bassa potenza
Questo progetto di riferimento utilizza la famiglia di MCU STM32H7 ad alte prestazioni e basso consumo di STMicroelectronics, basati su Arm® Cortex®-M7, per realizzare un sistema di trasmissione video wireless a bassa larghezza di banda e basso consumo. Il design evita l'uso di soluzioni di connettività ad alto consumo energetico come Wi-Fi o HDMI wireless ad alto costo e utilizza la trasmissione diretta dei dati punto a punto, evitando la necessità di connettersi tramite Wi-Fi per ridurre al minimo i problemi di hacking e di sicurezza Internet . Inoltre, il design elimina la necessità di un sistema operativo, riducendo così la quantità di memoria di sistema richiesta, e supporta la trasmissione a lunga distanza con la possibilità di aggiungere ulteriori PA/LNA per aumentare la portata di trasmissione fino a 300 m.
Per ridurre al minimo il costo della soluzione, è stata scelta un'implementazione SoC (System-on-Chip) a basso costo, utilizzando la famiglia di MCU STM32H7 della ST basata su Arm® Cortex®-M7, poiché il processore utilizza La tecnologia di memoria non volatile (NVM) della ST consente di raggiungere i 1.327 DMIPS per 3224 CoreMark leader del settore del microcontroller Cortex-M, il punteggio di riferimento più alto del settore, e viene eseguito dalla memoria Flash incorporata. Inoltre, incorpora un pedale dell'acceleratore hardware JPEG per una codifica e decodifica JPEG veloce per ridurre il carico sulla CPU, combinato con un'architettura di dominio multi-potenza che può essere impostata per ottimizzare l'efficienza energetica impostando diverse configurazioni di dominio di potenza a basso consumo. modalità.
Per ottimizzare la qualità di trasmissione del video, viene selezionato un modulo RF che supporta basso consumo energetico, lungo raggio e forti caratteristiche anti-jamming, che opera nella banda ISM a 2,4 GHz, modula con GFSK adatto a questa applicazione e implementa sia l'estremità ricevente che quella trasmittente nel sistema integrato.
Soluzioni RF wireless complete
Il design hardware della soluzione dimostra la trasmissione e la ricezione video wireless utilizzando una connessione RF a bassa potenza, quindi è dotata di due unità tra cui un trasmettitore AV e un ricevitore AV.
L'unità demo del trasmettitore AV integra un modulo fotocamera per l'acquisizione di dati video, un microfono a modulazione di densità di impulsi (PDM) per l'acquisizione di dati vocali e un modulo RF per la trasmissione di dati AV. I dati video vengono inviati a un codificatore JPEG con accelerazione hardware basato su un microcontroller core Arm® Cortex®-M7 per eseguire la compressione video. Il software di decodifica del microcontrollore converte i dati audio PDM in dati in formato Pulse Code Modulation (PCM), quindi combina i dati video e audio e li passa attraverso l'interfaccia SPI al modulo RF per la trasmissione all'unità ricevente. Un pannello LCD opzionale viene utilizzato per l'interfaccia utente e le funzioni di visualizzazione del video catturato.
Per accelerare lo sviluppo, è stato scelto il kit STM32H7B3I-DK Discovery, che è una piattaforma demo e di sviluppo completa per il microcontroller STM32H7B3LIH6QU basato sul core Arm® Cortex®-M7 di STMicroelectronics. Il kit comprende quasi tutte le periferiche come USB OTG_HS, microSD, USART, FDCAN, Audio DAC Stereo, Fotocamera, SDRAM, Octo-SPI Flash e interfaccia RGB LCD con pannello touch capacitivo. Inoltre, il connettore ARDUINO® Uno V3 consente una facile connessione alle schede figlie di espansione e il modulo RF è progettato per essere adatto a Il modulo RF è progettato per adattarsi a questo connettore ARDUINO® Uno V3 come scheda figlia per collegare il modulo RF al microcontroller per trasmettere dati AV.
L'unità dimostrativa del ricevitore AV, invece, incorpora un modulo RF per ricevere dati AV dal trasmettitore. I dati video ricevuti vengono inviati al decoder JPEG con accelerazione hardware del microcontroller basato sul core Arm® Cortex®-M7 per decomprimere i dati video in formato RGB, un codec audio per decodificare i dati audio ricevuti e un adattatore DSI-HDMI per passare il video RGB alla porta HDMI.
Il ricevitore AV utilizza il kit STM32H747I-DISCO Discovery, una piattaforma demo e di sviluppo completa per i microcontroller STM32H747XIH6 dual-core Arm® Cortex®-M7 e -M4 di STMicroelectronics con quattro I2C, sei SPI full-duplex con due SPI full-duplex multiplex con quattro I2C, sei SPI con due interfacce I2S full-duplex multiplex, SDRAM, Quad-SPI Flash, connettore DCMI, interfaccia MIPI DSI e altro ancora. Inoltre, il connettore ARDUINO® Uno V3 consente un facile collegamento alle schede figlie di espansione. Il modulo RF è progettato per adattarsi come scheda figlia collegata a questo connettore ARDUINO® Uno V3, che collega il modulo RF al microcontroller per ricevere dati AV.
Modulo RF e di rilevamento immagini ad alta efficienza e alta qualità
Il ricetrasmettitore RF SOC STM32WB55 e RF EFM per banda 2,4 Ghz RF EFM è un modulo con fattore di forma ridotto con interfacce UART e SPI per il controllo e la trasmissione dei dati. Ha una potenza di uscita massima fino a 20 dBm nella banda da 2,4 GHz ed è in grado di trasmettere dati fino a 200 m in linea d'aria. Il modulo utilizza la tecnologia del salto di frequenza per evitare interferenze con altri sistemi, consentendo così la coesistenza multiutente e Wi-Fi.
STM32WB è un MCU basato su Arm® Cortex®-M4 a 32 bit con un chipset integrato con ricetrasmettitore RF wireless multiprotocollo che gestirà tutta l'elaborazione associata al livello RF, inclusa la ritrasmissione della perdita di dati, RSSI , controllo della potenza RF e FIFO, rendendo l'intero processo di comunicazione wireless trasparente al sistema.
Il modulo sensore immagine nella demo supporta 2 moduli fotocamera. Oltre al modulo sensore CMOS fornito con STM32H7 EVB, è presente anche un modulo realizzato con sensore immagine MT9M114, obiettivo e filtro di ON Semiconductor. Costruito su una scheda FPC con un'interfaccia parallela standard, il modulo consente agli utenti di sviluppare facilmente sistemi di imaging senza doversi preoccupare di messa a fuoco, filtraggio e allineamento ottico.
Il modulo fotocamera utilizza il sensore di immagine 720p di ON Semiconductor, MT9M114, che è un sensore di immagine di alta qualità progettato utilizzando un SOC. Il SOC implementa una varietà di funzioni della fotocamera, tra cui messa a fuoco automatica, bilanciamento automatico del bianco ed esposizione automatica, rendendolo una soluzione economica, compatta e a chip singolo che offre una qualità dell'immagine superiore e facilità di integrazione, riducendo i costi complessivi del sistema e accelerando time-to-market. time-to-market.
Ambiente di sviluppo software avanzato, gratuito ed estensibile
Per lo sviluppo del software, STM32CubeIDE ver.1.6.1 viene utilizzato per la programmazione e il debug del codice sorgente. STM32CubeIDE è uno strumento di sviluppo di sistemi operativi multi-in-uno fornito gratuitamente da STMicroelectronics, una piattaforma di sviluppo C/C++ avanzata con configurazione delle periferiche, generazione di codice, compilazione di codice e debug per microcontrollori e microprocessori STM32. funzioni.
Lo sviluppo del software del trasmettitore AV inizia con l'inizializzazione del modulo RF, del modulo telecamera e del microfono PDM. La fotocamera cattura i dati video tramite l'interfaccia DCMI dell'STM32H7. Ogni fotogramma video catturato genera un'interruzione, il frame buffer viene trasferito alla memoria di sistema attraverso un canale DMA, quindi il frame buffer viene inviato al pedale dell'acceleratore JPEG hardware integrato nell'STM32H7, che comprime i fotogrammi video nel formato JPEG per ridurre al minimo la larghezza di banda richiesta. Allo stesso tempo, il microfono PDM cattura i dati vocali attraverso l'interfaccia DFSDM dell'STM32H7 a una frequenza di campionamento di 8 Khz e converte i dati di modulazione della densità di impulsi in dati di modulazione codificati a impulsi a 16 bit tramite decodifica software e uno schema di compressione proprietario è implementato al fine di ridurre la larghezza di banda dei dati audio trasmessi.
Lo sviluppo del software del ricevitore AV inizia quindi con l'inizializzazione del modulo RF, del codec audio e dell'adattatore DSI-HDMI, quindi il microcontrollore STM32H7 monitora lo stato del modulo RF e, una volta ricevuti i dati AV, vengono estratti i dati video e inserito nel pedale dell'acceleratore JPEG hardware integrato dell'STM32H7, che decomprime i dati video in dati del fotogramma RGB. I dati del fotogramma RGB verranno quindi trasferiti al buffer del display e il video verrà trasmesso al monitor LCD se è installato un LCD . Altrimenti il video verrà trasmesso a un display HDMI esterno tramite un adattatore DSI-HDMI. I dati audio ricevuti verranno decompressi e quindi amplificati a una frequenza di campionamento di 16 Khz per ospitare un dispositivo HDMI esterno (ad esempio un televisore con requisiti minimi di frequenza di campionamento).
Il progetto di riferimento verrà ulteriormente sviluppato in futuro, includendo il rilevamento della perdita di pacchetti e la gestione degli errori per la trasmissione wireless per migliorare la stabilità e la durata della trasmissione video. D'altra parte, il progetto attualmente utilizza algoritmi di compressione e decompressione proprietari e, per supportare frequenze di campionamento più elevate e mantenere una larghezza di banda minima, possono essere implementati altri codec audio, come il codificatore MP3 G722. Inoltre, per alcune applicazioni come il monitoraggio del campanello, il processore STM32H7 può essere utilizzato per incorporare un algoritmo di rilevamento del volto che rileva il volto prima di attivare la RF per la trasmissione video per ridurre ulteriormente il consumo energetico.
Conclusione
Questo documento utilizza la famiglia di microcontrollori STM32H7 basati su core Arm® Cortex®-M7 a basso costo e ad alte prestazioni di STMicroelectronics per creare una soluzione dimostrativa di trasmissione video wireless a bassa larghezza di banda e a basso consumo che ottimizza l'uso dell'STM32H7 integrato Motore JPEG con accelerazione hardware per ridurre la larghezza di banda richiesta per la trasmissione video e il basso consumo. Il modulo RF utilizza la banda ISM da 2,4 GHz e un protocollo di comunicazione proprietario per migliorare l'efficienza energetica della trasmissione RF. Il firmware API di streaming integrato nel modulo RF riduce i tempi di sviluppo della soluzione e consente agli sviluppatori di concentrarsi su diverse applicazioni, come un baby monitor o un sistema di monitoraggio del campanello, e questo progetto di riferimento andrà a vantaggio dei progettisti interessati allo sviluppo di prodotti correlati.