Bueno ... los interruptores de flotador son simples y confiables. Dicho esto, no es tan simple como detectar un voltaje de CC. Usando DC, los electrodos se corroerían rápidamente (daño debido a la electrólisis).
El circuito de detección necesita usar CA. Solía haber un buen IC hecho por National que haría esto, el LM1830N; pero por lo que sé, ha estado obsoleto por algún tiempo. El circuito es bastante simple de hacer tú mismo. Básicamente, un oscilador está conectado a una resistencia en serie y un condensador que está conectado a un electrodo en el fluido. Ese electrodo también se conecta a un comparador para detectar la CA. Un segundo electrodo se conecta a GND (circuito común). Cuando hay un fluido presente, la conducción entre los electrodos hace que la señal de CA en el electrodo del oscilador se atenúe. La resistencia establece la sensibilidad.
Aquí hay un circuito que construí hace unos años con un PIC12F683:
simular este circuito : esquema creado usando CircuitLab
Este circuito era para un sensor de fluido de doble nivel que activaría una válvula cuando el fluido caería por debajo del sensor FLUID_LO y se apagaría cuando el fluido alcanzara el sensor FLUID_HI.
Me temo que no tengo libertad para publicar el código fuente, pero describiré la funcionalidad:
SENSOR_CLK es una salida de onda cuadrada de ciclo de trabajo del 50%. La frecuencia no es crítica. Utilicé appx 8Khz.
Las entradas AN0 y AN1 al PIC12F683 son entradas al convertidor A / D. Las conversiones se realizan cuando SENSOR_CLK es alto. Si la tensión se detecta por debajo de 3,1 V, se considera que el electrodo correspondiente está sumergido en el fluido.
FLUID_HI y FLUID_LO son cables colocados de tal manera que se sumergen en el fluido cuando se encuentran en el nivel adecuado. FLUID_COM se puede conectar a un recipiente metálico que contiene el fluido, o se puede conectar a un cable en el fluido y por debajo del nivel de FLUID_LO.
Cuando los cables se sumergen en el fluido, la onda cuadrada detectada por AN0 y AN1 se atenúa y tiene un componente de CC neta de aproximadamente 2.5V. Las resistencias R1 y R2 pueden cambiarse a valores más pequeños si se desea un circuito menos sensible. El umbral de detección de 3.1V (en el firmware) también se puede cambiar para ajustar la sensibilidad, pero debe ser mayor que 2.5V.
Mientras use el convertidor A / D en el microcontrolador, se pueden usar otros métodos de detección. Algunos microcontroladores tienen comparadores de voltaje incorporados que pueden usarse. También puede ser posible usar E / S de propósito general para detectar la inmersión cuando SENSOR_CLK es bajo si los umbrales de Vin de alto y bajo están muy por debajo de 2.5V.
Elegí detectar los voltajes entre las resistencias y los condensadores en lugar de los voltajes de los electrodos porque sentí que el diodo de sujeción interno al VSS en el microcontrolador podría causar un voltaje de red DC en los electrodos.