ESTE BLOG COMENZÓ A PUBLICARSE EN 2008, POR LO TANTO MUCHOS DE LOS TEMAS HAN QUEDADO DESACTUALIZADOS U OBSOLETOS. LOS LECTORES QUE DESEEN UTILIZAR ALGUNO DE LOS ELEMENTOS AQUI DESCRITOS DEBERÏAN ASEGURARSE DE BUSCAR LAS REFERENCIAS MAS MODERNAS DE LOS TEMAS DE SU INTERÉS. EL BUSCADOR INCLUIDO SERÄ UNA AYUDA PARA ESA BÚSQUEDA

miércoles, 28 de febrero de 2018

Año nuevo

By Laika ac from USA - Dragon, CC BY-SA 2.0, https://commons.wikimedia.org/w/index.php?curid=31725006

Año nuevo, si, pero en China.

La fama de trabajadores que tienen los chinos, hasta el punto de que cuando alguien no para de trabajar se dice que trabaja como un chino, parece que últimamente está perdiendo un poco de significado, y especialmente en estas fechas en las que celebran el nuevo año. Por lo visto, durante unos cuantos días prácticamente todos los chinos se toman unas vacaciones, y naturalmente las empresas cierran.

Viene esto a cuento de que como los lectores habituales saben, encargo la fabricación de las placas de circuito impreso a una empresa de China, así que cuando esta vez he querido encargar una nueva partida de placas, me he encontrado con que la empresa cerraba unos diez días.

Las placas que quería encargar eran  para el proyecto PWM8ASFA, ya que en la segunda de las placas que se vieron en el artículo anterior, tenía algunos errores, poco importantes porque funcionaba bien, pero que hacían difícil su cableado.

Asi que me quedé unos días parado, a la espera de poder hacer un nuevo pedido. Sin embargo, y ya que vamos de refranes, a mi me es aplicable ese que dice que cuando el diablo se aburre, mata moscas con el rabo, y no podía estarme quieto esperando sin poder avanzar.

La historia es que como ya he contado aquí (Véase: Los últimos desarrollos) Tuve que abandonar el proyecto de un PWM75VO porque era un diseño demasiado complicado, y caro, y sobre todo porque no funcionaba bien, debido precisamente a ser un sistema muy analógico, a diferencia de otros proyectos más digitales, y mi experiencia anterior era más bien en temas digitales.

Sin embargo, el desarrollo del PWM8ASFA que como ya he dicho está funcionando bien, me ha hecho experimentar y aprender algo más sobre circuitos analógicos, y especialmente sobre los comparadores analógicos como el LM311 o el LM339. Entonces me dio por aplicar esos nuevos conocimientos a un nuevo intento de proyectar un controlador  basado en el tema de la velocidad objetivo.

El empeño en hacer eso, no es un puro capricho, sino que se trata realmente de hacer un controlador que pueda manejar por ejemplo un sistema de bloqueo automático, con paradas y arrancadas progresivas. Ya he comentado aquí varias veces que cuando un tren, que va a una velocidad determinada, llega a un punto donde debe pararse, por ejemplo la señal en rojo de un bloqueo automático, debe hacer primero una parada progresiva hasta detenerse, y después, cuando la señal se ponga verde hacer una arrancada progresiva hasta alcanzar LA MISMA velocidad que llevaba cuando comenzó a frenar. Esto, es decir, el automatizar de esta forma las paradas es lo que permite hacer un sistema de bloqueo totalmente real y es lo que desea todo modelista. En digital, aún sin recurrir al control por ordenador, hay un sistema denominado ABC (Automatic Brakes Control) que permite de una forma sencilla hacer esto, pero claro se necesita un sistema digital y además decoders en las locomotoras que reconozcan el sistema ABC.

Hacer esto, en analógico, tiene dos problemas: El primero es que cuando el tren frena, la distancia que recorre hasta pararse es variable en función de varios factores, como son la velocidad que llevaba al llegar, y las características de la locomotora, ya que no todas responden igual. De manera que si la frenada es demasiado fuerte, la locomotora se queda demasiado lejos de la señal y si es demasiado floja, la locomotora se pasa el punto donde debe detenerse. Esto se puede arreglar haciendo que llegado al punto donde debe pararse haya un sensor que al activarse haga que la locomotora se pare inmediatamente, de modo que como la locomotora se supone que llega ya bastante despacio, esta segunda frenada total no es demasiado brusca.

Pero el segundo inconveniente es más difícil de tratar, ya que se trata de que al arrancar y acelerar la locomotora llegue a la misma velocidad que tenía al empezar a frenar, y el problema es: ¿y cómo se yo qué velocidad tenía la locomotora al empezar a frenar? Se trata de guardar el dato de velocidad de alguna manera para luego poder compararlo con la velocidad alcanzada.

