ARDUINO: DECODE SEÑAL SIN EL RECEPTOR DCF77



ITALIANO   ENGLISH    ESPAÑOL

 

INTRODUCCIÓN

Para la decodificación de la señal DCF77, que contiene la información de tiempo, es necesario para recibir la señal de la frecuencia de 77, 5 kHz. El proyecto presentado en esta página que permite decodificar la señal DCF-77, obteniendo la información de tiempo, no compra este receptor de radio. Sólo se necesita un PC y una tarjeta, presentada en este artículo, que se llama BF_DCF77. Este circuito nos permite obtener la información presente en la señal DCF-77, versión digital de la señal de salida de audio del PC sintonizado en 77,5kHz a través de una radio SDR controlada a través de la web como la que se encuentra en la siguiente dirección: SDR WEB RADIO.

La señal de salida a la tarjeta se conecta entonces a la Arduino que decodifica la información digital obtención de la información de tiempo.
En la siguiente dirección DCF_DECODER de Internet se presenta un proyecto en el que existe un decodificador harware basado en microcontrolador, pantalla LCD, que utiliza la interfaz BF_DCF77.

INTERFACE BF_DCF77

 En la Figura 1 muestra el diagrama eléctrico de la pestaña de demodulación BF_DCF77. El circuito se basa en dos transistores Q1 y Q2 y en unos pocos componentes pasivos. Este circuito permite derivar la envolvente de la señal de audio presente en la entrada IN_BF dando una versión digital de este sobre en el pasador VOUT. esquema de la interfaz eléctrica BF_DCF77

Fig. 1: esquema eléctrico de la interfaz de BF_DCF77

En la Figura 2 se ha informado de la captura de la pantalla del osciloscopio en el que se muestran las formas de onda de la señal de audio de entrada y 'que de salida correspondiente digital.

captura de osciloscopio de entrada / salida para BF_DCF77

Fig. 2: CH1 = señal de entrada de audio; CH2= señal de salida CH2

El circuito de la etapa de entrada está constituido por el transistor Q1 que está en la configuración de amplificador en Clase A. continuación, se aplica La salida de esta etapa a la etapa de detección de envolvente que consiste en D1, C1 y R1, mientras que la fase de digitalización es constituido por Q2, D2 y C3. El circuito opera con voltaje comprendido entre 3,3 V y 5 V para el que se puede conectar directamente a la Arduino


APLICACIÓN

Después de anotar la tarjeta, que es muy económico, se pasa a la conexión de la tarjeta BF_DCF77 Arduino MEGA 2560 con la interfaz. Se tarda sólo tres cables: uno para la tensión de alimentación positivo (rojo) tomado del conector de fuente de alimentación en el lugar marcado 5V, uno (negro) al GND y un (verde) para la señal de salida desde la interfaz que está conectado en el pin 2 la placa Arduino.

conexión entre Arduino y el BF_DCF77 interfaz

implementación de software

Aquí está el código (para Arduino Mega2560) que es una copia de este en la biblioteca de Arduino DCF77. Quien lo desee puede descargar directamente desde el programa IDE.

#include <Time.h>
#include <TimeLib.h>


#include "DCF77.h"
#include "Time.h"


#define DCF_PIN 2 // Connection pin to DCF 77 device
#define DCF_INTERRUPT 0 // Interrupt number associated with pin

time_t time;
DCF77 DCF = DCF77(DCF_PIN, DCF_INTERRUPT);

void setup() {
Serial.begin(9600);
DCF.Start();
Serial.println("Waiting for DCF77 time ... ");
Serial.println("It will take at least 2 minutes until a first update can be processed.");
}

void loop() {
delay(1000);
time_t DCFtime = DCF.getTime(); // Check if new DCF77 time is available
if (DCFtime != 0)
{
Serial.println("Time is updated");
setTime(DCFtime);

}
digitalClockDisplay();
}

void digitalClockDisplay() {
// digital clock display of the time
Serial.print(hour());
printDigits(minute());
printDigits(second());
Serial.print(" ");
Serial.print(day());
Serial.print(" ");
Serial.print(month());
Serial.print(" ");
Serial.print(year());
Serial.println();
}

void printDigits(int digits) {
// utility function for digital clock display: prints preceding colon and leading 0
Serial.print(":");
if (digits < 10)
Serial.print('0');
Serial.print(digits);
}




VIDEO /FOTO

Banco de pruebas para el proyecto BF_DCF77