Esperimenti per realizzare un ricevitore DCF77
By Claudio Fin



Il segnale viene trasmesso con una potenza di 50kW da Mainflingen,
vicino a Francoforte, e si può ricevere in un raggio di 1500..2500 km



Frequenza 77,5 kHz modulata in ampiezza (ASK) con riduzione della portante al 25%.
All'inizio di ogni secondo è trasmesso un bit, la trama completa comprende
59 bit più un secondo di pausa per la sincronizzazione.
.




L'antenna.

Antenna in ferrite 20cm x 1cm con preamplificatore a FET. E'collegata al ricevitore con del cavetto
schermato a 4 conduttori interni. L'avvolgimento è composto da circa 300 spire di filo 0,1mm di diametro.
La capacità di accordo è composta da un parallelo di piccoli condensatori e da un compensatore per la
regolazione finale. Per avere un buon Q questa capacità deve essere messa il più vicino possibile alla bobina.





Segnale di circa 40mVpp prelevato dal drain del secondo FET.
Siamo in una rara situazione molto "pulita" in cui è presente "solo"
una modulazione dovuta ad un segnale molto vicino.
Durante il giorno, e soprattutto la sera, sono presenti molti disturbi a
50 e 100Hz che rendono irriconoscibile il segnale.




Sistema con traslazione in banda audio (battimento con 80kHz locali)

 
(Errata corrige: la media frequenza è gialla e non rossa)


Segnale ricevuto (MP3 476k)



Spettro in uscita dal miscelatore, il segnale utile è la riga a 2,5kHz,
il segnale di disturbo è la frequenza a sinistra posta a circa 640Hz di distanza.
 


Lo stesso segnale filtrato via software per evidenziarne la componente utile.




Ricevitore con filtro IF accordato, amplificazione IF e circuito AGC.

 


Segnale ricevuto 2,5kHz 2,5Vpp (MP3  107k)


 



Ricevitore migliorato con 4 filtri accordati IF e amplificatore intermedio.

All'uscita dei diodi demodulatori ci sono circa 8V, che scendono a 4 durante gli impulsi,
un comparatore con soglia a circa 6V li rende visibili con un LED.

 
(errata corrige: la rete CR all'uscita dal'ultimo filtro IF
da 10n+10k è in realtà da 33n 3,3k)



Spettro all'uscita delle 4 sezioni filtro IF.




Impulsi 110000000  in uscita dal comparatore rimodulati a 4kHz con un NE555 (MP3 155k)

Dopo mezzanotte o l'una la ricezione diventa praticamente perfetta fino al mattino.
Durante le ore lavorative, ma soprattutto in quelle serali dalle 17 in poi, sono invece presenti molti disturbi
visibili come un segnale sovrapposto ai due livelli di uscita del demodulatore.
Quando questo segnale sovrapposto diventa così forte da raggiungere la soglia intermedia del
comparatore la decodifica degli impulsi fallisce. Un piccolo margine di miglioramento consiste nel
trattare gli impulsi con strategia di antirimbalzo sia in attacco che in rilascio.


Esempio di disturbo a "pernacchia" (MP3  77k)
Altro tipo di disturbo (MP3 62k)

Questi tipi di disturbo diventano spesso abbastanza forti da soffocare completamente il segnale utile.



Trama ricevuta domenica 7 settembre 2003 alle 12:37
(decodificata "a mano")

I bit rossi sono il controllo parità pari dei bit precedenti a partire da quello successivo al bit di parità precedente.
Nel caso del primo bit di parità contano tutti quelli a partire dall'inizio della trama.
Il bit verde è lo "start" dei dati e vale sempre 1.
I dati sono trasmessi in BCD con il bit meno significativo e la cifra meno significativa per primi.
Il campo G.S indica il giorno della settimana, lunedi'=1, domenica=7.
La trama ricevuta si riferisce al minuto che sta per iniziare, quindi è stata ricevuta durante il 37esimo minuto .





I bit "stato" hanno il seguente significato:

0  Viene posto a 1 se è in uso l'antenna di riserva
0  Viene posto a 1 se cambia l'ora legale entro 1 ora
10 Valgono 10 se ora legale, 01 se ora solare        
0  ?????????                                         





Sezione radio contenente amplificazione RF, oscillatore locale
e miscelatore montata in modo definitivo su millefori.
È stato aggiunto un compensatore per regolare la frequenza
del quarzo e un ulteriore stadio amplificatore RF.




In questo schema non è riportato, ma e' sottointesa la presenza
di un regolatore di tensione da 5V (78L05) per alimentare i TTL.
Se non usato il terminale AGC va collegato a massa.



L'amplificazione rigenerativa.

Accidentalmente durante alcune prove di amplificazione IF tutta la catena si è comportata
come un circuito rigenerativo, autooscillando e agganciandosi al segnale ricevuto.
Ho visto che  un simile anello è adatto ad amplificare in modo molto
selettivo una sola frequenza migliorando il rapporto segnale/disturbo.
Lo schema di principio qui sotto riporta la configurazione sperimentale adottata.
È un po' critica da tarare in quanto ogni trimmer influisce su tutti gli altri,
ma permette di "estrarre" il segnale utile anche in condizioni rumorose.
Tutti i trimmer sono naturalmente multigiri.




Stadio filtro IF, amplificatore rigenerativo, AGC e
demodulatore ASK a comparazione e integrazione.
Lo stadio rigenerativo è così selettivo che le due celle di filtro IF iniziali non
servirebbero neppure, ma aiutano ad abbattere la fortissima frequenza vicina.




Segnale ricevuto (MP3 155k)







Analisi di alcuni segnali.


Forma d'onda e spettro in condizioni di buona ricezione.
I segmenti azzurri in corrispondenza dei "buchi" della portante sono i 4kHz prodotti
da un NE555 comandato dal comparatore di uscita che in qualche modo "rientrano".
Le altre righe blu più in alto sono delle armoniche.



Segnale molto rumoroso, un rivelatore a diodi sarebbe probabilmente in crisi,
ma come si vede qui invece gli impulsi vengono ancora decodificati correttamente.



Ed ecco un disturbo "cattivo"... si può notare l'intervento dell' AGC



Spettro del disturbo in uscita dal miscelatore, si tratta di un segnale attorno ai 3..3,5 kHz
 che si sposta rapidamente  in frequenza arrivando anche a coprire i 2,5kHz del segnale utile (MP3 101k)




Esempio di uscita del convertitore con segnale utile praticamente indistinguibile ad orecchio,
che però veniva ancora rivelato dal circuito rigenerativo (MP3 350k)





Realizzazione finale di un orologio radiocontrollato.

Il mobile è ricavato da un vecchio rottame. L'antenna preamplificata si collega
con 1,2 metri di cavetto schermato a 4 conduttori interni tramite un connettore DIN a 5 poli.
Va tenuta distante dal ricevitore di almeno 40..50 cm per evitare di captare disturbi dal trasformatore
di alimentazione e dalle bobinette di filtro dell'oscillatore locale. Il cavo di alimentazione comprende la terra,
questa va collegata alla massa del circuito in quanto permette una ricezione migliore.
Il display è ottenuto dal kit LX1014 di Nuova Elettronica.





Particolare del preamplificatore
di antenna e della capacità di accordo
composta da un parallelo sperimentale
di diverse piccole capacita'.

Vista del cablaggio interno.

Sezione IF, demodulatore AGC
e demodulatore ASK.

Per la decodifica della trama ho scelto di
usare un PIC 16F628, una delle sue caratteristiche
è quella di non richiedere nessun componente
esterno per funzionare. I processi sono agganciati
ad una frequenza di 250 Hz, ricavata dal quarzo
dell'oscillatore locale tramite altri due contatori.
Questo permette di campionare il segnale di
ingresso a passi di 4 mS, e fornisce la base tempi
per l'avanzamento dell'orologio. Il led rosso vicino al
PIC serve per il debug del programma. Il connettore
a 5 poli in alto a destra serve per la programmazione
in-circuit (ICSP).

IL display è pilotabile in modo seriale sincrono tramite
soli 4 fili: +5V, dati, clock e GND. Dispone di un quinto
filo per comandare direttamente il led giallo.
Su questo led vengono visualizzati gli impulsi provenienti
dal demodulatore. Il led verde indica la condizione di
sincronismo ok e rimane acceso fino alla ricezione di
un errore. Quello rosso si accende per un attimo ad ogni
errore ricevuto, o rimane acceso fisso dopo 6 ore di
mancata sincronizzazione.


Schema elettrico completo.

Non sono riportati, in quanto sottointesi, tutti i collegamenti di alimentazione degli integrati,
i condensatori di bypass sull' alimentazione stessa, l'intero cablaggio dei contatori e del PIC.
Per l'alimentazione a +5V del display e del micro ho usato un secondo regolatore 7805.





Il software.

Il software, scritto interamente in assembler, è stutturato
ad automi a stati finiti che avanzano ogni 4 mS.




Debounc provvede a leggere e filtrare i brevi "rimbalzi" degli impulsi
in arrivo sul pin RB1, il valore filtrato è posto nel bit pulse.
Leggibit è l'automa che riconosce la pausa di sincronizzazione, conta
la durata degli impulsi e si mette in loro ascolto solo in precise
finestre temporali di 200 mS in modo da tagliare fuori eventuali
impulsi spurii tra un bit e l'altro. Ad ogni bit ricevuto, che viene messo in
rx_bit, lo stato 2 richiama il sottoprocesso leggitrama, che provvede alla
decodifica dei bit e al controllo della parita'. In ogni caso dopo 36 chiamate
il processo leggitrama restituisce il responso settando i bit trama_ok
oppure rx_error. I bit successivi della trama fino alla successiva pausa
di sincronismo vengono semplicemente ignorati. Orologio e visualizza
si occupano di incrementare il conteggio orario e di visualizzare tutte le
informazioni sul display, compreso il lampeggio dell'ora non regolata, e il
comportamento dei due led verde e rosso.
Non è prevista nessuna regolazione manuale.


Il programma: dcf77.txt (14k)


 

Discussioni su it.hobby.elettronica riguardo a questo progetto [1] [2] [3]
Interessante esperimento parallelo con filtro giratore.
Altro sito con molte informazioni sul segnale.


Pagina creata nel novembre 2003 - Ultimo aggiornamento 11/6/2005