Receptores de radio, parte 2

Días pasados hable sobre los receptores súper heterodinos caracterizados por el uso de un oscilador local variable VFO con el cual se consigue trasladar la frecuencia que se quiere recibir a una frecuencia fija llamada FI mediante un proceso llamado heterodino.
Una primera pregunta es por qué se llaman “súper heterodinos”? La respuesta es que el principio heterodino fue inventado unos años que el radio. En esa época, con el fin de hacer audibles las transmisiones de telegrafía, a la portadora de la señal telegráfica se le mesclaba un tono audible para que pudiera ser entendido. Esta mezcla de dos señales condujo al uso del término heterodino de las raíces griegas Hetero que significa diferente y Dino que significa fuerza. Cuando Armstrong invento los radios hacia 1918 el nombre era “Supersónico Heterodino”, el termino Supersónico tenía el significados de ondas más allá de las frecuencias audibles aunque ahora significa una velocidad mayor que la del sonido. Lo importante es que los radios se llamaban “Supersónico Heterodino” pero el público lo simplifico como Súper Heterodinos.
Casi todos los radios usados para telecomunicaciones están basados en el principio Heterodino. Los receptores de HF (3 a 30 Mhz) son radios de dos, tres o cuatro conversiones y la primera frecuencia intermedia está en la banda de VHF generalmente 70 MHz. La escogencia de una frecuencia muy alta es logran un mejor rechazo de la señal imagen. Recordemos que en el principio heterodinos mezclamos un frecuencia del VFO con la frecuencia que queremos recibir a la salida tendremos frecuencias suma y resta de las dos señales que se mezclan. Nosotros estamos interesados o en la suma o en la diferencia y debemos rechazar la otra. Si nosotros queremos la suma entonces debemos rechazar la frecuencia resta o viceversa. La señal que rechazamos se llama la frecuencia imagen y podemos ver que la separación entre la señal recibida y la señal imagen es dos veces el valor de la frecuencia intermedia. Si usamos una FI de 70 MHz la señal imagen estará 140 Mhz más arriba lo que resulta fácil de rechazar.
Otra característica común a los modernos receptores es el uso de VFO basados en el principio PLL. Estos VFO permite generar una frecuencia muy exacta en un valor fijado numéricamente.
PLL corresponde al acrónimo en inglés de Phase Loop Locked que significa algo así como “bucle de fase enganchado” y es el resultado de circuitos electrónicos posibles con el uso de componentes de reciente desarrollo.
Los circuitos oscilantes clásicos están construidos con un condensador y una bobina y la frecuencia depende de los valores del condensador y la bobina. Para conseguir que la frecuencia cambie, variamos el valor de uno de estos dos componentes. Generalmente se usa un condensador variable por rotación de un eje y dependiendo de la posición del eje se determina la frecuencia de operación.
Actualmente existen los diodos semiconductores hechos con germanio o silicio. Cuando un diodo se polariza inversamente, es decir en el sentido de no conducción, el diodo se comporta como un condensador cuyo valor depende de la magnitud del voltaje inverso aplicado: a mayor voltaje inverso es menos la capacidad presentada.
Esta propiedad de los diodos semiconductores nos permite usar a los diodos como si fuera un condensador variables cuyo valor capacitivo depende de la magnitud del voltaje inverso aplicado. En teoría cualquier diodo actúa como un condensador variable controlado por voltaje pero en la industria existen condensadores especialmente construidos para tener esta propiedad y se conocen entonces como Varicap.
Si construimos un circuito con una bobina y un Varicap tenemos un oscilador cuya frecuencia depende del voltaje aplicado al Varicap, es decir que la frecuencia depende de un voltaje y estos circuitos se denominan genéricamente VCO (Voltage Control Oscilator).
Recordemos que un VFO antiguo la frecuencia se fijaba por medio de un condensador variable mecánico y uno con la mano cambiaba de frecuencia cambiando la rotación del condensador. Con el uso de Varicaps podemos fabricar VCO cuya frecuencia depende del voltaje aplicado. Como el voltaje es un parámetro que puede ser manipulado por circuitos electrónicos entonces los VCO se convirtieron en VFO de control automático.
El siguiente paso fue usar un oscilador de una frecuencia fija y muy exacta (oscilador con cristal de cuarzo) y disponer de un oscilador de tipo VCO. Las frecuencias del VCO y del oscilador fijo se llevan a un circuito que compara las dos frecuencias. El comparador da un voltaje cero cuando las dos frecuencias son iguales y diferente de cero si existe una diferencia entre las dos frecuencias. Este voltaje de “error” se lleva hacia el VCO superpuesto al voltaje usado para controlar la frecuencia. El resultado es que nuestro VCO debe oscilar exactamente a la misma frecuencia del oscilador fijo. Si hay alguna diferencia el detector de frecuencia produce un voltaje de error que se usa para corregir el voltaje de control sobre el varicap y alterar la frecuencia del VCO hasta que llegue a estar exacta con la fija y que el error sea nulo donde se queda estable.
El comparador de frecuencia se hacen generalmente como un comparador de fase (son más sencillos). El circuito de tomar una información de error y usarla para que un circuito cambie se conocen como bucles o lasos de realimentación con lo que se consigue que la frecuencia quede asegurada o enclavada en un valor da lugar al nombre de esta técnica: PLL Phase o fase, Loop o bucle o laso y LOCKED es asegurado.
Ahora bien un VFO construido como un PLL la frecuencia del oscilador será exactamente la frecuencia del oscilador fijo que tenemos como referencia y esto no seria nada practico. Producir un circuito que nos genera una frecuencia igual a otra que ya tenemos, pero aquí intervienen la electrónica diseñada para los circuitos digitales y de computadoras.
En el PLL la frecuencia del oscilador variable será exactamente la frecuencia usada como referencia. Si nosotros dividimos la frecuencia de referencia por 2 (la mitad) y usáramos este resultado como nueva frecuencia de referencia, la frecuencia del VFO será la mitad de la frecuencia fija original. Si dividimos la frecuencia de referencia por dos y el resultado lo dividimos de nuevo por dos podríamos poner el VFO a trabajar en una frecuencia que sería un cuarto de la frecuencia original.
Es decir que si nosotros tenemos un PLL en el cual la frecuencia de referencia es dividida por un circuito antes de usarla en el comparador de fase podemos tener un oscilador en la frecuencia resultante del factor de división. Aquí es donde llega la ayuda de circuitos diseñados para usar en computadores donde podemos construir un divisor programable cuyo factor de división dependa de un valor numérico introducido previamente al circuito.
El circuito del divisor programable es muy complejo requiere un numero inmenso transistores pero actualmente se construyen dentro de circuitos integrados en los cuales se integra también el comparador y el oscilador de la frecuencia de referencia. En la práctica lo único que tenemos es un circuito integrado PLL al cual le adicionamos un VFO controlado por voltaje. La frecuencia de trabajo del VFO será la frecuencia de referencia dividido por el valor a que programamos el divisor. Si queremos cambiar de frecuencia, lo que debemos hacer es cambiar el factor de división.
Por ejemplo, podemos usar un PLL que utiliza un cristal para una frecuencia de referencia de 120 MHz pero queremos emitir una frecuencia de 7 MHz. Entonces tendríamos que programar el divisor a un factor de 120/7 = 17,1428571. Parece complicado, pero no es problema porque la división la hace un microprocesador que acompaña a los radios modernos. Además la división debe hacerse con números binarios y el factor debe ser un numero binario, es decir que es 2 elevado una potencia dada.

VFO digital para el FT-101

Tengo un equipo FT-101F fabricado por YAESU en los años 70´s y está completamente funcional y excelente estado físico. Mi idea es desarrollar unos proyectos electrónicos que permitan a experimentar con componentes nuevos y electrónica antigua.
El FT-101F es un equipo hibrido. La mayoría de los circuitos son transistorizados pero la etapa final, amplificador de potencia, es de tubos. El VFO es análogo y la frecuencia se lee observando el desplazamiento de una aguja sobre un tablero calibrado.

Mi primer proyecto es construir una interface entre el radio y un PC para conseguir que desde el PC se le pueda indicar cuál es la frecuencia que se desea debe operar el radio. Si este primer proyecto funciona, me abre la posibilidad de otros proyectos para logra controlar mas funciones del Ft-101 desde un PC.
Para la interface he escogido los siguientes dos componentes:
AD9850 un sintetizador de frecuencia DDF relativamente barato que me suministra cualquier frecuencia exacta menor a 50 MHZ.
Un ARDUINO para programar el AD9850 y sostener la comunicación con el PC.

ft101-2

La conexión entre el PC y el ARDUINO es por cable USB. La conexión del AD9850 al FT-101 se logra mediante un cable conectado en la parte trasera de FT-101. Es un conector Octal previsto para conexión de un VFO externo por lo cual no es necesario hacer ninguna modificación al FT-101.
El ARDUINO recibe alimentación de +5V por el cable USB y este le puede suministrar los 5V requiere el AD9850 para funcionar. De esta manera toda la interface recibe alimentación desde el PC y el AD9850 suministra una señal sinusoidal de 0.1 voltio suficiente para alimentar la entrada de VFO externa al FT-101. Esto significa que con solo estos dos componentes podemos implementar la interface.
IMPLEMENTACION

Las conexiones entre el ARDUINO nano y el AD9850 son sencillas:

ad9850-arduino

Los puertos digitales D4 a D7 son conectados a las espigas de control del AD9850 RST, DAT, FQ y CLK respectivamente.
La espiga “SinB” del AD9850 da la salida de una onda sinusoidal para conectar a la entrada externa de VFO del FT-101. Esta conexión debe hacerse con cable blindado (coaxial).

la foto

La foto superior muestra la implementación del Arduino nano en la derecha y el AD9850 en la izquierda sobre una placa de circuito impreso.
El arduino soporta el cable USB para conexión a la PC.
En el lado superior se observa el conecto preparado para conectarse al FT-101.
La placa de circuito impreso tiene espacio para alojar otros componentes electrónicos para futuros desarrollos pero no están en funcionamiento actualmente.
CODIGO PARA EL ADUINO

El siguiente es el código fuente para el ARDUINO nano.

/*=====================================================================

Proyecto: VFO para Yaesu FT-101F
Por: HK3EU
Version: 0.1
Fecha: Diciembre 3 2014

=========================================================*/

//————————
// Definicion de pines
//————————

#define W_CLK 7 // Pin 7 conectado a AD9850 W_CLK
#define FQ_UD 6 // Pin 6 conectado a AD9850 FQ_UD
#define DATA 5 // PIN 5 conectado a AD9850 DATA
#define RESET 4 // Pin 4 conectado a AD9850 RESET

#define BAUD_RATE 9600 // define baud_rate puerto serial
#define START_FREQUENCY 8600000 // frecuencia inicial

//————————–
// Definición de variables
//————————–
double usedFrequency; // frecuencia en uso
double Frequency; // usada en loop

//————————-
// FUNCIONES
//————————-

//————————–
// pulse(pin)
// Envia un pulso en el pin especificado.
//————————–

void pulse(int pin)
{
digitalWrite(pin, HIGH);
digitalWrite(pin, LOW);
}

//—————————
// sendByte(data)
// Enviar el data al AD9850
//—————————

void sendByte(byte data)
{
int i;
// Serial.println(data);
for(i = 0; i >= 1; // desplace data una posicion a la derecha
}
}

//—————————-
// sendFrequency(frequency)
// Envia la frecuencia la AD9850
// es el valor decimal de la frecuencia
// primero se calcula el valor a enviar al ad9850 para la
// frecuencia escogia.
//—————————–

void sendFrequency(double frequency)
{
int32_t data_AD9850;
int i;

data_AD9850 = frequency * 4294967295/125000000; // 4294967295 = 2 potencia 32
// Serial.print(frequency);
// Serial.print(” – “);
// Serial.println(data_AD9850);
for(i = 0; i >= 8; // desplace 8 bit a la derecha
}
sendByte(0x00); // envie 0 final
pulse(FQ_UD); // hecho
}

//———————————
// Funcion — setup() —-
//———————————

void setup()
{
// Configurar los pin del arduino
pinMode(FQ_UD, OUTPUT);
pinMode(W_CLK, OUTPUT);
pinMode(DATA, OUTPUT);
pinMode(RESET, OUTPUT);
// Iniciar el AD9850
pulse(RESET);
pulse(W_CLK);
pulse(FQ_UD);

// iniciar el puerto serial
Serial.begin(BAUD_RATE);
usedFrequency = START_FREQUENCY;
sendFrequency(usedFrequency);
}

//——————————–
// Bucle principal
//——————————–

void loop()
{
int char_in = 0;

// Monitorial puerto serial
if(Serial.available() > 0) // hay informacion en el puerto
{
char_in = Serial.read(); // leer el puerto
char_in &= 0xFF; // solo 8 bits
switch(char_in) // axion depende del caracter recibido
{
case ‘0’: // recibiendo numeros
case ‘1’:
case ‘2’:
case ‘3’:
case ‘4’:
case ‘5’:
case ‘6’:
case ‘7’:
case ‘8’:
case ‘9’:
char_in -= ‘0’; // valor del caracter
Frequency *=10; // multiplique por 10, sigiente digito
// Serial.println(Frequency);
// Serial.println(char_in);
Frequency += char_in; // sumar digito recibido
char_in = 0;
break;

case ‘;’: // fin de la frecuencia
usedFrequency = Frequency; // salve la frecuencia recibida
sendFrequency(Frequency); // transfiera la informacion al AD9850
Frequency = 0;
char_in = 0;
break;
case ‘?’:
Serial.println(long(usedFrequency));
break;

}
}
}
______________________________________________________________________

PROGRAMA PARA PC

El VFO del FT-101 suministra una frecuencia variable entre 8.700 y 9.200 KHz, un segmento de 500 KHz. El FT-101 traslada la frecuencia del VFO a la frecuencia de la banda en que se desea trabajar: 80, 40, 20, etc metros. Pero nosotros tenemos el problema de otra forma. Conocemos la frecuencia en que debemos trabajar y tendremos que hacer el cálculo inverso a que hace el radio para determinar la frecuencia que debe suministrar el VFO.
El cálculo de la frecuencia del VFO dependiendo de la banda de operación deseada y del modo de transmisión se realizara en un programa de PC diseñado en C#. El programa ha sido diseñado para presentar una interface amigable de usuario y calcula la frecuencia del VFO y esta información se la envía al ARDUINO. La función del ARDUINO es usar la información de frecuencia enviada por el PC y configurar el AD9850 para que emita esa frecuencia.

gui-pc

La figura superior muestra la interface de PC (GUI) diseñada para control de la frecuencia.

CONCLUCIONES

El circuito y los programas para ARDUINO y PC están funcionando. Si le interesa mas información, por favor, escríbame al correo hk3eu@yahoo.com que con gusto les contestare.
Como le he estado comentando este es el primer proyecto de una serie de ideas para lograr una mejora de equipos viejos, como el FT-101, mediante interfaces con componentes electrónicos mas modernos.