Informe 2 Semaforo - Maquinas de estado PDF

Title Informe 2 Semaforo - Maquinas de estado
Course Electrónica Básica
Institution Universidad Pedagógica y Tecnológica de Colombia
Pages 9
File Size 765.4 KB
File Type PDF
Total Downloads 75
Total Views 143

Summary

Maquinas de estado ...


Description

UNIVERSIDAD PEDAGÓGICA Y TECNOLÓGICA DE COLOMBIA SEDE SECCIONAL DUITAMA ESCUELA DE INGENIERÍA ELECTROMECÁNICA ELECTRONICA II

Práctica de Laboratorio 2: Generación de Maquinas de Estado usando Software de Simulación e Implementos Análogos y Digitales Motta Sierra Luis Alejandro, Reyes Arismendy Francy Mayerly Universidad Pedagógica Y Tecnológica De Colombia Duitama, Colombia

[email protected] [email protected] Abstract— This report presents a detailed implementation that shows the previous knowledge acquired in past experiences as well as general ideas about the design and implementation of logic circuits, as well as the simplification of said logic circuits, this to facilitate the conditions of Boolean function, all this to form an integrated circuit, which shows compliance with the conditions given by the guide. This experience demonstrates the way in which traffic lights are programmed, according to the conditions required in each situation. Keywords: Logic gate, integrated circuit, combinational circuits. Resumen— En este informe se presenta una implementación detallada que muestra los conocimientos previos adquiridos en las experiencias pasadas ademas de ideas generales sobre el diseño y la implementación de circuitos logicos, asi como la simplificación de dichos circuitos logicos, esto para facilitar las condiciones de función booleana, todo esto para conformar un circuito integrado, que muestre el cumplimiento de las condiciones dadas por la guia. Esta experiencia demuestra la forma en que se programan los semaforos, segun las condiciones que se requieran en cada situación.

Palabras Clave: Circuitos lógicos, circuito integrado, función booleana.

I.

El análisis de cómo funciona un cruce de dos vías que requieren dos semáforos vehiculares y dos peatonales se puede hacer por medio de maquinas de estado ya que son ciertos circuitos secuenciales que tienen un numero determinado de estado. Las maquinas sincrónicas temporizadoras utilizan flipflops o biestables para crear circuitos cuyas entradas son examinadas y cuyas salidas cambian con respecto a una señal de reloj controlada II. OBJETIVOS 

Comprender el funcionamiento de maquinas de estado, implementando mediante software de programación, “Arduino” y uso de compuertas lógicas.



Implementar circuitos lógicos combinacionales por medio de lógica programable con la plataforma Arduino, para llegar a la obtención de un cruce de dos vías.

III. MATERIALES Y EQUIPOS TABLA I EQUIPOS DE TRABAJO Cantida d

Elemento

Observación

1

SIMULADOR PROTEUS

-

1

SIMULADOR ARDUINO

-

INTRODUCCIÓN

Los semáforos, también conocidos técnicamente como señales de control de tráfico, son dispositivos de señales que se sitúan en intersecciones viales y otros lugares para regular el tráfico, y por ende, el tránsito peatonal.

IV.

PROCEDIMIENTO

Se requiere diseñar una maquina de estados que controla un cruce de dos vías (Dos semáforos para vehículos y dos para peatones), como se muestra en la figura 1, donde en un sentido se encuentra el semáforo de vehículos con su semáforo de peatones respectivo y en forma perpendicular con sus respectivos semáforos:

Fig. 5 Estado 4, tiempo de duración: 9 seg.

Fig. 6 Estado 5, tiempo de duración: 6 seg, Luz verde peaton 1 titilante

Fig. 7 Estado 6, tiempo de duración: 3 seg y vuelve a iniciar. Fig. 1 Cruce de dos vías

Inicialmente se da las condiciones de funcionamiento las cuales, se demuestran por la siguiente secuencia[1]:

Fig. 2 Estado 1, tiempo de duración:15 seg.

 Generación de semáforo con compuertas flipflops y demás implementos. Como primera medida se analizo la secuencia de cada grupo de semáforos por cada tiempo y así se dividieron los estados, cada estado tiene tiempo de duración diferente, para esto diseñamos un contador de 3 bits para 6 estados, donde se cumplirá una secuencia cíclica, después de analizar esto realizamos el diagrama de estado que se muestra en la siguiente figura 16:

Fig. 3 Estado 2, tiempo de duración: 5seg, Luz verde peatón 2 Titilando

