URE foro pequeñas
Proyecto decodifica...
 
Notificaciones
Limpiar todo

Proyecto decodificador de bandas universal.  

  RSS
EA2J
 EA2J
Mensajes: 3082
19 julio, 2021 16:42     #364974

Me he embarcado en un nuevo proyecto que quizá tenga interés para alguien más. Se trata de un decodificador de bandas para los principales sistemas que utilizan los equipos comerciales, en especial el ACC y REMOTE (CI-V) de Icom, el BCD  de Yaesu y el CAT USB de otros equipos.

Desde un punto de vista de hardward acabo de diseñar un "shield" para la placa Mega 2560 PRO (compatible con Arduino ATmega2560). Esta placa dispone de E/S digitales suficientes y memoria de sobra para procesar cualquier sistema, por otra parte se trata de una placa de tamaño reducido en relación a la de Arduino MEGA. He dispuesto 8 salidas digitales para pilotar los relés de 8 antenas, 4 entradas digitales para el sistema BCD de Yaesu, dos entradas analógicas con resistencias para los divisores necesarios, salidas a 5V y 2 tomas para el puerto I2C (display o pantalla TFT) además de un puerto auxiliar Serie (RX/TX) para la entrada directa del conector REMOTE de Icom. No he encontrada nada diseñado así en la bibliografía internacional.

Acabo de encargar cinco placas de circuito impreso, así que me sobran tres. Me gustaría ir compartiendo la experiencia a medida que progrese.

El programa del decodificador para el ACC de Icom está ya resuelto, el mismo sistema se puede utilizar para el Yaesu FT817. El deco para el BCD de Yaesu está resuelto sobre el papel a falta de material para probarlo y ahora estoy pegándome con la entrada de CI-V.

La idea es que, a diferencia de un deco universal como el que utiliza RemoteQTH, se pueda montar cada uno un deco para cada equipo y para las antenas que necesite con un programa fácil de cargar y ajustar.

El ámbito de una variable local está limitado al código de la función en la que está definida. (Vida y muerte de una variable)
http://www.enioea2hw.wordpress.com73, Enio

ResponderCitar
EA2J
 EA2J
Mensajes: 3082
19 julio, 2021 16:45     #364975
image

El ansiaviva me ha vencido y he dejado de documentar algunas entradas en la seriegrafía, nada grave, es doble cara y me sale por menos de 2€ cada PCB. Las MEGA 2560 Pro se pueden encontrar sobre 10€ aunque hay ofertas chinas por unos 5€ para los pacientes.

El circuito integrado es un UDN 2981 que va muy bien para pilotar hasta 8 relés de hasta 50V y 500mA.

Dispone también de un acceso a 4 E/S digitales que se pueden utilizar con la programación adecuada para cuatro pulsadores o para una salida BCD con el objeto de pilotar un accesorio compatible con este protocolo.

Esta publicación fue modificada hace 2 semanas 3 veces por EA2J

El ámbito de una variable local está limitado al código de la función en la que está definida. (Vida y muerte de una variable)
http://www.enioea2hw.wordpress.com73, Enio

ResponderCitar
  EA3SE me gusta
EA5TV
Mensajes: 782
19 julio, 2021 19:02     #364980

Muy interesante, pero me pregunto si para los Yaesu que no tienen implementada de fabrica los 60 m servirá. Lo digo porque veo las entradas del BCD, pero segun tengo enetendido, la codificacion BCD para 60 m es la misma que para 40.

Saludos.

Rafa. EA5TV

Rafa. EA5TV. (Ex EA5BFX)
GRUPO TORTUGAS CW
En radio desde 1979 y todavia sigo aprendiendo

ResponderCitar
EA2J
 EA2J
Mensajes: 3082
20 julio, 2021 09:19     #365007

