LU9CBL

LU9CBL
LU9CBL
Mostrando entradas con la etiqueta hamradio. Mostrar todas las entradas
Mostrando entradas con la etiqueta hamradio. Mostrar todas las entradas

lunes, 13 de marzo de 2017

Ya un año de tu partida Fer LU2BPM (SK)



Hace un año ya, recibíamos la terrible noticia de la partida de un amigo de esos que no hay en todas partes. Fue y será por mucho siempre, una persona única, que siempre proporcionaba alegría en todos los ámbitos en los cuales participaba. Personalmente me toco conocerlo en el mundo de la radio, por ser uno de los integrantes del Grupo Dx Norte y realmente se lo extraña en cada concurso o actividad que uno desarrolla.



Para todos aquellos que no tuvieron la posibilidad de conocerlo, les dejo unos videos que demuestran la pasión que tenía por la actividad.





Fer sea donde sea que estés en este momento, sabe que te seguimos recordando con cada concurso o actividad que realizamos. Esperanos allá arriba para recibirnos cuando nos toque partir, y de esa manera alegrarnos nuevamente.
Mati LU9CBL

domingo, 4 de diciembre de 2016

Baliza de CW con Arduino Pro Mini [Parte 1]

Hace unos días, Claudio LU7DW, me comento la necesidad que tenia de armarse una baliza para la banda de 10 metros (28 MHz), para lo cual necesitaba hacer con algún PIC o Arduino que pueda realizar la manipulación del mensaje de la misma. A raíz de esto, buscando un poco en mi baúl de electrónica, decidí realizarlo en un Arduino Pro Mini, debido a su costo y su simplicidad de uso.



Aún no decidimos sobre qué equipo será instalado, pero como para ir avanzando en la codificación fue que se realizó una prueba preliminar. Se utiliza el pin 13 que ya posee un led incorporado para poder realizar la visualización de la manipulación.

Se utilizará en principio un LM7805 para poder darle los 5v que necesita la placa desde los 13,8 VCC del equipo que se elija, y se utilizará un transistor como conmutador para la secuencia de TX aplicada a su base (en principio se utilizará un 2N2222 y una resistencia en su colector, emisor conectado a masa).

A continuación se adjunta el código generado para que sobre el PIN 13 se emita los caracteres en telegrafía “VVV de LU7DW/BCN LU7DW/BCN GF05 GF05”. Se utiliza una única constante de tiempo en la variable cteTiempo declarada dentro de void loop() {} por lo que al modificar ese parámetro se aumenta y se disminuye la velocidad de tx, manteniendo las relaciones de espacio entre caracteres / palabras y entre sonidos cortos / largos.


Código Generado:
// Realizado por LU9CBL - Mat - 01/12/2016
// MENSAJE PARA BALIZA LU7DW:
// VVV de LU7DW/BCN LU7DW/BCN GF05 GF05
// Cada 20 segundos

int ledPin = 13; // LED en el pin digital 13
int cte;
int cteTiempo;
int cteTiempoLargo;

void setup() {
 
  // Configura el pin 13 como salida
  pinMode(ledPin, OUTPUT);
 
}

void loop() {
 
  // Declaro la constante de tiempo
  cte = 50;

  // Llamo a la función de la licencia de la baliza
  vvvde(cte);
  lu7dw(cte);
  lu7dw(cte);
  gridLocator(cte);
  gridLocator(cte);

  //ESPERA ENTRE MENSAJES (20 Segundos == 20000)
  delay(20000);
 
}

void vvvde(int cteTiempo){

  cteTiempoLargo = 3 * cteTiempo;

  //V
  digitalWrite(ledPin, HIGH);   // activa el LED
  delay(cteTiempo);             // espera el tiempo de constante
  digitalWrite(ledPin, LOW);    // desactiva el LED
  delay(cteTiempo);             // espera el tiempo de constante

  digitalWrite(ledPin, HIGH);   // activa el LED
  delay(cteTiempo);             // espera el tiempo de constante
  digitalWrite(ledPin, LOW);    // desactiva el LED
  delay(cteTiempo);             // espera el tiempo de constante

  digitalWrite(ledPin, HIGH);   // activa el LED
  delay(cteTiempo);             // espera el tiempo de constante
  digitalWrite(ledPin, LOW);    // desactiva el LED
  delay(cteTiempo);             // espera el tiempo de constante

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  delay(cteTiempoLargo);

  //V
  digitalWrite(ledPin, HIGH);   // activa el LED
  delay(cteTiempo);             // espera el tiempo de constante
  digitalWrite(ledPin, LOW);    // desactiva el LED
  delay(cteTiempo);             // espera el tiempo de constante

  digitalWrite(ledPin, HIGH);   // activa el LED
  delay(cteTiempo);             // espera el tiempo de constante
  digitalWrite(ledPin, LOW);    // desactiva el LED
  delay(cteTiempo);             // espera el tiempo de constante

  digitalWrite(ledPin, HIGH);   // activa el LED
  delay(cteTiempo);             // espera el tiempo de constante
  digitalWrite(ledPin, LOW);    // desactiva el LED
  delay(cteTiempo);             // espera el tiempo de constante

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  delay(cteTiempoLargo);

  //V
  digitalWrite(ledPin, HIGH);   // activa el LED
  delay(cteTiempo);             // espera el tiempo de constante
  digitalWrite(ledPin, LOW);    // desactiva el LED
  delay(cteTiempo);             // espera el tiempo de constante

  digitalWrite(ledPin, HIGH);   // activa el LED
  delay(cteTiempo);             // espera el tiempo de constante
  digitalWrite(ledPin, LOW);    // desactiva el LED
  delay(cteTiempo);             // espera el tiempo de constante

  digitalWrite(ledPin, HIGH);   // activa el LED
  delay(cteTiempo);             // espera el tiempo de constante
  digitalWrite(ledPin, LOW);    // desactiva el LED
  delay(cteTiempo);             // espera el tiempo de constante

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  delay(cteTiempoLargo);

  //D

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);
 
  delay(cteTiempoLargo);

  //E

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  delay(cteTiempoLargo);

}

void lu7dw(int cteTiempo){

  cteTiempoLargo = 3 * cteTiempo;

  //L
  digitalWrite(ledPin, HIGH);   // activa el LED
  delay(cteTiempo);             // espera el tiempo de constante
  digitalWrite(ledPin, LOW);    // desactiva el LED
  delay(cteTiempo);             // espera el tiempo de constante

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  delay(cteTiempoLargo);
 
  //U
  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  delay(cteTiempoLargo);

  //7

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);
 
  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);
 
  delay(cteTiempoLargo);
 
  //D

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);
 
  delay(cteTiempoLargo);

  //W

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  delay(cteTiempoLargo);

// "/"

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  delay(cteTiempoLargo);

  //B

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);
 
  delay(cteTiempoLargo);

  //C

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  delay(cteTiempoLargo);

  //N

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  delay(cteTiempoLargo);

}


void gridLocator(int cteTiempo){

  cteTiempoLargo = 3 * cteTiempo;

  //G

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  delay(cteTiempoLargo);

  //F
  digitalWrite(ledPin, HIGH);   // activa el LED
  delay(cteTiempo);             // espera el tiempo de constante
  digitalWrite(ledPin, LOW);    // desactiva el LED
  delay(cteTiempo);             // espera el tiempo de constante

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  delay(cteTiempoLargo);

  //"0"

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempoLargo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  delay(cteTiempoLargo);

  //"5"

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  digitalWrite(ledPin, HIGH);
  delay(cteTiempo);
  digitalWrite(ledPin, LOW);
  delay(cteTiempo);

  delay(cteTiempoLargo);

}

viernes, 3 de enero de 2014

HamGather (Python + MySQL + HamRadio) por LU9CBL

HamGather es una pequeña aplicación, cuya finalidad es poder obtener información de diferentes fuentes y poder insertarla de manera ordenada en una base de datos. De esta manera se facilita su posterior análisis, a futuro.

Esta escrita en Python [1], y realiza la inserción en una base de datos MySQL [2], el motivo por el cual elegí ambas opciones, es porque ambas corren tanto en Linux como en Windows sin mayores problemas. Nunca trabaje con ninguna de las dos opciones, ya que en la facultad se trabaja con C#.NET / VB.NET y SQL Server, por el convenio que existe actualmente con la facultad.

En mi caso utilizo un Raspberry Pi [3], para poder tener corriendo la aplicación de manera interrumpida con mínimo costo (y ruido de coolers).

En las posteriores entradas iré subiendo los avances que vaya realizando, así como también la explicación del código. También iré compartiendo los datos obtenidos de manera periódica, en el caso de que alguien desee poder operar con ellos.

Obviamente todo lo subido será open source, y cualquiera puede usarlo o modificarlo, con fines no comerciales. Si alguien quiere sumarse al proyecto, esta mas que bienvenido. Puede escribirme a lu9cbl [at] gmail [dot] com.

Referencias:

[1] http://python.org.ar/

[2] http://www.mysql.com/

[3] http://www.raspberrypi.org/

Estén en sintonía…

73s y DXs

Mati LU9CBL/D

viernes, 22 de marzo de 2013

Primer entrada de 2013, Viaje a USA, HF nuevo...

Luego de un viaje por trabajo a Norteamérica, que se mezclo con unas mini vacaciones aprovechando el mismo, pude aprovechar no solo a conocer otra cultura, sino a traerme alguna que otra cosilla.

El viaje, fue realmente increíble, sobre todo para mí que nunca había salido del país. Hice Miami, Orlando, San Francisco y San José (donde tuve el evento de la empresa Cisco que fue la organizadora de todo).

Pero yendo puntualmente a lo que nos interesa, fui con la idea de traerme algún equipo de HF para poder participar en concursos. Cordialmente Claudio LU7DW una persona que admiro no solo por su forma de ser y su humildad, sino por todo el conocimiento que tiene en materia de Radio. Claudio me dio algunas ideas para poder comprar allá, pero teniendo en cuenta que el viaje hiba a ser bastante movido, y la compra de un equipo usado siempre es un riesgo, me incline por comprarme un HF que tenga todo.

La elección entonces fue el nuevo Yaesu FT-450D. El mismo lo compre en Ham Radio Outlet (HRO), de Sunnyvale. Realmente la atención fue increíble, y es muy bueno tener un local donde poder ver todo eso referido a la actividad que en Argentina es tan difícil de observar. Grande fue mi sorpresa al ver que mientras yo realizaba el pago de mi equipo, un amigo que nada tiene que ver con la actividad también se haya querido llevar algo de regalo, con lo cual se compro una estación meteorológica.

El equipo en sí, es realmente compacto y tiene de todo, en posteriores entradas estaré ampliando la información y las opiniones del rendimiento del mismo. Por ahora me limite a probarlo muy por arriba, y ya estoy empezando a mirar con cariño la banda de 6 metros, que siempre falto en mi estación y que este equipo trae.

Mi idea es ver la posibilidad de poder instalar el dipolo rígido para 40/20/15 y 10 metros que compre para cuando me mude, y poder participar del próximo CQ WPX SSB 2013 que viene la semana entrante. Veremos si llego con todos los preparativos para ese momento.

Por ahora solo eso, veremos que nos depara la actividad en las futuras entradas, por lo pronto el inicio de clases de la facultad se acerca pero esta vez (ya recibido de analista) espero poder dedicarle a la actividad el tiempo que se merece, sin descuidar lo académico y de esa manera disfrutar de mi cable a tierra, tan necesario durante todo el año.

Estén en sintonía...

73s y DXs

Mati LU9CBL

jueves, 10 de febrero de 2011

Antena Reparada!!! Equipo tambien!!

Luego de un tiempo sin estar operativo en la estación, ya que el modesto Kenwood TS-120 habia decidido dejar de transmitir potencia (Los transistores de salida dijeron basta). Sumado a que el dipolo con bajada linea abierta había perdido una de sus ramas, me emprendi a hacer su reparación.

Por su lado LU3AJL Joe (mi viejo), mando a arreglar el equipo (no se a donde pero cuando lo averigue lo posteo), y yo me dispuse a solucionar la rama problematica.

Hice una prueba general cargando el equipo en 80m y en 40 y tiro potencia, pero por falta de tiempo no pude pedir algun reporte para saber como estaba saliendo.

Veremos si hoy puedo dedicarle unos minutos para dar por "operativa" la estación nuevamente.

Saludos cordiales a todos!
Mat LU9CBL