Gestion température d'une couveuse

Bonjour,
j’ai fabriqué une couveuse (incubateur) piloté par un ESP sous ESPEASY avec:
1 relais pour le ventilateur.
1 relais pour le chauffage (2 lampes halogène au dessus d’une plaque métallique)
1 sonde de température DHT11
1 PIR pour ne pas manquer l’événement.
Ca fonctionne bien.
image
image

Je rencontre des difficulté a obtenir une température constante à cause de l’inertie thermique:
Quand j’arrête de chauffer, la température continue d’augmenter pendant 2 à 3 minutes et quand je remet le chauffage, la température continu de descendre pendant quelques minutes.
J’ai testé plusieurs scénarios, mais rien de convaincant. La courbe de température oscille de +/- 0,8d
Je n’arrive pas à trouver la formule basée sur la température et /ou sur l’évolution croissante ou décroissante de la température qui permet d’obtenir une courbe de température plus lisse; avec un temps de cycle plus court.
image
image

J’ai pensé que le plugin thermostat serait la solution miracle, mais le temps de cycle minimum configurable est de 15 minutes minimum, alors qu’il faudrait que j’ai un temps de cycle de 2 minutes environ.

Une idée pour optimiser ca ?
Merci.

bonjour,
serait-il possible de faire un semblant de PWM?
en passant par un scénario:
sans trop de détail sur le cycle de 2 minutes, je pars pour l’exemple de 2 min de chauffe et 2 min de pause. je sais pas si l’esp easy peut travail en seconde.
de base, ton scénario chauffe 120 secondes et 120 secondes sans chauffe. si la température est stable, on laisse tel quel. si la température baisse, on augmente le temps de chauffe (ex: 130s de chauffe et 110s sans chauffe) et la température augmente, on diminue le temps de chauffe pour augmenter le temps de pause

sinon plus simple: si il y a une sortie PWM sur l’esp, piloter le chauffage avec un mofset (si pas de PWM mais un point réseau pas loin, possibilité de remplacer l’esp par un arduino uno + ethernet shield)

Il y a des réponses … P I D :wink:

1 J'aime

Tu as mis des ampoules de combien de W , et tu devrais essayer de faire des aérations entre la plaque métallique et le support bois.
Tu peux aussi essayer de réguler en coupant une ampoule sur 2

Salut @skapced,
Désolé, je ne sais pas c’est quoi un PWM.
Je peut récupérer la température tous les x secondes. j’ai saayé tous les 10 secondes, mais ça alourdi l’historique. Je suis à 30 secondes actuellment
J’ai essayé un premier scénario du type:
au dessus de 37.7 j’arrête de chauffer
En dessous de 37.6, je chauffe.
J’obtiens des cycles de 15 minutes environs comme les graphiques ci dessus.
En ajoutant des conditions Si la température augmente, alors j’anticipe l’arrêt:
SI variable(Tempcouveuse-1) < #[Maison][ESP_Easy_160][Temperature]# ET #[Maison][ESP_Easy_160][Temperature]# > 37.5
ALORS chauffage OFF. Similaire pour le ON
image
cela n’améliore pas beaucoup la courbe.

J’ai essayé cette méthode (scénario N°3), mais j’arrive pas à faire quelque chose de simple et qui s’adapte automatiquement. (comme le plugin thermostat)

Je voulais savoir si il est possible d’utiliser une formule du type de celle utilisée dans le plugin Thermostat qui pourrait réponde à mon problème d’inertie thermique.
L’idéale serait peut-être de réduire le temps de cycle du plugin Thermostat.

C’est bien ce que je pense, mais on ne peut pas configurer un temps de cycle inférieur à 15 minutes

2 x 50 W

Bonne idée.
Je vais déjà essayer d’en débrancher une.
Ensuite comme j’ai un relais NO/NF je peux alterner les deux. Il faut que je trouve un autre relais pour faire plus évolué

2x50 w en halogène c’est trop puissant, je ne sais pas quelle distance tu as entre la plaque métallique et l’ampoule mais tu peux aussi augmenter l’espace et aussi un espace tout au tour pour créer plus de circulation d’air entre plaque métallique et ampoules.

Cela va diminuer un peu l’inertie sur le métal.

Enfin si j’ai bien compris sur l’emplacement de cette plaque métallique.
Tu n’as pas mis de sonde hydro pour surveiller le taux

le PWM est une modulation de largeur d’impulsion.
c’est une valeur qui va de 0 à 255 (au moins sur l’arduino). si on prends tes ampoules qui font 100W au total, le PWM à 0 sera équivalent à 0W, le PWM à 255 sera à 100W et un PWM à 127/128 sera à 50W environ. pour faire la régulation, tu augmentes ou diminues de 1 (par exemple) le PWM

Et pour accompagner les pilotage par impulsion de style pwm.

On peut utiliser des Relais à Semi-Conducteurs
(ils n’ont pas de contact physique en interne et des temps de commutation très rapide)

un des plus connus le SSR-40 DA

Capture d’écran du 2021-02-23 05-54-50

Qui prend en entrée des tensions continue de 3 à 32 volts (parfait pour arduino ou esp)
Qui en sortie pilote un courant jusqu’à 40 Ampères pour celui-ci alternatif pouvant aller de 24 à 380 Volts.

image

Allez pour en remettre une petite touche en Python sur les PID

Et la pour donner des idées c’est le chauffage du plateau d’une imprimante 3D dont on s’occupe.

Avec le PWM tu pourras commander une charge continue mais certainement pas alternative et encore moins avec les SSR mentionnés, ils sont de type zéro crossing ce qui indique que la charge est commuté uniquement lorsque la tension passe par zéro, en tout ou rien… ça fonctionnera.
Si tu veux piloter une charge alternatif tu as un module robotdyn qui se pilote avec Arduino et sans doute ESP.

Sinon, plutôt que de passer par un scénario, avec Espeasy tu as un device Régulator level control
Qui doit convenir.

1 J'aime

En dessous de la période oui mais au dessus …

Merci à tous pour vos précisions.
J’arrive à obtenir une température moyenne à l’heure stable; donc convenable pour espérer avoir des poussins. On voit pire sur le net.
Comme je me suis engagé à faire cette couveuse uniquement avec de la récup, je ne vais pas investir dans du matériel mentionné ci dessus.
Si je devais investir, ça sera dans un chauffage « hydrolique » d’aquarium à moins de 10€:
image

L’article mentionné par @olive sur l’imprimante 3D semble intéressant. Je vais approfondir.

Ca m’intéresse ! le système serait autonome.
Tu peux m’en dire plus StP ?

Je vais continuer à tester d’autres scénarios pour tenter d’obtenir une courbe plus lisse. Je publie mes courbes après.

Y a t’il une astuce pour superposer les courbes on/off (1 ou 0) et la température?
Du genre valeur chauffage + 37

Influxdb et grafana font cela très bien

Voila le scénario qui tourne en ce moment. C’est le plus simple de tous.
Je le lance toutes les 2 minutes.
image
J’obtiens ça:
image
image
Contrairement aux précédents scénario qui travaillent uniquement avec la température entrante, j’obtiens:

  • un delta de température moins important (moins de 1° pour 1.6 avant)
  • Un temps de cycle de chauffe plus important (20min pour 15 avant)

regarde dans les Devices proposés « Regulator - Level Control »
il te faut bien sur un capteur de température genre ds18b20 et une sortie pour piloter un relais sur le même ESP, tu as la doc de ce device ici:

LevelControl - Let’s Control It

J’ai un DHT11, ca ne marche pas ?

Merci, je vais tester

ce n’est qu’une histoire de méthode de lecture …

si ça va marcher, mais la précision n’est pas terrible et je crois (à vérifier) que tu n’as rien après la virgule ou de 0.5 en 0.5 je sais plus.

Pas faut sur un 18b20 le pas est de 0.0625 de mémoire