Fig. 16 Diagrama de estados Semáforo. Fig. 4 Estado 3, tiempo de duración: 3 seg.

A partir del diagrama de estados y la secuencia que se debe seguir se realiza la tabla de estados. En esta se muestra el estado actual y estado siguiente para el contador, y se toman como salidas las luces de cada semáforo, los estados resaltados muestran que la

luz parpadea en dicho estado. Se determino que como tenemos 6 estados se requieren 3 flipflops tipo JK.

Fig. 19 Mapas de Karnaugh para las entradas J1 y K1 del 2do flipflop Fig.17 Tabla de estados

Se enumeran todas las posibles transiciones de salida, mostrando como evoluciona la salida Q del flip flop al pasar de los estados actuales a los estados siguientes. Para cada transición de salida, se indica las entradas J y K que dan lugar a la transición. Las X indican condiciones indiferentes.[2]

Fig.17 Tabla de transiciones para un flipflop JK

Al diseñar el contador, se aplica la tabla de transiciones a cada flipflop del contador, la cual está basada en la tabla anterior. Este análisis se repite para cada estado actual definido también anteriormente.

Fig. 20 Mapas de Karnaugh para las entradas J0 y K0 del primer flipflop

En los mapas de Karnaugh cada celda representa uno de los estados actuales de la secuencia del contador enumerados en la tabla de la figura 17, después se hace la agrupación las celdas como se indico en cada mapa, obteniéndose las expresiones booleanas correspondientes para cada grupo las cuales son las expresiones para las entradas J y K de cada flipflop. Después se prosigue a implementar la lógica combinacional a partir de las expresiones de las entradas J y K y conectar los flipflops para conseguir el contador que muestra la secuencia de los estados. Para esto se hizo un montaje en Proteus.

Fig.17 Tabla de estados con transiciones para los flipflops JK

Utilizando los mapas de Karnaugh se determina la lógica requerida para las entradas J y K de cada flipflop del contador, se debe utilizar un mapa de Karnaugh para la entrada J y otro para entrada K de cada flip flop.

Fig. 18 Mapas de Karnaugh para las entradas J2 y K2 del primer flipflop

Fig. 21 Circuito contador de 3 bits para semáforo

De la misma manera se implementan mapas de Karnaugh para encontrar las funciones lógicas que controlan las luces de cada semáforo de acuerdo con cada cambio de estado. Para esto solo tendremos en cuenta la siguiente tabla de verdad.

expresiones booleanas correspondientes para cada grupo las cuales son las expresiones para las entradas de cada semáforo. Después se prosigue a implementar el montaje utilizando las expresiones obtenidas conectando sus entradas a las salidas de los flipflop, posteriormente estas se conectan a las luces de los semáforos.

Fig. 22 Tabla de verdad para secuencia de luces de semáforo

Fig.27 Conexión luces con funciones lógicas al contador.

Fig. 23 Mapas de Karnaugh luces para vehículo 1

Para el control de los tiempos de cada estado se usaron integrados 555 configurados como monoestable los cuales son controlados con una señal de reloj de frecuencia de 10 Hz.

Fig. 24 Mapas de Karnaugh luces para peatón 1

Fig. 28 Temporizador 555 conectado como monoestable.

Fig. 25 Mapas de Karnaugh luces para vehículo 2

Por medio de la siguiente ecuación se configuran los tiempos de cada 555, esto para que al conectarlos con el circuito mostrado en la figura 27, para que cada estado dure el tiempo que se desee.

t w=1.1 R 1 C 1 Para cada temporizador 555 se tomo como valor del capacitor ( C1 ) de 100µF Fig. 26 Mapas de Karnaugh luces para peatón 2

En los mapas de Karnaugh cada celda representa uno de los estados actuales de la secuencia de las luces de los semáforos mostradas en la tabla de verdad correspondiente, después se hace la agrupación las celdas como se indicó en cada mapa, obteniéndose las

-

Temporizador monoestable para estado1: En este estado se requiere que el temporizador cuente 15 segundos, tiempo en el que se requiere estar en el primer estado de la secuencia, entonces:

15 seg=1.1 ¿ R1∗100 µ F

R1 =

15 s 1.1(100 µF )

R1=137 K Ω -

Temporizador monoestable para estado 2: En este estado se requiere que el temporizador cuente 5 segundos, tiempo en el que se requiere estar en el segundo estado de la secuencia, entonces:

5s R1 = 1.1(100 µF ) R1=46 K Ω -

Temporizador monoestable para estado 3: En este estado se requiere que el temporizador cuente 3 segundos, tiempo en el que se requiere estar en el tercer estado de la secuencia, entonces:

