Los circuitos combinacionales son aquellos que no tienen en cuenta la variable tiempo. Están formados
por combinaciones de puertas lógicas. En este artículo aprenderemos a diseñar circuitos sencillos a partir
de los requerimientos de funcionamiento que se quiere que tengan.
Se quiere diseñar una alarma que se comporte de la siguiente forma:
Extraer las funciones lógicas de la tabla de la verdad anterior, correspondiente a una alarma.
Las funciones lógicas a extraer de esta tabla son cuatro, es decir, tantas como salidas deba tener nuestro
circuito (cada salida es una función lógica y viceversa, cada función lógica corresponde a una salida).
Empecemos por la función LR (donde se conectará el LED rojo). Se puede ver en la tabla de la
verdad que siempre está a nivel lógico alto (representado por 1), sea cual sea los estados lógicos de las
entradas. Por tanto, LR no es realmente una función o salida del circuito, más bien será una
constante del circuito. ¿Qué punto de nuestro circuito estará siempre a nivel lógico alto independientemente
de los niveles lógicos de las entradas? La respuesta es sencilla: positivo de alimentación. Ya podemos poner
entonces que:
Empezando por el principio:
Lo esencial: saber perfectamente que se quiere que haga el circuito que se va a diseñar. No es posible
diseñar nada si no se sabe que es lo que se tiene que diseñar. Esto que parece tan de perogrullo, créame,
se suele olvidar con bastante frecuencia.
Así pues, habrá que empezar por definir de forma precisa el
comportamiento de nuestro circuito, es decir, conocer como ha de comportarse cada una de sus salidas frente
a cada posible combinación de estados de sus entradas. Y la mejor forma de hacer esto para un circuito
combinacional es expresar el comportamiento del circuito en forma de tabla de la verdad:
Vistas las especificaciones de nuestra alarma, lo primero es desarrollar la tabla de la verdad que debe
verificar. Para ello debemos identificar claramente lo que serán "entradas" y lo que serán "salidas".
Pues bien, entradas serán donde se conecten los sensores y salidas serán donde se conecten los LEDs y
la sirena. Por tanto, nuestra alarma deberá tener tres entradas y ,en principio, cuatro salidas.
Pongamos nombres a cada entrada y a cada salida. La entrada del sensor de puerta la llamaremos p.
La entrada de los sensores de las ventanas la llamaremos v. En cuanto a la entrada del sensor
de manipulación de la alarma, la llamaremos m. Las salidas se llamarán así: la salida del
LED rojo la nombraremos como LR, la del LED verde LV y la del LED naranja
LN. La salida de la sirena se etiquetará como S.
Una vez nombradas entradas y salidas de forma más eficiente, crearemos la tabla de la verdad de la alarma
siguiendo en todo momento las especificaciones deseadas:
p
v
m
LR
LV
LN
S
0
0
0
1
0
0
0
0
0
1
1
0
0
1
0
1
0
1
0
1
1
0
1
1
1
0
1
1
1
0
0
1
1
0
1
1
0
1
1
1
0
1
1
1
0
1
1
1
1
1
1
1
1
1
1
1
La extracción de las funciones lógicas:
El siguiente paso a dar para conseguir nuestro circuito es extraer, a partir de la tabla de la verdad,
cada una de las funciones lógicas que el circuito deberá implementar o reproducir. Existen métodos bastante
genéricos para ello (que quizás sean tema de otro artículo) pero el método que recomiendo para circuitos
sencillos es simplemente inspeccionar la tabla de la verdad y ver si somos capaces de reconocer alguna
función lógica en ella (es necesario conocer perfectamente todas las funciones básicas para ello). Veamos
cómo:
Sigamos con la función LV (donde se conectará el LED verde). Mirando la tabla se puede ver rápidamente que:
En cuanto a la función LN (LED naranja) tendremos que, de forma similar,
Por último, la función S (sirena) es algo más complicada de extraer que las demás (pero no mucho más). Si se conocen las funciones básicas (lo cual, no me cansaré de repetirlo, es fundamental) no debería haber mucho problema para ver que:
donde + es la suma lógica, por supuesto (ver el artículo sobre las puertas lógicas).
Implementar el circuito de alarma estudiado.
Tendremos que el circuito podría ser el siguiente: