Una forma mucho mejor de medir / detectar una señal de un dispositivo alimentado por batería sería usar un divisor de resistencia de alto valor. En el caso de una alarma de incendio alimentada por batería, no desea alterar la función de ninguna manera o agotar la batería prematuramente. El uso de una resistencia en serie y un Zener a tierra puede resultar en una cantidad moderada de corriente que se drena de una señal constante de 9v.
Cuando se configura como una entrada digital sin la resistencia de pull-up interna, un pin de E / S en el Arduino tiene una resistencia de entrada muy alta (cerca de 100M). Por lo tanto, si solo se necesita una detección alta / baja de una señal de 9 voltios, un divisor simple de resistencia de alto valor es un buen método que también limita el consumo de corriente del dispositivo. Por ejemplo, dos resistencias de 470k cada una podrían usarse como un simple divisor de voltaje para detectar una señal de 9v. Mientras el pull-up interno no esté habilitado, el voltaje resultante en el pin Arduino será de 4.5v cuando la señal de entrada sea de 9v. El consumo de corriente de la señal de 9v solo será de aproximadamente 0.0096ma. Con un divisor de voltaje que usa resistores de igual valor, el voltaje de la señal podría ser tan alto como 10v y un sistema Arduino de 5v aún vería una señal segura de 5v en el pin de E / S. La instrucción digitalRead () se usaría en este caso.
Si desea detectar y medir realmente la señal de 9v con el sistema Arduino ADC, el divisor de voltaje podría hacerse usando valores de resistencia un poco más bajos para ofrecer un funcionamiento razonable. (Las señales de impedancia muy alta pueden causar errores relacionados con la capacitancia interna de la entrada analógica). El uso de un divisor de voltaje con dos resistencias de 220k y un pequeño condensador (aproximadamente 0.1uF a través del resistor con conexión a tierra) podría hacer un divisor de voltaje confiable para medir una señal de 9v CC y aún así limitar el consumo de corriente a un nivel bajo, (en este caso, aproximadamente 0.020 mamá). El ADC ahora puede medir con seguridad una tensión de CC de 0v a 10v y emitir un valor real relacionado con la tensión de entrada, (esto es múltiple por 2 para ver el valor de la señal original). La instrucción analogRead () se usa aquí.
simular este circuito : esquema creado usando CircuitLab