Traffic control

Electrónica: 

Con este ejercicio (en castellano) aprenderemos a conectar varios temporizadores en serie. En el primer apartado se nos pide una secuencia de:

  • 12sg rojo
  • 8sg verde
  • 4sg ámbar

Haciendo un poco de memoria, recordaremos que la señal DN de un temporizador se activa al llegar éste al Preset. La señal TT está activa mientras el temporizador cuenta (tiempo) y la señal EN está activa cuando lo está el temporizador (o sea, la línea hasta él). Si dibujamos esta simple máquina de estados (siento no colgar un pdf... Además, si lo hace uno mismo se aprende mucho más) vemos que tenemos 3 estados: Rojo, Verde y Ámbar; y que pasamos de uno a otro gracias a la señal DN de cada uno de los temporizadores (dejo el primer estado, Rojo, para el final). Rojo.DN -> Verde.DN -> Ámbar.DN->Rojo.DN... Cuando llegamos a la transición del ámbar al rojo ¿qué señal ponemos? Lo primero que nos viene a la cabeza es Ámbar.DN (como ha quedado reflejado arriba), pero con esto no provocamos que el temporizador Rojo vuelva a contar. Es más, todas las luces se quedan encendidas. Ummhh. En cambio, si negamos esta señal conseguimos exáctamente lo que buscamos: el temporizador rojo se resetea y vuelve a contar, y al resetearse éste y estar todos en serie, se resetean todos. Luego ¡¡ya tenmos el ejercicio!! Con lo que tenemos: Rojo.DN -> Verde.DN -> Ámbar./DN->Rojo.DN... Primer apartado En el segundo apartado, podríamos montar otra máquina de estados (o autómata finito) con 6 estados para resolver el ejercicio... pero si nos fijamos un poco (supongo que haciendo Karnaugh se llegaría a una situación similar...) veremos que sólo tenemos 4 estados (las luces rojas están activas durante 2 estados). En este caso tenemos: VerdeDch.DN-->ÁmbarDch.DN-->VerdeIzq.DN-->ÁmbarIzq./DN-->VerdeDch.DN... Para resolver este apartado puedes o no utilizar bits de latch. Yo en este caso he realizado el ejercicio de ambas formas puesto que así vamos a poder apreciar cómo realiza el PLC su ciclo de ejecución. Yo te recomiendo que utilices bits de latch porque el programa queda más claro (esto se verá más claro en el último apartado).

¿Que problema hay en la primera aproximación? Primera aproximación

Resuelto sin latch:

Sin latch

Con latch:

Con latch

Como dice el amigo, los coches no hacen mucho caso de las luces ámbar y los coches llegan a chocar. Para evitarlo vamos a introducir un retardo de un segundo como indica la figura. Como ya tenemos suficiente práctiva, vemos que nuestra nueva máquina consta de 6 estados: VerdeDch.DN-->ÁmbarDch.DN-->1sg.DN-->VerdeIzq.DN-->ÁmbarIzq.DN-->1sg./DN-->VerdeDch.DN... Aquí podemos observar la gran diferencia entre las soluciones sin latch y las soluciones con latch. ¿Por qué falla la primera aproximación? Si vas paso a paso en el último estado, observarás como hay un pequeño espacio de tiempo (dos ciclos del autómata) en que todas las luces están apagadas (y donde se aprecia perfectamente el ciclo). Comparando programas se observa que la solución con latch es mucho más sencilla e intuitiva. Además, estos pequeños arranca-para pueden ser un problema en la vida real (arrancadores, cilindros, variadores...)

Casi funciona, ¿cuál es el problema?

¿Has visto que tarda dos ciclos de PLC en hacer lo que queremos? El coche, sólo necesita 2 ciclos para saltarse el semáforo, así que ¡¡se chocan!! No creo que esto fuera un problema en este caso, pero para el control de dispositivos mecánicos/eléctricos sí (inercias/falsas desconexiones...) Sin latch (la línea de los temporizadores negada no haría falta porque el coche no llega a pasar, pero así eliminamos otro falso estado):

Traffic control3 sin latch

Con latch (mucho más claro):

Social_buttons: