Deseamos construir un circuito lógico que haga lo siguiente:
En un automóvil, encender una alarma si el motor está encendido y hay algún pasajero sin el cinturón de seguridad abrochado.
Supondremos que hay 5 lugares para sentarse en el automóvil. Cada lugar tiene un mecanismo que detecta si hay alguien sentado ahí, y otro mecanismo que detecta si el cinturón está abrochado.
Asimismo, hay un mecanismo que detecta si el motor está encendido.
Todos estos mecanismos enviarán una señal de salida con una respuesta positiva o negativa según sea el caso. La respuesta positiva será una señal 1 y la negativa será una señal 0.
Yo construí una ecuación lógica de este problema, pero la presentaré hasta el final, con el propósito de presentar y desarrollar la cadena de razonamientos que me llevaron a ella. Empezaremos por el final:
¡Hemos terminado nuestra lógica de seguridad! Así queda el circuito completo y simulado:
Le queremos sacar su tabla de verdades, pero serían 212, es decir, 4096 salidas posibles, así que lo más factible es dividir el circuito en partes más manejables y prácticas.
¿Los resultados tienen sentido? ¿Sí? ¡Muy bien! Ahora lo simularemos en físico. Veamos cómo hicimos esta práctica:
Yo construí una ecuación lógica de este problema, pero la presentaré hasta el final, con el propósito de presentar y desarrollar la cadena de razonamientos que me llevaron a ella. Empezaremos por el final:
Para saber si hay inseguridad, primero deberemos saber si hay seguridad, y luego invertiremos el resultado con una compuerta NOT. ¿Cómo sabemos si hay seguridad? Veremos qué hay detrás del nodo rojo. |
Para poder responder si NO hay un pasajero, primero respondemos si SÍ hay un pasajero. Esta entrada va conectada directamente al sensor de pasajeros a bordo. |
¡Hemos terminado nuestra lógica de seguridad! Así queda el circuito completo y simulado:
Así queda la ecuación lógica |
Esta es una de tantas posibles representaciones del circuito lógico, hecha en el programa MultiSim 11. No tuvimos disponibles compuertas AND de 5 entradas (ni en el programa ni en físico), por lo cual hicimos un juego de compuertas AND de 2 entradas, para conseguir el mismo efecto. El archivo de la simulación en MultiSim lo puedes descargar presionando aquí. |
Esta parte del circuito representa cada uno de los asientos.
|
La salida negada del AND de 5 entradas (B) es una de las entradas del AND final, y la otra (A) es el encendido del motor. |
a
|
b
|
x
|
0
|
0
|
1
|
0
|
1
|
1
|
1
|
0
|
0
|
1
|
1
|
1
|
¿Los resultados tienen sentido? ¿Sí? ¡Muy bien! Ahora lo simularemos en físico. Veamos cómo hicimos esta práctica:
Si, para el circuito con compuertas lógicas, utilizásemos los mismos circuitos integrados que hemos utilizado en prácticas anteriores, necesitaríamos muchos para armar el circuito; y ciertamente no nos bastaría un solo proto-board. Puesto que no disponemos de ellos, hemos utilizado un circuito integrado que internamente tiene un juego de muchas compuestas lógicas, y que es reprogramable. El encapsulado dice así: ATMEL 0346 Δ ATF16V8B-15PC El código para programar este circuito lógico en particular lo pueden descargar pulsando aquí. Utilizamos el programa ATMEL WinCupl y un dispositivo programador. Los detalles de cómo programar uno de estos circuitos integrados, los veremos en otra entrada. |
Aquí está el circuito, una vez programado, puesto en su lugar en el proto-board. |
No comments:
Post a Comment