[LUA] Regulation chauffage PID

Vous avez créé un script LUA dont vous êtes fier, un .sh génial, un programme Python hors du commun, un Tuto, c'est ici que vous pouvez les partager.
gaspah
Messages : 4
Inscription : 12 nov. 2015, 20:53

Re: Regul chauffage PID

Message par gaspah »

Bonjour à tous,

Un grand merci pour ce poste (Guitoo) il m'a inspiré pour faire de même...

j'ai donc repris le concept et je l'ai réécrit en python.

J'ai un arduino avec un relais bistable et une liaison RF433 pour la commande étant donné que mon raspberry et ma chaudière sont séparés de quelques mètres.
A l'heure où j'écris ces lignes le système est en test, j'ai encore quelques plugin à rajouter sur mon système afin d'assurer un maximum de sécurité sur les envoies de commande histoire de ne pas me réveiller avec 14° ;)

Je reviendrai donc sur un nouveau poste avec le code, matériels,le principe,..etc une fois que le tout sera présentable.

Donc à bientôt...pour les intéressés
GIC
Messages : 91
Inscription : 25 avr. 2016, 22:18

Re: Regul chauffage PID

Message par GIC »

Un grand bravo pour le boulot de Guitoo et pour toutes les contributions.

Je n'ai pas encore eu le temps de me lancer dans la rédactions des scripts et compte m'y mettre sous peu. Je comptais le faire pour ce type de fonction de régulation, en PI ou PID (je voudrais piloter du chauffage central et de l'electrique d'appoint).

Pour le moment, aucun commentaire donc sur le script en lui-même :oops:

