Control electrónico de caldera de leña con Arduino

Publicado por en Arduino el 22/06/2011
Comentarios: 0

Os quiero presentar el proyecto que me ha enviado Xoel Molejón desde Gijón, Asturias (Galicia rocks!). El amigo Xoel es el feliz proprietario de una caldera de combustible sólido Roca modelo P30. Su funcionamiento es sencillo: La llenas de leña, enciendes, y calienta el agua de los radiadores igual que lo haría una a gasoil, propano o gas ciudad. Para su regulación, lleva una palanca manual en el tiro y una portilla con un termostato mecánico en la admisión de aire. Esta portilla actúa dependiendo de la temperatura del agua que hay en la caldera.

Aparentemente, la idea es buena, aunque presenta carencias y defectos importantes que resultan realmente desesperantes en el uso diario y Xoel quiso ponerle fin y optimizar el rendimiendo de la caldera utilizando un viejo conocido: Arduino

No os perdais la historia completa, fotos y video del proyecto de Xoel que no tiene desperdicio!

El problema

Durante la fase de calentamiento, que dura aproximadamente una hora, no hay forma de regular nada, ya que el agua todavía está por debajo de la temperatura objetivo, la entrada de aire está abierta a tope y gran parte de la energía se escapa por la chimenea (de hecho, se pone al rojo vivo, con la luz apagada se ilumina). Además, por la ubicación del termostato mecánico, las lecturas de temperatura no son reales, ya que la zona donde está colocado se sobrecalienta con demasiada facilidad, de forma que en ocasiones ahogaba el fuego cuando no debía.

Otras veces y dependiendo del estado de la leña (si está algo húmeda), se produce un enfriamiento de los gases de escape  en la chimenea, lo que impide el tiro natural, de forma que no hay forma de conseguir calor por falta de oxígeno durante la combustión. La solución era dar aire con un fuelle. Posteriormente se me ocurrió utilizar un secador de pelo.

La solución

En este punto, y aburrido de soplar durante las frías tardes de invierno, descubrí la plataforma Arduino y vi la luz. El tema de programación no era desconocido, pero sí cantidad de piezas nuevas, como servos, relés, sensores de temperatura, etc. Como primer proyecto con arduino era ambicioso y complejo.

Dos sensores de temperatura (LM335A) acoplados a las tuberías miden la temperatura de salida y retorno del agua, para mantener estable el calor en los radiadores; y un tercer sensor (concretamente un termopar tipo K) colocado en la chimenea con capacidad hasta 800ºC, controla constantemente la salida de gases para evitar que se desperdicie calor. El objetivo es mantenerlo a unos 350 - 400ºC en la fase de calentamiento, y 250 - 300 cuando tenemos el agua ya caliente.

Para poder leer el termopar con Arduino, utilicé un AD595 en combinación con un divisor de tensión para obtener 5mV / ºC
Instalé, además, dos sensores en la puerta, con la intención de abrir el tiro a la vez que las puertas, evitando que nos ahumemos como chorizos cuando abrimos para cargar leña.
Como actuadores, se colocan un par de servos: Uno mueve el tiro y el otro la portilla de entrada de aire, y un par de relés que actúan sobre un secador de pelo viejo, para dar aire si fuera necesario.
Aquí aparecieron un par de inconvenientes:
Las piezas que abren y cierran el tiro son de fundición y por lo tanto muy pesadas. A la velocidad que se mueve un servo en pocos movimientos reventaba los engranajes (de hecho me cargué uno con sólo tres movimientos), así que hubo que programar aceleración y desaceleración para cada movimiento, incluso para evitar ruidos a altas horas de la madrugada. Además, el servo tenía que estar constantemente haciendo fuerza para soportar el peso de la trampilla. Esto se solucionó con un muelle.
El otro problema, más grave, fue debido a las corrientes inducidas por el motor del secador de pelo. En las conexiones y desconexiones pegaba tal subida que en ocasiones saltaba el relé y llegaba a la placa. La solución fue colocar  un circuito intermedio con otros dos relés, y enchufar el secador en otra toma de corriente, aislada del arduino.
En la toma de aire, se coloca un pequeño cajón que contiene el secador y una nueva trampilla que abre y cierra mediante un servo.
Y ya puestos, un par de botones de control, sensores de puerta abierta, una pantalla LCD y una caja de almendras de chocolate nunca está de mas...

Programación

En cuanto a la programación, el programa sigue el siguiente orden:
1.- Toma de datos
2.- Comprobación de puerta abierta  --> Abrir tiro (Evita que salgan humos cuando se carga leña)
3.- Si temperatura de la chimenea < 60º (fuego apagado)  --> Apagar todo y esperar 60 segundos
4.- Cálculo de la potencia requerida 
5.- Visualización en pantalla
6.- Movimiento de servos según potencia requerida
7.- Encender / apagar secador
8.- Espera 2 segundos.
Como nota interesante, hay que fijarse en la curiosa forma de leer las entradas analógicas para conseguir medir con bastante exactitud décimas de grado con un LM335. Cada termómetro es leído 640 veces.

Video

En la tienda

Arduino UNO Sensor de temperatura LM335A Relé 5V SPDT  Pantalla LCD 20x4 caracteres - Negro/Verde

Si te ha gustado, compártelo con tus amigos!
Google Plus 

Ver comentarios antiguos...