Calidad y Diferenciación de Líquidos – Sonda Dieléctrica

Introducción

Este proyecto consiste en el diseño y construcción de una sonda de bajo coste basada en Arduino Uno, capaz de detectar variaciones en líquidos a partir de sus propiedades eléctricas. La idea inicial era desarrollar una sonda orientada a la medición de la calidad del aceite, aprovechando que la degradación del aceite puede modificar sus propiedades conductivas, resistivas y capacitivas.

Sin embargo, durante el desarrollo del prototipo se comprobó que medir aceite con precisión utilizando componentes sencillos presentaba varias dificultades, principalmente debido a su baja conductividad y a la presencia de ruido eléctrico en las mediciones. Por ello, el proyecto evolucionó hacia un sistema de análisis básico de líquidos, capaz de detectar diferencias tanto entre líquidos distintos como dentro de una misma muestra base.

En concreto, se realizaron pruebas con agua, agua con sal, agua con azúcar y leche. De esta forma, el sistema no solo permite comparar líquidos diferentes, sino también observar cómo cambia la respuesta de la sonda cuando se altera la composición del agua mediante la adición de distintas sustancias.

Objetivos

El objetivo principal del proyecto fue construir un sistema funcional capaz de detectar variaciones en la composición de distintos líquidos mediante una sonda conectada a Arduino.

Los objetivos específicos fueron:

  • Diseñar una sonda conductiva de bajo coste.
  • Medir variaciones eléctricas en líquidos mediante una entrada analógica de Arduino.
  • Comprobar cómo cambia la lectura al modificar la composición del agua.
  • Diferenciar entre agua, agua con sal, agua con azúcar y leche.
  • Mostrar el resultado de forma visual mediante LEDs indicadores.
  • Establecer rangos de decisión en el código a partir de las pruebas experimentales.
  • Analizar los problemas encontrados durante el montaje y aplicar soluciones tanto hardware como software.

Materiales empleados

Para realizar el montaje se emplearon componentes sencillos y económicos:

MaterialUso principal
Arduino Uno R3Control del sistema y lectura analógica
Breadboard / protoboardMontaje del circuito sin soldadura
ResistenciasDivisor de tensión y limitación de corriente
LEDs rojo, verde y azulIndicación visual del líquido detectado
Cables jumperConexión entre componentes
Varilla metálica y tubo metálicoConstrucción de la sonda
Tuercas, arandela y silicona calienteFijación mecánica de la sonda
Agua, sal, azúcar y lecheLíquidos y disoluciones de prueba

Montaje hardware

El sistema se basa en una sonda conductiva conectada a un circuito con Arduino. La sonda está formada por elementos metálicos que actúan como electrodos. Al introducirla en un líquido, este permite el paso de corriente en mayor o menor medida dependiendo de su conductividad.

La señal obtenida se conecta a una entrada analógica del Arduino, concretamente al pin A0. A partir de esa lectura, el programa interpreta el valor recibido y activa diferentes LEDs según el rango detectado.

Los LEDs se utilizan como sistema de indicación visual:

Estado detectadoIndicación visual
Sin líquido o lectura muy bajaLEDs apagados
Agua con azúcarLED azul
AguaLED verde
LecheLEDs rojo, verde y azul
Agua con salLED rojo

Una parte importante del montaje fue la fijación de la sonda. Durante las primeras pruebas se observó que pequeños movimientos de los electrodos alteraban la lectura obtenida. Por ello, se utilizaron tuercas, arandela y adhesivo termofusible aplicado con pistola de silicona caliente para mantener la estructura fija y reducir errores durante las mediciones.

Funcionamiento del sistema

El Arduino envía una señal de excitación a la sonda y posteriormente lee el valor analógico recibido en A0. Esta lectura depende de las propiedades eléctricas del líquido en el que se introduce la sonda.

Los líquidos con mayor presencia de iones o sustancias conductoras permiten un mayor paso de corriente y producen valores más altos. En cambio, líquidos o disoluciones con menor conductividad generan valores más bajos.

De esta manera, el sistema permite detectar cambios en la composición del líquido. En el caso del agua, la adición de sal o azúcar modifica su comportamiento eléctrico, provocando respuestas diferentes en la lectura del Arduino. Por tanto, el sistema puede relacionarse con una evaluación básica de la calidad del agua, entendida como la detección de alteraciones o sustancias disueltas que modifican sus propiedades eléctricas.

Funcionamiento del software

El programa desarrollado para Arduino realiza varias lecturas analógicas y calcula un promedio para reducir el ruido eléctrico. Esta parte fue importante porque durante las pruebas se observaron valores inestables debido al movimiento de la sonda, al contacto humano y a interferencias externas.

Después de obtener el valor medio, el código compara la lectura con distintos rangos definidos experimentalmente. Según el resultado, se activa un LED o una combinación de LEDs y se muestra por el monitor serie el tipo de líquido detectado.

La lógica general del sistema es la siguiente:

Rango aproximadoClasificaciónSalida visual
Menor que 10No se detecta líquidoLEDs apagados
10 – 199Agua con azúcarLED azul
200 – 300AguaLED verde
301 – 850LecheTodos los LEDs
Mayor que 850Agua con salLED rojo

Estos valores fueron definidos a partir de las pruebas realizadas con la resistencia de 10 kΩ, que ofreció el mejor equilibrio entre sensibilidad y estabilidad.

Código del proyecto

El código implementado en Arduino se encarga de leer el valor analógico obtenido por la sonda, procesar varias muestras para reducir el ruido y activar los LEDs correspondientes según el líquido o disolución detectada.

En primer lugar, se definen los pines utilizados para la sonda y los LEDs indicadores:

const int excitePin = 8;
const int sensePin = A0;

const int ledRojo = 7;
const int ledVerde = 6;
const int ledAzul = 5;

El pin excitePin se utiliza para enviar una señal de excitación a la sonda, mientras que sensePin recoge la lectura analógica. Los pines ledRojo, ledVerde y ledAzul controlan los LEDs que indican el resultado de la medición.

Para mejorar la estabilidad de la señal, se creó una función que realiza varias lecturas y calcula su promedio:

long medirPromedio(int n) {
long suma = 0;

for (int i = 0; i < n; i++) {
digitalWrite(excitePin, LOW);
delay(5);

digitalWrite(excitePin, HIGH);
delayMicroseconds(300);

suma += analogRead(sensePin);

digitalWrite(excitePin, LOW);
delay(5);
}

return suma / n;
}

Esta función permite reducir pequeñas variaciones o picos de ruido eléctrico. En lugar de tomar una única lectura, el sistema obtiene varias muestras y trabaja con el valor medio, consiguiendo una respuesta más estable.

También se incluye una función auxiliar para apagar todos los LEDs antes de realizar una nueva clasificación:

void apagarLeds() {
digitalWrite(ledRojo, LOW);
digitalWrite(ledVerde, LOW);
digitalWrite(ledAzul, LOW);
}

En la función setup() se inicializan los pines y la comunicación serie:

void setup() {
pinMode(excitePin, OUTPUT);
digitalWrite(excitePin, LOW);

pinMode(ledRojo, OUTPUT);
pinMode(ledVerde, OUTPUT);
pinMode(ledAzul, OUTPUT);

apagarLeds();

Serial.begin(9600);
}

La comunicación serie permite visualizar en el ordenador el valor leído por la sonda y comprobar cómo cambia según el líquido analizado.

Finalmente, en el bucle principal loop() se realiza la lectura, se muestra el valor por el monitor serie y se activan los LEDs según los rangos definidos experimentalmente:

void loop() {
long valor = medirPromedio(20);

Serial.print("Valor leído: ");
Serial.println(valor);

apagarLeds();

if (valor > 850) {
digitalWrite(ledRojo, HIGH);
Serial.println("AGUA CON SAL");
}
else if (valor > 300 && valor <= 850) {
digitalWrite(ledVerde, HIGH);
digitalWrite(ledRojo, HIGH);
digitalWrite(ledAzul, HIGH);
Serial.println("LECHE");
}
else if (valor >= 200 && valor <= 300) {
digitalWrite(ledVerde, HIGH);
Serial.println("AGUA");
}
else if (valor < 200 && valor >= 10) {
digitalWrite(ledAzul, HIGH);
Serial.println("AGUA CON AZUCAR");
}
else if (valor < 10) {
Serial.println("NO SE DETECTA LIQUIDO");
}

delay(500);
}

Los rangos utilizados en el código fueron establecidos a partir de las pruebas realizadas con los distintos líquidos. De esta forma, el sistema interpreta la lectura analógica y la relaciona con un caso de uso concreto.

En resumen, el código combina la lectura analógica de la sonda, el filtrado básico mediante promedio y una clasificación por umbrales. Esto permite que el sistema responda de forma visual mediante LEDs y también muestre el resultado por el monitor serie.

Casos de uso evaluados

Agua

El agua se utilizó como muestra base. Su lectura sirvió como referencia para comparar cómo cambiaba el sistema al añadir otras sustancias. En las pruebas realizadas, el agua produjo una lectura intermedia, correspondiente al encendido del LED verde.

Agua con sal

Al añadir sal al agua, la lectura aumentó de forma notable. Esto ocurre porque la sal se disocia en iones, aumentando la conductividad del líquido y facilitando el paso de corriente.

Este caso permitió comprobar que la sonda detecta claramente alteraciones en la composición del agua cuando se añaden sustancias conductoras.

Agua con azúcar

El agua con azúcar generó valores inferiores a los obtenidos con agua con sal. Esto se debe a que el azúcar no se disocia en iones, por lo que no aumenta la conductividad del líquido de la misma manera que la sal.

Este resultado demuestra que no todas las sustancias disueltas afectan igual al comportamiento eléctrico del agua. Por tanto, la sonda no solo detecta que el agua ha sido modificada, sino que responde de forma diferente según el tipo de sustancia añadida.

Leche

También se realizaron pruebas con leche para comprobar si la sonda era capaz de diferenciar otro líquido de uso común. La leche presenta una conductividad medible debido a la presencia de sales minerales, proteínas y otros compuestos disueltos.

La lectura obtenida fue distinta a la del agua, lo que demuestra que el sistema puede diferenciar líquidos con composiciones diferentes.

Calibración del sistema

Para que las mediciones fueran comparables entre sí, fue necesario mantener unas condiciones de prueba constantes durante todo el proceso.

Se utilizaron siempre:

  • Las mismas cantidades de líquido.
  • Los mismos recipientes.
  • La misma posición de la sonda.
  • La misma profundidad de inmersión.
  • La misma resistencia fija en el circuito.
  • La misma estructura de conexión.

La fijación de la sonda fue especialmente importante, ya que pequeños desplazamientos de los electrodos podían modificar la distancia entre ellos y alterar la lectura obtenida por el Arduino.

Gracias a esta calibración experimental, fue posible establecer valores de referencia para cada muestra y definir rangos de decisión más fiables en el código.

Presupuesto aproximado

ComponenteCoste aproximado
Sonda de fabricación propia1,50 €
Resistencias0,50 €
Cables jumper3,50 €
Arduino Uno R325,00 €
Caja reciclada0,00 €
LEDs1,00 €
Leche1,20 €
Azúcar1,00 €
Sal0,50 €
Breadboard / protoboard7,00 €

Reparto de tareas

Miembro del grupoTareas realizadas
LauraMontaje del circuito, conexiones y análisis del funcionamiento eléctrico
JavierCreación de la sonda, fijación mecánica y realización de pruebas experimentales
SofíaDocumentación, explicación del código y organización de resultados

Aunque cada miembro tuvo una función principal, el proyecto se desarrolló de forma colaborativa. Las decisiones sobre el montaje, el código y las pruebas se fueron ajustando en función de los problemas encontrados durante el desarrollo.

Conclusión

El proyecto demuestra que es posible construir una sonda sencilla y económica capaz de detectar variaciones en líquidos mediante Arduino. Aunque la idea inicial estaba orientada a medir la calidad del aceite, las dificultades encontradas durante las pruebas llevaron a ampliar el enfoque hacia el análisis básico de líquidos y disoluciones.

Los resultados obtenidos muestran que la sonda no solo permite diferenciar entre líquidos distintos, como agua y leche, sino también detectar alteraciones dentro de una misma muestra base. En el caso del agua, la adición de sal y azúcar produjo respuestas diferentes en la lectura analógica, demostrando que el sistema puede identificar cambios en su composición.

Por tanto, el sistema puede entenderse como una herramienta básica para observar variaciones en la calidad o composición del agua, siempre dentro de las limitaciones de un prototipo académico. La estabilidad mecánica de la sonda, la elección adecuada de la resistencia y la calibración experimental fueron factores clave para obtener mediciones coherentes y repetibles.

Vídeo

A continuación podéis ver el prototipo en funcionamiento:

Imágenes

También te podría gustar...

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *