Spisu treści:

Przewodnik po uśpieniu Arduino: 5 kroków
Przewodnik po uśpieniu Arduino: 5 kroków

Wideo: Przewodnik po uśpieniu Arduino: 5 kroków

Wideo: Przewodnik po uśpieniu Arduino: 5 kroków
Wideo: Arduino sterowanie 4 przekaźników według czasu i cykli 2024, Listopad
Anonim
Image
Image
Potrzebne materiały / jakiej płyty użyć
Potrzebne materiały / jakiej płyty użyć

Czasami znajdujemy się w sytuacji, która wymaga od nas umieszczenia Arduino w miejscu, gdzie podłączenie go do sieci nie wchodzi w grę. Dzieje się tak często, gdy próbujemy rejestrować informacje w zdalnej witrynie lub wystarczy, że Twoje Arduino jest aktywne w określonym przedziale czasu/akcji.

Adafruit DS3231 Precision RTC BreakoutAdafruit

W takich przypadkach uśpienie Arduino jest idealnym rozwiązaniem. Ich uwaga jest wymagana tylko przez krótki czas, np. rejestruj dane w określonych odstępach czasu lub ogłaszaj alert, gdy wystąpi z góry określone zdarzenie. W tym samouczku poeksperymentujemy z usypianiem Arduino i zobaczymy, jak ponownie włączyć Arduino. Ten samouczek zapozna Cię z koncepcją i zawiera małe ćwiczenie, aby zobaczyć, jak uśpić Arduino.

Krok 1: Potrzebne materiały / jaką tablicę użyć

JAKIEJ PŁYTY UŻYWAĆ?

W tym samouczku będziemy używać Arduino Uno tylko dlatego, że jest to łatwiejsza do prototypowania płytka. W prawdziwym projekcie na żywo użyłbym do tego Arduino Pro Mini. Arduino Uno i Arduino Pro Mini mają bardzo podobne cechy, Arduino pro mini ma znacznie mniej sprzętu do zasilania (np. część USB, dodatkowe diody LED i inne elementy), dzięki czemu zużywa znacznie mniej energii. Dlatego Arduino Pro mini jest lepszym wyborem. Na przykład, Uno używa 30-40 mA w stanie czuwania i około 19 mA w stanie uśpienia. Pro Mini wykorzystuje 25mA w stanie czuwania i 0,57 mA w stanie uśpienia. Ponieważ każdy mA ma znaczenie podczas podłączania go do akumulatora, widać, że nie ma konkurencji, a Arduino Pro Mini jest zwycięzcą.

Uwaga: jako początkujący producent Arduino Pro Mini może być nieco onieśmielający, ale nie ma ku temu powodu. Tak, musisz przylutować nagłówki do płytki i potrzebujesz kabla FTDI, aby przesłać swój szkic, ale poza tym nie ma większych różnic

Krok 2: TRYB UŚPIENIA

Kiedy spojrzysz na dokumentację procesora ATmega328p (kliknij ten link, aby uzyskać kopię tego dokumentu) używanego zarówno dla Arduino Uno, jak i Arduino Pro mini, zauważysz, że dostępnych jest wiele różnych trybów uśpienia. Ale w prawdziwym świecie jest tylko jeden przydatny tryb; Tryb wyłączania (SLEEP_MODE_PWR_DOWN). Po uśpieniu Arduino wyłącza wszystkie niepotrzebne komponenty, zmniejszając zużycie energii przez MCU (Mikrokontroler). W tym trybie jedynym sposobem na wybudzenie go jest użycie zewnętrznego wpływu (np. szturchniemy go, aby się obudził). W dalszej części tego samouczka zbadamy, jak to zrobić.

Krok 3: PRZERWANIA

Zanim przejdziemy do kodu, aby uśpić Arduino, musimy zrozumieć koncepcję przerwań. Najlepszym sposobem na opisanie tego jest; Pracujesz nad czymś, na czym naprawdę musisz się skoncentrować. Nosisz słuchawki, puszczając głośno muzykę, aby zagłuszyć swoje otoczenie. Jesteś tak skoncentrowany na tym, że świat zewnętrzny jest dla ciebie stracony. Jedynym sposobem na przyciągnięcie Twojej uwagi jest popychanie Cię. Po otrzymaniu tego szturchnięcia zwracasz uwagę na to, o co chodzi w przerwie, a gdy sobie z tym radzisz, ponownie włączasz muzykę i kontynuujesz swoje zadanie.

Uwaga: nie zamierzam zagłębiać się w to, do czego są dobre przerwania, ale jeśli chcesz dowiedzieć się więcej o tej koncepcji, zapoznaj się z moim samouczkiem (Używanie przerwań do poprawy funkcjonalności twojego projektu) na ten temat

Większość prawdziwych Arduino ma kilka pinów, które właśnie to robią. Uno i Pro Mini mają 2 piny (d2 i d3), które mają możliwość przerwania tego, co robi Arduino. Dzięki temu możemy przywrócić Arduino do stanu wybudzenia.

Krok 4: Kod/szkic

Możesz pobrać ukończony gotowy szkic z mojej strony, klikając ten link. Aby uzyskać pełny opis i wyjaśnienie działania kodu, możesz przejść do mojego bloga, klikając link: Przewodnik po uśpieniu Arduino.

Krok 5: ĆWICZENIE 1

ĆWICZENIE 1
ĆWICZENIE 1
ĆWICZENIE 1
ĆWICZENIE 1

KROK 1)

Teraz czas na wgranie szkicu. Ale zanim to zrobisz, umieść zworkę w d2. Na razie zostaw go odłączony na drugim końcu. Załaduj szkic i poczekaj 5 sekund, aż dioda LED wyłączy się, a Arduino przejdzie w stan uśpienia.

KROK 2)

Po zgaśnięciu diody LED włóż drugi koniec przewodu połączeniowego do pinu GND w Arduino Uno. Spowoduje to pociągnięcie pinu 2 LOW, wyzwalając przerwanie, budząc w ten sposób uśpione Arduino. Po ponownym włączeniu diody LED możesz usunąć zworkę z GND, a 5 sekund później Arduino wraca do trybu uśpienia.

Aby zobaczyć przykładowy projekt, w którym używam zegara czasu rzeczywistego (RTC) do wybudzenia rejestratora danych wilgotności i temperatury, wystarczy kliknąć poniższy link: PRZYKŁAD WYKORZYSTANIA RTC DO WYBUDZENIA REJESTRATORA DANYCH ARDUINO. To świetny przykład, jak działałoby to w prawdziwym świecie

Zalecana: