leyendo la posición de un interruptor usando un microcontrolador

1

Me gustaría usar un microcontrolador para leer la posición de un interruptor.

El ejemplo y la imagen a continuación son solo para fines ilustrativos.

Por ejemplo, si un interruptor está en la Posición A, una señal de 5V podría alimentar la ENTRADA DIGITAL 1. Del mismo modo, si el interruptor está en la Posición B, una señal de 5V podría alimentar la ENTRADA DIGITAL 2. Para hacer las señales útiles, estarían encendidas Exclusividad al otro.

es decir,

Position A   Position B   |   DIGITAL 1      DIGITAL 2
--------------------------|----------------------------
    ON          OFF       |     HIGH          LOW
                          |
    OFF         ON        |     LOW           HIGH

El circuito es alimentado por el suministro de 5V del microcontrolador y comparte una conexión común con el microcontrolador.

Gracias.

EDITAR: se cambió R1 (1 kOhm) a un motor de CC, para representar mejor el circuito real.

Además, la tensión de entrada tiene un error o + -0.5V. Las resistencias tienen una tolerancia de error del 5%.

enlace

    
pregunta waspinator

4 respuestas

2

Mientras dibujaba el esquema con un interruptor DPDT, Pete me había superado en la respuesta.

    
respondido por el Nick Alexeev
4

Si puede, reemplace el interruptor con un interruptor DPDT, y use el segundo polo para alimentar un pin de entrada digital. En este caso, el segundo polo podría usarse para conmutar + 5V o groud a la entrada del dispositivo digital.

Si no puede, puede usar un amplificador de instrumentación para detectar la corriente a través de una o ambas resistencias, configurando el ganancia, de modo que la salida es un nivel lógico alto cuando el motor está extrayendo corriente a través de la resistencia y tiene una lógica baja, si no. (Teniendo cuidado de no saturar el nivel de entrada digital).

    
respondido por el B Pete
1

Elimine R1 (sustitúyalo por 0 ohmios) y conecte los nodos etiquetados "posición 1", "posición 2" directamente a "entrada digital 1" y "entrada digital 2". Se comportará exactamente como lo describiste.

Editar (después de los valores de resistencia agregados):

Cuando el interruptor está en B , el nodo B leerá 5V y A leerá el divisor de voltaje de la otra rama: 1000 / 1018 * 5V = 4.91V . Cuando el interruptor está en A , el nodo 'A' leerá 5V y B leerá 1000 / 1004.7 * 5V = 4.98V . Por lo tanto, un comparador establecido en 4.95V en el nodo A le permitirá distinguir los dos casos con una sola entrada digital.

    
respondido por el Jim Paris
0

Sus requisitos no tienen sentido, pero puede cumplirlos con un comparador con un rango de modo común riel a riel:

    
respondido por el markrages

Lea otras preguntas en las etiquetas