TAREA
ACADEMICA
Diseño Digital
Integrantes:
-20220540- Regalado Reyes, Renzo Joaquin
-20221734 - Apaza Patiño, Angélica Milagros
-20221038 - Mucha Rosas, Kate Mariafernanda
- 20226663 - Ubillús Peña, Aniela Joaquina
Introduction
La presente Tarea Académica del curso 1IEE04 – Diseño Digital se ha dividido en tres
capítulos. A modo de resumen, primeramente, el informe contendrá el diseño de la
arquitectura del sistema de control del automóvil. Posteriormente, se mostrarán los resultados
de las simulaciones respectivas de los circuitos implementados, además de su funcionamiento
en la tarjeta cual representará la aplicación correcta en el entorno real. Finalmente, se
mostrarán las conclusiones del proyecto y las recomendaciones de este.
Capitulo 1: diseño de la arquitectura
-Módulo del controlador principal
Este es el módulo que permite enlazar los submódulos que serán utilizados y necesarios para el
funcionamiento del sistema de control del automóvil. Siendo estos tales como los siguientes módulos:
contador 121 ascendente/descendente, contador 21 ascendente, divisores de frecuencia, la máquina
de estados FSM Moore y los multiplexores correspondientes que generan el display.
-Simulación del controlador principal
A partir del circuito desarrollado en el vhdl, se mostrará en la siguiente figura la simulación del módulo
controlador principal donde se operan todas las señales de entrada y salida con el objetivo de verificar
el correcto funcionamiento del automóvil.
-Módulo FSM Moore
El módulo FSM Moore permitirá que el funcionamiento del sistema de control del automóvil se
desarrolle correctamente. Este, al tener las máquinas de estados finitos, representarán las ejecuciones
sistemáticas establecidas dentro de estas para que se ejecuten de acuerdo a los estímulos externos
que se puedan encontrar durante el funcionamiento de este, además de que permite la activación y
desactivación de ciertas funciones.
-FSM Moore diagrama de estados
-FSM Moore simulación
-Módulo contador 121 ascendente/descendente
El módulo contador 121 ascendente/descendente es un circuito que procesa la dirección bidireccional
de manera creciente desde el 0 hasta el 121 y decreciente desde el 121 hasta el 0, además de que en
sus salidas cuenta con los displays de 7 bits y un veloc de 7 bits.
El reset_n se inicializa en 0,
Cuando el contador se encuentre en 120 su valor siguiente podría tomar el valor de ‘1’ en caso de
estar habilitado y la opción del contador creciente será ‘0’.
Cuendo el contador se encuentre en 0, su siguiente valor será ‘1’ al estar habilitado y la opción de
contador decreciente será 120.
-Simulación del módulo contador 121 ascendente/descendente
A partir del circuito desarrollado en el vhdl, se mostrará en la siguiente figura la simulación del módulo
contador 121 ascendente/descendente donde se operan todas las señales de entrada y salida con el
objetivo de verificar el correcto funcionamiento del automóvil.
-Módulo contador 21 ascendente
El contador del módulo 21 ascendente es un circuito que permite contar desde un valor inicial hasta el
valor prefijado, en este caso, partiendo desde el 0 hasta el 20, además de que en este circuito para el
automóvil, contiene displays de 7 segmentos.
-El reset_n se inicializa en 0,
Cuando el contador se encuentre en 120 su valor siguiente podría tomar el valor de ‘1’ en caso de
estar habilitado y la opción del contador creciente será ‘0’.
Cuendo el contador se encuentre en 0, su siguiente valor será ‘1’ al estar habilitado y la opción de
contador decreciente será 120.
-Simulación del módulo contador 21 ascendente
A partir del circuito desarrollado en el vhdl, se mostrará en la siguiente figura la simulación del módulo
contador 121 ascendente/descendente donde se operan todas las señales de entrada y salida con el
objetivo de verificar el correcto funcionamiento del automóvil.
-Módulo divisor de frecuencia 5 000 000
El divisor de frecuencia de 5 000 000 recibe el periodo de 5 000 000 de veces con respecto al original y
va conectado a la FSM Moore. Este divisor de frecuencia es utilizado como una entrada, para este
circuito como un habilitador para la FSM tipo Moore (máquina de estados). Cuenta con una frecuencia
de 10Hz, más rápida y mayor que la frecuencia que realiza el módulo contador 121
ascendente/descendente, puesto que debe de realizar más trabajos.
-Módulo divisor de frecuencia 50 000 000
Este divisor de frecuencia tiene que dividir las frecuencias que genera la FPGA en 50 000 000, de
manera que el contador pueda operar a 1Hz (cada segundo).
El divisor de frecuencia compone un comparador y contador, el primero para que cuando valor que
llegue al contador sea de 50 000 000, se habilite la salida.
-Módulo divisor de frecuencia 25 000 000
Este divisor de frecuencia divide la frecuencia de operación en 25 000 000, para que los multiplexores
operen a 2Hz de frecuencia, es decir, la mitad de un segundo.
Este divisor de frecuencia manda las señales internas a los multiplexores, para que se habiliten las
salidas.
Capitulo 2: resultados experimentales
-CASO 1: CAMBIOS DE 1RA A 5TA
Para la primera rutina se abarcarán todos los cambios que inician con el carro en estado apagado
hasta el estados 5 donde se realice el cambio. Se comienza con el estafó st_off, posteriormente se
enciendo el vehículo en st_on con la señal reset_n en '1', el cambio cb="000" y la señal ea='1'.
Así, para ir al primer cambio, compuesto por 3 estados (st1_a, st1_d y st1_f), se debe de pisar el
embrague EbFrAc="1--" y realizar el cambio a primera con cb="001" . En este sentido, se podrá pasar
al estado de primera detenido (st1_d). Siguientemente, se pasa al estado de acelerado para alcanzar la
velocidad requerida que necesita el siguiente cambio, de esta manera, una vez que se llegué a la
velocidad mínima requerida se activa el embrague y se hace el cambio respectivo para pasar a 2da
acelerado. En este sentido, se van realizando los siguientes cambios.
-CASO 2 : Cambios de 5ta a 1ra
-CASO 3: ESTADO DE SOBRECALENTAMIENTO
En esta sección, se muestran los cambios que sufre el automóvil del estado en st_sobre, cual se
alcanza cuando se llega a los 105km/h. Este estado está caracterizado por lo que un Led debe de
encenderse al momento que esté en sobrecalentamiento, es de esta manera como se puede evidenciar
en la vida real, un vehículo puede llegar al sobrecalentamiento con cualquier cambio, pero ello genera
daños para los carros mecánico. Además, cuando el sobrecalentamiento llegue a su limite, el carro se
apagará automáticamente.
-CASO 4: ESTADO DE RETROCESO
Para el estado de retroceso, es necesario activar el embrague y pasar al cambio 6 "110". Para este
estado, el vehículo pasará al estado retrocediendo detenido, partiendo de ello, si se pisa el acelerador
en dicho cambio, se pasará al estado de retro_cediendo y se encenderá el led. Asimismo,en este
estado la velocidad se encontrará en '0'.
-CAS0 5: Estado de TURBO
En esta rutina se muestra como funciona el estado de turbo y sobrecalentamiento. El TURBO puede
ser activado en el cambio 4 o 5 , lo cual hará que la velocidad incremente su valor dos veces más
rápido (+1 km/h -> +2 km/h) durante 20 segundos. Una vez superado los 105 Km/h, se ingresa al
estado de sobrecalentamiento. Por otro lado, solo se puede estar durante 15 segundos en este estado,
así que considerando un factor de 1Km/s (en el entorno real) cuando se alcancen los 120 Km/h o se
hayacumplido el tiempo el vehículo deberá apagarse. Consideramos 6 turbos para nuestro FSM,
considerando el sufijo _o muestra que el ld_cronom está desactivado para que se pueda actualizar la
cuenta.
Capitulo 3: conclusiones y
recomendaciones
-Conclusiones
1. El circuito propuesto para el controlador de cambios y velocidad de un automóvil permite encender y
realizar cambios de velocidad adecuadamente. Por lo que se cumplió el objetivo principal del proyecto.
Asimismo, durante el desarrollo de la propuesta de solución del circuito se lograron consolidar las
habilidades de descripción de hardware.
2. A través de la simulación realizada con la herramienta ModelSim Altera y los Testbench escritos en
VHDL, se logró verificar el correcto funcionamiento del circuito antes los estímulos presentados para su
posterior implementación en la tarjeta FPGA D10-Lite.
3. Se contó, para la implementación, con una tarjeta de desarrollo FPGA D10-Lite. Por lo cual, no fue
requerido el acceso remoto a los laboratorios de la universidad. Asimismo, ello permitió darle un
enfoque más práctico al proyecto dado que se interactuó directamente con los switches de la placa
electrónica.
4. Finalmente, se cumplió con el objetivo principal de la tarea académica: utilizar lo aprendido en el
curso de Diseño Digital para una solución de control para el entorno de la vida real.
-Recomendaciones
Durante la implementación del proyecto se considera que pueden ser mejoradas para futuras versiones
los siguientes aspectos:
1. En esta implementación de control del automóvil se consideró que cuando se deja de acelerar, la
velocidad se mantiene. Por otro lado, si se frena, la velocidad desciende en 1 km/h. En una futura
versión, se recomienda que la señal up_veloc, salida de la fsm, tenga 2 bits para poder variar la
velocidad en 3 aceleraciones, + 1 Km/h, – 1 Km/h y -2 Km/h con el fin que con el pedal de freno se
pueda disminuir de velocidad mucho más rápido que soltando el pedal de aceleración.
2. Cuando la velocidad alcance 120 km/h el auto se apagará porque han pasado 15 segundos desde
que se entró al estado de sobrecalentamiento (105 km/h). Sin embargo, se puede frenar el carro y
disminuir su velocidad o bien dejar de acelerar y quedarse en una velocidad constante, pero si se pasa
de sobrecalentamiento más de los 15 segundos el carro se apagará.
3. Inicialmente, el velocímetro pasaba de 0 a 120 cuando se frenaba o aceleraba, pero cuando cuando
se soltaba todo el carro seguía acelerando. Por ende, se incluyó un estado de detenido para cada
cambio para, de esta forma, inhabilitar el contador. A pesar de ello, por la practicidad que nos ofrece,
se implementó 5 estados de detenido, 5 de aceleración y 6 de turbo para el cambio 4 y 5, considerando
un estado para cada turbo en donde se pisa el embriague y el cronometro se desactiva . En una futura
versión, idóneamente se podrían disminuir aún más los estados de la FSM.
¡GRACIAS!