Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Processus de fabrication

Moniteur d'énergie Arduino & Data Logger fiable – Guide complet (Dr. Wattson + carte SD)

Composants

Arduino UNO 1
Carte Dr. Wattson (MCP39F521) – monitoring énergie AC 1
Boîtier de protection pour Dr. Wattson (prise IEC + connecteurs) 1
Module carte MicroSD (Adafruit ou équivalent) 1
LED + résistance 220 Ω 1
Bouton poussoir tactile 1

Principe

Dr. Wattson est une carte de monitoring énergétique basée sur le **MCP39F521** (Microchip), mesurant tension, courant, puissances active/réactive/apparente, facteur de puissance, fréquence secteur. Isolation galvanique par transformateurs → sortie numérique sécurisée. Précalibrée 1 mA – 4 A (ratio dynamique 4000:1).

L'Arduino lit les données via **I2C** (pins A4/A5), les horodate (millis()), et les enregistre en **CSV sur carte SD** à la demande (bouton poussoir). Rotation automatique des fichiers : DATA00.CSV à DATA99.CSV. LED indique l'état d'enregistrement.

Câblage

Dr. Wattson → Arduino UNO (I2C) :

Module MicroSD → Arduino UNO (SPI hardware) :

Bouton + LED :

Bibliothèques requises

Sketch principal (extrait commenté)

#include <Wire.h>
#include <UpbeatLabs_MCP39F521.h>
#include <SD.h>
#include <Button.h>

#define BUTTON_PIN 4
#define LED_PIN 9
#define CHIP_SELECT 10

Button myBtn(BUTTON_PIN, true, true, 20); // pin, pullup, invert, debounce_ms
UpbeatLabs_MCP39F521 wattson;
bool logging = false;
char filename[] = "DATA00.CSV";

void setup() {
  Serial.begin(9600);
  pinMode(LED_PIN, OUTPUT);
  pinMode(CHIP_SELECT, OUTPUT);

  if (!SD.begin(CHIP_SELECT)) {
    Serial.println(F("Erreur carte SD"));
    return;
  }
  wattson.begin(0x74); // Adresse I2C par défaut

  // Trouver premier fichier libre
  for (uint8_t i = 0; i < 100; i++) {
    filename[4] = '0' + i/10;
    filename[5] = '0' + i%10;
    if (!SD.exists(filename)) break;
  }
  Serial.print(F("Fichier actif : ")); Serial.println(filename);
}

void loop() {
  myBtn.read();
  if (myBtn.wasReleased()) {
    logging = !logging;
    digitalWrite(LED_PIN, logging);
  }

  if (logging) {
    UpbeatLabs_MCP39F521_Data raw;
    UpbeatLabs_MCP39F521_FormattedData data;
    if (wattson.read(&raw, NULL) == UpbeatLabs_MCP39F521::SUCCESS) {
      wattson.convertRawData(&raw, &data);
      unsigned long t = millis();

      // Affichage terminal (avec effacement écran via code ANSI)
      Serial.write("\x1B""c");
      Serial.print(F("Courant: ")); Serial.println(data.currentRMS, 4);
      Serial.print(F("Puiss. active: ")); Serial.println(data.activePower, 4);
      Serial.print(F("Puiss. réactive: ")); Serial.println(data.reactivePower, 4);
      Serial.print(F("Puiss. apparente: ")); Serial.println(data.apparentPower, 4);

      // Écriture CSV
      File f = SD.open(filename, FILE_WRITE);
      if (f) {
        f.print(t); f.print(",");
        f.print(data.currentRMS); f.print(",");
        f.print(data.activePower); f.print(",");
        f.print(data.reactivePower); f.print(",");
        f.println(data.apparentPower);
        f.close();
      }
    }
  }
}

Utilisation

  1. Branchez Dr. Wattson sur secteur (prise IEC), charge sur la sortie.
  2. Alimentez l'Arduino (USB).
  3. Ouvrez un terminal série (screen /dev/ttyUSB0 9600 sur Linux/Mac, ou PuTTY/TeraTerm sur Windows) pour voir les valeurs en temps réel.
  4. Appuyez sur le bouton → LED s'allume = enregistrement démarré.
  5. Allumez la charge, observez le régime transitoire (ex: ampoule fluocompacte 14W : pic 17W → stable 14,2W).
  6. Réappuyez sur le bouton → arrêt. Retirez la carte SD.

Analyse dans Excel

Ouvrez le fichier DATAXX.CSV. Ajoutez une ligne d'en-tête :

timestamp, currentRMS, activePower, reactivePower, apparentPower

Créez des graphiques : courant/temps, puissances/temps. Comparez démarrage à froid / chaud, veille, etc.

Fonctions avancées Dr. Wattson (librairie complète)

Ressources

Projet professionnel, sécurisé (boîtier isolé), prêt pour l'analyse énergétique sérieuse de vos appareils.

Processus de fabrication

  1. La révolution du Cloud : Comment le Cloud Computing transforme l'IT, la sécurité et les carrières
  2. Maîtriser la maintenance préventive : Construire et optimiser les plannings fixes et flottants
  3. Construction d'un autoencodeur variationnel avec TensorFlow : guide pratique
  4. Enregistreur de Température et Humidité Arduino avec DHT11 et Shield Ethernet
  5. Moniteur de Température et Horloge Temps Réel Arduino avec Écran TFT 3.2"
  6. Lire température et humidité avec DHT11 sur Blynk – Tutoriel Arduino pas à pas
  7. Système de Surveillance Domestique Avancé avec Arduino Mega et Capteurs IoT
  8. Contrôleur de Moteur Pas à Pas Arduino avec A4988 et Joystick
  9. Construire une Boussole Numérique Temps Réel avec Arduino et Processing