Web-Enabled termostato casero (y centro de automatización del hogar) (6 / 10 paso)

Paso 6: Programación del termostato

Programo mi termostatos (en el sentido de cargar el código en el termostato) usando el IDE de Arduino y un programador ISP, así que eso es lo que voy a comentar aquí.

El repositorio de GitHub debe incluir una carpeta llamada Thermostat_v1 que contiene el sketch de arduino para el termostato sí mismo. Copie este directorio en algún lugar donde usted quiere que lo mantenga. También hay cuatro directorios llamados Utouch2, que contiene una biblioteca para la pantalla táctil, OneWire, que es una biblioteca para el sensor de temperatura y Adafruit_GFX y Adafruit_ILI9341, que son las bibliotecas de la pantalla LCD. Estos cuatro debe copiarse a una carpeta para las bibliotecas de Arduino – en equipos con windows, que deben ser \Documents\Arduino\libraries. Un agradecimiento especial a todas las personas que escribieron estas bibliotecas (Jim Studt - OneWire; Adafruit - Adafruit_GFX y Adafruit_ILI93414, Henning Karlsen - Utouch y Mark Pendrith que modifica la biblioteca de Utouch (UTouch2) para que la pantalla táctil podría compartir pines SPI con el LCD).

A continuación, antes de programar el termostato con el IDE de Arduino, el IDE debe tener los archivos necesarios para reconocer el microcontrolador 1284P. Estos se pueden encontrar aquí. Nota Esto es para la versión 1.6.3 del IDE, hay otras ramas en versiones anteriores. Esta página también contiene instrucciones de instalación.

Ahora, cuando abra el IDE de Arduino y vaya a herramientas y tabla de planchar debe ver "Bobduino y Bob Skinny" como una de las opciones. Seleccione esta opción y, en herramientas/Prorammer seleccione AVR ISP mkII (o cualquier programador).

Ahora, abra el bosquejo del termostato y considere cambiar lo siguiente para sus gustos:

Funcionalidad – Asegúrese de que el termostato funciona como usted quiere que funcione y que está programado de manera que es conveniente para tu sistema HVAC!

#define COMM_PIN 4321 – esto debe cambiarse a cualquier PIN de 4 dígitos ha optado por utilizar como la comunicación de RFX PIN. Debe coincidir con las páginas web y servidores de python.

#define TOUCH_TIMEOUT 10000UL – este es el tiempo de espera de pantalla táctil de la entrada (en millis) después de que los cambios no guardados se descartarán.

#define TURN_OFF_INTERVAL 60000UL – es el intervalo de inactividad de la pantalla táctil después de que el LED se apaga (en millis)

#define LOG_PORT 1700 – puerto para el servidor de registro

#define MASTER_PORT 1800 – puerto para el servidor de control de

Asegúrese de que estos puertos son los mismos que los puertos en los que apuntan a los servidores de python.

Justo debajo de estas son algunas de las opciones que determinan cuánta información desea escrito para registrar los archivos y si el termostato de una actualización de estado a serie de la impresión cada 5 segundos (que puede verse con masilla para iniciar sesión en el puerto para el termostato). En general, DBGCHAT debe establecerse en 0, a menos que necesite para fines de depuración.

#define WDT 0 - habilitar (1) o desactiva (0) del temporizador perro de reloj (puede ser mejor desactivar para depurar, pero mejor para activarlo cuando se ejecuta)

#define FAHRENHEIT 1 – cambio a 0 si desea que la temperatura en grados celsius

También hay una serie de variables a partir de la línea 159 que controlan Cuándo el calor auxiliar enciende y apaga automáticamente debido a la inhabilidad percibida de la principal bomba de calor para mantenerse al día. Estos valores, así como el aux_heat_cntrl() de la función, controlar la calefacción auxiliar y merecen una atención especial.