Como ya comenté  hace tiempo (Nuevas ideas) la idea ha sido siempre hacer un sistema de comparación entre la velocidad actual de la locomotora en cada momento  y la velocidad a la que se desea que vaya, a la que denominamos velocidad objetivo. Esto es un poco distinto de lo que decía antes, pero mejor. Es decir cuando la locomotora empieza a acelerar no se compara la velocidad que va alcanzando con la que llevaba antes de empezar a frenar, sino con la que se desea que lleve la locomotora. Naturalmente si la locomotora al empezar a frenar había alcanzado la velocidad objetivo esta comparación es igual, pero si por lo que fuera, la locomotora, cuando empezó a frenar, no llevaba ya la velocidad objetivo (por ejemplo porque estaba todavía acelerando desde una parada anterior) este método es mejor, porque la locomotora acabará por alcanzar la velocidad objetivo, con independencia de la velocidad que tuviese al empezar a frenar.

Obsérvese que el operador, para manejar un sistema por velocidad objetivo, lo que debe tener es un mando precisamente para modificar la velocidad objetivo. Si quiere que locomotora vaya más deprisa, sube la velocidad objetivo con el mando, y si quiere que vaya más despacio la baja, y en respuesta a eso, la locomotora varía su velocidad para acercarse progresivamente a la velocidad objetivo. Pero por supuesto la rapidez de respuesta es ajustable, de manera que el tren, ante cualquier cambio de velocidad, reaccionará con mayor o menor rapidez, es decir con mayor o menor aceleración y por lo tanto simulando con ello la inercia del tren.

Como ya he dicho, los primeros intentos para hacer esto han sido digitales. pero claro, para manejar la velocidad como un dato digital se necesitan 8 bits ( los potenciómetros digitales que uso son de 100 pasos)


Esto ha dado lugar a varios diseños que he intentado, como el que vemos en la imagen anterior, y que siempre han resultado demasiado complejos.

Así que este callejón sin salida (o con una salida muy estrecha) se resolvió con algo tan sencillo como utilizar un valor analógico para representar la velocidad, lo que dió lugar al modelo PWM73SI el primer controlador con simulación de inercia sencillo, y que además admite conectar un velocímetro para saber la velocidad de los trenes. Evidentemente esa posibilidad se obtiene midiendo con un voltímetro el valor de la tensión analógica que representa la velocidad.

Sin embargo, el paso siguiente lo di por mal camino, ya que me empeñé en un sistema en el cual la velocidad de los trenes no se alcanzaba por comparación con una velocidad objetivo, sino por una combinación de aceleración y tiempo. El sistema funciona, y de hecho dió lugar al controlador PWM74TM . Sin embargo siempre me ha parecido algo demasiado complicado, asi que aunque figura en la tienda como "NOVEDAD Próximamente a la venta" lleva así varios meses, pero nunca lo he liberado porque no acaba de convencerme. Parece que subsconscientemente estaba esperando una solución basada en la velocidad objetivo.

En realidad lo que yo siempre he querido es un sistema que con único mando, en principio un botón giratorio, el usuario ajusta la velocidad a la que quiere que vaya el tren, y un segundo mando de inercia establece la aceleración con la que el tren tiende a esa velocidad. Sin embargo para que el sistema sea práctico tiene que tener previsto el que al acercarse a una señal roja, el tren decelere y cuando la señal cambia a verde el tren vuelva a acelerar. Como decía al principio, traté de conseguir esto con el PWM75VO (Ver Nuevos desarrollos) pero ya comenté que mi poca experiencia en desarrollos analógicos me llevaron de nuevo a algo demasiado complicado.

Y entonces fué cuando coincidió, el parón debido al año nuevo chino, con lo aprendido últimamente con circuitos analógicos, lo que me dió ocasión de enfrascarme en un nuevo diseño, (provisionalmente un nuevo PWM75VO) que desde luego resulta super sencillo comparado con todo lo anterior. Esto es buena señal porque cuanto más sencillo es un diseño, mas fácil es que funcione bien.

Bueno, las placas para este nuevo diseño están ya en marcha en China, donde parece que todo el mundo está otra vez trabajando, asi que pronto las recibiré junto con las del proyecto PWM8ASFA.

Si todo esto sale bien les tendré que agradecer a los chinos, que gracias a sus vacaciones me dejaron un tiempo de parón que me dió ocasión de resolver el controlador de velocidad objetivo



miércoles, 7 de febrero de 2018

PWM8ASFA

PWM8ASFA

Continuando con lo comentado en el artículo "Detectando trenes (de nuevo)" he decidido intentar crear un sistema de bloqueo automático basado en detectores de consumo asumiendo la limitación de que sea válido solamente para trenes de escala N y escala Z, y utilizando mi sistema PWM como corriente de tracción.  Impongo la limitación de que sea para mi sistema, porque es del único que puedo tener garantía de que funciona, e impongo que sea solo para escala N o Z, porque aunque hay algunos aficionados que usan mis PWM con escalas H0 y también H0e, el mayor consumo de estas locomotoras haría que hubiese que hacer un ajuste distinto de algunos elementos. De hecho ni siquiera descarto que no haya que hacer una versión para Z y otra para N.

Todas estas salvaguardas provienen de que el sistema de detección es muy delicado, ya que una condición es que pueda detectar una locomotora completamente parada en una vía, y como sabemos una locomotora analógica parada puede tener un consumo nulo, con lo cual es indetectable. Afortunadamente mis PWM mantienen un consumo mínimo con la locomotora parada y por eso puedo hacer un sistema muy sensible que la detecte, pero al mismo tiempo ese detector debe resistir sin quemarse el consumo de una locomotora rodando a toda velocidad, y con carga, lo cual puede ser del orden de 200 veces más alto.

En el anterior artículo, un compañero comentó que él había hecho algo parecido, y que para ello se basaba en  los terminales SENSA y SENSB del controlador de motor L298 que ambos usamos. Efectivamente tiene razón, lo primero de todo porque esos terminales están ahí para eso, es decir para medir el consumo, y lo segundo porque al intentar medir la corriente de salida, me encuentro con el problema de que esa corriente puede variar de sentido cuando el tren cambia de dirección, mientras que en los SENS no es así.

Con lo que no me convenció es con el método de medir esa corriente, ya que él emplea una resistencia de valor muy bajo mientras que yo empleo unos diodos para medir la caída de tensión directa en ellos. Después de varias pruebas me convencí de que es mejor este segundo sistema porque la resistencia siempre tendrá una caída de tensión proporcional a la corriente y por lo tanto variable en un amplio margen, mientras que la caída de tensión directa en un par de diodos es prácticamente constante. En la imagen adjunta se ve el sistema que he empleado con dos diodos (D25 D26 y D33 D34) en cada terminal SENS del L298. La tensión en los nodos SENSA y SENSAB es cero cuando el consumo es nulo y del orden de 1,5 voltios, muy constante en cuanto hay consumo, ya sea mínimo o ya sea el consumo máximo.


PWM8W
En la imagen de la derecha se ven claramente las dos parejas de diodos, casi en el centro, y muy próximos a los terminales del L298 que es el gran circuito integrado que vemos en primer término, atornillado a la placa

El método de medir el consumo en los terminales SENSx, tiene un condicionante que es precisamente que son terminales del controlador, y por lo tanto estoy midiendo el consumo de cada uno de los dos canales del controlador de forma global, es decir si con este controlador alimento un tramo de vía con el canal A por ejemplo, y en ese tramo hay más de un tren, el consumo que mido con el SENSA es el total de todos los trenes que haya en ese tramo. Por contra si mido la corriente en la salida, puedo bifurcar la alimentación de ese tramo en varias salidas y poner un sensor en cada bifurcación, de manera que podría saber en que tramo hay un tren y en cual no, aunque todos ellos reciban la corriente de un único controlador.

O sea, por pasiva: tengo que tener un controlador distinto para cada tramo en que quiera saber si hay o no un tren. Bueno, exactamente, como el L298, tiene dos canales, A y B, tengo que poner un controlador por cada dos tramos donde quiera detectar si hay o no un tren.

Como lo que quiero hacer es un sistema de acantonamiento o bloqueo automático, y un sistema así se basa en saber cuando un cantón está o no ocupado, tendría en principio que poner un controlador para cada dos tramos, o bueno,  tengo que saber si hay un tren en cualquier parte de un cantón y además saber si el tren está en el tramo de parada precisamente, asi que puedo hacer varias cosas, pero una forma sería alimentar con uno de los canales del L298 el tramo de parada del cantón y con el otro canal del mismo L289 el resto del cantón. Asi habría un L289 por cantón, con un canal alimentando el tramo de parada y el otro canal el resto. Queda todo muy simétrico y modular, porque puedo hacer módulos, cada uno con un L289, que tengan todas las conexiones para un cantón. Así que para un boqueo automático de N cantones necesitaré N módulos idénticos al mostrado en la imagen anterior.

Estos módulos PWM8W son apilables de manera que puede hacerse un montaje muy compacto. De cada uno salen las conexiones que proporcionan a un cantón la alimentación de corriente PWM y al mismo tiempo detectan por consumo la ocupación del cantón. En ese aspecto son muy parecidos a lo que hacen los llamados "retromódulos" en un sistema digital.

PWM8C
Para completar el sistema, necesito un primer módulo que genere la señal PWM para que cada uno de los PWM8W la envíe a cada cantón, Este primer módulo es el que lleva el mando para variar la anchura de pulsos del PWM y conseguir así que los trenes vayan a más o menos velocidad, y también lleva el mando para cambiar el sentido de la marcha y para dejar todos los trenes parados. 

Este módulo de control se sitúa en la pila, encima de los demás módulos, con lo que queda un montaje muy práctico.

Como se ve en la imagen de la izquierda, éste mòdulo PWM8C se parece a primera vista a un PWM71.  Esto se ha hecho intencionadamente para que en un cuadro de mando puedan ponerse juntos los PWM71 y los PWM8C y se vean iguales desde la parte frontal del cuadro de mando. 

Y.. a todo esto, ¿funciona? . Bueno si. Aquí hay una pequeña prueba: 




Naturalmente eso no son más que unas primeras pruebas con el primer prototipo, pero parece que puede funcionar. Por lo menos se ve lo más importante, que es el hecho de que el sistema detecta una locomotora en los carriles a cualquier velocidad, incluso parada completamente. Y también vemos como inmediatamente que la locomotora deja de hacer contacto con los carriles se enciende el led verde y se apaga el rojo, o sea que el cantón ha quedado libre.


Evidentemente con esto se puede llegar a hacer un sistema de acantonamiento y como vemos, aquí no existen imanes ni sensores en las vías ni relés ni nada parecido. Solo se necesitan los cables de alimentación, para llevar la corriente a la vía y para detectar la presencia o ausencia de las locomotoras.

Por cierto he bautizado a este sistema como PWM8ASFA. Evidentemente PWM se refiere al sistema de corriente PWM que se utiliza, y 8 porque la serie anterior de controladores lleva el número 7.

ASFA es en recuerdo del sistema que se usó (y se sigue usando) en España para controlar el acantonamiento en las redes de RENFE. Las siglas ASFA significan Aviso de Señales y Frenado Automático, y si esto llega a funcionar bién también tendremos unos pilotos que avisan de la posición de las señales y el tren se parará automáticamente si las señales impiden el paso.

La verdad es que si esto llega a funcionar bien va a ser un tema curioso, porque durante los muchos años que existió el sistema analógico como única opción, hubo varios sistemas que pretendían hacer algo así, y mis noticias es que nunca se impusieron, seguramente por la complicación que  suponía, y desde luego también porque los sistemas basados en sensores de paso eran más seguros y eficientes. 

La mayoría de las marcas fabricaban tramos de vías con algún tipo de sensor de paso, bién de tipo mecánico o bien de tipo magnético. Marklin, por ejemplo fabrica las vías 8589, 8529 y 8539 con un sensor mecánico para hacer acantonamientos junto con los relés 8945. y el resto de marcas tenían sistemas parecidos.

 Sin embargo los sistemas basados en detectores de ocupación eran de pequeñas empresas (yo diría que casi artesanales) y nunca tuvieron demasiado éxito. Yo tengo noticias de un producto español que se vendía con la marca TRENICO y por lo que yo sé estaba limitado a cuatro cantones. La dificultad, claro, estaba en que era muy difícil detectar una locomotora analógica parada en un vía, así que se recurría a superponer a la corriente continua de tracción , una corriente alterna de alta frecuencia, que era de valor constante, y se podía detectar si una locomotora la cortocicuitaba. Es realmente algo muy parecido a lo que hace un limpiavías Gaugemaster, y en efecto vemos que el Gaugemaster tiene un piloto que está encendido cuando no hay ninguna locomotora y que se apaga en cuanto ponemos la locomotora en la vía. Es decir que detecta la presencia de la locomotora aún cuando esté completamente parada. (*)

Ya discutía en el artículo "Detectando trenes (de nuevo)", las ventajas y  los inconvenientes de los sistemas de detección basados en sensores de paso, frente a los basados en sensores de consumo. Yo soy partidario de los detectores de paso, pero a muchos aficionados les asusta el complicado cableado que suponen, así como la necesidad de poner imanes en las locomotoras y sensores en las vías. No cabe duda que la instalación de un sistema basado en sensores de consumo es mucho más sencilla. asi que cada uno puede decidir qué sistema prefiere.

--------------------------------------------

* ¿No se podría hacer un sistema de limpiavías tipo Gaugemaster que hiciese también la función de sensores de consumo para un sistema de bloqueo? Mmm........