domingo, 27 de abril de 2025

Arduino nano Banderas WS2812B

  Página principal

Arduino nano
Banderas
WS2812B

 


Hace años realicé un reloj con los diodos LED WS2812B, Reloj WS2812 .
Ahora utilizando una matriz de diodos WS2812B , realizo una muestra de banderas de las diferentes comunidades autonómicas.
El montaje es muy sencillo, pero vistoso, de los que no tardas en realizar.






No he querido realizar el esquema debido a su simplicidad.
El pin 13 del arduino al DATAIN del panel.
La alimentación de 5V y GND a los pins del arduino.
En modo de luminosidad alta en color blanco, la intensidad es de 660mA. Para evitar no tener que utilizar otro alimentador, he colocado el brillo a 10 en todos los LED, con lo cual no llega a 30mA, de esta forma puedo alimentar el panel con el arduino.

La matriz de 8X8 es pequeña, por lo que tenido que pensar mucho para intentar mostrar las banderas lo mejor posible.
En algunos casos he realizado 2 diseños, y me que quedado con la que creo que está mejor.

Espero que realicéis este circuito, es muy fácil.

VIDEO


PROGRAMA y Librerías 

Saludos.
Juan Galaz



Bibliografía:

Reloj WS2812



martes, 22 de abril de 2025

Arduino nano - Radio SI7432 ALL BAND AM - FM - SSB

  Página principal

Arduino nano
Radio SI7432 ALL BAND
AM - FM - SSB

En el proyecto  https://github.com/pu2clr/SI4735  hay muchos ejemplo con el CHIP SI7432 .
Entre ellos existe uno SI473X_04_ALL_IN_ONE que recibe todas las banda y modulaciones.
Lo que hago es modificarlo para poder cambiar cualquier opción desde
un Rotary encoder.



En el primer ejemplo utilizo la librería Tiny4kOLED.h para manejar el OLED junto con Rotary.h para manejar el mando encoder.






En el segundo montaje utilizo una librería propia para manejar el OLED junto con 
Rotary.h para manejar el mando encoder.
Además quito mucha información de pantalla, que se puede ver directamente en el menú.
 



VIDEO

Programa1
programa2

Libreria SI4732
Rotary
Tiny4kOLED

Saludos.
Juan Galaz



Bibliografía:

https://github.com/pu2clr/SI4735
https://github.com/skathir38/Rotary



domingo, 20 de abril de 2025

Arduino nano - Radio SI7432 AM - FM

Arduino nano
Radio SI7432
AM - FM

Con el CHIP SI7432 realizo una radio de FM y AM. Es una continuación de radsi.html
En este montaje utilizo un Rotary encoder para cambiar la frecuencia, y un OLED para visualizar la frecuencia.




Lo monto en una placa de circuito impreso, alimentándolo  con 5 V del USB, y el SI4732 se alimenta mediante los 3.3V del propio arduino nano.
Para sintonizar la AM se utiliza una bobina de 500uH con núcleo de ferrita.
Utilizo el mando
Rotary encoder para navegar por todas la opciones del programa.
En FM funciona todo bastante bien, incluso el RSD, además con poca antena la señal es buena.
En AM  la señal de audio baja bastante, y en mi edificio la señales de baja frecuencia tienen bastante ruido.
También debemos girar la bobina en dirección a la emisora de AM.
Como el propio circuito genera ruido, he añadido en el menú una opción para que no se actualice las calidades de señal y de esta forma no genera ruido.


VIDEO


PROGRAMA 
Libreria SI4732

Saludos.
Juan Galaz



Bibliografía:

https://github.com/pu2clr/SI4735
https://github.com/skathir38/Rotary



jueves, 27 de marzo de 2025

Arduino - Radio SI7432

  Página principal

Arduino
Radio SI7432


Con el CHIP SI7432 realizo una radio de FM.

