0

Comunicando decoder con central DCC++ MEGA por IR (Parte 1)

Buenas a todos!!! no se si el titulo puede entenderse de un vistazo, pero voy a intentar explicarlo por pasos y de una manera clara y sencilla.

La idea general y a grandes rasgos es utilizar una de las UART extras con las que cuenta el Arduino MEGA para conectar un receptor de infrarrojos de tipo TSOP1738 o similar, para que reciba los datos de un emisor de IR situado en el decoder, de esa manera tendremos una comunicación bidireccional, la que mandemos a las vías en modo de señal DCC desde la central, y el otro sera desde el decoder hacia la central.

Lo bueno:

  • Ahorro considerable en cableado.
  • Comunicación directa con la central.

Lo malo:

  • La comunicación para el monitor serial no puede ser superior a 2400 baudios
LED Transmisor Tx

El emisor:

El emisor es la clave en este montaje, como se muestra en la imagen utilizaremos un pin con PWM y el pin Tx (1). En mis pruebas he intentando utilizar la librería «SoftwareSerial.h» para no tener que utilizar los pines Rx y Tx (0 y 1) pero no ha funcionado. La parte buena es que al ser el pin Tx no afecta a la hora de programar.

Este es el código que estoy usando para enviar los datos de manera serial:

#define MODULACION 9 

void Setup() {
Serial.begin(2400);
tone (MODULACION, 38000);
}
void loop(){

}
void MandaSensor(int id){

  String msg = "<J " + (String)id + ">"; 

    Serial.print(msg);
  
    delay(1000);
 }

Ahora tengo que añadir esta parte al decoder de tal manera que cuando uno de los sensores detecte la presencia se active mandará el comando «J» junto con la ID del sensor.

Como el estado del sensor lo controla el decoder no hace falta tener un comando para alto o bajo como pasa con los comandos nativos de DCC++.

Bueno también aprovecho esta entrada para comentaros que a partir de ahora me voy a pasar a la librería DCC++ de Locoduino. Será mi base para futuros proyectos y para los anteriores también. No estoy muy familiarizado con programar librerías así que puede que algunas cambien según la configuración que tenga cada uno en su central, peeeero, voy a intentar no tocar mucho el código original para que la compatibilidad sea la máxima posible.

Darle las gracias a Juan por su recomendación de usar la librería, todo un descubrimiento que iremos viendo próximamente. Saludos!!!

(Visitado 24 veces, 1 visitas hoy)

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *