Controlador de temperatura de agua inteligente de bricolaje con Arduino

[ad_1]

Si desea monitorear y controlar la temperatura del agua o cualquier otro líquido, este controlador de temperatura del agua puede ser útil. Le permite establecer la temperatura máxima a la que se debe calentar el agua, mostrar la temperatura en cada etapa del proceso de calentamiento, usar un zumbador y un LED para indicar cuando se ha alcanzado la temperatura deseada y apagar la calefacción.

probado

La mayoría de los géiseres de almacenamiento doméstico en el mercado tienen tales características, sin embargo, algunos calentadores de agua, especialmente los calentadores de agua de barra, no tienen estas características. Siguen calentando el agua hasta que se apagan, consumiendo mucha electricidad innecesariamente y calentando el agua mucho más de lo deseado.

Índice
  1. Componentes requeridos:
  2. Controlador de temperatura del agua - Diagrama de bloques
  3. Controlador de temperatura del agua - funciona
  4. programación
  5. Controlador de temperatura del agua - Diagrama de cableado

Componentes requeridos:

Lista de piezas
Semiconductor:
IC1 Optoacoplador MCT2E
LED1, LED2 LED de 5 mm
D1 Diodo rectificador 1N4007
Resistencias (cada 1/4 de vatio, ±5% de carbono):
R1-R3 330 ohmios
R4 4,7 kilohmios
VR1 olla de 10 kilo ohmios
Otro:
TABLERO1 arduino nano
DIS1 Pantalla de 7 segmentos de 4 dígitos
S1, S2 Presionar para encender el interruptor
RL1 5V, relé SPDT
PZ1 zumbador piezoeléctrico
CON1, CON2 conector de 2 pines
SENSOR1 Sensor DS18B20
Calentador de agua (1000 vatios).

Controlador de temperatura del agua - Diagrama de bloques

El diagrama de bloques de este proyecto simple se muestra en la Fig. 1 y su esquema se muestra en la Fig. 2. El proyecto se basa en la sonda del sensor de temperatura del agua DS18B20, una pantalla multiplexada de 4 dígitos y 7 segmentos y una placa Arduino Uno con un microcontrolador ATmega328, un optoacoplador MCT2E, un potenciómetro (pot), LED, un mini-zumbador y un relé.

Diagrama de bloques del controlador e indicador de temperatura del agua
Fig. 1: Diagrama de bloques del controlador e indicador de temperatura del agua

La temperatura del agua detectada por la sonda se puede mostrar en la pantalla de 4 dígitos. Con la olla puede configurar la temperatura del agua deseada y encender el relé para calentar el agua. Cuando la temperatura del agua alcance el valor establecido, el relé se apagará automáticamente y el agua dejará de calentarse.

La sonda de sensor de un solo cable Dallas DS18B20 recomendada para el proyecto registra la temperatura del agua y proporciona el valor digital directo de la medición de temperatura a través de un protocolo especial de un solo cable. La temperatura deseada del agua se ajusta con la olla VR1. DIS1 es un display multiplexado de 4 dígitos y 7 segmentos que ayuda a programar la temperatura del agua requerida y conocer la temperatura en todo momento. LED1 y LED2 son indicadores de encendido/apagado del calentador. El zumbador emitirá un pitido cuando se alcance la temperatura del agua establecida. El circuito del controlador de relé (construido alrededor de MCT2E) proporciona aislamiento y protección además de impulsar el relé.

El potenciómetro de 10k (VR1) se conecta entre los pines 5V y GND de la placa Arduino, con su terminal deslizante central conectado al pin de entrada analógica A0. Esto le da a la placa Arduino una entrada analógica de 0 a 5 V. Los interruptores de botón S1 y S2 están conectados a los pines A1 y A2, por lo que cuando presiona un interruptor, el pin correspondiente está conectado a tierra y proporciona una entrada lógica 0. Los dos LED (rojo y verde) están conectados a los pines A3 y A4, con sus cátodos conectados a tierra a través de resistencias limitadoras de corriente de 330 ohmios.

El pin A5 de Arduino Board1 está conectado al pin de ánodo del LED en el optoacoplador MCT2E a través de la resistencia limitadora de corriente R1 de 330 ohmios. La salida del transistor en el optoacoplador controla el relé. Un diodo de recuperación inversa está conectado a la bobina del relé.

El mini zumbador PZ1 está conectado al pin digital D0 de la placa, con su entrada + conectada al pin D0 y su entrada - conectada a tierra. La sonda del sensor DS18B20 tiene tres pines de interfaz etiquetados como +V, OP y GND. El pin +V recibe un suministro de 5V (externo), el pin GND está conectado a la tierra del circuito y el pin OP está conectado al pin digital D1 de la placa. Se conecta una resistencia pull-up de 4,7 K ohmios entre el pin +V y OP como se recomienda en la hoja de datos para el sensor DS18B20.

La pantalla multiplexada de 4 dígitos y 7 segmentos es del tipo de cátodo común; su pin común está conectado a tierra. Sus entradas de ocho segmentos (A, B, C, D, E, F, G, DP) están conectadas a los pines digitales D2 a D9, y sus pines de selección de dígitos 1 a 4 están conectados a los pines digitales D10 a D13.

Arduino Nano hace casi todo. Lee el valor de temperatura de la sonda DS18B20. Toma la entrada del usuario del potenciómetro y cambia. Muestra la temperatura del agua en la pantalla. Da pistas sobre los LED y el zumbador. Y enciende y apaga el calentador.

Controlador de temperatura del agua - funciona

Trabajar en el proyecto es fácil. Inicialmente, el calentador está apagado y el LED1 rojo se enciende para indicarlo. Por lo tanto, puede configurar la temperatura del agua deseada con la olla y presionar el botón SET. Puede ajustar la temperatura entre 40 y 70 °C, que se muestra en la pantalla de 4 dígitos (por ejemplo, 45, 48, 55, 65, etc.).

Una vez que se establece la temperatura deseada, el calentador se enciende presionando el botón ON. El LED verde se iluminará para indicar que el calentador está encendido. La pantalla ahora muestra la temperatura actual del agua. Cuando la temperatura del agua aumenta, la pantalla muestra el aumento de la temperatura del agua. Cuando la temperatura del agua alcance la temperatura establecida, el calentador se apagará y sonará un pitido. El LED rojo se enciende de nuevo.

programación

El programa está escrito en lenguaje C/C++ utilizando el IDE de Arduino. En el programa se utilizan tres bibliotecas: OneWire.h, DallasTemperature.h y SevSeg.h. OneWire.h se usa para el protocolo de un solo cable para leer los datos a través de un solo cable. DallasTemperature.h se utiliza para leer la temperatura del sensor DS18B20. SevSeg.h se utiliza para mostrar la temperatura en la pantalla de 7 segmentos.

El programa se compila utilizando el IDE de Arduino y se carga en la memoria flash interna del microcontrolador ATMega328 de la placa Arduino.

Descarga el código fuente

Controlador de temperatura del agua - Diagrama de cableado

Después de cargar el código fuente en la EEPROM interna (memoria flash) de la placa Arduino Nano, ensamble el circuito en una PCB de propósito general. No olvide conectar los puntos 1, 2, 3 y 4 que se muestran en la Fig. 2. Antes de ensamblar, vea el prototipo del autor que se muestra en la Fig. 3 para ver cómo se ensambla el proyecto. Después de montar el circuito en la PCB, embalarlo en una caja adecuada. Conecte el LED1 y el LED2 al frente de la caja y extienda el sensor al tanque de agua usando los cables adecuados.

Diagrama de cableado del controlador de temperatura del agua
Fig. 2: Diagrama de circuito del controlador de temperatura del agua

Ajustar la temperatura del agua es crucial. La temperatura del agua se ajusta entre 40 y 70 °C con la olla. Cuando se gira el potenciómetro, proporciona una entrada analógica de 0 a 5 V en el pin A0. El ADC interno de 10 bits del microcontrolador ATMega328 convierte este voltaje analógico en un valor digital de 0 a 1023. Este rango de 0 a 1023 se asigna a un rango de temperatura correspondiente de 40 a 70 °C que se muestra en la pantalla.

Proyecto de controlador de temperatura del agua de bricolaje
Proyecto de controlador de temperatura del agua de bricolaje

El botón SET y ON cambia, cuando se presiona, la entrada lógica de salida 0 a los pines A1 y A2 (pines digitales 14 y 15). Se presiona SET cuando la temperatura deseada del agua está configurada en la olla. Esto establece el límite de temperatura hasta que el agua se calienta. Al presionar el botón "ON" se enciende el calentador y comienza a calentar el agua.

Cuando se presiona el botón ON, se le da un 1 lógico al pin A5 (pin digital 19). Esto enciende el relé a través del optoacoplador. Cuando se enciende el relé, la bobina de calentamiento recibe 230 V y comienza a calentar el agua. El LED verde se enciende enviando un 1 lógico al pin A4 (pin digital 18) para indicar que el calentador está encendido.

La temperatura del agua de calentamiento es detectada por la sonda DS18B20, que transmite una lectura de temperatura a Arduino. Arduino muestra esta temperatura en la pantalla.

Cuando el agua alcanza la temperatura establecida, se envía un 0 lógico al pin A3 de la placa, el relé se apaga y con él el calentador. Al mismo tiempo, el LED rojo se enciende enviando un 1 lógico al pin A3 (pin digital 17) para indicar que el calentador está apagado. El pin del zumbador D0 recibe la lógica 1 por un tiempo (2 a 3 segundos) para producir un pitido que indica que el agua se ha calentado al nivel deseado.


Ashutosh M. Bhatt es M.Tech (Medallista de Oro) en Sistemas Embebidos. Actualmente es profesor de Ingeniería Electrónica y de Radio en el Politécnico del Gobierno, Jamnagar, Gujarat.

[ad_2]

Deja una respuesta

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

Subir