thermo11.txt

                      Thermostat electronique V 1.1
                      -----------------------------

                       (C) E+E CHAMOUARD 2001-2007


Ce document est a visualiser avec une police fixe (copie des affichages).


Historique :
------------
- Version 1.0 :
Premiere version operationnelle
Thermostat simple avec :
- consigne reglable a chaud,
- hysteresis reglable,
- etalonnage reglable du capteur,
- sauvegarde complete (avec reprise en mode automatique si besoin).

- Version 1.1 :
Nouvelles librairies et correction bug dans la liaison serie

Maniement general :
-------------------
Le thermostat comporte un clavier a 6 touches :
- 4 touches de direction (haut, bas, droite et gauche),
- 1 touche pour valider les entrees (enter),
- 1 touche pour abandonner l'operation ou pour retourner au menu (Menu/Cancel).
Le programme affiche fugitivement des messages d'aide. En regle generale, Enter valide la modification, Cancel permet de l'abandonner, gauche et droite changent le champ en cours de modification et haut et bas incrementent ou decrementent la donnee. 
Exemple : on est sur le menu 1, la case en haut a gauche clignote. Pour passer au menu 2 passer a droite puis en bas avec les touches directionnelles et appuyer sur Enter.
On trouvera dans cette documentation des copies des differents affichages :
                          --------------------
                          | Autom.  Manuel   |
                          | Menu 2  Menu 2   |
                          --------------------

Mise en route :
---------------
A la mise en route, le thermostat affiche :
- un titre :
                          --------------------
                          |    Thermostat    |
                          |   electronique   |
                          --------------------
- la version du logiciel :
                          --------------------
                          |   Version 1.0    |
                          | (C) E.CHAMOUARD  |
                          --------------------
- puis connait deux comportements :
- soit les donnees contenues dans la memoire sauvegardee (PCF8583) sont valides (boot a chaud) :
                          --------------------
                          |   Programme OK   |
                          |   Boot a chaud   |
                          --------------------
  - le programme passe en mode automatique si il y etait au lors de l'extinction,
  - le programme passe au menu 1 dans les autres cas.
- soit les donnees de la memoire sauvegardee ne sont pas valides (boot a froid comme lors de la premiere mise en route) :
                          --------------------
                          | Pas de programme |
                          |   Boot a froid   |
                          --------------------
  - le programme passe au menu 1 en appliquant des donnees par defaut :
    - Date/heure = Lundi 00:00:00,
    - Consigne de chauffage a 20,
    - Hysteresis de 1,
    - Etalonnage capteur de 2 vers le bas.

Menu 1 :
--------
Le menu 1 comporte 4 options :
                          --------------------
                          | Autom.  Manuel   |
                          | Menu 2  Menu 2   |
                          --------------------
- Passage en mode automatique,
- Passage en mode manuel,
- Passage au menu 2,
- Passage au menu 2.

Menu 2 :
--------
Le menu 2 comporte 4 options :
                          --------------------
                          | Heure   Etalon.  |
                          | Hyster. Menu 1   |
                          --------------------
- Reglage de l'heure,
- Etalonnage du capteur de temperature,
- Reglage de l'hysteresis,
- Passage au menu 1.

Mode automatique :
------------------
Ce mode est accessible a partir du menu 1. En cas de coupure secteur dans ce mode, le sauvegarde des informations dans la memoire sauvegardee permet une reprise automatique du fonctionnement du thermostat.
C'est le mode normal de fonctionnement du thermostat. Cette version du logiciel permet un mode simple avec hysteresis. C'est a dire en appelant C la consigne de temperature et H l'hysteresis, le chauffage se met en route si la temperature est inferieure a C et s'arrete si la temperature est superieure a C+H.
L'affichage est de la forme :
                          --------------------
                          | Lun 15:23:30 Off |
                          | T=20.5  C=20.0 |
                          --------------------
T donne la temperature et C est la consigne. En haut a droite on trouve un indicateur de l'etat (On ou Off du chauffage).
Les actions possibles sont :
- Passage au menu 1 en appuyant sur Menu/Cancel,
- Reglage de la consigne en appuyant sur les touches haut ou bas. La gamme de reglage s'etend de 5.0 a 24.9.

Mode manuel :
-------------
Ce mode est accessible a partir du menu 1.
C'est un mode de fonctionnement plutot destine au test du chauffage (par votre chauffagiste par exemple).
L'affichage est de la forme :
                          --------------------
                          | Lun 15:23:30 Off |
                          | T=20.5   Manuel |
                          --------------------
