Pomiar dużych prądów na ESP32 przy użyciu ACS758 i ADS1115

Pomiar dużych prądów na ESP32 przy użyciu ACS758 i ADS1115
W tym projekcie krok po kroku stworzymy cyfrowy amperomierz przeznaczony do pomiaru dużych prądów stałych, który może przydać się w warsztacie elektronika, przy testowaniu zasilaczy, akumulatorów, przetwornic, silników DC lub innych układów pobierających większy prąd. Nasz miernik powstanie w oparciu o popularny mikrokontroler ESP32, zewnętrzny przetwornik analogowo-cyfrowy ADS1115 oraz czujnik prądu ACS758, a wynik pomiaru będzie prezentowany na czytelnym kolorowym wyświetlaczu TFT.
Głównym elementem pomiarowym w tym projekcie jest ACS758, czyli hallotronowy czujnik prądu pozwalający mierzyć znacznie większe wartości niż typowe boczniki stosowane w prostych modułach pomiarowych. Jego dużą zaletą jest to, że mierzony prąd nie przepływa bezpośrednio przez mikrokontroler ani przez delikatną część pomiarową układu, ponieważ pomiar odbywa się z wykorzystaniem pola magnetycznego. Dzięki temu rozwiązanie jest wygodniejsze i bezpieczniejsze przy większych prądach, a jednocześnie generuje na wyjściu zwykły sygnał analogowy, który można łatwo odczytać za pomocą przetwornika ADC.
Do odczytu napięcia z wyjścia czujnika wykorzystamy ADS1115, czyli 16-bitowy przetwornik analogowo-cyfrowy komunikujący się z ESP32 przez magistralę I2C. Zastosowanie zewnętrznego ADC ma tutaj duże znaczenie, ponieważ wbudowany przetwornik analogowy w ESP32 nie zawsze zapewnia wystarczającą stabilność i dokładność, szczególnie wtedy, gdy zależy nam na powtarzalnych wskazaniach. ADS1115 pozwala odczytywać napięcie z większą rozdzielczością, a w naszym projekcie pracuje na zakresie ±6,144 V, co dobrze pasuje do sygnału wyjściowego z czujnika ACS758 zasilanego napięciem 5 V.
Zasada działania amperomierza jest stosunkowo prosta. Czujnik ACS758 wystawia na swoim wyjściu napięcie zależne od przepływającego prądu. Dla prądu zerowego napięcie to nie jest idealnie równe 0 V, dlatego po uruchomieniu układu wykonywana jest kalibracja offsetu. Program odczytuje kilka próbek bez obciążenia, wylicza średnią wartość napięcia spoczynkowego, a następnie odejmuje ją od kolejnych pomiarów. Dopiero tak skorygowany wynik jest przeliczany na prąd według czułości czujnika, która w kodzie została ustawiona na 20 mV/A.
Kluczowym atutem tego projektu jest właśnie automatyczna kalibracja zera, ponieważ nawet niewielkie przesunięcie napięcia na wyjściu czujnika mogłoby powodować zauważalny błąd pomiaru. Dodatkowo w układzie przewidziany jest przycisk, którym można ponownie uruchomić kalibrację offsetu bez resetowania całego urządzenia. Jest to bardzo praktyczne, ponieważ przed właściwym pomiarem wystarczy upewnić się, że przez czujnik nie płynie prąd, nacisnąć przycisk kalibracji i dopiero potem rozpocząć pomiar obciążenia.
Na ekranie TFT wyświetlana jest aktualna wartość prądu w amperach z dokładnością do dwóch miejsc po przecinku. Interfejs został zaprojektowany w formie prostego miernika cyfrowego, z dużymi cyframi, oznaczeniem pomiaru prądu stałego oraz poziomym paskiem pokazującym orientacyjne obciążenie w zakresie od 0 do 100 A. Dzięki temu użytkownik widzi nie tylko dokładną wartość liczbową, ale także szybki graficzny podgląd poziomu mierzonego prądu.
Całość może pełnić funkcję prostego warsztatowego amperomierza DC, modułu pomiarowego do zasilacza laboratoryjnego albo elementu większego systemu monitorowania poboru prądu. Projekt jest też bardzo dobrym przykładem praktycznego wykorzystania ESP32, przetwornika ADS1115 oraz czujnika ACS758 w jednym urządzeniu pomiarowym.
🛠 Lista potrzebnych elementów
Do zbudowania naszego amperomierza z ESP32 i ADS1115 będziemy potrzebować kilku kluczowych komponentów. Poniżej przedstawiamy pełną listę elementów użytych w tym projekcie:
| Element | Opis |
| ESP32 | Mikrokontroler z WiFi i Bluetooth – główny „mózg” układu |
| ADS1115 | Precyzyjny przetwornik analogowo-cyfrowy 16-bit, komunikacja I2C |
| Czujnik natężenia prądu ACS758 | Moduł pomiaru prądu do 100 A, oparty na czujniku ACS758 wykorzystującym efekt Halla. |
| Wyświetlacz TFT IPS 1,69″ ST7789V | Kolorowy ekran SPI, rozdzielczość 240×280 px, wysoka jakość obrazu |
| Przycisk (x1) | Do ręcznego przełączania zakresów pomiarowych |
| Płytka stykowa 400 pól (x2) | Do montażu układu bez lutowania |
| Przewody połączeniowe 10cm 40szt męsko-męskie | Do połączenia wszystkich komponentów |
Dzięki tym elementom będziemy mogli stworzyć kompletny i funkcjonalny amperomierz, który może mierzyć duże prący i prezentuje je na ekranie IPS w czasie rzeczywistym! ⚡📊
Podłączenie elementów
Skoro wiemy już, z jakich elementów będzie składał się nasz amperomierz, możemy przejść do ich połączenia. Układ nie jest skomplikowany, ponieważ ADS1115 komunikuje się z ESP32 przez magistralę I2C, wyświetlacz TFT wykorzystuje interfejs SPI, a sygnał analogowy z czujnika ACS758 trafia bezpośrednio na jedno z wejść przetwornika ADC.
| Wyświetlacz TFT | ESP32 |
| GND | GND |
| VCC | 3,3 V |
| SCL | GPIO 18 |
| SDA | GPIO 23 |
| RES | GPIO 4 |
| DC | GPIO 2 |
| CS | GPIO 15 |
| BLK | 3,3 V |
| ADS1115 | ESP32 |
| VCC | 3,3 V |
| GND | GND |
| SDA | GPIO 21 |
| SCL | GPIO 22 |
| ACS758 | ESP32 |
| VCC | 5 V |
| GND | GND |
| ADS1115 | ACS758 |
| A0 | OUT1 |
| Przycisk (zwierający o masy) | ESP32 |
| dozwolona nóżka przycisku | GPIO 16 |
| nóżka po przekątnej | GND |
📦 Instalacja bibliotek w Arduino IDE
Zanim wgramy kod do ESP32, musimy upewnić się, że zainstalowane są wszystkie niezbędne biblioteki obsługujące nasze urządzenia peryferyjne.
📌 Kroki instalacji:
1️⃣ Otwórz Arduino IDE
2️⃣ Przejdź do: Narzędzia → Zarządzaj bibliotekami…
3️⃣ Wyszukaj i zainstaluj następujące biblioteki:
| Biblioteka | Opis |
|---|---|
| Adafruit ADS1X15 | Obsługa przetwornika ADS1115 |
| TFT_eSPI | Sterowanie ekranem TFT ST7789 |
Po zainstalowaniu bibliotek zamknij Menedżer bibliotek i przejdź do następnego kroku.
To wszystko! 🎉 Teraz nasz projekt jest gotowy do kolejnego etapu, konfiguracji biblioteki TFT_eSPI, aby wyświetlacz poprawnie działał z naszym ESP32 i prezentował pomiary w czasie rzeczywistym. 🖥️📊
🖥️ Konfiguracja biblioteki TFT_eSPI
Aby sterować wyświetlaczem ze sterownikiem ST7789, musimy skonfigurować bibliotekę TFT_eSPI.
Znajdź plik User_Setup.h w katalogu biblioteki TFT_eSPI:
C:\Users(nazwa_użytkownika)\Documents\Arduino\libraries\TFT_eSPI\User_Setup.h
Otwórz go w edytorze tekstu i znajdź poniższe linie.
Upewnij się, że są odkomentowane
#define ST7789_DRIVER
Oraz zakomentowane pozostałe linijki z tej sekcji

Kilka linijek niżej znajdziesz definicje rozdzielczości. Ustaw dokładnie tak:
#define TFT_WIDTH 240
#define TFT_HEIGHT 280
To bardzo ważne – większość ekranów 1.69″ ST7789 ma nietypową wysokość 280 pikseli i domyślne ustawienia mogą powodować błędne wyświetlanie, obcięcie obrazu lub jego przesunięcie.

Następnie odszukujemy “For NodeMCU”, i komentujemy wszystkie poniższe linie definicji.
aby uzyskać taką konfigurację:

Następnie odszukujemy sekcję “ESP32 SETUP” i w tym miejscu ustawiamy przypisania pinów zgodnie z tabelą przedstawioną na początku.
Docelowo powinieneś uzyskać konfigurację jak na załączonym zdjęciu.

⚙️ Ustawienie częstotliwości SPI – jak przyspieszyć odświeżanie wyświetlacza?
Na końcu pliku User_Setup.h znajduje się sekcja, która odpowiada za ustawienie częstotliwości magistrali SPI. To właśnie ona decyduje o tym, jak szybko ESP32 przesyła dane do wyświetlacza, co bezpośrednio wpływa na płynność aktualizacji i szybkość rysowania grafiki.
W bibliotece TFT_eSPI domyślnie ustawiona jest wartość:#define SPI_FREQUENCY 27000000czyli 27 MHz – to ustawienie pośrednie, które zazwyczaj działa poprawnie z większością wyświetlaczy, ale może być zbyt szybkie według oficjalnej specyfikacji producenta.

📄no własnie Co mówi dokumentacja techniczna ST7789?
Z danych technicznych sterownika ST7789 wynika, że:
| Parametr | Minimalny czas | Maksymalna częstotliwość |
|---|---|---|
TSCYCW – cykl zegara przy zapisie | 66 ns | ok. 15 MHz |
TSCYCR – cykl zegara przy odczycie | 150 ns | ok. 6.67 MHz |
Producent wyraźnie określa, że bezpieczna granica dla zapisu danych do wyświetlacza to ok. 15 MHz, a dla odczytu – jeszcze mniej.

✅ Jak ustawić SPI bezpiecznie?
Jeśli chcesz mieć pewność, że Twój ekran będzie działał stabilnie niezależnie od warunków, zalecamy rozpoczęcie od#define SPI_FREQUENCY 10000000 // 10 MHz
Następnie możesz stopniowo zwiększać wartość, jeśli wszystko działa poprawnie:#define SPI_FREQUENCY 20000000 // 20 MHz
#define SPI_FREQUENCY 27000000 // 27 MHz (domyślnie)
#define SPI_FREQUENCY 40000000 // 40 MHz
#define SPI_FREQUENCY 80000000 // 80 MHz (maksymalnie dla ESP32)
🚀 A jak było w naszym projekcie?
Podczas testów naszego woltomierza, ekran działał bezproblemowo przy 80 MHz, co pozwoliło znacząco przyspieszyć odświeżanie danych i poprawić płynność działania całego interfejsu.
📌 Jednak ważna uwaga:
80 MHz nie jest wartością zalecaną do długotrwałego użytkowania. To ustawienie „na własne ryzyko” – może działać stabilnie, ale przy dłuższym użytkowaniu, w gorszych warunkach (zakłócenia, słabe zasilanie, długie przewody) mogą pojawić się artefakty, migotanie lub zawieszanie się wyświetlacza.

🛠 Rekomendacja
| Cel | Zalecana częstotliwość |
|---|---|
| Bezpieczny start, pełna zgodność z dokumentacją | 10–15 MHz |
| Domyślna wartość w bibliotece | 27 MHz |
| Szybkie działanie, ale z rozwagą | 40 MHz |
| Testowo, maksymalna wydajność | 80 MHz (maksymalnie dla ESP32) |
📁 Zapisujemy plik User_Setup.h i zamykamy edytor.
Od teraz biblioteka TFT_eSPI jest w pełni skonfigurowana do pracy z naszym ekranem IPS 1.69″ ST7789 i gotowa do współpracy z ESP32. Możemy przejść do kolejnego etapu, czyli wgrywania kodu do mikrokontrolera i uruchomienia naszego precyzyjnego woltomierza w praktyce. 💻⚡
Gotowy kod
Kod wraz z skonfigurowaną biblioteką zajdziesz do pobrania w linku poniżej:
Jeśli nie masz ochoty samodzielnie konfigurować pliku User_Setup.h, coś nie działa tak, jak powinno, lub po prostu chcesz zaoszczędzić czas, możesz skorzystać z gotowej paczki. Znajdziesz w niej nie tylko kompletny kod źródłowy, ale również skonfigurowaną bibliotekę TFT_eSPI, dopasowaną do wyświetlacza 1.69” ST7789 oraz przypisanych pinów ESP32 dokładnie tak, jak opisaliśmy to wcześniej.
💾 Wgrywanie kodu na ESP32
Po podłączeniu wszystkich elementów możemy przejść do uruchomienia programu na ESP32. To właśnie kod będzie odpowiedzialny za odczyt napięcia z przetwornika ADS1115, przeliczenie go na wartość prądu z czujnika ACS758, wykonanie kalibracji zera oraz wyświetlenie wyniku na ekranie TFT.
📌 Krok 1: Podłączenie ESP32 do komputera
1️⃣ Podłącz ESP32 do komputera za pomocą przewodu USB-C lub microUSB, w zależności od wersji posiadanej płytki.
2️⃣ Otwórz Arduino IDE.
3️⃣ W menu wybierz Narzędzia → Płytka → ESP32 Dev Module.
4️⃣ Następnie wybierz właściwy port w Narzędzia → Port, na przykład COM4, COM5 lub inny port, który pojawił się po podłączeniu płytki.
📌 Krok 2: Sprawdzenie bibliotek
Przed wgraniem programu upewnij się, że w Arduino IDE są zainstalowane wymagane biblioteki do obsługi wyświetlacza TFT, komunikacji I2C oraz przetwornika ADS1115. Jeżeli którejś z bibliotek brakuje, program nie skompiluje się poprawnie i Arduino IDE wyświetli błąd.
📌 Krok 3: Weryfikacja i wgrywanie programu
1️⃣ Otwórz przygotowany kod projektu w Arduino IDE.
2️⃣ Kliknij przycisk „Zweryfikuj” oznaczony symbolem ✓, aby sprawdzić, czy kod kompiluje się poprawnie.
3️⃣ Jeżeli kompilacja zakończy się bez błędów, kliknij „Wgraj” oznaczony symbolem strzałki →, aby przesłać program do ESP32.
4️⃣ Po zakończeniu wgrywania ESP32 powinno automatycznie uruchomić program i rozpocząć pracę amperomierza.
📌 Krok 4: Pierwsze uruchomienie i kalibracja
Po uruchomieniu układu program wykona kalibrację punktu zerowego czujnika ACS758. Na tym etapie przez czujnik nie powinien płynąć żaden prąd, ponieważ ESP32 odczytuje napięcie spoczynkowe z wyjścia czujnika i zapisuje je jako offset. Dzięki temu późniejsze pomiary będą odniesione do rzeczywistego zera, a wynik na ekranie będzie bardziej stabilny i dokładny.
Jeżeli chcesz ponownie wykonać kalibrację, wystarczy nacisnąć przycisk kalibracji, pamiętając, aby w tym momencie również nie obciążać toru pomiarowego.
📌 Krok 5: Problemy z wgrywaniem? Oto rozwiązania!
🔹 Jeżeli pojawia się błąd:A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header
👉 Rozwiązanie: podczas wgrywania programu wciśnij i przytrzymaj przycisk BOOT na płytce ESP32, a następnie puść go, gdy w Arduino IDE rozpocznie się przesyłanie kodu.
🔹 Jeżeli ESP32 nie jest widoczne w Arduino IDE:
👉 Sprawdź, czy masz zainstalowane sterowniki do układu USB-UART użytego na Twojej płytce, najczęściej będzie to CP2102 albo CH340. Warto również sprawdzić inny przewód USB, ponieważ część kabli służy wyłącznie do ładowania i nie obsługuje transmisji danych.
Po pomyślnym wgraniu programu na ekranie TFT pojawi się interfejs amperomierza z aktualnym pomiarem prądu. Od tego momentu możesz podłączyć badane obciążenie, obserwować wskazania w czasie rzeczywistym oraz w razie potrzeby ponownie wykonać kalibrację zera za pomocą przycisku.
🖥️ Opis interfejsu wyświetlacza
Po uruchomieniu programu na ESP32 i poprawnym podłączeniu wszystkich komponentów, na ekranie TFT 1,69″ pojawia się prosty i czytelny interfejs graficzny, który swoim wyglądem nawiązuje do klasycznych mierników laboratoryjnych. Całość została zaprojektowana tak, aby najważniejsza informacja, czyli aktualnie mierzony prąd, była dobrze widoczna już na pierwszy rzut oka.
🔼 Górny pasek statusu
Na samej górze ekranu znajduje się pasek informacyjny z trzema etykietami. Pierwsza z nich to DC, która informuje, że układ jest przeznaczony do pomiaru prądu stałego. Obok znajduje się oznaczenie AUTO, które pełni funkcję informacyjną i może zostać wykorzystane w przyszłości przy rozbudowie projektu, na przykład do automatycznego skalowania wskazań. Po prawej stronie widoczny jest napis HOLD, czyli miejsce przygotowane pod funkcję zatrzymania aktualnego pomiaru na ekranie.
🔢 Główna wartość prądu
W centralnej części ekranu wyświetlana jest aktualna wartość prądu w amperach. Duże cyfry ułatwiają szybki odczyt wyniku, nawet gdy układ leży dalej na biurku lub jest zamontowany w obudowie. W pokazanym przykładzie na ekranie widzimy wartość około 10,15 A, czyli aktualny prąd przepływający przez czujnik ACS758.

📊 Pasek poziomu obciążenia
Pod głównym wynikiem znajduje się poziomy pasek, który pokazuje orientacyjny poziom mierzonego prądu względem przyjętego zakresu. W tym projekcie skala została opisana od 0 A do 100 A, dzięki czemu użytkownik może szybko ocenić, czy mierzony prąd jest niski, średni czy zbliża się do górnej granicy zakresu.
Taki pasek jest bardzo wygodny, ponieważ nie trzeba za każdym razem analizować samej wartości liczbowej. Wystarczy rzut oka na ekran, aby zobaczyć, jak mocno obciążony jest badany układ.
⚙️ Kalibracja i stabilność pomiaru
Przed rozpoczęciem właściwego pomiaru układ wykonuje kalibrację punktu zerowego czujnika ACS758. Oznacza to, że program odczytuje napięcie wyjściowe czujnika bez przepływu prądu i traktuje je jako punkt odniesienia. Dzięki temu późniejsze wskazania są dokładniejsze, a niewielkie różnice offsetu czujnika nie wpływają znacząco na wynik.
Jeżeli podczas pracy zauważymy, że wskazanie przy braku obciążenia nie wraca idealnie do zera, można ponownie wykonać kalibrację przyciskiem. Ważne jest tylko, aby w czasie kalibracji przez czujnik nie płynął żaden prąd.
🔌 Widok całego układu
Na zdjęciu widać kompletny układ testowy zmontowany na płytkach stykowych. ESP32 odpowiada za obsługę programu i wyświetlacza, ADS1115 odczytuje napięcie analogowe z czujnika, a ACS758 mierzy prąd przepływający przez przewód zasilający obciążenie. Dzięki takiemu połączeniu otrzymujemy prosty, ale funkcjonalny amperomierz DC, który pozwala obserwować pomiar dużego prądu w czasie rzeczywistym.

🔌 Jak używać amperomierza?
Po wgraniu kodu i uruchomieniu układu nasz amperomierz jest gotowy do pracy. Korzystanie z niego jest proste, ale w przypadku pomiaru większych prądów trzeba pamiętać o jednej bardzo ważnej zasadzie: prąd mierzymy zawsze szeregowo z badanym obciążeniem, a nie równolegle tak jak napięcie.
🔋 Gdzie podłączyć mierzony prąd?
Przewód, przez który płynie mierzony prąd, należy przeprowadzić przez tor pomiarowy czujnika ACS758. W praktyce oznacza to, że czujnik powinien znaleźć się pomiędzy źródłem zasilania a badanym odbiornikiem, na przykład między akumulatorem a obciążeniem, zasilaczem a modułem lub przetwornicą a silnikiem.
Najprościej można przyjąć taki schemat połączenia:
plus zasilania → wejście prądowe ACS758 → wyjście prądowe ACS758 → plus obciążenia
Masa zasilania oraz masa badanego układu pozostają połączone normalnie. Po podłączeniu obciążenia aktualny prąd pojawi się na ekranie TFT w amperach. Wartość będzie aktualizowana na bieżąco, a dodatkowy pasek na dole ekranu pokaże orientacyjny poziom obciążenia w zakresie od 0 A do 100 A.
Przed rozpoczęciem pomiaru warto wykonać kalibrację zera. W tym celu przez czujnik nie powinien płynąć żaden prąd. Po uruchomieniu układu kalibracja wykonywana jest automatycznie, ale w razie potrzeby można ją powtórzyć przyciskiem. Dzięki temu pomiar będzie dokładniejszy, a wskazanie przy braku obciążenia powinno wrócić możliwie blisko 0 A.
Jeżeli po podłączeniu obciążenia wynik ma znak ujemny, oznacza to najczęściej, że prąd płynie przez czujnik w przeciwnym kierunku. W takiej sytuacji wystarczy zamienić kierunek przewodu prądowego przechodzącego przez ACS758 albo uwzględnić znak wyniku jako informację o kierunku przepływu prądu.
Podczas pomiarów dużych prądów należy zwrócić szczególną uwagę na grubość przewodów, solidne połączenia oraz maksymalny zakres użytej wersji czujnika ACS758. Luźne przewody, cienkie zworki lub słaby styk mogą się nagrzewać i powodować spadki napięcia, dlatego tor prądowy powinien być wykonany możliwie krótko i pewnie. Dzięki temu amperomierz będzie nie tylko wygodny w użyciu, ale również bezpieczny podczas testowania zasilaczy, akumulatorów i innych układów dużej mocy.

🚀 Co można rozbudować?
Nasz cyfrowy amperomierz z ESP32, ADS1115 i ACS758 działa już jako praktyczne urządzenie pomiarowe do dużych prądów, ale dzięki możliwościom ESP32 można go bardzo łatwo rozbudować o kolejne funkcje. Taki projekt może pozostać prostym miernikiem warsztatowym, ale równie dobrze może stać się częścią większego systemu monitorowania zasilania, akumulatorów lub urządzeń dużej mocy.
⏸ HOLD – zatrzymanie aktualnego pomiaru
W interfejsie wyświetlacza znajduje się etykieta HOLD, którą można wykorzystać do dodania funkcji zatrzymania aktualnego wyniku na ekranie. Po aktywowaniu tej opcji pomiar zostaje „zamrożony” i nie zmienia się aż do ponownego naciśnięcia przycisku. Jest to przydatne szczególnie wtedy, gdy obserwujemy krótkotrwały wzrost prądu i chcemy spokojnie odczytać wartość z ekranu.
🔁 AUTO – automatyczne skalowanie wskazań
Na ekranie znajduje się również oznaczenie AUTO, które można wykorzystać przy dalszej rozbudowie projektu. W przypadku amperomierza nie chodzi tutaj o zmianę zakresu ADS1115 w taki sam sposób jak w woltomierzu, ale bardziej o automatyczne dopasowanie sposobu prezentacji wyniku. Program może samodzielnie zmieniać skalę paska obciążenia, liczbę miejsc po przecinku albo sposób wyświetlania wartości w zależności od aktualnego prądu.
Dzięki temu przy małych prądach można uzyskać bardziej precyzyjny odczyt, a przy dużych wartościach bardziej czytelny i stabilny wynik.
⚠️ Alarm przekroczenia prądu
Bardzo praktycznym rozszerzeniem byłoby dodanie alarmu przekroczenia ustawionego progu prądu. Użytkownik mógłby określić maksymalną dopuszczalną wartość, na przykład 20 A, 50 A lub 80 A, a po jej przekroczeniu ESP32 mogłoby wyświetlić ostrzeżenie na ekranie, uruchomić buzzer albo wysłać powiadomienie przez WiFi.
Taka funkcja byłaby szczególnie przydatna przy testowaniu akumulatorów, zasilaczy, silników DC lub przetwornic, gdzie zbyt duży prąd może oznaczać przeciążenie albo zwarcie.
💾 Zapisywanie historii pomiarów
Kolejnym pomysłem jest dodanie rejestratora pomiarów. ESP32 może zapisywać odczyty prądu do pamięci flash, na kartę microSD albo przesyłać je dalej przez WiFi. Dzięki temu można później analizować, jak zmieniał się pobór prądu w czasie, sprawdzić chwilowe skoki obciążenia albo przygotować wykres z pracy badanego urządzenia.
To bardzo dobra opcja przy dłuższych testach, na przykład przy rozładowywaniu akumulatora, sprawdzaniu poboru prądu przez moduł elektroniczny albo monitorowaniu pracy silnika.
📲 Dodanie komunikacji bezprzewodowej
Ponieważ ESP32 ma wbudowane WiFi i Bluetooth, projekt można łatwo rozbudować o zdalny podgląd pomiarów. Można przygotować prostą stronę WWW dostępną z przeglądarki, wysyłać dane do aplikacji mobilnej, systemu Home Assistant albo zapisywać je w chmurze.
Dzięki temu amperomierz może działać nie tylko jako lokalny przyrząd z ekranem, ale również jako bezprzewodowy moduł pomiarowy do większego systemu automatyki lub monitorowania energii.
🔋 Pomiar mocy i energii
Sam pomiar prądu to dopiero początek. Jeżeli do projektu dodamy również pomiar napięcia zasilania, ESP32 może obliczać moc pobieraną przez obciążenie oraz energię zużytą w czasie. Wtedy urządzenie zaczyna przypominać prosty watomierz lub licznik energii DC.
Taka funkcja sprawdzi się przy testach akumulatorów, przetwornic, paneli fotowoltaicznych, zasilaczy laboratoryjnych i innych układów zasilania.
📌 Podsumowanie
Zbudowaliśmy cyfrowy amperomierz oparty na ESP32, przetworniku ADS1115 i czujniku ACS758, który pozwala mierzyć duże prądy stałe oraz wyświetlać wynik na ekranie TFT 1,69″ w czasie rzeczywistym.
Dzięki kalibracji zera i zastosowaniu zewnętrznego ADC pomiary są stabilniejsze i dokładniejsze niż przy użyciu samego ESP32. Projekt można łatwo rozbudować o funkcję HOLD, alarm przekroczenia prądu, zapis pomiarów, WiFi albo pomiar mocy i energii.
To praktyczne narzędzie do warsztatu, testowania zasilaczy, akumulatorów, przetwornic i innych układów pobierających większy prąd.
💡 Masz pytania lub napotkałeś problem podczas budowy?
👉 Zostaw komentarz pod wpisem – chętnie pomożemy!
eriały powiązane:

Prezentowaną w artykule elektronikę znajdziesz oczywiście w naszym sklepie 👉 sklep.msalamon.pl 👈Zapraszamy również na nasze social media, gdzie na bieżąco informujemy o nowych produktach oraz o najciekawszych promocjach 😎👇


