miércoles, 4 de marzo de 2009

Detección de trenes


Tenía muchas ganas de realizar esta prueba, ya que toda mi idea del manejo de la maqueta por ordenador se basa en esta posibilidad. Se trata de conseguir que un programa de ordenador pueda detectar el paso de trenes por determinados puntos de la maqueta.

Esta función consta de tres fases diferentes: un sistema que detecte físicamente el paso de un tren por un lugar. Un sistema que transmita esa información al ordenador, y un programa de ordenador capaz de recibir e interpretar esas señales.

Creo que ya he comentado que hace tiempo compré una placa PS6E8S a la empresa Micropick. Esta placa dispone de seis entradas optoacopladas y ocho salidas por relé y se conecta al puerto serie de un ordenador. Esta empresa, junto con la placa, suministra unos programas de ordenador en Visual Basic que sirven como muestra de la utilización de la placa.

En la imagen vemos el aspecto de esta placa. En la parte superior está el conector de puerto serie y la alimentación. A la derecha están las seis entradas y a la izquierda los seis relés de salida. Cada una de las seis entradas consiste en un opto-acoplador que se conecta a lo que sería un interruptor. El interruptor abierto se interpreta como valor cero y el interruptor cerrado como valor uno.
La idea es que estos interruptores sean reles reed situados en la vía, y accionados por imanes situados en las locomotoras. Inicialmente había pensado utilizar vías de contacto de Marklin, pero me he convencido de que el sistema de relés reed es mucho más eficiente, y de paso más barato.

En la imagen vemos el aspecto de uno de estos contactos situado en la vía. Las dos imágenes siguientes muestran detalles del propio relé y del minúsculo imán, situado sobre la cabeza del tornillo en la panza de la locomotora









Hasta aquí, todo es sencillo: basta conectar el puerto paralelo del ordenador a la placa, conectar los dos hilos del detector reed a una de las puertas de entrada de la placa y ejecutar el programa. Al ejecutar el programa vemos una pequeña ventana que contiene seis casillas que identifican el estado de cada entrada. Cuando el interruptor esta abierto, la casilla correspondiente muestra el valor cero. Si pasa una locomotora por encima del detector, el contacto se cierra, y automáticamente la ventana del programa muestra el valor uno en la casilla correspondiente.

Cuando la locomotora termina de pasar y el detector se abre, la casilla vuelve a mostrar el valor cero: Excelente, pero....

Aparentemente si tenemos seis puertas podemos conectar seis detectores. Esto resulta insuficiente ya que al menos se necesita un detector por cada cantón, y la maqueta tendrá al menos siete cantones. Además sería bueno disponer de la posibilidad de más detectores para poder establecer por ejemplo puntos de deceleración y de parada.

Sin embargo hay una solución muy sencilla, ya que las seis entradas no tienen porqué ser independientes, sino que pueden ser combinadas. Por ejemplo un determinado sensor puede activar simultáneamente las entradas 1, 2, 4, 5 y 6 y el programa podrá interpretar esa combinación como una señal independiente de cualquier otra. Lo que hay que hacer es tener un sistema que permita que a cada sensor se le asigne una combinación distinta de las seis entradas.
Y.. ¿Cuántas configuraciones distintas pueden adoptar esas seis señales? Pues sencillamente 2 elevado a 6, o sea 64 señales distintas. Puedo tener entonces hasta 64 detectores en la maqueta, lo cual es ya mucho más que suficiente.

Hay una forma muy sencilla de que cada detector genere una de esas 64 posibles combinaciones. Si conecto el cable que viene del detector a un "pianillo" con seis interruptores, y conecto cada interruptor a cada una de las entradas, la activación del sensor se transmitirá a las entradas que tengan el interruptor del pianillo cerrado y no a las que lo tengan abierto.

En la imagen vemos como cada una de las seis entradas se conecta a uno de los interruptores del pianillo. Éste se ha colocada en la misma placa de prototipos en que está montado el regulador PWM, pero no tiene ninguna conexión con él. Una vista más cercana del pianillo nos muestra que están cerrados los interruptores 1,2,4,5 y 6. El 3 está abierto y el 7 y 8 no tienen efecto.

Cuando se cierre el sensor conectado así será como activar las entradas 1,2,4,5 y 6

Efectivamente la imagen de la pantalla del ordenador muestra como al pasar la locomotora por encima de este sensor, se activan las casillas correspondientes a la posición del pianillo.

Es tan sencillo, que ni siquiera se necesita ningún componente electrónico. únicamente hay que poner uno de estos pianillos por cada sensor que coloquemos en la vía, y poner en cada uno de ellos una disposición diferente de los interruptores.
Aunque si queremos darle un poco más de importancia al asunto, podemos decir que a casa sensor hay que asignarle una dirección de 6 bits, y que esa dirección la establecemos configurando el pianillo con la correspondiente combinación de sus micro-interruptores.

O sea, que finalmente, con este sistema tenemos la posibilidad de situar hasta 64 detectores en cualquier punto de la maqueta, y el programa será capaz de detectar el paso de trenes por cada uno de esos puntos y actuar de la forma que convenga, por ejemplo cerrando o abriendo señales, moviendo desvíos, etc. Cada sensor lleva un único cable de señal y otro común a todos ellos

Nótese que para hacer esto mismo, con un sistema digital de los que se utilizan normalmente habría que situar codificadores de señal S88 y conectar a ellos los detectores reed. Todos los S88 se deberán conectar con sus complicados cables a una central digital, y ésta a su vez a un ordenador cargado con un programa capaz de manejar esta información. No cabe duda que ésta solución es muccho más sencilla y barata.



2 comentarios:

  1. Hay 10 tipos de personas: Los que saben binario y los que no. :-DDDDDD

    *

    ResponderEliminar
  2. Que envidia me das Ignacio. Yo en estos temas estoy entre las persona "0", según la división de Angel.

    ResponderEliminar

Gracias por expresar tus opiniones.

Los comentarios aparecerán en el blog normalmente en unos pocos segundos