IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

NodeJS Discussion :

Lecture de fichier avec sonde de temperature sur Raspberry


Sujet :

NodeJS

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Juillet 2023
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Vienne (Limousin)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Juillet 2023
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Lecture de fichier avec sonde de temperature sur Raspberry
    Bonjour à tous,

    débutant en NodeJS, j'ai monté un serveur me permettant de faire un peu de domotique simple.

    En utilisant un raspberry pi et une sonde de température DS18B20, j'arrive à obtenir la température de la sonde dans un des fichiers du raspberry, à savoir
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    /sys/bus/w1/devices/28-00000017d858/temperature
    Par exemple (il faut diviser par 1000 pour avoir la température en degré) :
    Nom : Node1.jpg
Affichages : 138
Taille : 47,6 Ko

    Dans mon serveur NodeJS, j'utilise ceci, pour exporter la valeur vers une page web :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    console.log("echo")
    var Temp_ext_1 = fs.readFileSync("/sys/bus/w1/devices/28-00000017d858/temperature");
    Temp_ext_1_1000 = Temp_ext_1/1000;
    Temp_arrondie=Math.round(Temp_ext_1_1000);
    console.log(Temp_ext_1);
    console.log(Temp_ext_1_1000);
    console.log(Temp_arrondie);

    Normalement, en console, j'ai quelque chose comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    echo
    <Buffer 32 30 38 37 35 0a>
    20.875
    21
    Mais depuis 2 semaines, j'ai souvent une sorte d'erreur de lecture ... :
    Je ne comprend pas pourquoi cette erreur arrive alors que le ficher "temperature" reste du même type.
    J'ai vérifié que le fichier "temperature" reste normal, même si ça affiche zero.
    On dirait que ça arrive aléatoirement, mais l'affichage "du zéro" peut perdurer plusieurs heures avant de cesser.
    Deux exemples du problème avec un relevé du fichier toutes les 2 secondes :
    Nom : Node3.jpg
Affichages : 134
Taille : 105,0 Ko

    Avez-vous une idée de la cause du problème ?

    Merci !

    Edit :
    C'est marrant : aujourd'hui, il y a une sorte de régularité. Alors que d'autre fois, j'ai plusieurs heures à zéro.
    Capture d'écran avec un intervalle de 2 secondes, entre deux lectures du ficher "température" :
    Nom : Node4.jpg
Affichages : 113
Taille : 148,4 Ko

  2. #2
    Membre du Club
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mars 2023
    Messages
    31
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mars 2023
    Messages : 31
    Points : 47
    Points
    47
    Par défaut
    Bonjour,

    Il semble que vous rencontriez un problème intermittent lors de la lecture du fichier de température de votre sonde DS18B20. Voici quelques suggestions pour résoudre le problème :

    Assurez-vous que le chemin du fichier "temperature" est correct. Vérifiez si le chemin "/sys/bus/w1/devices/28-00000017d858/temperature" existe et que le fichier est accessible en lecture.

    Ajoutez des vérifications supplémentaires pour vous assurer que la lecture du fichier se déroule correctement. Par exemple, vous pouvez utiliser la fonction fs.existsSync() pour vérifier si le fichier existe avant de le lire. Voici un exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    var filePath = '/sys/bus/w1/devices/28-00000017d858/temperature';
     
    if (fs.existsSync(filePath)) {
      var Temp_ext_1 = fs.readFileSync(filePath);
      Temp_ext_1_1000 = Temp_ext_1 / 1000;
      Temp_arrondie = Math.round(Temp_ext_1_1000);
      console.log(Temp_ext_1);
      console.log(Temp_ext_1_1000);
      console.log(Temp_arrondie);
    } else {
      console.log('Le fichier de température n\'existe pas.');
    }
    Vérifiez les connexions physiques de votre sonde DS18B20. Assurez-vous que la sonde est correctement connectée au Raspberry Pi et qu'elle fonctionne correctement. Vous pouvez essayer de la rebrancher ou d'utiliser une autre sonde pour voir si le problème persiste.

Discussions similaires

  1. Probleme Vérification des fichiers Avec ClickOnce
    Par rvzip64 dans le forum Général Dotnet
    Réponses: 1
    Dernier message: 11/05/2010, 14h05
  2. probleme upload de fichier avec FileUpload
    Par Amrouch14 dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 16/04/2008, 18h53
  3. Probleme Webclient et fichiers avec certaine extension
    Par maxxou dans le forum Général Dotnet
    Réponses: 1
    Dernier message: 12/02/2008, 20h21
  4. problème formatage de fichier avec awk
    Par nenekes dans le forum Shell et commandes GNU
    Réponses: 16
    Dernier message: 02/11/2006, 12h53
  5. Probleme transfert gros fichier avec webdav
    Par cybernetique dans le forum Apache
    Réponses: 1
    Dernier message: 10/05/2006, 09h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo