RSS

Archives de Catégorie: MonThermostat

I’m on Github !

Bonjour à tous !

Juste un « ptit » message pour vous dire que je suis sur GitHub ou plutôt mes projets le sont seront tous.

Ca se passe ici : https://github.com/philmadomo

Je fais un peu de propre et je « Push » tout !

Publicités
 

MonThermostat : Work In Progress (Still !)

MTH-WIP

Juste un petit article pour indiquer mon avancement sur le projet « MonThermostat » (depuis le dernier)

Toujours beaucoup de travail en ce moment, de trajets (en Avion) donc du temps pour bosser sur MonThermostat en l’interface PHP !

  • Concept : 100%

L’idée est OK, je n’ai pas encore trouvé la meilleure solution pour gérer l’inertie des radiateurs en fonction de la température extérieur.

  • Programmation du Deamon (PHP & BASH) : 95%

Le Deamon est pratiquement terminé puisqu’il est déjà en mode production. Mon système fonctionne sur 4 zones (SDB, Bureau, Chambre Bébé & Salon) pas de problèmes techniques à signaler excepté des erreurs humaines. J’ai pu tester le comportement de ce dernier en cas de panne de sonde de température: conforme !

  • Interface Web PHP: 50%

L’interface global d’utilisation fonctionne (réglage des consignes de température). Je dois ajouter tout ce qui concerne les erreurs de saisie opérateur. Il ne me manque plus que la partie configuration du Thermostat en question : Ajout des actionneurs (Sonde de température / Radiateurs)

  •  Plugin Domogik pour Carte Relais USB (8 relais) de chez GCE-Electronics : 100%

Le plugin gceusbrb ainsi que le gcerbuffer est OK : les nombreuses commutations des relais électrique jours après jours et le « zéro panne » sont là pour prouver la bonne marche de cette carte USB.

 
2 Commentaires

Publié par le 22 février 2013 dans Hardware, MonThermostat, Software

 

GCE Relay Board Buffer

Je suis très content de ma carte 8 relais de chez GCE, hormis la réactivité qui n’est pas des plus rapides. Un autre problème se pose lorsque l’on souhaite créer un système automatique (et non manuel) avec cette carte. Si un script (type thermostat) souhaite changer l’état de plusieurs relais : il faudra observer un temps d’attente entre les différentes commandes. Mais si plusieurs scripts veulent changer l’état d’un ou plusieurs relais en même temps : là, nous allons avoir un problème puisque, seule, la première commande, sera exécutée et les suivantes seront oubliées.

Et c’est là qu’intervient le « GCERBUFFER » ou GCE Relay Board Buffer. C’est un script ou plutôt un service Linux qui va lire une pile (FIFO) qui va lancer les commandes d’ouverture ou fermeture de relais toutes les 60 secondes (cet intervalle entre les « switch » de relais est configurable) et si ces dernières sont présentes. Il suffira, aux scripts, voulant fermer un relai, de lancer la commande suivante « gcerbset led<numero_relai>_<etat> » pour charger la pile de commande. Aussi, par protection, toute commande en doublon ne sera pas chargée.

schemaFIFO

Pour le téléchargement, ça se passe ICI et pour l’installation lire la « note.txt ».

 

Troubleshooting 1-Wire

DS18B20

J’ai de temps à autre des soucis avec mon réseau « 1-wire »:

  • Plus de remontée de températures
  • Plus de remontée de Compteur (compteur d’eau)
  • Plus de remontée de températures et compteur