R1 =

Temporizador monoestable para estado 4: En este estado se requiere que el temporizador cuente 9 segundos, tiempo en el que se requiere estar en el cuarto estado de la secuencia, entonces:

R1 =

9s 1.1(100 µF )

R1=82 K Ω -

Temporizador monoestable para estado 5: En este estado se requiere que el temporizador cuente 6 segundos, tiempo en el que se requiere estar en el quinto estado de la secuencia, entonces:

R1 =

6s 1.1(100 µF )

R1=55 K Ω -

R1 =

3s 1.1(100 µF )

R1=28 K Ω Conexión de los temporizadores al circuito de la figura 27 Todas las salidas de los 555 (Pin 3) se conectan por medio de compuertas OR a las entradas CLK de los flipflops, esto con el fin de dar los cambios de estado con la configuración mono estable de los temporizadores.

3s 1.1(100 µF )

R1=28 K Ω -

estar en el sexto estado de la secuencia, como ya tenemos un temporizador con este tiempo lo único que hacemos es utilizar este temporizador para estos dos estados, entonces:

Temporizador monoestable para estado 6: En este estado se requiere que el temporizador cuente 3 segundos, tiempo en el que se requiere

Fig. 29 Tabla para secuencia de activación de Timers.

Para la activación de los 555 se debe tener en cuenta la secuencia de luces de cada semáforo y el estado activo. - Con el fin de activar del temporizador 1, conectamos el pin 8 al led verde (semáforo para el vehículo 1), el cual se encuentra encendido en el primer estado y apagado en los otros estados, el temporizador cuenta 15 segundos y genera un cambio de estado en el cual se observa que la luz amarilla del semáforo 1 esta encendida y se encuentra apagada en los siguientes estados. - Conectamos el temporizador 2 al led amarillo (semáforo para el vehículo 1) Este temporizador cuenta 5 segundos y genera el cambio de estado y a su vez controla un oscilador conectado al led verde (Semáforo para peatón 2) el cual parpadea mientras pasa dicho tiempo que cuenta el temporizador 2. - En el estado 3 y 6 se observa que durante 3 segundos permanecen todos los semáforos con la luz roja encendida, por consiguiente conectamos estos leds rojos por medio de una compuerta AND al temporizador tres, lo que implica que todos tienen que estar encendidos para que este timer se active y genere un cambio de estado al terminar su conteo.

Al finalizar el conteo del temporizador 3 se genera un cambio de estado en el cual se observa que el led verde (Semáforo para vehículo 2) este encendido y en los siguientes estados se apaga, entonces este activa al temporizador 4 por 9 segundos, generando el siguiente cambio de estados. - En el estado 5 el led amarillo (semáforo para el vehículo 2) este encendido y en los siguientes estados apagado, se conecta al timer 5, este, cuenta 6 segundos y genera el cambio de estado y a su vez controla un oscilador conectado al led verde Fig. 8 Código semáforo Arduino (Semáforo para peatón 1) el cual parpadea mientras pasa dicho tiempo que cuenta el temporizador 5. Inicialmente declaramos las variables enlazándolas cada - En el estado 6 se encienden durante 3 segundos una con los pines del Arduino, empezando por: todos los leds rojos igual que en el estado 3 de la  “veh_Rojo1” que nos indica vehículo 1 luz roja misma forma en la que se describió anteriormente.  “veh_Amarillo1” que nos indica vehículo 1 luz Al terminar su conteo, este se desactiva y da paso amarilla. para que la secuencia vuelva a empezar.  “veh_Verde1” que nos indica vehículo 1 luz verde. A continuación se implementa el proceso que se ha  “pea_Rojo1” que nos indica peatón 1 luz roja. descrito en el circuito de la figura 27,  “pea_Verde1” que nos indica peatón 1 luz verde.  “veh_Rojo2” que nos indica vehículo 2 luz roja.  “veh_Amarillo2” que nos indica vehículo 2 luz amarilla.  “veh_Verde2” que nos indica vehículo 2 luz verde. -

Después se pondrá la función void setup () donde se escribieron las sentencias de configuración para que el Arduino funcione correctamente.

Fig. 30 Máquina de estados para control de semáforo de cruce de dos vías

Esto se ejecutará al iniciar Arduino y una única vez, estas muestran las salidas de cada pin asignado.

 Generación de semáforo en Arduino. Se muestran una serie de comandos de programación que le dirán al microcontrolador como configurarse de tal forma que muestre la secuencia del cada semáforo en el cruce. Para la implementación en Arduino se implementó el siguiente código

