Pregunta:
Puertas lógicas para una luz indicadora que muestre el estado de dos sensores
n0t_a_nUmb3R
2015-02-11 18:55:57 UTC
view on stackexchange narkive permalink

Intenté responder la siguiente pregunta y necesito saber si estoy en el camino correcto:

PUERTAS LÓGICAS

Pregunta 3

Una planta de fabricación utiliza dos tanques para almacenar ciertos productos químicos líquidos que se requieren en un proceso de fabricación. Cada tanque tiene un sensor que detecta cuando el nivel químico cae al 25% de su capacidad. Los sensores producen un nivel ALTO de 5 V cuando los tanques están llenos a más de un cuarto. Cuando el volumen de producto químico en un tanque cae a un cuarto de su capacidad, o menos, el sensor emite un nivel BAJO de 0V. Se requiere que un solo diodo emisor de luz (LED) verde en un panel indicador muestre cuando ambos tanques están menos que un cuarto de su capacidad.

3.1 Muestre la tabla de verdad

3.2 Derive las expresiones booleanas.

3.3 Muestre cómo se pueden usar 3 puertas NAND para implementar esto

(Considere la redacción con mucho cuidado en esta pregunta)

Es la pregunta 3.1 y 3.2. La última oración de la pregunta principal es un poco complicada. Dice "Mostrar cuando ambos tanques están llenos a menos de 1/4".

Aquí está mi solución:

  • Ambas entradas (a saber, Tanque A y Tanque B) deben ser BAJO para indicar una salida BAJA
  • El único circuito lógico que satisface lo anterior es un circuito OR.
  • 0 + 0 = 0; 0 + 1 = 1; 1 + 0 = 1; 1 + 1 = 1
  • Por lo anterior, creo que las operaciones OR son correctas, ya que A y B son BAJAS y, por lo tanto, hacen que la salida sea baja.

Estaba considerando Y Circuito pero luego 0 x 1 = 0 y 1 x 0 = 0. Estas operaciones entran en conflicto con la pregunta. La salida solo debe mostrar BAJA cuando AMBAS entradas son BAJAS .

Por lo tanto, mi solución para 3.1 y 3.2 sería usar una puerta OR. ¿Es eso correcto?

En lugar de una foto, es mejor escribir la pregunta. Las fotos no son fáciles de buscar y las empresas para las que trabajan las bloquean para algunos de nuestros usuarios.
Aquí está nuestra incipiente [política de tareas] (http://meta.engineering.stackexchange.com/questions/121/what-should-our-position-be-on-homework-type-questions), FYI. Pero creo que ha cumplido con sus requisitos.
Cuatro respuestas:
user16
2015-02-11 21:07:54 UTC
view on stackexchange narkive permalink

Así que analicemos esto, pieza por pieza.

La salida solo debe mostrar BAJA cuando AMBAS entradas son BAJAS.

También sabemos que los sensores leen Alto (5V) cuando el volumen del tanque está por encima del 25%.

 | Tanque 1 | Tanque 2 | Monitor LED | | -------- | -------- | ------------- | | Alto | Alto | Lit | | Alto | Baja | Lit | | Baja | Alto | Lit | | Baja | Baja | Oscuro | 

Tenga en cuenta : por el bien de esta explicación, asumimos que 0 significa bajo y 1 significa alto. Entonces, el diagrama lógico de arriba está "al revés" de una representación tradicional que comienza bajo y se repite en alto.

Y si miramos una puerta AND típica, encontramos que estamos cerca pero nuestra lógica es al revés.

AND gate logic

Así que introduzcamos la puerta NOT:

NOT gate logic

Pero si poner la puerta NOT después de nuestra puerta AND, terminamos con una puerta NAND y ese es no el diagrama lógico que queremos.

NAND gate image NAND gate logic.

¡Maldición! eso nos devuelve al punto de partida, ¿verdad? No, no del todo. ¿Qué sucede si usamos dos puertas NOT y las movemos al otro lado de nuestra puerta AND?

Inverted NAND

¡Eso parece funcionar! Nuestras señales altas se vuelven bajas y nuestras señales bajas se vuelven altas.

Le dejaré trabajar las expresiones algebraicas para ese diagrama; debería ser trivial traducir ahora.


La parte divertida es intentar expresar esto usando solo puertas NAND. El truco es usar la puerta NAND como un inversor y darnos cuenta de que nuestra lógica está al revés del voltaje presente.

Si distribuimos las tres puertas NAND de esta manera:

3 NAND gates

Y si el sensor del tanque 1 se alimenta a ambas puertas de U1 , y el sensor del tanque 2 se alimenta a ambas puertas de U2 , estamos usando el primer nivel de puertas NAND como inversores. Mirando el diagrama lógico, vemos que nuestro LED verde se encenderá en los casos que queramos, y no se encenderá en el caso de que ambos tanques estén por debajo del 25%.

| Tanque 1 | Tanque 2 | T1 V | T2 V | ! T1 V | ! T2 V | 2nd NAND | LED || -------- | -------- | ------ | ------ | ------- | ------- | ---------- | ----- || Alto | Alto | 5 | 5 | 0 | 0 | 5 | Iluminado || Alto | Baja | 5 | 0 | 0 | 5 | 5 | Iluminado || Baja | Alto | 0 | 5 | 5 | 0 | 5 | Iluminado || Baja | Baja | 0 | 0 | 5 | 5 | 0 | | 

También preguntaste:

Por lo tanto, mi solución para 3.1 y 3.2 sería usar una puerta OR. ¿Estaría en lo correcto en esto?

Mirando la tabla de verdad, con 0 para bajo y 1 para alto:

OR truth table

Y eso también funcionaría. Pero usar una puerta OR no necesariamente lo prepara para entender fácilmente cómo usar la configuración de la puerta NAND.


Al menos, este ejercicio debería ayudarlo a comprender la dualidad de poder expresar lógica booleana positiva y negativa.

Esto es correcto. Sin embargo, el OP estaba pidiendo una _ sugerencia_ para resolver el problema.
@np8 - Me di cuenta de eso. Por favor revise nuestra meta guía sobre preguntas sobre tareas. http://meta.engineering.stackexchange.com/questions/121/what-should-our-position-be-on-homework-type-questions Las respuestas de "Pista" no son constructivas y no encajan bien con StackExchange Filosofía de preguntas y respuestas. O vale la pena responder la pregunta o no. Las sugerencias no generan un valor duradero para el sitio. En este caso, el OP demostró un intento de resolver el problema y se quedó atascado en la comprensión de la lógica. También tenga en cuenta que mi respuesta tomó una ruta diferente a la propuesta por el OP.
Dave Tweed
2015-02-11 19:20:33 UTC
view on stackexchange narkive permalink

La pregunta en realidad está incompleta, ya que no especifica si un "bajo" lógico o un "alto" lógico enciende el LED verde. Por lo general, en tales casos, debe asumir que necesita un "alto" lógico para encender el LED. Por lo tanto, su lógica necesita generar un "alto" lógico solo cuando ambas entradas son "bajo" lógico.

Sí, soy consciente de eso. Hasta que reciba una respuesta de mi conferenciante, supongo que un BAJO (apagado) indicaría cuando ambas entradas son BAJAS. Gracias por la respuesta.
gromain
2015-02-11 19:34:47 UTC
view on stackexchange narkive permalink

En primer lugar, tenga cuidado de responder solo lo que le pregunten. Esto será relevante en su trabajo escolar, pero también durante su carrera profesional.

Por ejemplo, su pregunta "Por lo tanto, mi solución para 3.1 [...] sería usar una puerta OR". es irrelevante en el caso de la pregunta 3.1 donde solo se le pregunta la tabla de verdad. Como su nombre lo indica, una tabla de verdad es una tabla de la que ya forma parte.

Además, normalmente en ingeniería, la respuesta a una pregunta utiliza el resultado de la pregunta anterior. Este esquema de pensamiento también se aplica a su vida profesional, donde divide sus [grandes] problemas en otros más pequeños más manejables.

Sé que no respondo directamente a la pregunta, pero puedo ver si ' estar en el camino correcto (y encontrar su error si no lo está) también es una habilidad de un ingeniero.

Gracias por el consejo. Solo quería publicar mi idea en la solución, para comprobar si estoy en el camino correcto.
Si sigue mis consejos, se dará cuenta de que principalmente lo es.
np8
2015-02-11 21:04:35 UTC
view on stackexchange narkive permalink

Por lo tanto, mi solución para 3.1 y 3.2 sería usar una puerta OR. ¿Estaría en lo correcto en esto?

Si el LED se enciende en ON cuando la entrada para el LED es LOW , entonces sí.

Asumiría que es al revés (un estado ALTO encendería el LED). Luego, simplemente invertiría la salida (es decir, usaría una puerta NOR)


Como consejo, la ley de DeMorgan podría resultar útil cuando esté resolviendo esto.

$ \ overline {A + B} = \ overline {A} \ cdot \ overline {B} $

$ \ overline {A \ cdot B} = \ overline {A} + \ overline {B} $



Esta pregunta y respuesta fue traducida automáticamente del idioma inglés.El contenido original está disponible en stackexchange, a quien agradecemos la licencia cc by-sa 3.0 bajo la que se distribuye.
Loading...