AI tester napięcia i przepływu – analiza zasilania warsztatu


🎯 Cel projektu:

Zbudujesz system diagnostyczny z ESP32, który:

  • mierzy napięcie i/lub natężenie prądu,
  • wykrywa skoki, spadki lub przeciążenia,
  • ostrzega o anomaliach,
  • (opcjonalnie) analizuje wzorce zasilania za pomocą AI.

To coś w rodzaju inteligentnego „multimetru”, który sam się uczy i działa 24/7.


🧰 Poziom trudności:

🔧 Średnio zaawansowany


⏱️ Czas wykonania:

2–3 godziny


🛠️ Lista komponentów:

KomponentOpisKoszt
ESP32Mikrokontroler z Wi-Fi20–30 zł
Czujnik prądu ACS712 5A / 20APomiar natężenia10–15 zł
Czujnik napięcia ZMPT101BPomiar napięcia 230V (galwanicznie odseparowany)15–25 zł
Ekran OLED (opcjonalnie)Wyświetlanie pomiarów10–15 zł
microSD (opcjonalnie)Logowanie10 zł
Zasilacz 5VDo zasilania ESP3210 zł

⚠️ Uwaga o bezpieczeństwie:

Czujniki takie jak ZMPT101B są zaprojektowane do pracy z 230V – mimo izolacji, zachowaj ostrożność. Praca przy sieci energetycznej wymaga precyzji i ostrożności.


📷 Schemat połączeń:

  1. ACS712 → ESP32:
    • VCC → 5V
    • GND → GND
    • OUT → GPIO 36 (analogowy)
  2. ZMPT101B → ESP32:
    • VCC → 5V
    • GND → GND
    • OUT → GPIO 39 (analogowy)
  3. OLED (I2C):
    • SDA → GPIO 21
    • SCL → GPIO 22

📐 Krok 1: Pomiar napięcia i prądu

Odczyt napięcia i prądu (w przybliżeniu):

cppKopiujEdytujint napieciePin = 39;
int pradPin = 36;

void setup() {
  Serial.begin(115200);
}

void loop() {
  int adcNapiecie = analogRead(napieciePin);
  int adcPrad = analogRead(pradPin);

  float napiecie = (adcNapiecie * 3.3) / 4095.0 * współczynnik_kalibracyjny;
  float prad = (adcPrad - 2048) * 0.050; // dla ACS712 5A

  Serial.print("Napiecie: ");
  Serial.print(napiecie);
  Serial.print(" V | Prad: ");
  Serial.print(prad);
  Serial.println(" A");

  delay(500);
}

Współczynniki kalibracyjne możesz dopasować do pomiarów multimetrem.


🧠 Krok 2: AI – rozpoznawanie awarii lub przeciążeń

  1. Zbierz dane:
    • normalna praca
    • włączenie urządzenia
    • zwarcie / przeciążenie
    • wyłączenie
  2. Wejdź na Edge Impulse, stwórz klasy:
    • „normalne zasilanie”
    • „przeciążenie”
    • „spadek napięcia”
  3. Wytrenuj model i załaduj do ESP32:
cppKopiujEdytujif (AI_output == "przeciążenie") {
  // wyślij powiadomienie
}

💾 Krok 3: Logowanie i dashboard

  • Zapis lokalny:
cppKopiujEdytujFile log = SD_MMC.open("/energia.csv", FILE_APPEND);
log.println(String(napiecie) + "," + String(prad));
log.close();
  • Dashboard online:
    • Blynk / ThingSpeak / IFTTT
    • Możesz też stworzyć wykresy dzienne

📲 Krok 4: Powiadomienia i automatyzacja

  • Alert, gdy napięcie spadnie poniżej np. 200V
  • Alert przy skoku prądu powyżej np. 4A
  • Można też automatycznie odłączyć urządzenie (przekaźnik!)

🛠️ Krok 5: Montaż i testy

  • Czujnik prądu najlepiej zamontować na jednym przewodzie zasilającym narzędzie
  • ZMPT101B możesz podłączyć równolegle do przedłużacza – zachowaj izolację
  • ESP32 w bezpiecznej obudowie

Efekt końcowy:

  • ESP32 monitoruje napięcie i natężenie
  • AI rozpoznaje anomalia lub przeciążenia
  • Możesz dostać powiadomienie i/lub logować dane
  • Bezpieczniejsze zasilanie, mniej ryzyka

📘 To projekt szczególnie przydatny w większym warsztacie z wieloma urządzeniami – pozwala zapobiec awariom i zdiagnozować problemy z instalacją.

Zostaw komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Przewijanie do góry