Arduino & IoT Academy · Lekcja

Projektowanie bateryjnego węzła czujnikowego

Usypiać urządzenie, wykonywać pomiar, wysyłać dane i ponownie je usypiać.

Lekcja 4 z 413 kroki

Projektowanie bateryjnego węzła czujnikowego to bezpłatna lekcja Arduino & IoT Academy na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Arduino & IoT Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Arduino & IoT Academy zawiera 4 lekcji w sumie.

Cykl sennego czujnika

Działający przez długi czas węzeł czujnikowy kieruje się jednym rytmem: sen, krótkie wybudzenie, pomiar, wysłanie danych, a następnie ponowny sen. Większość czasu spędza w uśpieniu. 🌙

Czas aktywności kosztuje

Każda sekunda aktywności powoduje największy pobór prądu. Złota zasada mówi, aby skrócić okno aktywności tak bardzo, jak to tylko możliwe, a następnie przejść w stan uśpienia.

Połącz szybko, a potem rozłącz

WiFi jest najbardziej energochłonne, dlatego należy łączyć się tylko wtedy, gdy jest to konieczne, szybko wysyłać dane i rozłączać się przed ponownym uśpieniem.

Wybierz rozsądny interwał

Częstotliwość wybudzeń określa czas pracy baterii. Węzeł wysyłający raport co piętnaście minut działa znacznie dłużej niż taki, który raportuje co sekundę.

Cała praca odbywa się w setup

Ponieważ głębokie uśpienie ponownie uruchamia układ, cała praca znajduje się w setup. Pętla pozostaje pusta — każdy cykl zaczyna się od pełnego uruchomienia.

void setup(){ /* sample, send, sleep */ }
void loop(){}

Najpierw odczytaj czujnik

Zaraz po uruchomieniu włącz czujnik i wykonaj jego odczyt. Pobierz wartość odpowiednio wcześnie, aby pozostała część czasu aktywności służyła tylko wysłaniu danych i przejściu w stan uśpienia.

float temp = readSensor();

Wyślij odczyt

Opublikuj wartość przez WiFi za pomocą MQTT lub szybkiego żądania HTTP POST. Lekkie komunikaty skracają czas działania modułu radiowego do minimum.

client.publish("home/temp", String(temp).c_str());

Następnie ponownie przejdź w stan uśpienia

Po wysłaniu danych uzbrój timer i wywołaj deep sleep. Węzeł wyłącza się i pobiera mikroampery aż do następnego zaplanowanego wybudzenia.

esp_sleep_enable_timer_wakeup(900*1000000);
esp_deep_sleep_start();

Ogranicz pobór przez nieaktywne elementy

Wybierz płytkę z niskoprądowym regulatorem i usuń zawsze włączoną diodę zasilania. Te zmiany oszczędzają cenne mikroampery podczas każdego uśpienia.

Wysyłaj także napięcie baterii

Przy każdym odczycie przesyłaj również napięcie baterii. Ta dodatkowa wartość ostrzeże Pana/Panią przed rozładowaniem ogniwa, dzięki czemu można je wymienić na czas.

Oszacuj czas działania

Uśrednij krótki pobór prądu podczas aktywności i długi pobór podczas snu, a następnie podziel pojemność przez tę średnią. W ten sposób można przewidzieć liczbę miesięcy pracy.

Szybkie sprawdzenie

Potwierdź główną zasadę działania węzła zasilanego baterią.

Podsumowanie: śpij, mierz, wysyłaj

Węzeł zasilany baterią wykonuje pracę w setup: odczytuje dane, szybko je wysyła, a następnie przechodzi w deep sleep. Wybierz rozsądny interwał i ogranicz pobór w stanie bezczynności, aby urządzenie działało przez wiele miesięcy. 🔋

Bezpłatny start

Ucz się C++ dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
30
Lekcje
120

Często zadawane pytania

Czy lekcja „Projektowanie bateryjnego węzła czujnikowego” jest bezpłatna?

Tak — pełny tekst „Projektowanie bateryjnego węzła czujnikowego” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Arduino & IoT Academy, przejdź na CoddyKit PRO. Kurs Arduino & IoT Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Projektowanie bateryjnego węzła czujnikowego”?

Usypiać urządzenie, wykonywać pomiar, wysyłać dane i ponownie je usypiać. Ćwiczysz Arduino & IoT Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Arduino & IoT Academy?

Nie wymagamy żadnego doświadczenia. Arduino & IoT Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.

Ile czasu zajmuje lekcja „Projektowanie bateryjnego węzła czujnikowego”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Arduino & IoT Academy?

Tak. Każda lekcja Arduino & IoT Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Dokąd trafia energia
  2. Uruchamianie głębokiego uśpienia ESP
  3. Wybudzanie zegarem lub pinem
  4. Projektowanie bateryjnego węzła czujnikowego
← Powrót do Arduino & IoT Academy