Calefacción manejable a distancia

Cocina, decoración, ropa, bricolage, cacharros electrónicos, suegras, cuñados...
Avatar de Usuario
Pastinaca
Sumo hacedor
Mensajes: 6571

Calefacción manejable a distancia

Mensaje#1 » Lun Sep 21, 2015 5:49 pm

A diferencia de lo que ocurría con el portero automático programable por horas, que no disponía de una alternativa comercial, para manejar la calefacción de casa desde cualquier parte del mundo sí que hay abundantes aparatejos. Busquen "termostato IP" y encontrarán su dispositivo, a partir de unos cien euros.

Pero servidor es fiel seguidor de la Cofradía del Puño Cerrado y, además, adorador del Dios de la Sostenibilidad. Así que vamos a ver qué podemos hacer con lo que tenemos en casa, en plan DIY (do it yourself, mónteselo usted mismo):

1. La Tostadora I.

Imagen

Lo ideal sería adquirir una Raspberry Pi para este propósito; sin embargo, las Reglas del Dios de la Sostenibilidad indican bien claro que...

☐ Reducir
☑ Reutilizar
☐ Reciclar

... hay que aprovechar todo aquello de lo que se disponga. Y como La Tostadora I está encendida 24 horas 365 días al año, nos puede servir perfectamente para el propósito requerido; eso sí, con abundante "hacking" de por medio.

2. Un termostato Coati 12617.

Imagen

El Coati no nos va a servir más que para descolgarlo de la pared y comprobar que funciona como simple interruptor. A él se conecta el cable de alimentación del calentador del agua y de la calefacción. Está conectado a la corriente general (230V) y el aparato (el calentador, no el Coati) consume un máximo de 150W. Esto es, la intensidad no llega al amperio.

3. Conexión a internet permanente con IP pseudofija (HFC de ONO, ahora Vodafone).


Lo que vamos a hacer es montar un pequeño servidor web en La Tostadora I. Nos proporcionará una bonita interfaz web desde la que ordenar el encendido de la calefacción desde cualquier lugar del mundo y desde cualquier tipo de equipo que tenga un simple navegador, ya sea un PC, una tablet, un móvil o un asno inalámbrico (y no como ya estoy viendo con algunos termostatos IP, que exigen la instalación de una puñetera "app" de iOS o Android... ¿y si quiero manejarlo desde el PC de la oficina? ¿Y si uso Windows Phone o Blackberry? ¿Y si tengo un dispositivo Android pero no acceso a Google Play, por estar ejecutando Replicant o Cyanogen Mod?).

La interfaz web puede ser todo lo flexible que sea necesario: desde un simple encendido/apagado, hasta un encendido temporizado (previsto a una hora concreta) y un apagado selectivo después de determinado tiempo: imagínense que tenemos un accidente y nos matamos... ¡la calefacción continuaría encendida ad eternum! ¡Y luego vendría la factura!

La idea es que, una vez recibida la orden, La Tostadora I envíe una señal eléctrica a un relé de estado sólido, el cual estaría conectado a los mismos cables que el temporizador Coati. De esta forma, ambos compartirían el control sobre el calentador de agua. Y funcionarían del mismo modo: cerrando el circuito.

Para esta tarea, la Raspberry Pi sería el dispositivo ideal, ya que tiene un bonito panel de input/output. Un ordenador normal no lo tiene y, desde luego, tampoco La Tostadora I. Para enviar la necesaria señal eléctrica, hay que usar el venerable puerto serie Imagen ¿Por qué? Porque no se puede usar otra cosa: la señal de los puertos USB no es gobernable por software, al menos en Linux (sistema operativo de La Tostadora I) y con los últimos kernels.


Principales escollos:
-Hay que programar la interfaz web y yo no tengo idea de lenguaje PHP. Habrá que aprender a hacer lo básico.
-La única manera que he encontrado de manejar la señal eléctrica del puerto serie en Linux es con un programa en lenguaje PERL y de éste tengo aún menos idea.
-Tengo que encontrar un relé de estado sólido que pueda detectar la exigua intensidad transmitida por un puerto serie: un máximo de 5 mA. En internet hay algunos que lo manejan, en teoría. Ya veremos en la práctica.
-Habrá que hacerse con un conector serie hembra de 9 pines. En el 2004 estuve trasteando con uno, para resucitar un antiguo router Speedstream. A ver si lo encuentro.
-Soldar y probar.



El siguiente paso, una vez conseguido el objetivo principal y ya más a medio/largo plazo, sería ¡ncluir un termómetro en el sistema y olvidarse definitivamente del termostato. Para eso, podría reciclar algún termómetro LCD de los chinos que tengo por ahí tirado. Conectarlo ya sería mucho más complicado. Había pensado en recurrir a una placa Arduino que, teóricamente, puede leer señales analógicas; pero tendria que estudiar mucho más detenidamente las posibilidades de éxito. La Arduino nos evitaría, además, la solución chapucera del puerto serie.

De momento, vamos a ver qué podemos conseguir por menos de diez euros: lo que valdría el relé de estado sólido, un diodo, una resistencia y algo de cable.

Avatar de Usuario
Pastinaca
Sumo hacedor
Mensajes: 6571

Re: Calefacción manejable a distancia

Mensaje#2 » Mar Sep 22, 2015 10:15 am

Durante una pausa (muy) prolongada en el Puerto de Bilbao, en la que contra mi voluntad aun me hallo, me he sumergido en el fascinante universo de las placas Arduino... que maravilla! Se puede hacer de todo con ellas! Y son mas baratas de lo que pensaba: el modelo basico viene a salir por unos quince euros.

Definitivamente, me olvido del rollo del puerto serie y tiro por el metodo Arduino, que me permitira no solo controlar la temperatura a distancia, sino --dado que se le puede enchufar un sensor de temperatura-- regularla automaticamente como haria un termostato. Y, por tanto, prescindir del Coati y de su engorrosa programacion.

Incluso podria conectar al Arduino, a su vez, el portero automatico para conectarlo/desconectarlo en tramos horarios como hago ahora con el programador analogico. Ya metiendonos en domotica avanzada, podria programar una "alarma para siestas" en el movil que, aparte de su funcion como despertador, desconectara automaticamente el portero automatico y volviera a conectarlo una vez sonara el despertador.

Que de posibilidades interesantes!

Avatar de Usuario
Pastinaca
Sumo hacedor
Mensajes: 6571

Re: Calefacción manejable a distancia

Mensaje#3 » Mar Sep 22, 2015 9:19 pm

La verdad es que sí que me lo ha sorbido.

Imagen

Avatar de Usuario
Estela
Mensajes: 6604

Re: Calefacción manejable a distancia

Mensaje#4 » Mar Sep 22, 2015 10:32 pm

Que conste que me lo he leído todo, pero no he entendido nada, don Pastinaca. Es usted genial. Seguro que lo consigue!

:r:

Avatar de Usuario
Pastinaca
Sumo hacedor
Mensajes: 6571

Re: Calefacción manejable a distancia

Mensaje#5 » Mié Sep 23, 2015 6:01 am

No son ustedes nada curiosas. Pregunten.

Avatar de Usuario
Arthur Clennam
Mensajes: 2523

Re: Calefacción manejable a distancia

Mensaje#6 » Mié Sep 23, 2015 9:18 am

Pasti es el nuevo Profesor Franz de Copenhague. :taunt:

Avatar de Usuario
Pastinaca
Sumo hacedor
Mensajes: 6571

Re: Calefacción manejable a distancia

Mensaje#7 » Mié Sep 23, 2015 6:54 pm

¡Infaustos! ¡Infames! ¡Imponderables!

Ya verán cuando me grabe en vídeo encendiendo mi calefacción desde el móvil. Les va a corroer la envidia como a los franceses, o a los españoles, o a los andorranos, o ya no me acuerdo de quién envidiaba.

Avatar de Usuario
Muga
Mensajes: 4444

Re: Calefacción manejable a distancia

Mensaje#8 » Mié Sep 23, 2015 8:30 pm

Oiga, Pasti, leyendo su hilo me he dado cuenta de que yo tengo un bicho de esos.
El caso es que la casa me la dieron el 31 de mayo, con lo que hasta pasados unos meses no lo puse en marcha. Aparte de tener una luz azul preciosa nunca funcionó. Hice la reclamación correspondiente al electricista que me lo puso, y claro, como la obra ya estaba más que pagada, jamás supe de él.
El bicho ahora ya no tiene ni luz. No sé, pero pudiera ser que estaba preparado para hacer cosas de esas que ha contado.
Le pongo fotos, a ver si le suena y lo conoce, que le veo puesto en el tema.


Imagen


Imagen

Avatar de Usuario
Pastinaca
Sumo hacedor
Mensajes: 6571

Re: Calefacción manejable a distancia

Mensaje#9 » Sab Sep 26, 2015 9:00 am

Sí que parece un programador de temperatura, concretamente y por similitud de lo que he encontrado, un Coati 12611.

Y hace lo que hace cualquier programador: manejar la temperatura de su hogar, mediante su calefacción (y su A/A, de tenerlo), basándose en unos horarios que usted programa con antelación con las teclitas del propio aparato.

Lo que yo quiero hacer, aparte de eso, es que se pueda manejar desde un ordenador/móvil/tablet, ya sea en el propio hogar o a distancia.

Avatar de Usuario
Pastinaca
Sumo hacedor
Mensajes: 6571

Re: Calefacción manejable a distancia

Mensaje#10 » Sab Sep 26, 2015 9:35 am

Para Estela, Gloria, Xavi (cito por orden alfabético) y demás iletrados tecnológicos: vamos por partes.

1. El ordenador central.

Este equipo ha de estar conectado 24h/365d (es decir, siempre); lo ideal es recurrir para ello a una Raspberry Pi.

Imagen

Sí, esa mierda del tamaño de una tarjeta de crédito es un ordenador completo, posiblemente más potente que un Pentium II de 1998. Lo bueno es que apenas consume 2W. Lo "malo" es que no funciona con Windows y hay que saber programarla.

Pero como yo tengo a La Tostadora I encendida siempre también, pues la voy a usar.

Lo que ha de instalarse en el ordenador central es, de entrada, un servidor web con PHP. Esto ya lo hicimos en su momento, en aquella primera versión de este foro. Se trata de una página web a la que se puede acceder con un simple navegador. Lo que nos mostrará esa página web es la temperatura y programación actuales de nuestro termostato casero (si está encendida o no la calefacción, y cómo se comportará el resto del día y el día siguiente). Y nos dará la posibilidad de cambiarlos.

¿Que estoy en casa? Pues accedo desde este mismo PC y cambio la programación como si fuera un termostato normal y corriente. ¿Que estoy en Guarromán, en Bollullos del Condado o en Ocklahoma de Arriba? Pues exactamente igual. Sólo hace falta un navegador y conexión a internet. El ordenador central necesitaría conexión permanente, pero eso creo que todos lo tenemos ya disponible en casa.

Esa programación se volcará a un simple archivo de texto, cuyo diseño aún tengo que pensar. Lo más fácil sería dividir el día en períodos de 15 minutos, en una columna, y adjuntar una temperatura deseada a cada uno de ellos, en otra columna. "0" significaría "forzar la calefacción a apagada". ¿Que me levanto un día a las 6:00 de la mañana? La programación de ese día sería algo como:

Código: Seleccionar todo

0500         0
0515         0
0530         0
0545         18
0600         18
0615         18
0630         18
0645         18
0700         18
0715         0
0730         0


Aunque yo no tendría que escribirlo así, claro. En la misma página web habría opciones gráficas "amigables para pantalla táctil", para ordenar algo como "quiero 18 grados a partir de las 5:45 y durante 1:30 horas".

En ese mismo ordenador central, un servicio/demonio (es decir, un programa que está siempre ejecutándose pero en segundo plano, como su antivirus) se encargará de leer ese archivo cada X tiempo (cada 30 segundos, por ejemplo) y, si hay algún cambio, se encargará de dar la orden correspondiente a la placa Arduino que está conectada a él por USB. Básicamente, un cambio puede ser "encender la calefacción si está apagada" o "apagarla si está encendida".

La Arduino, por su parte, tendrá que está leyendo la temperatura cada X tiempo y enviando el dato al ordenador central, para que la escriba en otro archivo de texto. El servicio/demonio tendrá que decidir si encender o apagar la calefacción basándose en dos datos: la temperatura actual y la deseada. Nada del otro jueves.

Luego sigo detallando el sistema.

Volver a “Hogar e informática”