jueves, 29 de enero de 2015

Transceptor multimodo usando AD9850+Arduino Mini+Pixie (de LU7HZ)


Finalmente pude darle horas a un proyecto largamente en el cuaderno de apuntes; se trata de un transceptor basado en la arquitectura general de un Pixie (mismo principio de funcionamiento), donde la frecuencia de operación en vez de estar determinada por un cristal lo es por un módulo DDS AD9850. Fundamentalmente para programar al generador DDS agrego una placa Arduino Mini Pro de muy bajo costo, tan bajo costo que no tiene una interfaz RS232 ni USB por lo que hay que armarla basado en el integrado MAX232. Las compuertas NOR están para que la excursión del BS170 operando en clase E sea completa.

El funcionamiento de RF es, como dije antes, basado en la configuración de funcionamiento de un transceptor Pixie, la señal proveniente del DDS en una frecuencia dada activa en bajo nivel la etapa de salida la que actúa como mezclador, la frecuencia suma es filtrada y la diferencia es la banda base que se recibe la que resulta amplificada a niveles adecuados. En transmisión el circuito de PTT activa la etapa de salida para operar en máxima potencia al mismo tiempo que bloquea la entrada del amplificador de audio. La frecuencia del circuito DDS es programada usando el protocolo serie del AD9850 por parte de la placa Arduino, esta a su vez tiene un firmware que opera el conjunto dependiendo el modo seleccionado. La interfaz serie sirve tanto para programar la placa Arduino como para soportar un protocolo CAT que permita programar los parámetros de operación (frecuencia, modo, ptt, split, etc). El primer modo para el que estoy desarrollando el firmware es WSPR (pronunciado como "Whisper", susurro). Para lograrlo la placa Arduino emite un mensaje durante algo mas de un minuto, donde cada bit tarda un poco menos de 700 mSegs. Cada bit del mensaje se transmite como FSK en tres frecuencias separadas 2 Hz entre si. La banda base del modo ocupa 6 Hz y puede ser decodificada con relaciones SNR tan bajas como -25 a -30 dB (!!!). El controlador Arduino simplemente empieza la transmisión sincronizado en los primeros segundos de los minutos pares, y envia la programación de frecuencia correspondiente a cada tono durante la duración del mensaje (la codificación del mensaje en si se genera con el programa wspr0 parte del paquete WSJT).

El código que implementa WSPR es relativamente simple, por ahora el grueso del firmware se corresponde a la implementación del CAT. 
El sistema CAT es bien simple, básicamente deja programar la frecuencia, el modo, si el PTT está activado o no lo está y sincronizar la hora. Una vez que la hora es sincronizada externamente, presumiblemente contra una PC a su vez sincronizada con algún patrón horario, la hora es mantenida por la placa Arduino contra su propio reloj interno. Habrá que experimentar un poco que tan estable es el método y cada cuanto requiere ser recalibrado.
La idea general es que el transceiver pueda operar en forma autónoma como beacon WSPR sin requerir una PC, pero que para el resto de los modos tenga que estar asociado a una PC con un programa que via CAT dé la interfaz "visual".
Mas adelante se podrá agregar código adicional para poder operar el mismo circuito en CW, RTTY y  PSK31 asi como operar como balizas en cualquiera de esos modos además de QRSS. Todos bajo el mismo principio de funcionamiento, que la codificación sea realizada por la placa Arduino que operando el DDS genere las señales de frecuencia necesarias para transmitir el mensaje.
En recepción de todos los modos la idea es simple, el transceiver ofrece una señal de audio en recepción que puede ser procesada por la placa de sonido de una PC y los programas correspondientes al modo en cuestión.
La placa tiene provisiones para proveer señales externas de PTT, sincronísmo de tiempo y señales de keyer automático; pero su implementación corresponde a una etapa posterior de implementación.
Esta entrada es preliminar e iré actualizando el diseño en la medida que progrese con el.

miércoles, 28 de enero de 2015

Otro visitante VK en camino

Siguiendo la saga del exitoso vuelo del micro globo PS-30 que luego de atravesar el Pacífico, el Atlántico y un poquito del Indico termino su trayectoria frente a las costas de Madagascar. La pérdida fue por una tormenta, el globo no vuela tan alto (8000 a 10000 mts) y por lo tanto no está completamente exento de ser afectado por sistemas metereológicos severos.
Andy (VK3YT) , en broma claro, le echó la culpa de la caida a los "pinguinos" de Madagascar, que creo que si bien aparecen en la película de ese nombre son de origen argentino. Pero no creo que los pinguinos hayan tenido nada que ver, en este intríngulis son... "argentinos" después de todo.
Andy volvió a lanzar dos globos adicionales hace un par de dias, el PS-31 y el PS-32. El lanzamiento múltiple se debió a la experimentación de poder hacer seguimiento de dos globos simultaneamente. El primero dió una voltereta alrededor de Nueva Zelandia y cayó al mar al poco tiempo. Pero el PS-32 tomó un rumbo mucho mas hacia el sur y está navegando en el medio del Pacífico, la proyección de trayectoria lo ubica pasando en algún tiempo al sur de Tierra del Fuego, en Argentina y eventualmente transitando por una trayectoria muy al sur por los oceanos Atlántico e Indico.
Como su antecesor la carga útil consiste en un transmisor JT9 de 20 mW que opera en 30 y 20 metros. Los detalles del planeamiento y telemetría pueden verse en el sitio PicoSpace y la trayectoria puede ser seguida aqui. Vení nomás PS-32, no te tenemos miedo!

Actualización 04-Feb-2015

Bueno, parece que lamentablemente no lo vamos a tener por estos pagos. La última telemetría tomada  (ya tomada desde Sud-América) ocurrió hace 4 dias, con lo que es razonable suponer que se ha perdido. Es un milagro que haya recorrido aún asi casi todo el Pacífico. Habrá que esperar el próximo.

jueves, 15 de enero de 2015

Un boliche bien surtido (el de M0XPD)

Interesantisimo blog llevado adelante por Paul Darlington (M0XPD) denominado "Shack Nasties" (que se puede traducir algo asi como "cosas desagradables en el cuarto de radio") que pese a la posiblemente errada traducción está lleno de buen material.
Paul se especializa en QRP y ha desarrollado un número importante de proyectos integrando placas embebidas (PIC, Arduino, Raspberry Pi) con osciladores DDS con equipos QRP de diferente propósito.
Cai en el siguiendo una referencia para un proyecto sobre el que estoy realizando diseños y prototipos preliminares; no solo encontré lo que andaba buscando sino que también un buen lugar donde invertir tiempo sobre muchos temas relacionados. Definitivamente vale la pena cada minuto que se invierta en el blog. Como dicen los americanos... "good stuff".

miércoles, 14 de enero de 2015

Aguante Intiyaco!