Par contre, concernant la régulation de la chaudière, je me permettrais quelques commentaires car je commence à "maitriser" le domaine.
Une chaudière au fuel ou au gaz est un élément qui n'aime pas trop les démarrages fréquents, ça use. Et même les 15mn dont tu parles sur ta première page, c'est peu. En général, on dit qu'il faut qu'une chaudière produise pendant 30 mn mini (1 à 2 démarrages par heure max).
Sur les chaudières anciennes (je ne parle pas des modèles modernes qui intègrent une régulation et une gestion de thermostat), on favorise le pilotage du ou des circulateurs (en fonction de la structure de l'installation).
En jouant ainsi sur les circulateurs, on laisse la chaudière déterminer par elle-même si elle a besoin de produire en fonction de la température de retour de l'eau du réseau de chauffage.

Par exemple, chez moi, j'ai une vieille chaudière fioul. Derrière, j'ai un circulateur général qui alimente un ballon mélangeur, puis derrière ce ballon, 2 départs (1 pour le réseau de radiateurs des chambres et 1 pour le planchet chauffant - celui-ci a également une vanne 3 voies motorisée).

Au quotidien, le circulateur principal tourne en permanence et maintient une bonne température dans le ballon mélangeur.
Si les circuits de chauffage ne tournent pas, très peu de perte, la chaudière ne démarre pas.
Si les circuits de chauffage tirent, alors la température du ballon baisse, le retour d'eau vers la chaudière est plus bas et la chaudière démarre pour reproduire.
Au quotidien, la régulation se fait donc par le pilotage des 2 circulateurs de chauffage. Il faut aussi bien penser que sur du chauffage central, il y a une grosse inertie donc inutile d'avoir une régulation trop réactive. Ce n'est pas le cas pour l'électrique !

Pour les absences longue durée (1 jour ou plus), on peut alors jouer sur le pilotage du circulateur principal. Dans ce cas, on ne tire plus d'eau pour le ballon mélangeur et la chaudière ne fonctionne quasi plus.

Dernière remarque, ça concerne l'Eau Chaude Sanitaire. Si c'est la chaudière qui la produit, il faut surtout penser à baisser la consigne pour les absences prolongées (plusieurs jours). Sinon, c'est un carnage pour les économies, sauf à ce que le ballon de stockage soit extrêmement performant !

Bonne journée à tous et encore bravo pour le boulot !!
magiccyril
Messages : 1
Inscription : 25 janv. 2017, 16:53

Re: Regul chauffage PID

Message par magiccyril »

Bonjour,

Ca fait un moment que je lis ce post pour comprendre ce super script, et il y a un point que je n'arrive pas à comprendre : dans script_time_cmdchauffv2.lua pour calcul le temps de cycle en seconde la commande de chauffage (CmdChauff) est multiplié par 9. Je ne comprends pas ce 9, est-ce que quelqu'un peut m'expliquer ?

Merci d'avance.
Steph38
Messages : 44
Inscription : 12 août 2015, 18:13

Re: Regul chauffage PID

Message par Steph38 »

Bonjour,

est il possible de partager la transcription en python?
Je ne comprend pas trop le calcule des erreurs de. dérivés

Merci
Steph38
Messages : 44
Inscription : 12 août 2015, 18:13

Re: Regul chauffage PID

Message par Steph38 »

Steph38 a écrit :Bonjour,

est il possible de partager la transcription en python?
Je ne comprend pas trop le calcule des erreurs de. dérivés

Code : Tout sélectionner

   MoyErr1 = MoyErr1 + tostring(string.sub(t[i],string.find(t[i], ";")+1))
    MoyErr2 = MoyErr2 + tostring(string.sub(t[#t+1-i],string.find(t[#t+1-i], ";")+1))
Merci
vil1driver
Messages : 5661
Inscription : 30 janv. 2015, 11:07
Localisation : Rennes (35)

Re: Regul chauffage PID

Message par vil1driver »

Salut,

Qui aurait une logique de détection d'influence externe ?

Journée ensoleillée
Le four
Le sèche linge
Rassemblement d'amis alcoolisés :mrgreen:
Etc..

Tout ceci met le bronx dans la régulation.
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua

Un ex domoticzien
rmist
Messages : 3
Inscription : 28 janv. 2018, 22:47

Re: Regul chauffage PID

Message par rmist »

Bonsoir,

merci pour ce partage !

Etant débutant dans le domaine, malgré mes lectures je bloque sur (au moins) un point :

j'ai l'impression qu'il n'y a pas de lien entre mes dummy switch (consigne temperature, cmd chauffage etc...) sur le dashboard et les valeurs des variables que je peux voir évoluer dans le fichier de log.
Par exemple le log me dit cmd chauffage à 100 alors que l'affichage dans le dashboard donne 0, ce qui correspond à ce que j'ai entré dans le dummy % que j'ai créé dans l'interface Domoticz.

De ce que je comprends le lien se fait via l'IDx en début du code.
Les IDx que j'ai mis en entête des fichiers .lua sont ceux que je vois lorsque que je vais dans l'onglet Setup->Devices et ont l'air d'être en hexadecimal.
Ai-je bien fait? Sinon pourriez-vous m'aider à résoudre ce problème?

Question annexe : dans le log je vois que le calcul de Kp, Ki et Kd évolue au fil du temps, est-ce qu'il s'agit d'un "abus de langage" (je pense qu'il s'agit en fait de Kp* err, Ki* integrale(err) et Kd *derive(err) )du log ou bien les coefficient P,I et D évoluent vraiment? Il me semble que ces coefficients devraient rester constant?

Merci de votre aide
pmachat
Messages : 84
Inscription : 13 oct. 2017, 13:37

Re: Regul chauffage PID

Message par pmachat »

Bonjour

J'ai implémenté les scripts et je suis en phase de test (en boucle ouverte - pas d'action sur la chaudière)
J'ai crée la variable CmdImax comme indiqué pour ne pas bugger.

J'aimerai savoir quelle valeur est généralement à renseigner dans ce paramètre qui défini le gain intégral maximum.

Merci pour tout le taf réalisé et partagé
Domoticz + Rflink + Xiaomi Gateway +Zigbee2Mqtt + Wemos + Dahua+ Alhau + Monitor:
- gestion vmc / hygrométrie
- pilotage ampli Denon Ceol
- surveillance piscine
- commande thermostat chauffage central
- gestion portail + garage automatique
alexandreetienne
Messages : 1
Inscription : 25 mai 2018, 10:32

Re: Regul chauffage PID

Message par alexandreetienne »

Bonjour,

étant nouveau sur la box domoticz, j'aimerais savoir ou as-tu intégré ces trois scripts au sein de la box domotique ?

Merci encore pour ce script,
Alexandre
ETIENNE
Répondre