T donne la temperature. En haut a droite on trouve un indicateur de l'etat (On ou Off du chauffage).
Les actions possibles sont :
- Passage au menu 1 en appuyant sur Menu/Cancel,
- Mise en route ou arret du chauffage en utilisant les touches haut et bas (haut=mise en route et bas=arret).

Reglage de l'heure :
--------------------
Ce mode est accessible a partir du menu 2.
C'est le mode permettant la mise  l'heure de l'horloge sauvegardee. Elle doit etre effectuee lors de la premiere mise en route.
L'affichage est de la forme :
                          --------------------
                          | Jeu 12:15:00     |
                          |  Enter ou Cancel |
                          --------------------
Enter permet la validation de l'heure affichee. Cancel permet de sortir sans modifier l'heure.
L'horloge redemarre lors de l'appui sur la touche Enter. Les secondes sont automatiquement placees a 0. Il est donc tres facile de synchroniser l'horloge avec une reference (horloge parlante par exemple).
Les actions possibles sont :
- Retour au menu 2 avec validation de l'heure programmee en appuyant sur la touche Enter,
- Retour au menu 2 sans validation de l'heure programmee en appuyant sur la touche Menu/Cancel,
- Incrementation ou decrementation du Jour, Heure ou Minute en appuyant sur les touches haut ou bas,
- Deplacement entre le jour/l'heure ou la minute en appuyant sur les touches droite ou gauche.

Etalonnage du capteur de temperature :
--------------------------------------
Ce mode est accessible a partir du menu 2.
Il permet de corriger l'erreur de temperature faite par le capteur ou due a son installation a proximite d'un element chauffant (exterieur ou interieur au thermometre comme l'alimentation par exemple).
L'affichage est de la forme :
                          --------------------
                          |  T=20.0 D=-1.5 |
                          |  Enter ou Cancel |
                          --------------------
T=xx.x indique la temperature mesuree. D=sy.y indique le decalage applique. Il suffit de regler le decalage pour que la temperature affichee corresponde a la valeur souhaitee.
Les actions possibles sont :
- Retour au menu 2 avec validation de l'etalonnage en appuyant sur la touche Enter,
- Retour au menu 2 sans validation de l'etalonnage en appuyant sur la touche Menu/Cancel,
- Incrementation ou decrementation de l'etalonnage (de -9.9 a +9.9) appuyant sur les touches haut ou bas.

Reglage de l'hysteresis :
-------------------------
Ce mode est accessible a partir du menu 2.
L'hysteresis correspond a l'ecart entre la temperature de mise en route du chauffage et la temperature d'arret du chauffage (mode automatique). C'est a dire en appelant C la consigne de temperature et H l'hysteresis, le chauffage se met en route si la temperature est inferieure a C et s'arrete si la temperature est superieure a C+H.
L'affichage est de la forme :
                          --------------------
                          |   Hyster=+1.5   |
                          |  Enter ou Cancel |
                          --------------------
Les actions possibles sont :
- Retour au menu 2 avec validation de l'hysteresis en appuyant sur la touche Enter,
- Retour au menu 2 sans validation de l'hysteresis en appuyant sur la touche Menu/Cancel,
- Incrementation ou decrementation de l'hysteresis (de +0.2 a +9.9) appuyant sur les touches haut ou bas.

Fonctionnement de la liaison serie :
------------------------------------
La liaison serie permet d'envoyer a un PC les mesures de temperature.
Les mesures sont envoyees toutes les 30 s. Le message envoye au PC est de la forme "Lun 15:23:30 20.4 On" ou "Lun 15:23:30 20.4 Off" selon que le chauffage est en route ou pas. 
Le message est suivi d'un retour a la ligne complet (CR+LF) et devrait donc s'afficher sans problme avec tout programme de communication serie (comme hyperterminal par exemple). La configuration de la liaison est en 7 bits parite paire et fonctionne a 57600 bauds.
J'ai utilise cette liaison pour la mise au point du thermostat. J'ai stocke les mesures sur des durees assez longues (>12 heures) puis avec un tableur j'ai trace des courbes et fait des statistiques sur les temperatures.

Versions prochaines :
---------------------
Les prochaines versions du logiciel inclueront :
- une securite accrue par test des erreurs de communication I2C,
- la possibilite de regler les options de la liaison serie,
- un mode mesurant la vitesse de decroissance de la temperature et en tenant compte pour la consigne de temperature.