De momento he decidido la forma de decodificar en C++ una entrada BCD de 4bit, en realidad, Yaesu establece un código decimal de entre nueve y once posibilidades decimales expresada en un número binario de 4bit, numera las bandas de 0 en adelante, (0 para la más baja, 160m) y secuencialmente, hasta la más alta. Un código de 4bit permite codificar 16 elementos contados en base 10, así que hay espacios libres para que Yaesu adjudique un número a la banda de 60m si lo decide, pero si lo hace, será probablemente con equipos nuevos y no secuencialmente porque dejaría obsoletos a todos los decos actuales.

Es algo a estudiar, en este momento ya he probado una función que recibe el estado de cuatro entradas digitales y aplica la fórmula de conversión de números de base 2 a base 10. Una vez que tenemos la banda expresada en un número entero decimal, es fácil decodificar la banda en forma de cadena y activar el relé correspondiente a la antena que el usuario haya asignado a este relé dentro del código o con un front-end que habría que crear. De la misma forma cualquier número decimal se puede transformar en un número. C++, además, tiene un función matemática que cambia de base 10 a base 2.

El caso es que la placa de CI está preparada para recibir información de un número binario (con umbral de 2.6V y un máximo de 5V) de 4bit y aplicarlo en el sistema de E/S de un ATmega2460. El algoritmo de decodificación estará escrito en función de cómo se haya decodificado, es muy sencillo, y esto último depende de Yaesu únicamente, pero la ventaja es que se puede reprogramar fácilmente en el caso que Yaesu incluya los 60m en el código.

Una placa "shield" tiene esa función, servir de comunicación entre una placa de Arduino y los sensores y actuadores de un proyecto relacionado, en este caso entre el mayor número posible de equipos comerciales, un grupo de antenas y el o la operadora de la radio.

Edito, no he recogido todavía documentación relacionada con la aplicación del código BCD en los modelos de Yaesu, a priori, como especulación únicamente, creo que sería poco inteligente por parte de los ingenieros de Yaesu, aplicar el mismo número a dos bandas diferentes cuando tienen números libres. El método de codificación por tensión variable del ACC de Icom que inserta las bandas WARC entre el resto de bandas, adjudicando los 0V a los 30 y la misma tensión a los 17 que a los 15 y la de los 12 a la de los 10, tiene su explicación de no modificar el reparto de tensión entre 0 y 8V que ya estaba establecida, teniendo en cuenta, además que ya estaba implementado el protocolo CI-V que presenta la frecuencia con mayor precisión, incluida cualquier nueva banda, como la de 60m.

Como ejemplo, un equipo más moderno, el Yaesu FT817 tiene un sistema de codificación de banda por tensión variable que incluye las bandas WARC separadas en un conector de 8 pines. 

También hay que tener en cuenta que estos sistemas de codificación por tensión variable están destinadas a ser decodificados con sistema de filtrado de estado sólido. El uso de mCU cambia el paradigma.

Esta publicación fue modificada hace 2 semanas por EA2J

El ámbito de una variable local está limitado al código de la función en la que está definida. (Vida y muerte de una variable)
http://www.enioea2hw.wordpress.com73, Enio

ResponderCitar
  EA1TA y EA3SE me gusta
EA1TA
Mensajes: 460
20 julio, 2021 11:37     #365013

No paras, Enio... el siguiente proyecto? 

Apertas Manuel ea1ta

Esta publicación fue modificada hace 2 semanas por EA1TA

Manuel Fafian
EB1DEY 1986
EC1AGR 1988
EA1TA 2007
La formulación de un problema, es más importante que su solución.

ResponderCitar
EA2J
 EA2J
Mensajes: 3082
22 julio, 2021 15:55     #365104

He resideñado la placa de circuito impreso para añadir una entrada más digitalk para el pulsador de MODO, resistencias externas PullDown para las entradas digitales y he modificado los pines de entrada del puerto Serial 1, para hacerlo sobre el puerto hard del mCU. También he revisado la seriegrafía.

Gracias Javi por las correcciones.

image

El ámbito de una variable local está limitado al código de la función en la que está definida. (Vida y muerte de una variable)
http://www.enioea2hw.wordpress.com73, Enio

ResponderCitar
  EA1TA me gusta
EA2J
 EA2J
Mensajes: 3082
24 julio, 2021 18:37     #365163

Bueno, ya he entendido el manejo del protocolo CIV, por lo menos decodificar modo y frecuencia, funciona y puede leer el modo y la frecuencia estoy trabajando en depurar la función. También estoy trabajando en el display y se me ha ocurrido una idea malvada:

Meter una base de datos con el plan de asignación de bandas de la IARU, esto es muy sencillo, cruzar la frecuencia de trabajo con el plan de bandas e indicar en un display con cuatro líneas la asignación del modo autorizado a la frecuencia e indicar automáticamente las recomendaciones de uso preferente o el centro de una actividad. Creo que no hay nada hecho por el estilo, sería algo original y útil para despistados, pero el curro de meter el plan de bandas es pesado necesitaría ayuda de alguien que se lo quisiera picar.

El ámbito de una variable local está limitado al código de la función en la que está definida. (Vida y muerte de una variable)
http://www.enioea2hw.wordpress.com73, Enio

ResponderCitar
  EA1TA me gusta

QDURE - https://qsl.ure.es


Imprime y confirma tus QSL en tan solo tres click.

Nunca fue tan fácil y cómodo
el confirmar tus contactos.

TIENDA ONLINE URE


Publicaciones, mapas, polos, camisetas, gorras, tazas, forros polares y mucho más...

WEBCLUSTER EA4URE


Conoce el nuevo WebCluster de URE, ahora con nuevos filtros e información y compatible con GDURE

Bienvenida/o a la información básica sobre las cookies de la página web responsabilidad de la entidad:

UNIÓN DE RADIOAFICIONADOS ESPAÑOLES

Una cookie o galleta informática es un pequeño archivo de información que se guarda en tu ordenador, “smartphone” o tableta cada vez que visitas nuestra página web. Algunas cookies son nuestras y otras pertenecen a empresas externas que prestan servicios para nuestra página web.

Las cookies pueden ser de varios tipos: las cookies técnicas son necesarias para que nuestra página web pueda funcionar, no necesitan de tu autorización y son las únicas que tenemos activadas por defecto. Por tanto, son las únicas cookies que estarán activas si solo pulsas el botón ACEPTAR.

El resto de cookies sirven para mejorar nuestra página, para personalizarla en base a tus preferencias, o para poder mostrarte publicidad ajustada a tus búsquedas, gustos e intereses personales. Todas ellas las tenemos desactivadas por defecto, pero puedes activarlas en nuestro apartado CONFIGURACIÓN DE COOKIES: toma el control y disfruta de una navegación personalizada en nuestra página, con un paso tan sencillo y rápido como la marcación de las casillas que tú quieras.

Si quieres más información, consulta la POLÍTICA DE COOKIES de nuestra página web.

CONFIGURACIONES DE PRIVACIDAD GUARDADAS!
Configuración de Cookies

Desde aquí podrás configurar las cookies propias y de terceros, y modificar parámetros que afectarán directamente a tu experiencia de navegación en esta web.

Estas cookies son importantes para darte acceso seguro a zonas con información personal o para reconocerte cuando inicias sesión. Activadas por defecto.


Estas cookies son necesarias para que la página web funcione, por lo que no se pueden desactivar. Por lo general, solo se configuran en respuesta a sus acciones realizadas al solicitar servicios, como establecer sus preferencias de privacidad, iniciar sesión o completar formularios, en ningún caso almacenan información de identificación personal. En caso de que configure su navegador para bloquear estas cookies, la página web no funcionaría correctamente.

  • wordpress_test_cookie
  • wordpress_logged_in_
  • wordpress_sec
  • wp-settings-1
  • wp-settings-time-1
  • wpf_read_forums
  • wpf_read_topics

RECHAZAR TODOS
ACEPTAR TODOS