Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Termostato arduino
#1
Hola buenas, he estado buscando por el foro pero no he encontrado nada, si me he pasado de largo y hay cosas, por favor, pasarme el link....

Cuento: Quiero cambiar el termostato analógico por uno digital, "arduino nano, sensor tª, etc". El problema radica en el encendido y apagado del módulo digital en cuestión, o sea, que soy capaz de enviar una señal al arduino desde el móvil y activar el relé que me activará la caldera, el problema me surge cuando quiero que la calefacción esté apagada, porque claro, si le coloco un sensor de temperatura para que se active hasta alcanzar los 21º, por ejemplo, si no estoy en casa no me sirve de nada y es un gasto. El problema es que no sé como activar el arduino en cuestión, que no sea físicamente.

Creo que me estoy liando.

Lo que quiero es que el arduino pueda gestionar la parada/encendido de la caldera, pero también quiero poder apagar o encenderla sin que la sonda interfiera. Como el modulo esp8266 no me permite mucha interacción con arduino, lo que quiero es poder encender la caldera desde el móvil y luego modificar la temperatura de consigna una vez en casa, de forma física. Si yo no estoy en casa, "en invierno", el arduino está en marcha y detecta que la temperatura está por debajo de 23 grados, se pondrá en marcha sí o sí, y eso no lo quiero, yo quiero ponerlo en marcha un rato antes desde el móvi, y luego ya que gestione la temperatura de forma automática hasta que apague el termostato de nuevo.

A no ser que con otro relé active al relé que gestiona la caldera, o sea, enviar un impulso al arduino para que me mueva el otro relé que será el que mueva la caldera...................

Creo que me estoy mareando demasiado, seguro que alguno me soluciona esto con una chorrada inmensa y se me quedará cara de tonto, jeje


Gracias a todos....
Citar
#2
No se si lo he entendido bien... Quieres que arduino controle la temperatura y cuando te vas de casa que deje de controlarla? Lo primero que se me ocurre es desenchufar el arduino, pero claro, después cuando vuelves a casa no lo puedes activar remotamente.

Para eso se me ocurre que puedes crear una variable que te indique si arduino estas en casa o estas en modo "vacaciones". Entonces dejas arduino siempre encendido, antes de llegar a casa activas esta variable y arduino controla la temperatura. Antes de irte de casa, desactivas la varíable (con un pulsador físico, temporizador o como quieras).

Solo te quedaría: if (estoyEnCasa && haceFrio) encender relé.
Citar
#3
A ver si me explico mejor, jeje


- Quiero poder encender con el móvil la caldera (hasta ahí no hay problema)
- Quiero que una vez encendida desde el móvil me vaya gestionando la temperatura (no hay problema)

- Quiero que, si no estoy en casa, la caldera esté apagada. 

El problema es que para poder encender/apagar la caldera a distancia, el arduino debe de estar encendido, y por lo consiguiente, si está encendido y la temperatura baja de 23 grados, el arduino me pone la caldera en marcha la sin yo necesitarlo al no estar en casa.

Lo que quiero es que poder activar o desactivar el arduino de forma remota, y una vez en casa ya subir o baja la temperatura de forma manual. Pero claro, si dejo el arduino encendido, la caldera estará siempre trabajando, y eso es lo que no quiero.

Creo que lo voy a poder gestionar con dos relés, a uno le envío una señal de activación y éste me activa el otro relé, que inmediatamente se pondrá a trabajar ya que le está llegando la señal de ponerse en marcha y gestionar la temperatura, cuando envíe señal off al primer relé, éste abrirá el circuito de la caldera y aunque el arduino esté enviado señal no hará nada, puesto que estará abiertto el relé que gestiona la caldera.
Citar
#4
No veo el porque te complicas tanto... al igual que eres capaz de enviarle un numérico a tu arduino mediante el móvil serás capaz de enviar una variable booleana de activación/desactivación... implementas el caso de:

Código:
Si 'variable de estoy en casa == true' y 'la temperatura < a x'
    enciende caldera
sino
   caldera apagada
En el caso de que la variable de 'estoy en casa' estuviese en false, se da siempre el caso de 'caldera apagada'...

Osea... lo único que necesitas es el termostato, el relé y algun modulo de comunicaciones para comunicarte con el arduino... si tu ya sabes como implementar eso no le veo más historia... otra cosa es que quieras controlarlo desde internet y no sepas como, pero en este caso ya estamos tratando otro tema.
Citar
#5
Si solo vas a controlar la caldera,hasta podrias prescindir del arduino(y muchas mas cosas si tu esp8266 viene con todos los gpio) Plugin esp8266 para IDE Arduino
En cuanto a la pregunta que planteas ,si lo he entendido bien ,podrias solucionarlo con una simple variable booleana (verdadero o falso)   , que modificarias desde la aplicacion pudiendo seleccionar modo manual o modo automatico .Si estas en modo manual ,ignoras la lectura del termostato y solo puedes encender y apagar ,si estas en modo automatico ,pues funcionas con el termostato.
Citar
#6
Pensaba que era yo que no entendía... Pero veo que todos hos entendido lo mismo y la solución esta clara. Poner 2 relés en serie es lo mismo que poner 2 condiciones en el sketch.
Citar
#7
Ok, muchas gracias por los aportes a todos, me pondré a mirar cosas y os cuento. El problema es que mi fuerte es el HW y en cuanto a la programación me pierdo un poco (bastante), en cuanto pueda me pongo a trastear y a usar vuestras ideas a ver que va saliendo, os mantengo informado. 

Gracias de nuevo
Citar
#8
Hola buenas a todos, pues me he estado poniendo las pilas y ya he conseguido meterle el IDE de arduino a un ESP8266 ESP-01, esto y junto a la app BLYNK he conseguido encender y apagar dos leds desde el teléfono móvil. Ahora es cuando me viene el "marrón", el tema es que de programación ando fatal, con la app de BLYNK puedes realizar tareas sin necesidad de programar, pero claro, cuando buscas algo más específico la cosa de complica, y yo de programación ando flojo, soy como un buitre que se alimenta de ir robando código por ahí.......

A ver, quiero, usando la pasarela BLYNK en el teléfono móvil saber la temperatura que tengo en una estancia en todo momento, y si me hace falta, encender o apagar la caldera.

¿Sabéis de alguna web, blog, foro, en el que pueda encontrar algo similar?, llevo ya unas cuantas búsquedas, pero no encuentro nada por el estilo.

Gracias por todo.

P.D.: creo que voy a olvidarme de BLYNK y lo haré todo desde una web...
Citar
#9
http://www.prometec.net/sensor-tmp36/

Aqui usa una sola condición para encender el Led. Tu tendrías que añadir una segunda que te diga si estás en casa o no, en el if:

if ((temp >= umbral) && estoyEnCasa)

Al principio del programa defines la variable:

bool estoyEnCasa;

Y está es la variable que que modificas desde la web a través del modulo WiFi. Sólo te faltaría cambiar el Led por un modulo relé por ejemplo para controlar la caldera.
Citar
#10
Se ve que aquí sois todos unos expertos en robots arduino, se aprende un montón
Citar