En la ficha Rfx_config.h, usted necesitará cambiar #define BOARD_ID 110 el número de nodo de cada termostato antes de programar ese termostato. Por ejemplo, si usted está programando un tat de termostato que quieres ser nodo 127, este debe leer #define BOARD_ID 127. Debajo de este, ID_STRING es un nombre que se utilizará el sistema RFX para este nodo, pero no es necesario atar a ninguna otra parte del sistema. Me pareció más fácil para tener líneas aquí para todas mis termostatos y comentar luego las que no estoy programando en ese momento.

En la ficha de pantalla táctil, #define TEMP_MOVE 10 dice el termostato cuántas décimas de grado a cambio de la temperatura cada vez que una flecha se empuja hacia arriba o hacia abajo (pero si vas con algún valor que no sean múltiplos de 10, probablemente usted querrá cambiar la visualización de la temperatura para mostrar los valores decimales).

Una vez todo esto hecho gancho el ISP hasta el termostato (cuidado con la orientación), elija archivo/cargar usando programador y programar el termostato.

Ahora, puede jugar con él y probarlo minuciosamente para asegurarse de que se comporta como se esperaba. Asimismo, tratar de utilizar el sitio web para cambiar el programa de temperatura y cambiar la configuración para ver si parece funcionar como se espera.

Creación de un programa de temperatura con la página web

Ahora es el momento para establecer el programa de temperatura en el termostato, y es extremadamente fácil. En la parte superior de la página, seleccione el termostato que desea programa y si este programa es para calefacción o refrigeración. Ignorar los botones enviar y recuperar por el momento-puedes enviar cuando haya terminado con el programa y recuperar los tirones en el programa existente, pero todavía no hay ningún programa existente.

Entonces, en la caja más pequeña con los títulos de tiempo y temperatura, ingrese la hora del día cuando debe comenzar un periodo y la temperatura para ese período. Por ejemplo, si desea el termostato para calentar la casa hasta 70 grados a 6:00 y si frío propio a 60 grados a 21:00, es necesario introducir dos filas en este cuadro:

6:00 70

21:00 60

(lo sentimos, yo no he implementado aquí notación de am/pm). A continuación, seleccione las casillas de verificación debajo de los días que desea utilizar este programa (o utilice los botones de opción para seleccionar varios días a la vez como el lunes al viernes) y haga clic en Update. Su horario debe aparecer en el cuadro más grande abajo debajo. Por supuesto, usted puede también introduce cada día manualmente en el cuadro inferior si lo desea.

Cuando el programa se ve la forma que desee, haga clic en el botón Enviar. Ahora, si volver a esta página y haga clic en recuperar (para el mismo termostato y mismo calefacción o refrigeración ajuste), debe rellenar el horario para que fácilmente pueda ver exactamente cómo tener cada día programado.

Artículos Relacionados

Linux: empezando en un servidor de automatización del hogar.

Linux: empezando en un servidor de automatización del hogar.

Linux: empezando en un servidor de automatización del hogar.Esto es sólo un quickie prueba de concepto sobre el uso de un servidor web para Domótica remotamente. a todos nos va a hacer es encender algunos leds, pero el plan de acción estará allí para
Servidor de automatización del hogar con router

Servidor de automatización del hogar con router

convertir un router barato en un servidor de automatización del hogar!Este proyecto permitirá cambiar enchufes y luces desde su iPhone, o cualquier navegador.También podrás enviar comandos serie control remoto.Este proyecto se basa en SmartLinc.http:
Creación de un sistema de automatización del hogar!

Creación de un sistema de automatización del hogar!

Aquí es cómo había automatizado mi casa. Necesitaba un medio para;-administrar mi sistema de energía solar incluyendo la habilidad de cambiar de fuente de utilidad debo necesitarlo.-administrar el alimento y el agua a mis tres perritos.-controlar las
Automatización del hogar usando MQTT y NodeMcu o arduino

Automatización del hogar usando MQTT y NodeMcu o arduino

Domótica es un rumor nuevo hoy en día... hay tantos hardware de código abierto disponibles para construir su propia automatización del hogar. Muchas herramientas, es fáciles de confundir para decidir cual es mejor / conveniente para usted. Manteniend
Ingeniería inversa: USB controlado hack de automatización del hogar

Ingeniería inversa: USB controlado hack de automatización del hogar

hackear un sistema inalámbrico de automatización del hogar para ser controlada usando dos Microcontroladores AVR USB!¡ Mira el video! El sistema es realmente más sensible, pero el navegador de mi celular es lento.Si te gusta esto, posiblemente le gus
Automatización del hogar Datura 6 - mejoras de 2015

Automatización del hogar Datura 6 - mejoras de 2015

Noticias: En estos últimos meses he hecho algunos importantes correcciones y mejoras al código y al servidor Web del proyecto. Ver datura_mega_v19.ino para el último código.El proyecto más funcional en internet, utilizarlo como un sistema de riego co
Guía para principiantes en el uso Webhooks para automatización del hogar con Prota OS

Guía para principiantes en el uso Webhooks para automatización del hogar con Prota OS

TL:DR: webhooks son fáciles de usar y configurar con Prota OS. Utilice webhooks para cientos de flujos de trabajo de automatización.Aprender a configurar y utilizar OS Prota para Raspberry Pi aquí.Descargar OS Prota para Raspberry Pi aquí.¿Cuáles son
Compruebe que está en casa! Automatización del hogar. Vigilancia. Gran hermano tecnología frambuesa PI.

Compruebe que está en casa! Automatización del hogar. Vigilancia. Gran hermano tecnología frambuesa PI.

En este instructable brevemente explicaré cómo se puede construir una página web para ver quién está en casa o utilizar el script para la automatización del hogar.Se necesita:* Un router con posibilidad de configurar la dirección ip dirección mac* Fa
Bluetooth basado en automatización del hogar

Bluetooth basado en automatización del hogar

Bluetooth basado en automatización del hogar, proyecto permite controlar aparatos eléctricos utilizando su teléfono móvil android. Consiste en el microcontrolador ATmega8, módulo Bluetooth HC-06, Relays.There son muchos Inicio sistemas de automatizac
DIY IoT $10 base de automatización del hogar

DIY IoT $10 base de automatización del hogar

Se realiza IOT basado en proyecto de automatización del hogar con bajo costo ESP8266 ESPino ESP-12 módulo de WiFi, utiliza relés y algunos componentes simples, se suministra completa código y pcb layout, para más detalles sobre la configuración del s
Edison de Intel basado en monitor de sonido para la automatización del hogar!

Edison de Intel basado en monitor de sonido para la automatización del hogar!

Hola todo el mundo!Soy Geeve George un fabricante con orgullo de la INDIA! Empecé a hacer en la edad de 10 y mi afán por hacer todavía continúa como estoy fascinado por las infinitas posibilidades y oportunidades que la tecnología ofrece.Sombrero! es
Dispositivos de Internet para la automatización del hogar

Dispositivos de Internet para la automatización del hogar

Este instructivo muestra los principios involucrados en la fabricación de dispositivos para el control domótico por internet. Estamos va a construir un dispositivo (o varios de ellos), habla uno al otro por internet para controlar luces, motores para
Fácil automatización del hogar bricolaje (usando interruptores servo)

Fácil automatización del hogar bricolaje (usando interruptores servo)

este Instructable es todo sobre una de las acciones simples de la vida, un interruptor de luz encendido y apagado.En oomlout lo hacemos muchas veces al día, muchos de hecho llegó a un punto donde nos preguntamos "No podemos hacer un Arduino para hace
Servidor de automatización del hogar inteligente en OpenWRT router WR703N conectado a Arduino, en comparación con Ubuntu y frambuesa Pi

Servidor de automatización del hogar inteligente en OpenWRT router WR703N conectado a Arduino, en comparación con Ubuntu y frambuesa Pi

descargar el Resumen de WR703N (archivo zip de 340MB):https://sourceforge.net/projects/WR703N/---------------------------------------------------------------------------------------------------------------------------------Estimado lector,Hay muchos