Usando puertas lógicas en lugar de Arduino

3

He creado un circuito muy simple usando arduino, en el que tengo 4 interruptores que se usan para controlar la lámpara ENCENDIDA / APAGADA, como se muestra en el siguiente esquema.

simular este circuito : esquema creado usando CircuitLab

Aquí está el programa escrito en Arduino IDE:

int switch1 = 8;
int switch2 = 9;
int switch3 = 10;
int switch4 = 11;
int outputPin = 12;

void setup()
{
    pinMode(switch1, INPUT);
    pinMode(switch2, INPUT);
    pinMode(switch3, INPUT);
    pinMode(switch4, INPUT);
    pinMode(outputPin, OUTPUT);
}

void loop()
{
    if(digitalRead(switch2) || digitalRead(switch4))
    {
        digitalWrite(outputPin, HIGH);
    }

    if(digitalRead(switch1) && digitalRead(switch2))
    {
        digitalWrite(outputPin, LOW);
    }
}

Básicamente, mi proyecto original tiene un motor en lugar de una lámpara, & Los cuatro interruptores que se muestran arriba son los dos pares de interruptores en cada tanque. es decir, tengo dos tanques y dos interruptores en cada tanque. 1 interruptor en la parte inferior del tanque para medir el nivel de agua. Si el tanque está vacío, entonces este interruptor estará abierto. Otro interruptor en la parte superior del tanque, que verificará si el tanque está lleno o no y, en consecuencia, activará / desactivará la válvula que no se muestra en los diagramas a continuación, ya que creo que no es necesario ahora.

El circuito anterior funciona perfectamente, pero ahora quiero completar el mismo circuito utilizando puertas lógicas, en lugar de arduino. He intentado el circuito que se muestra en el siguiente esquema, pero no tuve éxito porque soy nuevo en electrónica & Puertas lógicas.

simular este circuito

Quiero usar puertas lógicas en lugar de Arduino para reducir el costo.

Gracias por cualquier ayuda.

    
pregunta Vishal

2 respuestas

1

Comenzaré señalando que su código probablemente sea defectuoso. La última declaración IF debe examinar el switch 1 y el switch 3, no 1 y 2.

Dicho esto, vamos a reformular sus requisitos:

1) Si SW2 o SW4 están abiertos, comience a llenar el tanque (encienda el motor).

2) Cuando SW1 y SW3 están abiertos, deje de llenar el tanque (apague el motor).

¿verdad? Y te das cuenta de que esto puede causar que un tanque se desborde mientras el otro se está llenando, ¿no?

En este caso, como @ on8tom ha señalado, necesita algún tipo de dispositivo de almacenamiento, y un flip-flop de configuración / reinicio es una excelente opción. Entonces

simular este circuito : esquema creado usando CircuitLab deberías hacer lo que quieras Tenga en cuenta que he agregado un diodo de retorno en la bobina de relé, y siempre debe hacer esto. El diodo debe estar clasificado para más corriente que la bobina del relé.

    
respondido por el WhatRoughBeast
0

Si tus botones son interruptores físicos. Puedes colocarlos en paralelo. y en serie. esto reducirá el costo del componente.

como switch2 y switch 4 es un OR en tu código arduino. para que puedas ponerlos en paralelo y switch1 y 3 es un AND en su código arduino. para que puedas ponerlos en serie.

y ha programado un SET RESET. así que tendrás que construir un RESET SET como un FLIP FLOP.

hay varios circuitos para encontrar en google.

    
respondido por el on8tom

Lea otras preguntas en las etiquetas