Mise en place d'un capteur d'humidité autarcique (Arduino,Esp32 node mcu)

a marqué ce sujet comme résolu.

Salut à toutes et à tous et merci de votre présence. Alors, je suis novice dans le monde de la programmation. Je suis donc censé réaliser cette expérience et la documenter, alors, j’ignore si une personne aurait une idée ou pourrait m’orienter avec des liens,codes…

Matériels : Carte de développement du microcontrôleur ESP32 NodeMCU

Capteur d’humidité avec sortie numérique et analogique

Capteur capacitif d’humidité du sol v1.0

Capteur capacitif d’humidité du sol v2.0

Carte enfichable de laboratoire

Câble de liaison

DHT22 AM2302 Capteur de température et d’humidité de l’air

Samsung INR 18650–25R 3,6V-3,7V 2500mAh - Batterie lithium-ion rechargeable

SparkFun Soil Moisture Sensor (avec bornes à vis)

18650 Battery Shield V8

Sujet: Mise en place d’un capteur d’humidité autarcique qui mesure plusieurs fois par jour l’humidité du sol et enregistre les données. enregistre le résultat de la mesure dans une série temporelle. Le capteur peut être réalisé à l’aide d’un ESP32, car celui-ci dispose d’un mode de sommeil profond économe en énergie. Le montage doit être réalisé à l’aide d´une armoire climatique ce qui permettra de déterminer le nombre de mesures possibles dans une zone de dans une plage de température de -10◦C à 30◦C.

Logiciel : création du logiciel nécessaire à l’enregistrement et au stockage des données (par ex. par exemple à l’aide de l’IDE Arduino).

Logiciel : la version finale du logiciel élaboré est chargée sur le microcontrôleur. Calibrage:Calibrage du capteur par comparaison avec des valeurs d’humidité connues. Enregistrement des données. Enregistrement de données dans l’armoire climatique, mesure de la consommation d’énergie lors de la mesure avec réveil du mode Deep-Sleep et remise en mode Deep-Sleep après la mesure. Mesure de la dérive. Evaluation: Analyse des données obtenues dans la tâche 4. Estimation de la durée de mesure moyenne pour 3, 5 et 10 mesures par jour.

J´avais essayé un code complet mais rien ne semblait vraiment fonctionnel du coup maintenant j´essaie progressivement d´écrire un code complet et j´ai commencé par celui de la sd carte mais lorsque je lance le programme on me dit: 10:44:16.812 -> error opening file in SD card 10:44:17.799 -> error opening test1.txt 10:44:17.799 -> error opening file in SD card 10:44:18.771 -> error opening test1.txt 10:44:18.803 -> error opening file in SD card 10:44:19.783 -> error opening test1.txt 10:44:19.815 -> error opening file in SD card 10:44:20.773 -> error opening test1.txt 10:44:20.805 -> error opening file in SD card 10:44:21.799 -> error opening test1.txt 10:44:21.799 -> error opening file in SD card 10:44:22.799 -> error opening test1.txt 10:44:22.799 -> error opening file in SD card 10:44:23.778 -> error opening test1.txt 10:44:23.810 -> error opening file in SD card 10:44:24.799 -> error opening test1.txt

puis lorsque j´enleve la sd carte et met en machine je ne vois qu´une seule valeur qui s´affiche donc je ne connais pas la provenance j´ai essayé de la formater mais elle refuse.

#include <SPI.h> #include <SD.h>

File myFile; const int CS = 5; const char filePath [] = "test3.txt"; int i = 0;

void WriteFile(const char * message){ // open the file. note that only one file can be open at a time, // so you have to close this one before opening another. myFile = SD.open(filePath, FILE_WRITE);

// if the file opened okay, write to it: if (myFile) { char buffer[50]; sprintf (buffer, "Writing to %s in SD card: %d…", filePath, ++i); Serial.println(buffer); myFile.println(message); // close the file: myFile.close(); Serial.println("done."); } else { // if the file didn’t open, print an error: Serial.println("error opening test1.txt"); } }

void ReadFile(){ // re-open the file for reading: myFile = SD.open(filePath); if (myFile) { Serial.println("test1.txt:");

// read from the file until there's nothing else in it:
while (myFile.available()) {
  Serial.write(myFile.read());
}
// close the file:
myFile.close();

} else { // if the file didn’t open, print an error: Serial.println("error opening file in SD card"); } }

void setup() { // Open serial communications and wait for port to open: Serial.begin(9600); while (!Serial) {  ; // wait for serial port to connect. Needed for native USB port only }

Serial.print("Initializing SD card…");

if (!SD.begin(CS)) { Serial.println("initialization failed!"); while (1); } Serial.println("initialization done."); }

void loop() { // nothing happens after setup WriteFile("meassage variable work."); ReadFile(); delay(1000); }

Merci de bien vouloir m´aider ,me conseiller,m´orienter si possible . Bien de choses à toutes et à tous.

Salut,

Ton sujet est malheureusement trop difficile à lire. Je t’invite à le remettre en forme à l’aide du bouton "éditer" et d’isoler clairement la partie sur laquelle tu demandes de l’aide.

Je suggère

Salutations

Le contexte

Le matériel

La finalité du projet

La problématique

Liste des erreurs auxquelles tu fais face.

Les questions sur les notions que tu n’as pas saisi

Les recherches

Ce que tu as déjà essayé pour comprendre et corriger les erreurs

Code actuel / existant

// Dans un bloc de code
+1 -0

Je suis donc censé réaliser cette expérience et la documenter, alors, j’ignore si une personne aurait une idée ou pourrait m’orienter avec des liens,codes…

Tu es étudiant ? C’est un projet pour ta formation ? Qu’as-tu appris en cours associé à ce projet ?

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte