kiwi973:
Bonjour,
Dans un premier temps, je vais rester avec cette sonde.
Actuellement en Guyane, je dois faire avec ce que j'ai à disposition.
Je compte utiliser le pasteurisateur pour la culture de champignon.
La sonde sera insérée dans 1 des sacs pour avoir la température idéale à l'intérieur du substrat.
Pour revenir au code, j'ai rajouté une variable Booléenne mais ça ne fonctionne pas ...
Je galère un peu !
Voici le code :
#include "OneWire.h"
#include "DallasTemperature.h"
#define WATER_TEMP_PIN A0
#define RELAY_PIN A5
OneWire oneWire(WATER_TEMP_PIN);
DallasTemperature sensors(&oneWire);
const int TEMP_THRESHOLD_UPPER = 82; // upper threshold of temperature, change to your desire value
const int TEMP_THRESHOLD_LOWER = 72; // lower threshold of temperature, change to your desire value
bool allume = false; // true pour cuiseurvapeur allumé, false sinon
void setup()
{
pinMode (RELAY_PIN, OUTPUT);
// On initialise la connexion série
Serial.begin(9600);
delay(2000);
}
void loop()
{
// On récupère la température de la sonde
sensors.requestTemperatures();
double dTempWater = sensors.getTempCByIndex(0);
// On imprime la température
Serial.print("Température de l'eau: ");
Serial.print(dTempWater);
Serial.println("°C");
// On attends 5 secondes
delay(5000);
if (isnan(dTempWater)) {
Serial.println("Failed to read from DHT sensor!");
} else {
if (dTempWater > TEMP_THRESHOLD_UPPER && !allume) allume = true;
if (dTempWater < TEMP_THRESHOLD_LOWER && allume) allume = false;
}
digitalWrite(RELAY_PIN, allume);
}
Perso, je trouve ton code tres compliqué a lire, et surtout a comprendre
A cause du nom de tes variables "TEMP_THRESHOLD_UPPER" , ce ne serait pas plus simple, et plus compréhensible, de nommer cette variable par exemple "températureHauteMax " ? Surtout sur tablette ou mobile et pour toi quand tu auras un code avec beaucoup de variables ou de lignes, ou que tu reprendra ton code plus tard.
Pour revenir a ton code, tu initialise ta variable "allume" a false, du coups tu ne rentre jamais dans les tests.. il faut initialiser la variable a true, en supposant que quand tu lance ton système, tu met la résistance de chauffe en marche.