Con unos dias de retraso a lo planeado debido al sistema metereológico que se instaló sobre Córdoba y produjo clima inestable y tormentoso hacia el fin de año pude hacer finalmente una escapada onda "field day" al paraje Intiyaco en Córdoba.
Este lugar, verdadero paraiso, está ubicado en el valle de Calamuchita al pié de las sierras Grandes, muy próximo al Co. Champaquí  (31° 57' 31"S 64° 42' 45"W).
El lugar es un poco encerrado, pero está alto y no tiene virtualmente ninguna traza de interferencia o ruido (excepto, claro, el que uno mismo se lleve consigo).
Como ya vengo repitiendo prácticamente todos los años llevo mucho mas material y pruebas pendientes que el tiempo disponible y los ratos de descanso puro que acompaña las escapadas.
En esta oportunidad llevé la estación portatil (FT817) con el lineal de 100W y todos los arneses necesarios. Llevé la laptop con lo que eventualmente podría hacer también CW o modos digitales. Pero el principal objetivo de pruebas era el generador de emergencia y la antena vertical portatil para 6-10-12-15-17 y 20 metros de reciente construcción.
El generador lo encendí solo una media hora como para verificar que tenía todo lo necesario para conectarlo, pero es bastante ruidoso (sobre todo en un paraje tan silencioso). Curiosamente su ruido casi no se escucha a 100 metros, supongo que por la atenuación propia del terreno. 
La antena resultó que tenía un bulon de ajuste dañado que dificultaba mucho su armado, y para el que no tenía repuesto. Asi que logré armarla con el corte para 10 metros e hice todas las pruebas en esa banda, dejando el resto para otra oportunidad.
La antena está armada sobre la estructura de una vieja "Ringo Ranger" para 2 metros del cual reusé su base, aislador, conexionado y primer tramo. Para el resto agregué una serie de tubos de aluminio concéntricos en 2 configuraciones, una para 6 y 10 metros mientras que otra para 12,15,17 y 20 metros.
Le puse un sistema de marcas con cinta aisladora y marcador de alcohol para ajustar las distintas bandas con cierta rapidez, el sistema es precario y tendré que pensar en algo mas durable cuando ya tenga cierta confianza que las marcas son las mejores alternativas de armado y ajuste para las distintas bandas.
En la base un conector permite establecer el sistema de radiales que para las pruebas fueron tres chicotes de cable de apróx 5 metros cada uno, tengo un sistema de plano de tierra compuesto de hilos de distinta longitud pero no lo llevé. Para sostenerla apelé a un sistema de tres cuerdas de nylon a modo de tensores. El sistema en su conjunto no se sencillo de instalar solo, pero supongo que también se requiere un poco de práctica para hacerlo con mas facilidad. Si bien llevé la antena dipolo de 10 y 20 metros y la antena multibanda Yaesu no llegué a instalarlas.
Los contactos fueron todos en SSB y razonablemente buenos, varias estaciones de zona W, un KP4 y media docena de estaciones PY, todos en 10 metros todas con 100W. No escuché señales en CW pero sí varias balizas de zona W6 con buena señal. No desplegué la PC y sus conexiones, pero traté de salir a oido y con el manipulador lateral portátil; desafortunadamente estaba roto y descubrí al tratar de repararlo que el soldador del kit para estación portatil también estaba roto, asi que no lo pude reparar.
El pronóstico metereológico anunciaba mas tormentas asi que solo estuve un dia, mi espiritu campestre se limita ante la perspectiva de enfrentar una tormenta en la zona, tengo suficiente experiencia sobre lo violentas que pueden ser y lo mal que se las pasa cuando ocurren. Nada que no se pueda manejar de ser necesario, pero tampoco nada que tome a la ligera.
Durante la estadía en la zona, y a pesar de ser lo suficientemente aislada y remota como para no tener señal confiable de telefonía celular, tuve contacto permanente mediante la soberbia repetidora del Co. Champaquí (145465 -600 s/tono) que con su altura tiene una cobertura enorme del centro del pais, además de estar enlazada con otra repetidora de altura ubicada en San Juan. Si andan por Córdoba (casi cualquier parte de Córdoba) es imprescindible tenerla en la memoria del transceiver o handy.
Queda pendiente otra salida, quizás dentro de las próximas semanas para hacer el resto de las pruebas, y también descansar un poco mas en este bello paraje.

viernes, 9 de enero de 2015

MM2OR Nueva Versión 1.8 (de LU7HZ)

Como he compartido en entradas anteriores el N1MM no dá soporte al ambiente de integración OmniRig; existe una cerrada negativa a hacerlo o siquiera a cooperar para que otro lo haga; alguna historia de pueblo chico supongo a saber por el tenor de las respuestas por parte del equipo de desarrollo cuando he planteado el tema.
Eso tiene una consecuencia negativa para mi, el N1MM asume que tiene el control CAT (Computer Aided Tuning) full del transceiver y que este no es compartido con ningún otro programa. Mala cosa cuando al mismo tiempo en la estación tengo 4 o 5 programas que también necesitan controlar el transceiver, lo que en general ocurre via OmniRig. La solución lleva ya mucho rodaje y es el programa MM2OR (N1MM to OmniRig) el que básicamente simula un puerto serie (con la ayuda del utilitario com0com) al cual el N1MM envia comandos como si fuera un transceptor, el programa empaqueta las instrucciones en formato OmniRig y las envia al transceiver, el mismo al contestar recibe la respuesta y se la envia a N1MM para su proceso. De esa manera los requerimientos de múltiples programas son coordinados por el OmniRig (ese es su propósito).
Con la migración a N1MM Plus vino la grata sorpresa que han escrito el driver CAT de forma que ahora funciona bien. En la versión de N1MM Classic sea por deficiencias de programación o por limitaciones del driver serie que utilizaban el procesamiento de comandos CAT estaba, malamente, roto.
En efecto, en los equipos Yaesu en general los comandos CAT consisten en registros de 5 bytes de longitud, el último de los cuales lleva el comando mismo. De ser necesario algun argumento este es transportado por los 4 bytes restantes. El argumento puede ser, de acuerdo al comando, ningun byte, un byte o mas bytes.
El N1MM emite constantemente dos mensajes de pedido de "status" al transceptor, el denominado frame 0x10 (leer status) y 0xfa (leer flags). El transceptor contesta con mensajes de diferente longitud a ambos y el N1MM Classic esperaba que las respuestas volvieran juntas, cuando una implementación correcta hubiera sido que el programa fuera capaz de procesar las respuestas en el orden que volvieran. Los intentos para que en el team de desarrollo del N1MM corrigieran eso fueron siempre en vano, no se si no entendían el problema, o no afectando a la mayoría de los usuarios preferían ignorarlo.
Como fuera por prueba y error logré interpretar como esperaba el N1MM los datos y con mi programa MM2OR mimetizaba la "anomalía" para que todo funcionara. Eso tenía el problema que cada equipo tenía una "anomalía" ligeramente diferente y por lo tanto habia que generar respuestas ligeramente diferentes también. Por eso adopté una arquitectura donde las respuestas a cada equipo están encapsuladas en una DLL diferente, por lo que en la configuración respectiva había que decir con que DLL se requería hacer la comunicación.
En el N1MM Plus este problema fue resuelto, ahora el software procesa correctamente los frames de respuesta del transceiver en forma individual, sin esperar ningún agrupamiento en particular, y por lo tanto mientras el transceiver reciba los 5 bytes del comando y conteste con la longitud de respuesta esperada todo parece funcionar bien.
La consecuencia inmediata es que con una sola DLL alcanza para manejar todos los equipos Yaesu cuya secuencia CAT utilice los mismos comandos y que reciba 5 bytes de longitud de comando; lo que es mucho mas simple. Hasta donde he podido revisar los comandos utilizados por N1MM son 0x01 (Split), 0x05 (VFOA/B), 0x0a (establecer frecuencia), 0x0c (establecer modo), 0x0f (ptt, en algunas configuraciones), 0x10/0xf7(?)/0xfa (status).
En principio no solo los comandos, sino también el formato mismo de todo el intercambio, varía de fabricante en fabricante y por lo tanto es improbable que esta implementación sirva para transceivers ICOM o Kenwood (u otros); de hecho no estoy seguro que sirva para todos los Yaesu si es que utilizan un formato de protocolo CAT diferente; lamentablemente no puedo dar soporte en esos casos pues para depurar el ambiente es necesario realizar pruebas.
He generado una nueva versión del programa MM2OR v1.8  que ahora tiene solo una DLL de soporte denominada YAESUB.DLL y con la que en apariencia puedo manejar indistintamente todos los equipos Yaesu en mi shack (FT100, FT840, FT890 y FT817), un gran avance.

jueves, 8 de enero de 2015

Un VK nos visita (el PS30)

Muy interesante experimento, se trata del globo PS30 lanzado en Melbourne, Australia el 27 de Diciembre 2014 cuyas caracteristicas pueden verse en el sitio de Picospace.
El globo viaja a una altura de aprox. 10000 metros siguiendo las corrientes de jet.
Transmite su telemetría en formato JT9/JT65 y su posición puede ser seguida en tiempo real en el sitio habhub, la imagen a la izquierda muestra la posición a las 2300Z del 7-Enero-2015.
La baliza transmite con la ridiculamente baja potencia de 25 mW (si, 0.025W!) en las bandas de 30 y 20 metros. Los equipos están alimentados por celdas solares lo que hace que su transmisión sea acorde al estado de carga de baterías según el siguiente plan.

0 30m // Mandatory JT9 and WSPR, two per hour
6 30m // Optional JT9/JT65 – if batt full
10 20m // Optional JT9/JT65 and WSPR – unless batt low
16 20m // Optional JT9/JT65 – if batt full
20 30m // Optional JT9/JT65 and WSPR – unless batt low
26 30m // Optional JT9/JT65 – if batt full
30 20m // Mandatory JT9/JT65 and WSPR, two per hour
36 20m // Optional JT9/JT65 – if batt full
40 30m // optional JT9/JT65 and WSPR – unless batt low
46 30m // Optional JT9/JT65 – if batt full
50 20m // Optional JT9/JT65 and WSPR – unless batt low
56 20m // Optional JT9/JT65 and WSPR – if batt full

A menudo se discute que nuestra actividad es "obsoleta" en cuanto a los modos y frecuencias que utilizamos. Sin embargo los modos de baja relación señal-ruido como el JT9,incidentalmente creado por el Dr. Joe Taylor (K1JT) premio Nobel de Física 1993, están en la frontera del conocimiento y la especialización en comunicaciones.

Es curioso observar el camino recorrido por el globo al influjo de las corrientes de aire dominantes, es también muy notoria su velocidad (mas de 50 m/seg!!, casi 4400 Km/dia!!) a tal punto que hoy por la mañana estaba frente a las costas de Valparaiso, Chile y al atardecer hora Argentina ya había salido de territorio continental y se estaba internando en el Oceano Atlántico. La trayectoria es, sin embargo, errática y con numerosos "rulos".
¿Hasta donde puede llegar? Si los autores del experimento no tienen previsto un cese del vuelo en principio parece estar estable en su altura por lo que no es impensable que pueda dar la vuelta al mundo. Ojalá que dure mucho en todo caso y que lo podamos seguir durante toda su trayectoria.
Experimentación en su estado mas puro!!


Actualización 15-Enero-2015

Finalmente el viajero PS30, al que seguí por JT9 durante su transito por Argentina y mientras se internaba en el Oceano Atlántico y posteriormente por WSPR via Internet parece haber concluido su viaje frente a las costas de Madagascar.
El globo estuvo un par de dias perdido mientras transitaba el Oceano Atlántico, en lugares donde su exigua potencia hacía imposible ser tomada tanto por aficionados en Sud-América como en Africa. Sin embargo hace unos dias reapareció frente a Namibia en la costa occidental de Africa del Sur. Curiosamente siguió un patrón algo errático de movimiento, primero estando estacionario y luego progresando lentamente hacia el norte siguiendo la linea de la costa. Hace un par de dias cambió nuevamente su rumbo empezando a transitar hacia una dirección general Este y transitó rápidamente por el extremo sur de Africa (Namibia y SudAfrica), para internarse en el canal de Mozambique arribando hoy a Madagascar. Sin embargo a poco de haber ocurrido eso empezó a perder rápidamente altura y volvió a tomar dirección Oeste. Hacia las primeras horas de la noche local la telemetría reportaba altura cero (aunque curiosamente seguía reportando velocidad horizontal,.... será que sigue flotando?). Todo hace pensar que terminó el viaje. Lo que no deja de ser asombroso que un pequeño dispositivo electrónico de 15 gramos de peso, transmitiendo con una potencia ínfima y pendiendo de lo que en definitiva es un globo metalizado de fiesta lleno de helio haya sido capaz de capturar la atención (y porque no, la imaginación) de muchos aficionados del hemisferio Sur alrededor del globo. Radioafición en su estado mas puro... y mas divertido!!

martes, 6 de enero de 2015

Calculador para antena loop (de IW5EDI)

Hace algún tiempo publiqué un link a un calculador de antena loop magnética como recurso de Web.
Para mi sorpresa esa entrada en particular se ha sostenido por años, años, entre las 5 entradas mas visitadas en mi blog.
Mostrandome que hay un enorme interés en este tipo de antenas.
Vuelvo recurrentemente a ellas al considerar opciones para operar en la banda de 160 metros donde antenas de tamaños convencionales son, en el mejor de los casos, imprácticas.
Los Reyes Magos dejarán en los zapatitos este otro calculador, publicado por Simone (IW5EDI) es un programa Windows muy pequeño que el denominó LoopCalc. Se puede jugar con el para estimar los parámetros de la antena en función de la frecuencia en que se quiere operar y el espacio disponible. En bandas mas altas he leido muy buenos reportes, e incluso escuchado en buena forma, estaciones que usan la antena desarrollada por Alex (PY1AHD) que el ha llamado la AlexLoop.
La construcción es realmente sencilla puesto que las dimensiones son muy reducidas, una antena de eficiencia razonable para 160 metros tiene materiales y dimensiones comparables a los que requerirían una antena convencional (dipolo o vertical) para 10 metros. El problema es el capacitor necesario, la aislación que tiene que tener para ser mas preciso, pues debe soportar 3-4 KV a potencias tan modestas como 100W, para potencias mas altas se puede requerir una asilación tan grande como 10 KV. Los capacitores mas comunes pueden ser prácticos para potencias mas tipo QRP (con 5W se necesitan 600V de aislación solamente). Estará por verse que tan práctico puede ser operar en la top band en QRP, sospecho que poco práctico.
Espero que hayan dejado los alimentos y bebidas para los camellos junto a los zapatos, sino es posible que los Reyes se manden mudar sin dejar nada!!

Buscar este blog

Páginas vistas en total