Go Down

Topic: Plage chauffage aquarium (Read 4371 times) previous topic - next topic

masterbalby

Bonjour,
pour la gestion du chauffage de mon aquarium je veux créer une plage de chauffe.
C'est à dire allumer le chauffage à 24.0° et l'éteindre à 26°.
Puis attendre que la température soit redescendue à 24° pour recommencer le cycle.

Et là je bloque...
Merci d'avance pour vos réponses.

B@tto

#1
Jan 19, 2011, 11:09 am Last Edit: Jan 19, 2011, 11:11 am by B@tto Reason: 1
Il suffit juste d'utiliser un flag, ton code aura alors une structure genre :

Code: [Select]
boolean Temperature_max_atteinte = 0
float consigne1 = 24;
float consigne2 = 26;

void loop(){

Temperature = MesureTemperature();
if (Temperature<consigne2 && Temperature_max_atteinte==0) {
Chauffe();
}
if(Temperature>=consigne2)  Temperature_max_atteinte=1;
if(Temperature<=consigne1)  Temperature_max_atteinte=0;
}


Après on peut simplifier le code avec un Select case.
Blog électronique : battomicro.wordpress.com
Photographie : www.interactive-celebration.fr
Fablab de Montpellier : www.labsud.org

jfs

Ce serait pas plus simple comme ça ?

Code: [Select]

if (temperature<=24){
ChauffePin=HIGH;
}

if (temperature>=26){
chauffePin=LOW;
}
Pas d'aide par MP !!!

Concernant le fonctionnement du forum tout se trouve dans les messages épinglés en tête de page.

B@tto

T'es pas bête toi  :)

Je travaille avec pleins de flag en ce moment, j'en vois partout maintenant ^^
Blog électronique : battomicro.wordpress.com
Photographie : www.interactive-celebration.fr
Fablab de Montpellier : www.labsud.org

jfs

J'ai aussi tendance à compliquer des fois....  ;D ;D
Pas d'aide par MP !!!

Concernant le fonctionnement du forum tout se trouve dans les messages épinglés en tête de page.

masterbalby

Qu'est ce qu'il se passe à 25 ???

Code:
if (temperature<=24){
ChauffePin=HIGH;
}

if (temperature>=26){
chauffePin=LOW;
}


SamoLaw

Salut

Rien du tout d'après ce que je vois. ::)

jfs

#7
Jan 19, 2011, 11:50 am Last Edit: Jan 19, 2011, 12:00 pm by jfs Reason: 1
Je m'attendais à cette question.

Vous voudriez qu'il se passe quoi ?

Si l'on allume l'Arduino et que l'on est à 25[ch730]... pas besoins de chauffer donc par défaut, chauffePin est à LOW lors de l'allumage.
N'étant pas chauffée (en tout cas pas par notre chauffage), la température de l'eau ne peut que redescendre.
Arrivé à 24[ch730] la chauffe commence et s'arrête à 26[ch730].

Admettons maintenant que l'on allume l'Arduino, chauffePin est à LOW, l'eau est déjà à 25[ch730]et la température monte (le bac est au soleil).
Arrivé à 26[ch730]on remet la valeur à LOW (même si elle y est déjà) et .... on a pas de système pour refroidir l'eau  ;D ;D ;D

Si il n'y a pas un moyen de refroidir l'eau, ce n'est pas nécessaire d'agir entre ces deux valeurs.
Vraiment pas de quoi faire une usine à gaz  ;)
Pas d'aide par MP !!!

Concernant le fonctionnement du forum tout se trouve dans les messages épinglés en tête de page.

masterbalby

Merci pour les réponses.

Si on allume est que l'eau est à 20°
-> chauffage en position HIGH
Maintenant que se passe t-il à 25° ???
on garde l'état HIGH ???
on passe en LOW ???

c'est cela que je ne comprends pas... :-/
que ce passe t il dans ce vide entre 24 et 26

jfs

#9
Jan 20, 2011, 09:38 am Last Edit: Jan 20, 2011, 09:39 am by jfs Reason: 1
La valeur reste à HIGH jusqu'à ce qu'on arrive à 26[ch730]
Pas d'aide par MP !!!

Concernant le fonctionnement du forum tout se trouve dans les messages épinglés en tête de page.

masterbalby


Go Up