Descriptions des tâches pour l'optimiseur du chauffage version simplifiée. -------------------------------------------------------------------------- Modifié le 14/10/2011 suite à la réunion M-I du 12/10/2011. Liste des variables: -------------------- TeauC ' Température de consigne de l'eau du chauffage. TeauM ' Température mesurée de l'eau du chauffage (Sonde 1Wire). TCons ' Température de consigne ( Dip-Switches ). Ti ' Température intérieure (Sonde 1Wire). TiMin ' Température intérieure Minimale. TiMax ' Température intérieure Maximale. TiMoy ' Température intérieure Moyenne. Te ' Température extérieure (Sonde 1Wire). Pente ' Pente de courbe de chauffe. Pivot ' Température d'eau pour température extérieure de 0 C°. CycleCourbe ' Index 0 ou 1 permettant de déterminer si un cycle a été complété. Thermostat ' Si Pin Entrée = 0 (contact Ouvert), si Entrée = 1 (contact fermé). Relais1 ' Led1 et circulateur d'eau. Relais2 ' Led2 et Brûleur ou Ouverture de la Vanne à 3 voies suivant la ' valeur System. Relais3 ' Led3 et fermeture de la Vanne à 3 voies. Liste des constantes: --------------------- Teau1 ' Température maximale d'eau de chauffe donnée par le constructeur. Te1 ' Température extérieure suivant la région (voir fichier xls). System ' 0 = Brûleur et 1 = Vanne à 3 voies. Tempo ' Temps à déterminer pendant lequel la vanne est actionnée. Liste des tâches: ----------------- Programme Principal. ******************** - Initialiser le micro-contrôleur AtMega16 ou 32. - Créer et initialiser les variables (mettre des valeurs par défaut lors du premier démarrage du µ-Contrôleur, ensuite celles-ci pourront être modifiées via la connexion série et le PC. - Initialiser et lire les températures des 3 DS18B20-PAR (Sonde 1Wire). - Lire les Dip-Switches ( Voir tableau en NB1 ). - System 0 ou 1 ' Prédéfini suivant le système à optimiser. Si System = 1 ' Optimisation par vannes à 3 voies ( Voir NB2 ). Relais3 = ' Commande de la fermeture de la vanne et on allume ' la Led3. Pause 75 secondes ' Fermeture totale = uniquement l'eau de retour. Relais3 ' Arrêt de la commande de la fermeture de la vanne et ' on éteint la Led3. Relais2 = ' Commande de l'ouverture de la vanne et on allume ' la Led2. Pause 22 secondes ' Ouverture à environ 30% = mélange léger de l'eau de ' départ chaudière et important de l'eau de retour. Relais2 ' Arrêt de la commande d'ouverture de la vanne et ' on éteint la Led2. FinSi Début de la boucle infinie Si Thermostat = 1 Aller à la routine LitSondeT Aller à la routine CourbeDeChau Aller à la routine CommandeChauffage FinSi Aller à la routine Communication Fin de la boucle infinie ******************************************************************************* Liste des Sous-Routines ******************************************************************************* Routine LitSondeT ' Lecture des sondes de températures. ------------------------------------------------------------------------------- Lire la sonde Teau ' Température eau du chauffage. Lire la sonde Ti ' Température intérieure. Lire la sonde Te ' Température extérieure. Si Thermostat = 1 ' On n'est en demande de chauffage. Si Ti > TiMax ' Si température intérieure est > que Ti maximum. TiMax = Ti ' Température intérieure maximum = Ti. FinSi FinSi Si Thermostat = 0 ' On n'est pas en demande de chauffage. Si Ti < TiMin ' Si température intérieure est < que Ti minimum. TiMin = Ti ' Température intérieure minimum = Ti. FinSi Finsi TiMoy = (TiMin + TiMax)/2 ' Calcul de la température intérieure moyenne. Fin de LitSondeT ------------------------------------------------------------------------------- Routine CourbeDeChau ' Calcul la courbe de chauffe. ------------------------------------------------------------------------------- Si CycleCourbe > 1 ' Après un cycle, on peut optimiser. CycleCourbe = 0 Finsi Teau = Pente X Te + Pivot '(y = ax + b). Si TiMoy > TCons ' Diminution de la Pente. Pivot = Pivot ' Pivot = 63,125°C. Pente = (Teau1-(TiMoy-TCons)-Pivot)/Te1 ' Teau1 = 80°C , Te1 = -9°C. Si TiMoy < TCons ' Déplacement du point Pivot vers le haut. Pente = Pente ' Pente = -1,875. Pivot = Pivot + (TCons-TiMoy) Teau = Pente X Te1 + Pivot If Teau => Teau1 Pente = (Teau1 - Pivot) / Te1 Finsi Finsi Fin de CourbeDeChau ------------------------------------------------------------------------------- Routine CommandeChauffage ' Commande du chauffage. ------------------------------------------------------------------------------- Si Ti < TCons ' Si la temp. intér. est < la temp. de consigne. Relais1 = ' Commande du relais de la pompe du chauffage et ' on allume la Led1 rouge. Finsi Si Teau = Ti ' Si la température d'eau = la temp. intérieur, Relais1 = ' arrêt du relais de la pompe du chauffage et ' on éteint la Led1 rouge. Finsi Si System = 0 ' 0 = commande du brûleur. Si TeauM < TeauC - HysEau & Relais2 = Relais2 = ' Brûleur en marche et allumage de la Led2 rouge. Si TeauM > TeauC + HysEau & Relais2 = Relais2 = ' Arrêt du brûleur et extinction de la Led2 rouge. Finsi FinSi FinSi Si System = 1 ' Commande par vanne à 3 voies. Si TeauM < TeauC - HysEau Relais3 = ' Un seul relais de vanne activé en même temps. Relais2 = ' Ouverture de la vanne et allumage de la Led2 rouge. Pause = Tempo ' A déterminer = durée de l'action sur la vanne. Relais2 = ' Arrêt de la vanne et extinction de la Led2 rouge. FinSi Si TeauM > TeauC + HysEau Relais2 = ' Un seul relais de vanne activé en même temps. Relais3 = ' Fermeture de la vanne et allumage de la Led3 rouge. Pause = Tempo ' A déterminer = durée de l'action sur la vanne. Relais3 = ' Arrêt de la vanne et extinction de la Led3 rouge. Finsi Finsi Fin de CommandeChauffage ------------------------------------------------------------------------------- Routine Communication ' Communication avec le PC via le port série ------------------------------------------------------------------------------- Si Port RS232 connecté Communication sur le port série Finsi Fin de Communication ------------------------------------------------------------------------------- NB1: TABLEAU **** Voici les positions des DIP-SWITCHES permettant la sélection de la température de la pièce de référence. |-----------------------------------| | Num.| DEC.| BIN. | Température | |-----------------------------------| | 1 | 0 | 0000 | 17.5 | | 2 | 1 | 0001 | 18.0 | | 3 | 2 | 0010 | 18.5 | | 4 | 3 | 0011 | 19.0 | | 5 | 4 | 0100 | 19.5 | | 6 | 5 | 0101 | 20.0 | | 7 | 6 | 0110 | 20.5 | | 8 | 7 | 0111 | 21.0 | | 9 | 8 | 1000 | 21.5 | | 10 | 9 | 1001 | 22.0 | | 11 | 10 | 1010 | 22.5 | | 12 | 11 | 1011 | 23.0 | | 13 | 12 | 1100 | 23.5 | | 14 | 13 | 1101 | 24.0 | | 15 | 14 | 1110 | 24.5 | | 16 | 15 | 1111 | 25.0 | |-----------------------------------| Note:- La sonde 1Wire pour Ti est placée à côté du thermostat. VANNE A TROIS VOIES: -------------------- Vanne Honeywell motorisée achetée sur Ebay: Moteur de commande: ML6420A3015-3, payé 117 € avec les frais de port. Vanne: V5013N1063, 1" 3-Way Globe Mixing Valve, payé 103 € avec les frais de port. Spécifications du constructeur: Alimentation : 220 volts AC 50Hz Course du piston : 20 m/m Durée du déplacement : 1 minute Tests: Durée du déplacement de 0 à 100% (20 m/m): 72 secondes NB2: **** Pour l'initialisation de la vanne, on commande la vanne dans le sens de fermeture totale d'arrivée d'eau chaude de la chaudière, donc 100% du retour des radiateurs, pour une durée de 75 secondes afin d'être certain d'atteindre la butée, il n'y a pas de risque, car la commande est protégée par des fins de courses. Ensuite, on commande la vanne en sens inverse pour une durée de 22 secondes afin de la positionner à environ 30%. Pour la suite, c'est l'optimiseur qui pilotera la vanne à 3 voies. Chaque seconde de commande de la vanne représente une variation de 100/72 = 1,39% ou une course de 20/72 = 0,28 mm. Remarques: 1) - Sachant que la température de la chaudière est réglée au minimum à 65°C pour les raisons connues, on choisis une petite ouverture (30%), car il est préférable d'envoyer dans les radiateurs de l'eau tiède en place d'eau trop chaude afin d' éviter que les radiateurs qui seraient dans le cas contraire, très chauds mettent un certains temps pour refroidir et contrarie la régulation (coup de chaleur). Il en est de même pour une chaudière, celle-ci démarre avec une température assez basse et chauffe progressivement. 2) - Lors du câblage des relais, si cela est possible au niveau des contacts, prévoir que si certains contacts restaient "collés", l'autre relais ne puisse pas s'enclencher. **********************************************************************************