El circuito de radio frecuencia es el mismo para los 3 montajes, no se utiliza la bobina ni el condensador para la banda de AM, solo se utiliza la parte de FM.
El SI4732 y el SI4735 son el mismo chip, pero con diferente encapsulamiento .
Puedes variar la dirección del bus I2C mediante colocar el pin SENB a Vcc o a masa.
En el bus I2C  he colocado resistencias de 120 ohmios a modo de protección entre el Arduino nano que funciona a 5V y el CHIP SI7432 que funciona a 3V, no es lo mas adecuado, pero funciona bien.
Revisé el consumo del CHIP SI7432 y comprobé que consumía 21mA, por lo que se puede alimentar a través de los 3,3 V que proporciona el Arduino nano.  He colocado dos condensadores en la alimentación del CHIP para mejorar la estabilidad de la alimentación. El display OLED se alimenta a 5V.
Para el primer montaje utilizo botones para cambiar la frecuencia.
También se pueden cambiar mediante comandos en la consola serie  con las siguientes ordenes:
HELP                 ayuda
VOL=[0-63]           Volumen
FRE=[8400-10800]     Frecuencia
+++_ o ---_          Sintonía
NEXT  o  FREV        Busca emisora





La librería utilizada para manejar el OLED es realizada por mi.
La programación hace uso de la librería  https://github.com/pu2clr/SI4735.
    Programa        Librería


En este segundo montaje utilizo un Rotary encoder para cambiar la frecuencia.
Se podría modificar el programa para que cambiase de frecuencia con más velocidad dependiendo la velocidad de rotación, pero eso lo dejo para el que quiera hacerlo, no es difícil.



Programa        Librería Rotary Encoder

VIDEO

Espero que os haya gustado este pequeño circuito.


Saludos.
Juan Galaz



Bibliografía:

https://github.com/pu2clr/SI4735
https://github.com/skathir38/Rotary



jueves, 13 de marzo de 2025

Arduino. Luces de navidad 3

  Página principal

Arduino
Luces de navidad 3


Estaba estas navidades en un bar, y me fije en unas luces de navidad.
El conjunto de luces led estaba alimentado por dos cables.
Pero lo que me extrañaba era que manejaba dos grupos de leds independientemente.
¿Como era posible que mediante dos lineas pudiese manejarse dos grupos de leds?
Después de pensarlo, llegué a la solución.
Los leds se intercalaban en polaridad, con lo cual dependiendo como se alimentasen se encendían unos u otros.
Para encender los dos grupos de leds a la vez, se alimentan alternativamente cada grupo de leds, pero a una velocidad tan rápida que el ojo humano no distinga si están apagados.
El manejo de la luminosidad se hace mediante modular el ancho del pulso.
No he querido utilizar interrupciones, que hubiese simplificado la programación.





Con todos los leds del mismo grupo del mismo color funciona bien, pero si mezclamos leds de diferentes colores, se enciende el led que tiene el voltaje umbral mas bajo.
Para solucionar esto se utilizan resistencias de 100 ohmios para cada tipo de leds.
El las luces de navidad comerciales se arregla esto utilizando el mismo tipo de led, pero la envoltura de plástico es de distinto color.
Otra de las formas es integrar una resistencia interna en el propio led.




Este tipo de montajes me gusta mucho por su simplicidad, pero muy brillantes. ;)
PROGRAMA

VIDEO

Espero que os haya gustado este pequeño circuito.


Saludos.
Juan Galaz



Bibliografía:


http://seta43.duckdns.org/navid.html
http://seta43.duckdns.org/navi.html


sábado, 8 de marzo de 2025

Arduino RELOJ DS1307 BMP280 - AHT20 - OLED SDD1306 - AT24C32

  Página principal

Arduino
RELOJ DS1307

BMP280 - AHT20 - DS1307 -
OLED SDD1306 - AT24C32

Otro montaje de relojes, esta vez montado con un DS1307.
En esta ocasión utilizo el sensor de presión BMP280, junto con el sensor de temperatura y humedad AHT20.
Además utilizo la memoria
AT24C32 para registrar los valores diarios de temperatura, humedad, presión.
Se toman 4 valores por hora, en los minutos, 0, 15, 30, 45.
Con la memoria que tiene la  EEPROM 24C32 , se podría almacenar  10 días, pero eso lo dejo para el que lo quiera hacer.
La toma de los diferentes sensores se toma cada 5 segundos, y esta se representa en la pantalla OLED y se transmite al terminal.
Para visualizar los valores diarios almacenados en la memoria, se debe escribir en el terminal serie la orden "print".
Para modificar la hora y la fecha, he añadido dos botones, con uno seleccionas el valor que quieres cambiar, y con el otro incrementas el valor.
He tenido algún problema con el BMP280, se bloqueaba aleatoriamente sin motivo. Para arreglar esto, he reducido la velocidad del reloj del bus I2C y he colocado un condensador (
100uF 5V) en la alimentación.

Los pines del dibujo del BMP280 no corresponden a los pines reales, mirar en vuestro caso cuales son.



Respuesta de la placa cuando mandas la orden "print"


    Programa        Librería

Espero que os haya gustado este pequeño circuito.


Saludos.
Juan Galaz



Bibliografía:

https://github.com/adafruit/RTClib
https://naylampmechatronics.com/blog/52_tutorial-rtc-ds1307-y-eeprom-at24c.html


martes, 18 de febrero de 2025

lunes, 17 de febrero de 2025

MMana-GAL.V invertida. 145 MHz 2m

 



 

Mi segundo tutorial sobre el analizador de antenas MMana-GAL. Muestro todos los pasos para creación y análisis de una antena de 2 m. en forma de V invertida.

 Disculpar los posibles fallos.

MMana-GAL.V invertida28MHz 10m

 VIDEO

Mi primer tutorial sobre el analizador de antenas MMana-GAL. Muestro todos los pasos para creación y análisis de una antena de 10 m en forma de V invertida. Disculpar los posibles fallos.

 

miércoles, 5 de febrero de 2025

Antena Rectangular de 10 m Full-wave loop


Antena Rectangular
10 m
Full-wave loop


Hace unos meses hice una antena rectangular de 145 MHz (2m), que funcionaba bastante bien.
Después de ver que Salva  (EA1PA) había hecho esta misma antena  en 10m y daba buenos resultados, me dispuse hacerla también en 10m.
Salva  (EA1PA) experimenta con antenas autoconstruidas  y hace bastantes contactos con satélites.

He utilizado tubos eléctricos de 16 y 20 mm, cable fino de altavoz 10,6m, y una caña de pescar 6m  (fibra de vidrio) .

Las dimensiones de esta antena siguen las siguientes proporciones para 50 ohmios.
Para los 10 m el resultado de la formula da para L1=3,516 m ,y para L2=1,732 m.
No os preocupéis de la medida exacta, dependiendo en que frecuencia deberéis acortar o incrementar la medida.
En mi caso me resonaba a 29MHz, y como quería que resonase en 28,400 tuve que alargar el cable mediante dos clemas o  regletas de empalme, se puede distinguir en las fotos. Yo las coloqué en la parte superior de la antena, pero se pueden colocar en cualquier parte.
He visto que algunos ajustan la antena enrollando algunas vueltas de cable en el tubo de PVC en la parte baja de la antena.


Para que no fueran tan largos los tubos 1,80m , los he dividido en dos, y la unión se hace mediante un tubo de 20 mm de diámetro y una longitud de 20 cm, que es suficiente para mantener la estructura firme. Para que no se muevan he utilizado un pasador en un lado.






He utilizado un conector BNC en vez de un SO239 por solo una razón,  tengo varios de estos conectores procedentes de despieces.
La sujeción al mástil en la parte superior se realiza con dos pequeños trozos de PVC de 16 mm, unidos con cola termica.




La sujeción al mástil en la parte inferior se realiza con dos bridas de apriete no fijas, funcionan bastante bien.
Estas misma bridas se utilizan en la parte inferior de la antena, con estas bridas podemos ajustar la antena.


La sujeción de la caña a un tubo clavado en el suelo se realiza mediante bridas de apriete no fijas.


La antena plegada es totalmente portátil, no superando 110 cm.


En una primera prueba me resonaba a 29MHz, y como quería que resonase en 28,400MHz tuve que alargar el cable.
Después del ajuste quedo como veis en la gráfica realizada con nanoVNA, perfecto.
Y en la prueba de medida con un medidor de estacionarias, la SWR daba 1, la aguja ni se movía.

Hice una prueba con una emisora de CB antigua PRESIDENT LINCOLN  10W en AM y 21W en USB.
Contacte con la isla de El Hierro EA8AT que se encuentra a 2000 KM de mi posición.
Al ser directiva esta antena, tuve que girarla en dirección a la isla para conseguir mejor señal.
No hice más pruebas, estaba a 1ºC en el coche, y con el que hable en la isla a 17ºC.
A falta de más pruebas me sorprendió para bien está antena.

 
Saludos
Juan Galaz


viernes, 31 de enero de 2025

GAMBAS Generador de bases de datos SQLite. Creador de programa en Gambas para su manipulación.

  Página principal

GAMBAS
Generador de bases de datos SQLite
Creador de programa en Gambas para su manipulación

 Quería crear una base de datos en Gambas, y me di cuenta que era algo tedioso crear el archivo SQLite, para mas tarde crear el programa para manejar la base de datos.
Se me vino la idea de crear un programa generador de una base de datos y a la vez el programa gráfico en gambas para interactuar con la base de datos.
Me puse manos a la obra y cree el programa.
Arrancado el programa tiene este interface gráfico.

Aquí damos nombre a la base de datos, también a la tabla ( en este caso solo va existir una).
Damos nombre a cada campo,  junto con el tipo de dato y el tamaño.
Solo generará en la base de datos el campo que tenga un tipo definido.

 

Se utiliza una especie de plantillas generales para el interface gráfico, y otra para el programa, junto con varios archivos para la configuración del programa.


Estos son los ficheros generados junto con la base de datos.
Automáticamente se crean 10 registros a modo de ejemplo.

Si cargamos el programa en gambas y lo ejecutamos veremos el interface gráfico para manejar los registros.
Aunque se crea todo el interface gráfico con todos los campos, solo se visualizará los que existan.


Podemos cambiar la posición de los elementos del interface gráfico a nuestro gusto.
Si creamos un ejecutable, no hace falta que abramos gambas.

Es un programa simple que genera bases de datos fáciles de manejar.
Como podéis ver, no genera informes, básico para cualquier base de datos, pero no era el objetivo de este programa.
Para el que quiera generar informes puede ver como lo hago en  LIBROS .
A nivel de programación las plantillas no son eficientes, no superarían un simple examen, por ejemplo:

  • En la visualización y edición , aún sabiendo que no existen otros campos, sigue ejecutando código inútil. Esto es fácil solucionarlo con un simple goto o Else, lo he dejado a propósito.
  • Los campos que no existen sigue estando en código fuente.
  • A nivel de interface gráfica, los campos están representados todos, pero se hacen invisibles los que no se utilizan.
A pesar de todo lo anterior merece la pena.
Ahora puedo generar bases de datos en un par de minutos, simple y sencillo.
Espero hacer unas versiones bastante mejores en todos los sentidos.


PROGRAMA

VIDEO


Saludos.
Juan Galaz



Bibliografía:

Gambas -Base de datos de libros con SQLite. LIBROS
Pequeño programa hecho en gambas y SQLite para manejar una biblioteca de películas. gam1
wxwidgets- Base de datos de libros-SQLite-Lector codigo de barras-MX009-2MA7C. wxlibrosS
Base de datos autores - SQLite y wxwidgets -Linux y windows. wxLibros
Lenguaje C - Base de datos autores - Compilar SQLite bajo windows. DBAUTORW
Lenguaje C - Base de datos autores - SQLite. DBAUTOR
Gambas -Base de datos de libros con SQLite. LIBROS