Cos'è ElectroYou | Login Iscriviti

ElectroYou - la comunità dei professionisti del mondo elettrico

Ricerca personalizzata
7
voti

Ricevitore per onde convogliate "software defined"

Indice

Generalità

Diversi anni addietro ho realizzato un sistema a onde convogliate per reti domestiche, col semplice scopo di telecomandare dei normali relè interruttori a impulsi per le luci di casa. Per inciso, le unità trasmittenti del detto sistema sono abbastanza piccole per essere collocate dentro le normali scatole murali degli interruttori.

La parte ricevente

Le unità riceventi sono state realizzate inizialmente con un filtro attivo a componenti discreti, ma in seguito alla diffusione di pompe di calore a inverter e di grandi TV color, hanno presentato qualche falso intervento dovuto ai forti disturbi presenti sulla rete. Quindi è stata realizzata una nuova versione a circuiti accordati. Ultimamente, avendo il sottoscritto acquisito una certa esperienza con l'uso dei microcontrollori, è sorta l'idea di affidare il tutto a una MCU. Riporto una foto in cui si vedono sovrapposte sia le due versioni precedenti, che la detta terza versione in esecuzione provvisoria su millefori.

rif2.jpg

rif2.jpg

La costituzione del segnale

Ciascun comando è costituito da 7 pacchetti di oscillazioni a 141 khz, sincronizzati con la frequenza di rete a 50 Hz. Pertanto ogni comando dura 7x20 = 140 msec. E' chiaro che ciascuno dei 7 pacchetti può essere presente o assente, così da codificare uno specifico comando, ad eccezione del primo pacchetto che è sempre presente e funge da segnale di avviamento della decodifica.

La tecnica di rivelazione tramite MCU

E' stata prescelta una MCU tipo pic32, che presenta un assorbimento ridotto pari a circa 30 mA quindi semplifica il lavoro dell'alimentatore capacitivo da rete. Lo ADC a 10 bit può arrivare teoricamente a 1 Msample/sec e il processore può fare fino a 40 MIPS (milioni di istruzioni al secondo). Quindi direi che non è possibile sovracampionare il segnale analogico in quantità sufficiente per realizzare un vero e proprio filtro selettivo a 141 khz. Per procedere ugualmente con la realizzazione, ho seguito una tecnica semplificata di rivelazione sincrona DIY di cui riporto il diagramma di flusso:

Le variabili nel programma sono definite come intere a 16 bit, ad eccezione dei due accumulatori che sono interi a 32 bit.

Conclusioni

Il programma della MCU è stato poi completato con un ulteriore filtraggio del valore rivelato e con la parte logica di decodifica del comando. I risultati sono tuttora all'esame ed appaiono promettenti, intanto come esperimento lo considero riuscito.

2

Commenti e note

Inserisci un commento

di ,

Complimenti !!!

Rispondi

di ,

Con fatica ho capito l'algoritmo: E' un filtraggio con costante di tempo di 1/64. Lo strutturerei in modo per me più chiaro, ma mi pare che il numero di operazioni non cambi: U = (I - U)* K + U; algoritmo filtraggio con costante numerica K <<1 I = SIF - SCF; seno in fase meno seno in contro fase. K = 1/64; U = I * K - U * K + U ; U seno filtrato U = I / 64 - U /64 + U lo stesso pr il coseno, entrambi se il segnale non è perfettamente sincrono potrebbero variare lentamente fra un massimo positivo e uno negativo. Tu li raddrizzi (prendi il modulo) e li sommi. se la somma è superiore a un certo valore allora rilevi la presenza del segnale.

Rispondi

Inserisci un commento

Per inserire commenti è necessario iscriversi ad ElectroYou. Se sei già iscritto, effettua il login.