Malgré les logs très détaillés de Domogik 0.1, seul le stop et start du plugin 1-wire de Domogik résolvait temporairement ces problèmes : Ce qui m’a amené à créer un script qui détecte un des problèmes (ci dessus) et redémarre le plugin. A télécharger ICI (Lisez la note(.txt) pour la configuration.

Insérez dans la Crontab pour être executé toutes les 5 minutes:

*/5 * * * * /home/domophil/AutoRestartDMGplugin/AutoDMGplugin.sh

J’ai relevé de nombreux « restart » de plugin, le jour ou j’ai ajouté de nouvelles sondes, ce qui a confirmé mes craintes, l’alimentation du bus (en mode parasite) ne suffisait plus pour mes 10 sondes de température et mon compteur. J’ai donc créé un injecteur 5V suivant les plans de Domino et Yoann :

MontageInjecteur

Et c’est beaucoup mieux !

 
3 Commentaires

Publié par le 31 décembre 2012 dans Cables, Hardware, MonThermostat, Software

 

Plugin Domogik pour Carte 8 Relais USB

Domogik 0.1.0 est compatible d’origine avec la carte IPX800 (v1 et v2) et cette carte était le seul moyen à ce jour (connu) pour influer sur des relais de puissance (220V).

Ayant en ma possession une carte 8 relais USB de chez GCE, il me fallait donc créer mon propre plugin pour Domogik 0.1.0.

Voilà chose faite (avec l’aide de Fritz@Domogik) : Téléchargez ici (Suivre le README.txt pour l’install, et notez que vous aurez besoin des sources de Domogik 0.1.0)

  • Configurations:

Sous Linux (Ubuntu pour ma part): A cause d’un conflit avec mon module USB Téléinfo, j’ai du créer une règle « UDEV » (en suivant ce tuto) : Pour créer la « Device » : /dev/relayboardusb, dans le fichier « /etc/udev/rules.d/relayboardusb.rules » j’ai mis la ligne suivante:

SUBSYSTEMS== »usb », ATTRS{idVendor}== »0403″, ATTRS{idProduct}== »6001″, SYSFS{serial}== »A100UJ32″, SYMLINK+= »relayboardusb », MODE= »0666″

Sous Domogik 0.1.0: J’ai configuré le plugin « gceusbrb »

Notez encore, comme pour la configuration de la carte relais IPX800, si vous nommez votre carte relais : « rb1 », les « adresses » des relais de 1 à 8 seront « rb1-led1 », « rb1-led2 », « rb1-led3 », … et « rb1-led8 ».

Et voici mes « widgets » pour le contrôle des 8 relais:

  • Photos

  • Note

Je sais que Domogik 0.2.0 beta1 est sorti, mais ce n’est pas encore une version de production (contrairement à la 0.1.0). Je ne peux pas vous dire si ce plugin est compatible (mais probablement pas) mais je ferais les modifications lorsque je migrerais.

 
 

MonThermostat : Fonctionnement du Demon (Partie 2)

Je vous avais expliqué de manière simple le fonctionnement du démon (Partie 1), et me voici de retour sur ce dernier !
Dans ce billet, je vais m’attarder en détail sur la fonction qui active ou non le chauffage.

  • Dans un cas simple, le démon lit la température de consigne (qu’il a trouvé dans la base de donnée) ainsi que la température intérieur et agit sur le radiateur (Marche ou arrêt). Dans le meilleur des mondes, on pourrait se contenter de ce système.
  • Dans un cas normal, d’autre facteur entre en jeu : le temps de chauffe (combien de temps le radiateur met pour augmenter la température de la pièce de 1°C) et la température extérieur (plus dure de chauffer si il fait -12°C dehors)
  • Dans un cas réel, les pannes sont aussi des facteurs à prendre en compte : si la sonde de température intérieur ne fonctionne plus il faut passer la zone en « roue libre » et ainsi éviter : soit de couper complètement le chauffage soit de chauffer à plein régime pendant le temps de la panne.
  • Le Temps de chauffe

Le temps de chauffe varie en fonction de la puissance du radiateur et son type, la configuration de la pièce et son isolation mais aussi de la température extérieur. Voici un cas concret de ces jours-ci (ya plus de saison !) :

Superficie la pièce : 35m2
Radiateur de 2000W à inertie (en Pierre : stéotite)

Dans cette exemple ci: le premier 0,5°C gagné dans la pièce a été effectif au bout de 55 minutes, on gagne 0,5°C toutes les 23 minutes.
Donc, cette exemple montre que le temps de chauffe du radiateur à froid est très importante et qu’il doit être géré par « MonThermostat ».

  • Les mode de fonctionnement

Pour chaque zone du Thermostat, on pourra utiliser ou non une sonde de température extérieur et par ce système activé le Thermostat en mode simple ou en pré-calculé dont voici les simulations avec les paramètres relevés dans le cas réel ci-dessus.

– Mode Simple :

Note: on demande 20°C à 11h00 mais avec le temps de chauffe les 20°C sont atteint à 12:30.

– Mode pré-Calculé :

Note: Pour avoir à 11h00 20°C, le radiateur doit démarrer à 9h30.

  • Le Deamon en cours de développement

Voici la première ébauche du « deamon », ou plutôt les logs de ce dernier en « Mode Simple »:

——–DEBUT LOG————————————————————————–

daynumb=4
–[Zone_0]——————————————-
HeaterCmdCheck:http://192.168.1.20:40405/stats/37/output/latest
TempProbeCmd:http://192.168.1.20:40405/stats/4/temperature/latest
OSid:none
UseExtTempProbe:0
–SetPointReach———— Time: 14 : 26 Inputs: UseExtTempProbe=0 TempExt=15 TempInt=13.2 HeaterStat=1 Priority=1 ACMode=0 WarmupCalc=none Correction=1 SetPointTab=20 SetPointTabTomo=20 ————SetPointReach– Simple Mode SetPointTemp[28]=12; -HeaterMode Enable- T:13.2+1 Heater Temp greater than SetPoint 1
No Change on Heater Stat[Low]
HeaterStatus=low
NowTemp=13.2 with Correction 14.2
NowOpenS=NO
ZoneError=0
——————————————[Zone_0]—
Zone_1 is disable
Zone_2 is disable
Zone_3 is disable
Zone_4 is disable
Zone_5 is disable
Zone_6 is disable
Zone_7 is disable

——————————————————————– FIN LOG ——————————

Dans ce cas, il est 14h26, la consigne de température est 12°C et la pièce est 14,2°C (avec la correction de 1°C sur la sonde): résultat le chauffage doit rester arrêté (low).

 
8 Commentaires

Publié par le 28 juin 2012 dans Hardware, MonThermostat, Software

 

MonThermostat : Work In Progress

Juste un petit article pour indiquer mon avancement sur le projet « MonThermostat ».

Beaucoup de travail en ce moment, de trajets pour me rendre à ce dernier et donc peu de temps sur la programmation. Aussi avec le retour des beaux jours : le jardin demande à ce que l’on s’occupe de lui !

 

  • Concept : 100%

Mon idée/Cahier des charges est maintenant très clair
Le design de l’interface Web est validé (par mes soins) : j’espère que je pourrais obtenir le résultat escompté (sachant que je ne suis pas graphiste du tout).
Le Synoptique (graphset) du Deamon est OK lui aussi.

  • Programmation du Deamon (PHP & BASH) : 30%

Les scripts (BASH) de récupération des valeurs de température/état relais sur le serveur Domogik sont OK
Les scripts (BASH) de changement d’état de relais sur le serveur Domogik sont OK.
Toutes les requêtes Mysql nécessaire sont OK et testées.
Le code PHP du Deamon reste a écrire…

  • Interface Web PHP: 0%

Des brides de codes PHP/Javascript (notamment pour le tableau de consigne) sont prête mais rien encore de très concret!

  •  Plugin Domogik pour Carte Relais USB (8 relais) de chez GCE-Electronics : 90%

Plugin gceusbrb est OK : mais doit être encore et encore testé.
J’ai été stoppé par un problème sur l’alimentation 12V qui ne délivrait pas assez lorsque plus de 6 Relais sont en position fermé. Je suis toujours à la recherche de « LA » bonne alimentation 12V…