dimanche 23 décembre 2012

Domotique - Température: Commander le thermostat depuis un PC

Afin de compléter les possibilités de commande de mon thermostat, j'ai développé une petite interface tournant sous Windows.
Cette interface est codée en Visual Basic.
Je fournis l'exécutable, et le code source pour les courageux.

L'utilisation directe de l'exécutable est possible tel quel: il suffit de mettre à jour le fichier de configuration joint (répertoire Dropbox, référence des sondes) et c'est parti !
Seule limitation: je n'ai que 3 sondes, donc seules 3 sondes apparaîttront, c'est codé en dur !

Si bien-sûr vous voulez des modifications (pas trop lourdes !), je suis dispo à vous les faire et les livrer, il suffit de me contacter
.
La modification du code source est simple: il suffit de télécharger Microsoft Visaul Basic Studio Express qui est gratuit.

Interface

Le but de ce petit programme (déguisé en widget sur le bureau Windows) est de permettre de consulter la température courante délivrée par les différentes sondes, ainsi que l'état du thermostat, et de pouvoir modifier la programmation courante.
Une modification de la programmation courante sera prioritaire sur ce qui est programmé sous Google Calendar.

Il est ainsi possible de modifier ponctuellement l'état du chauffage sans avoir à rajouter/modifier ou supprimer  une plage de programmation au travers l'agenda. C'est pratique et rapide !

J'ai volontairement limité le choix des déclenchements afin que ce soit au plus simple et au plus rapide (pour répondre à une demande pressante de ma femme ...). Il est ainsi possible de:

  • forcer une température, de 17° à 22°, par pas de 1°
  • forcer l'extinction du chauffage, sans condition de température
  • forcer la mise en marche du chauffage, sans condition de température
  • revenir au mode Automatique (contrôlé par l'agenda)
Ces consignes peuvent être déclenchées sur 30mn, 1h, 1h30, 2h, sauf le forçage de la mise en marche, qui par sécurité est bloquée à 30mn.

Voilà !
C'est tout simple, mais on s'en sert tous les jours !

Fonctionnement

Je voulais une interface avec un taux de mise à jour plus élevé que ce que me fournie la page web.
Autant la page web est conçue pour visualiser une tendance et avoir un aperçu de l'historique, autant le panneau de commande Windows se doit d'être à jour, car le besoin est immédiat.
Afin de ne pas avoir des accès web trop fréquents (mes craintes ne sont peut-être pas justifiées, mais bon ...), j'ai choisi une synchronisation des données dans un répertoire partagé: le PC récupérant les données de l'Arduino sauvegarde une trame toutes les minutes dans un répertoire partagé, que le panneau va interroger sur les autres PC.
L'écriture du fichier est effectuée par le prog Python (le même que celui qui met le répertoire Dropbox à jour).

Une petite capture d'écran pour finir en images ...

Fichiers

Exécutable
  • Dézipper le fichier joint
  • Installer l'exécutable (setup.exe)
  • Dézipper le fichier de configuration dans un répertoire c:\controle_th
  • Modifier le contenu du fichier de configuration avec vos données
Exécutable

Dézipper le fichier joint.
Bonnes modifs !
Je suis d'ailleurs preneur des évolutions !

Aucun commentaire:

Enregistrer un commentaire

Laissez vos commentaires ...