Fig. 9 Código primer estado.

En la función void loop () se ejecutarán las acciones que va a hacer cada semáforo en los distintos estados de tiempos. En el primer estado se activarán la luz verde con la función HIGH, rojo, rojo y verde para el vehiculo 1, peatón 1, vehículo 2 y peatón 2 respectivamente. Esto sucederá en un tiempo estimado de 15 segundos a través de la función delay. Fig. 11 Código tercer estado.

En tercer estado: - Se enciende la luz roja para el vehículo 1 - Se apaga la luz amarilla para el vehículo 1 - Se enciende la luz roja para el peatón 2 - Se apaga la luz verde para el peatón 2 Este estado se mantendrá durante 3 segundos.

Fig. 10 Código segundo estado.

Fig. 12 Código cuarto estado.

En el segundo estado: -

En cuarto estado: - Se apaga la luz roja para el peatón 1 Se activará la luz amarilla para vehículo 1 - Se enciende la luz verde para el peatón 1 Se apagará la luz verde para vehículo 1 La luz verde para el vehículo 2 empezara a - Se apaga la luz roja para el vehículo 2 - Se enciende la luz verde para el vehículo 2 parpadear.

Para que estas funciones se realizaran se puso un Este estado se mantendrá durante 9 segundos. tiempo de 0.5 segundos para cada parpadeo, sumando esto durara 5 segundos

-

Se enciende la luz roja para el vehículo 2 Se enciende la luz amarilla para el vehículo 2

Este estado se mantendrá durante 3 segundos. Después apagamos todas las luces encendidas para que estas se resetean y vuelvan a empezar la secuencia. A continuación se muestra la implementación de Arduino en Proteus donde se muestra que la designación de pines a cada color de semáforo tanto para vehículos como para peatones estas conexiones coinciden con el código ya mostrado,

Fig. 13 Código Quinto estado.

En quinto estado: - Se enciende la luz Amarilla para el vehículo 2 - Se apaga la luz verde para el vehículo 2 - La luz verde para el peatón 1 parpadea. Este estado se mantendrá durante 6 segundos. Fig. 15 Implementación de Arduino en el simulador Proteus.

V.

ANALISIS DE RESULTADOS

Como resultado obtuvimos que la implementación de la maquina de estado y la programación en Arduino cumple a cabalidad con cada estado y tiempo de duración de este, con respecto a la secuencia requerida. El cálculo teórico de las resistencias y designar un valor constante a cada capacitor, para cada temporizador 555, es importante para la implementación del circuito en el software de simulación, se cumpla a cabalidad la duración de cada estado. Fig. 14 Codigo Sexto estado.

En sexto estado: - Se enciende la luz roja para el peatón 1 - Se apaga la luz verde para el peatón 1

Para acoplar los temporizadores al circuito implementado, se realizó de forma analítica observando el comportamiento de la tabla de verdad de la figura 29.

En este caso la implementación de una maquina de estados se obtuvo de manera más eficiente (en cuestión de tiempo de elaboración) y menos dispendiosa la conexión, en un microcontrolador Arduino que generando un circuito con flipflops y temporizadores.

VI. CONCLUSIONES Es importante tener los conocimientos claros de como se diseña una máquina de estados, porque al llevarlos a cabo se hace más fácil la implementación de estas. En el proceso de diseño, es fundamental hacer un previo análisis por medio del diagrama y tabla de estados para que la secuencia lógica se cumpla. El uso de mapas de Karnaugh es una herramienta que simplifica la obtención de funciones lógicas, además de que el resultado obtenido esta lo más simplificado posible. Los circuitos integrados que tienen funciones temporizadores, osciladores y/o flipflops son muy útiles en la simplificación e implementación de circuitos electrónicos. Ya que permiten tener un excelente control de las funciones y aplicaciones de la electrónica actual. Se concluye que los circuitos digitales están presentes en la vida cotidiana, son de vital importancia en cosas que parecen sencillas pero que son indispensables en la cotidianidad, como lo son los semáforos.

REFERENCIAS

[1]

M. A. Matehuala, “Arduino – ecuduino,” Apr. 01, 2019. https://ecuduino.wordpress.com/semaforos-decruce/ (accessed Sep. 21, 2020).

[2]

T. L. FLOYD, FUNDAMENTOS DDE SISTEMAS DIGITALES, 9th ed. ESPAÑA: PEARSON EDUCACIÓN S.A, 2006....


Similar Free PDFs