Radio definida por software (SDR)
Un SDR (Software defined radio) es un equipo que resuelve de manera digital, por software, varias etapas que se pueden observar en un receptor o transmisor de radiofreciencia. En mi caso en particular no voy a usar un conversor analogo digital por hardware sino que voy a hacer un receptor y un transmisor de conversion directa y utilizar el metodo de doble fase para obtener las señales par un tratamiendo con la computadora y un software para SDR y viceversa para la transmision.Pero tambien me gustaria poder usar mi equipo sin depender de la computadora; obviamente suplir de manera analogica todo lo que hace el software es un poco complicado, la ventaja de que esto se hace en la parte de baja frecuencia (audio) y si bien nunca hice algo asi creo que es menos complicado que hacerlo con mixers y filtros de cristales apareados y en frecuencias mas altas los cuales son algo dificiles de conseguir por donde vivo; espero que el tiempo me de la razon.
Me gusto la explicacion del amigo Croata YU1LM y despues de leer algunas hs sus articulos me decidi por el DR2D que utiliza una entrada con DDS basado en AD9850 el cual consegui comprar por 7usd en ebay. Les recomiendo visitar su sitio porque es realmente muy instructivo y tiene una muy buena explicacion sobre el funcionamiento de un SDR con salida I+Q (In Phase and Quadrature). http://yu1lm.qrpradio.com/
Link a mi version de DR2D
Filtros Pasabanda
Algo muy importante en los receptores de conversion directa (DC) son los filtros pasabanda en la entrada y los atenuadores ya que el rango dinamico suele ser pobre al no tener control automatico de ganancia. Para los filtros pasabanda encontre el articulo de Lew Gordon publicado originalmente en una revista QST de la ARRL el cual presenta un Butterworth de 3 polos, bastante facil de hacer.http://www.arrl.org/files/file/Technology/tis/info/pdf/8809017.pdf
Luego tambien encontre estas calculadoras online para armar los filtros a la medida que nosotros queramos para cada banda; en el caso de un radioescucha es probable que quiera armar los filtros ajustandolos a sus bandas preferidas.
http://www.wetnet.net/rf_design/3pole.main.cgi
Aqui podemos tener toda la info sobre los toroides de ferrite
http://toroids.info/
Siempre es util tener a mano esta calculadora!
http://www.1728.org/resfreq.htm
Hice el diseño de una plaquita para el filtro en Eagle con el siguiente circuito:
Aqui hay algunas fotos de las placas hechas con el metodo de la transferencia del toner de una impresion laser.
Placa de las tres primeras bandas (80,40 y 20m) casi terminada. |
DDS VFO con Arduino!
Para el VFO con DDS lo que hice fue comprar un Arduino UNO ademas del AD9850 y modifique el programa original de AD7C y le hice muchas mejoras! Le agregue un boton para guardar memorias, un boton para RIT, otro para escaneo de memorias, otro para cambiar de modos y otro para el step de frecuencia. Hice ademas un controlador serial de solo dos cables para el display de 16x2 con un shift register y como dial use un motor paso a paso con 50 posiciones y no un encoder digital de 20 y que ademas son algo dificiles de conseguir a menos que lo saquemos del boton de scroll de un mouse en desuso.Display con solo dos cables |
Materiales necesarios; ademas de la placa experimental, necesitamos los pines hebras y machos |
Se sueldan del lado del cobre! |
Se arma el zocalo a la medida del modulo AD9850 |
El modulo puesto en su lugar |
Del lado de alimentacion y entradas analogas no es problema coincidir los pines |
De este lado, el espaciado esta desfasado de la placa de pruebas!! |
Se soldaron los pines hembra para utilizar el resto de los pines IO de Arduino |
Luego de calar el lugar para los pines se cablearon con cobre |
Luego se sello con epoxi los pines para que queden firme en su lugar definitivo |
Codigo para controlar modulo DDS con Arduino
El codigo como se explico antes, me base en el codigo de AD7C, el cual me sirvio para reutilizar algunas de sus cosas pero tambien para plantear y mejorar muchas otras!. Sin mucho preambulo aqui esta el link para su descarga.DDS VFO LU1MAW Code
Caja del transceiver
El diseño de la caja es propio, consegui dos tapas de aluminio de una vieja caja de un drive USB externo y le hice con planchuela el bastidor central para que luego se pueda trabajar sin problemas por arriba o por debajo del equipo sin problema. Tambien le puse un instrumento para medir dB porque al principio pense que le haria un receptor standalone superheterodino simple con un LM610 o similar, pero probablemente lo utilice en algun AGC en la etapa de audio del receptor DC, funcionara?.No usar botones cuadrados o tendras que limar un buen rato |
Etapa de potencia de RF y botones colocados! |
El bastidor de metal es le da mucha rigidez |
Con la base lista para agregarle las placas |
Atenuador de entrada de recepcion
Para hacer el atenuador debi tomar la desicion entre tres opciones, ya que quiero el control de ganancia en el frente del equipo y no queria llevar señal de RF hasta el frente para evitar que se llene de ruido producido por la parte digital. Las opciones que manejaba eran tres:- Hacer un tanque LC resonando en una frecuencia por encima de 20MHz produciendo atenuacion en las bandas bajas, mientras mas baja mas atenuacion. Para este tanque usaria un diodo varicap tipo BB212 o similar para poder controlar los dB desde el panel frontal
- Otra opcion seria poner un potenciometro para atenuar resistivamente como si se tratase de audio. La gran desventaja de este metodo es la desadaptacion de impedancia que se produce hacia la antena y a la etapa siguiente.
- La opcion correcta para atenuar manteniendo la impedancia en 50 Ohms seria hacer una serie paralelo de resistencias y controlar su activacion desde una llave en el panel y un rele doble inversor. Al poner uno de estos solo tenemos una atenuacion fija, supongamos 10dB, lo ideal seria poner 2 o 3 de estos y controlarlo con 3 llaves y combinarlos entre si para lograr valores intermedios, si se hace uno de -10dB otro de -20dB y el tercero de -30dB podemos lograr un maximo de -60dB al activar los tres al mismo tiempo. La desventaja es que es mas caro que los otros dos. Aqui hay un link para ajustar los valores segun los dB que se quieran obtener.
Control analogico de atenuacion de antena. |
Primeras pruebas
Necesitaba saber si el VFO funciona bien asi que luego de hacer el shield para el AD9850 para el Arduino utilizando la menor cantidad de pines para luego usarlos en otras funciones hice un receptor muy simple de conversion directa con el NE602 y LM386. El circuito es el siguiente: http://www.waveguide.se/?article=ne612-receiver-experiment A diferencia del mio, que yo no le hice el circuito del AGC para evitar complicaciones... aunque es una idea que encuentro muy interesante!Un video de las funcionalidades de mi VFO funcionando. Notese que le falta el shield para el AD9850.
Finalmente un video del equipo funcionando con un receptor de conversion directa muy simple sin filtros ni nada mas.
Filtro de CW
Aqui se puede ver el articulo donde se describe el filtroCircuito de control y DDS transceptor
Aqui esta el circuito de control con Arduino y todos los perifericos desarrollados hasta ahora. Los puertos analogos seran usados como entradas y los pines digitales de I/O seguramente seran la salida para un registro de desplazamiento con dos 74HC595 para activar las los filtros pasabandas y algo mas.Click para agrandar |
Continuara....
73s de LU1MAW
Hola Alejandro,serias tan amable de publicar el circuito del VFO por ejemplo donde van las teclas que le agregaste al cicuito de AD7C y en la copilacion falta un archivo ShiftRegLCD123.h> Desde ya muchas gracias LU2DLT 73 y de x
ResponderEliminarHola Luis, No me habia percatado de que no publique el circuito!, En un rato veo si lo hago y lo subo; el circuito aun esta mutando, pero te lo subo como para que se entienda mejor. La libreria que necesitas podes descargarla del sitio oficial: https://code.google.com/p/shiftreglcd123/wiki/Software
EliminarPara hacer andar los botones del frente, lo que se hace es hacer un circuito de resistencias en serie con derivaciones intermedias y tomar lectura del valor analogico en un solo pin de entrada; por eso tengo 5 botones en un solo pin, es una manera de ahorrar pines!
Aca te dejo un link con una explicacion mas detallada:
https://johnboxall.wordpress.com/2012/02/29/tutorial-analog-input-for-multiple-buttons-part-two-2/
Ok.gracias por contestar Alejandro ,espero el circuito pero ya entiendo ,otra cosa el display se usa como en el circuito original.Gracias LU2DLT 73 y de X
EliminarHola Luis, disculpa la demora. Ya esta actualizada la entrada con el circuito al final. No es el circuito final porque como dice el articulo aun esta en desarrollo y lo que estaria faltando serian los regstros de desplazamiento para activar los filtros pasabanda segun la frecuencia. Cualquier duda que tengas avisame!
EliminarGracias Alejandro...
EliminarHola Alejandro,te olvidaste del circuito lo espero ,Gracias 73 y Dx...
ResponderEliminarHola ,después de mucho tiempo te molesto al compilar el programa con arduino me sale error en el RIT .Gracias
ResponderEliminarimpresionante lo tuyo. Ya estoy haciendo un qrp. en cuanto vaya avanzando te mando fotos y comentarios. Muchas gracias por tu gran aporte. abrazo. LU9VI
ResponderEliminarMuchas gracias por leer mi blog y espero ansioso esas fotos. 73!
EliminarHay continuación?
ResponderEliminarHola Juan Marcelo, gracias por leer el blog. Por mudanza y taller desarmado por ahora deberá esperar la continuación
ResponderEliminarHola Alejandro. H estado leyendo tu desarrollo y me ha gustado.
ResponderEliminarPor favor coméntame en rasgos generales como piensa implementar la parte del receptor y transmisor. Has de usar PC o lo harás standalon, y en este ultimo caso como piensas implementarlo?.
Si puedo colaborar estaré atento.
Saludos. Enrique-LW5EJV
Por ahora solo receptor. El transmisor no lo he diseñado. Pero la idea era hacer algo standalone completamente sin la necesidad de conectar y desconectar una PC
Eliminaryou utilize algo parecido un VFO DDS y un pixie ahora trabajo toda la banda de HF, super facil.
ResponderEliminarEfectivamente, una vez que tenes el DDS podes hacer multibanda cualquier equipo, solo hay que tener en cuenta la conmutacion de los filtros o un buen preselector
Eliminarahora estoy con el ne602 toda una maravillas banda corrida y recepcion mejor que los radio comerciales. instalare tu firmware veo que la memoria es muy necesaria 73s.
ResponderEliminarHoras de trabajo! Cuando tengas a mano uno roto,probá de hacer el encoder con el motor de un disco duro. Queda super suave.73
ResponderEliminarHI LU1MAW, I need your VFO DDS code but link is dead (DDS VFO LU1MAW Code) can you share again?
ResponderEliminar