Spisu treści:

Raspberry Pi na wolności ! Rozszerzony Timelapse z zasilaniem bateryjnym: 10 kroków (ze zdjęciami)
Raspberry Pi na wolności ! Rozszerzony Timelapse z zasilaniem bateryjnym: 10 kroków (ze zdjęciami)

Wideo: Raspberry Pi na wolności ! Rozszerzony Timelapse z zasilaniem bateryjnym: 10 kroków (ze zdjęciami)

Wideo: Raspberry Pi na wolności ! Rozszerzony Timelapse z zasilaniem bateryjnym: 10 kroków (ze zdjęciami)
Wideo: Donald Tusk: Majonez? Lepiej łączyć niż dzielić. 2024, Lipiec
Anonim
Raspberry Pi na wolności ! Wydłużony czas poklatkowy z zasilaniem bateryjnym
Raspberry Pi na wolności ! Wydłużony czas poklatkowy z zasilaniem bateryjnym
Raspberry Pi na wolności ! Wydłużony czas poklatkowy z zasilaniem bateryjnym
Raspberry Pi na wolności ! Wydłużony czas poklatkowy z zasilaniem bateryjnym
Raspberry Pi na wolności ! Wydłużony czas poklatkowy z zasilaniem bateryjnym
Raspberry Pi na wolności ! Wydłużony czas poklatkowy z zasilaniem bateryjnym

Motywacja: Chciałem użyć zasilanej bateryjnie kamery Raspberry Pi do robienia zdjęć raz dziennie w plenerze, aby tworzyć długoterminowe filmy poklatkowe. Moje szczególne zastosowanie to rejestrowanie wzrostu roślin okrywowych tej nadchodzącej wiosny i lata.

Wyzwanie: Zaprojektuj niskoprądowe sterowanie zasilaniem Raspberry Pi, aby zapewnić długą żywotność baterii.

Moje rozwiązanie: Używam zhakowanego budzika, obwodu Attiny85 i podkładki Pimoroni OnOff, aby całkowicie odciąć zasilanie Raspberry Pi, gdy nie jest używane. Podczas gdy Attiny85 i budzik nadal działają w trybie gotowości, pobór prądu wynosi tylko 5 mikroamperów. Dwie baterie AAA zasilają zarówno Attiny, jak i budzik, podczas gdy power bank USB zasila Pi.

Podstawowa obsługa: Kiedy budzik się włączy, budzi śpiący obwód Attiny, który następnie sygnalizuje podkładce Pimoroni OnOff zasilanie z banku zasilania USB do Raspberry Pi. Pi wykonuje skrypt run-at-boot (zrób zdjęcie). Po upływie wystarczającego czasu (w mojej aplikacji 60 sekund), obwód Attiny ponownie sygnalizuje podkładkę Pimoroni OnOff, a następnie Attiny przechodzi w tryb uśpienia. W oparciu o sygnał z Attiny podkładka Pimoroni OnOff wykonuje polecenie wyłączenia Pi, a po zakończeniu procesu wyłączania Pi odcina zasilanie z banku zasilania USB do Raspberry Pi.

Krok 1: Części i narzędzia

Części i narzędzia
Części i narzędzia
Części i narzędzia
Części i narzędzia

Części:

Raspberry Pi Zero lub Raspberry Pi Zero W (pobiera więcej mocy)

Moduł kamery Raspberry PI

Obudowa Raspberry Pi Zero

Pimoroni ONOFF SHIM RASP PI PRZEŁĄCZNIK ZASILANIA, Digikey

Optoizolator Digikey

Cyfrowy budzik na baterie docelowy

ATtiny85 8 DIP Digikey

(2) CAP ALUM 100UF Digikey

Moduł RTC DS3231

(2) rezystor 68 omów

Krótki (około 6 cali) kabel micro USB

Clear Box Amac SKU nr: 60120. 4 "x 4" x 5-1/16 "h The Container Store

Powerbank USB Kmashi 11200 mAh # k-mp806 lub podobny

Podwójna taśma klejąca

Mała śruba samogwintująca

(2) 1X8-pinowe żeńskie nagłówki do układania w stosy-powszechnie sprzedawane nagłówki do układania w stosy Arduino UNO

Płyta perforowana lub striptiz około 1 1/4 "na 2"

5 1/2 na 5/12 na 3/4 grubości sosna lub sklejka

1 1/4 rury PVC o długości około 15 cali

1 1/4 łącznik PCV

(2) krótkie linki bungee o długości około 10 cali

(4) drewniane kołki ustalające o średnicy 1/4 cala o długości około 1 cala

UltraDeck Natural Post Sleeve Cap Menards

Narzędzia:

Przecinaki do drutu i lutownica

Arduino UNO lub inny sposób programowania ATtiny85

Podłącz przewód i zworki

Klawiatura, mysz, monitor HDMI, port USB i koncentrator Ethernet, kabel OTG

Multimetr

Krok 2: Zainstaluj Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC i moduł kamery Pi

Zainstaluj Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC i moduł kamery Pi
Zainstaluj Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC i moduł kamery Pi
Zainstaluj Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC i moduł kamery Pi
Zainstaluj Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC i moduł kamery Pi
Zainstaluj Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC i moduł kamery Pi
Zainstaluj Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC i moduł kamery Pi

Konfiguracja Pi Zero. Przygotuj kartę SD dla Raspberry Pi z wybraną przez Ciebie dystrybucją. Podczas początkowej konfiguracji, pamiętaj o włączeniu interfejsu I2C, kamery i rozruchu do CLI z automatycznym logowaniem, ustaw poprawny czas lokalny i zmień hasło. Zalecam również skonfigurowanie statycznego adresu IP, aby ułatwić sobie pracę. Przylutuj męski nagłówek do Pi Zero. Możesz użyć standardowej listwy 2 x 20 lub krótszej listwy 2 x 6, ponieważ wszystkie 40 pinów nie są wymagane w tym projekcie - tylko pierwsze 12 pinów.

Instalacja kamery. Włóż Pi Zero do obudowy i użyj dołączonego krótkiego kabla taśmowego, aby połączyć moduł kamery z Pi Zero, wyprowadzając kabel z gniazda końcowego obudowy. Załóż górną pokrywę z otworami GPIO i przymocuj kamerę do pokrywy za pomocą podwójnej taśmy klejącej (patrz zdjęcie).

Przygotuj podkładkę Pimoroni OnOff, DS3231 RTC. Chociaż podkładka Pimoroni OnOff Shim jest dostarczana z żeńskim nagłówkiem 2 x 6, zamiast tego użyłem dwóch żeńskich nagłówków układających 1 x 6 powszechnie sprzedawanych dla Arduino UNO. 5, 7, 9, pozostałe styki można przyciąć do standardowej długości. Wciśnij DS3231 RTC na rozszerzone szpilki, jak pokazano na zdjęciu, a następnie wciśnij podzespół Pimoroni OnOff Shim i DS3231 RTC na szpilki nagłówka Raspberry Pi jak pokazano.

Zainstaluj oprogramowanie Pimoroni OnOff Shim za pomocą:

curl https://get.pimoroni.com/onoffshim | grzmotnąć

Więcej informacji na temat instalacji Shim znajdziesz tutaj

Zainstaluj oprogramowanie DS3231 RTC zgodnie z tymi instrukcjami

Wstępne testy - kamera, podkładka Pimoroni OnOff, DS3231 RTC

Podłącz lokalną klawiaturę i monitor do Pi Zero. Upewnij się, że masz połączenie sieciowe (kabel Ethernet lub Wi-Fi). Podłącz kabel zasilający USB Pimoroni OnOff Shim.

a. Naciśnij przycisk Pimoroni OnOff Shim przez 3 sekundy, a następnie zwolnij – to włącza lub wyłącza Pi Zero. Obserwuj proces uruchamiania i zamykania na monitorze. Twoje Pi Zero ma teraz zaawansowaną technologię - włącznik/wyłącznik!

b. Ustaw czas DS3231 i sprawdź, czy odczytuje poprawny czas za pomocą:

sudo hwclock -w

sudo hwclock -r

C. Przetestuj działanie kamery zgodnie z tymi instrukcjami.

Krok 3: Skonfiguruj skrypt uruchamiania Raspberry Pi i testuj kamerę

Skonfiguruj skrypt uruchamiania Raspberry Pi i kamerę testową
Skonfiguruj skrypt uruchamiania Raspberry Pi i kamerę testową

Utwórz i przenieś się do nowego podkatalogu zerocam

mkdir zerocam

cd zerocam

Użyj edytora nano, aby utworzyć nowy plik skryptu

nano zdjęcie.sh

Następnie skopiuj i wklej poniższy kod do edytora nano. Zamknij nano z Ctrl + X, Y, a następnie Return.

#!/kosz/bash

DATE=$(data +"%Y-%m-%d_%H%M") raspistill -o /home/pi/zerocam/$DATE-j.webp

Ponieważ ten skrypt używa polecenia convert, musisz zainstalować ImageMagick na Raspberry Pi

aktualizacja sudo apt-get

sudo apt-get zainstaluj imagemagick

Uczyń plik wykonywalnym

chmod +x zdjęcie.sh

Otwórz /etc/rc.local (polecenia w tym pliku uruchamiane podczas rozruchu)

sudo nano /etc/rc.local

W dolnej części pliku, tuż przed poleceniem exit 0, dodaj tę nową linię, a następnie zamknij nano za pomocą Ctrl+X, Y, a następnie Return.

sh /home/pi/zerocam/photo.sh

Po podłączeniu lokalnego monitora sprawdź, czy działa

ponowne uruchomienie sudo

Pi powinno się zrestartować i zrobić zdjęcie. W katalogu /home/pi/zerocam pojawi się nowy plik.jpg

Przetestuj również włączanie i wyłączanie Pi za pomocą przycisku Pimoroni. Zmierz i zapisz czas rozruchu Pi. Powinno to mniej niż 60 sekund.

Krok 4: Zhakuj budzik

Hack Budzik
Hack Budzik
Hack Budzik
Hack Budzik
Hack Budzik
Hack Budzik

Obserwuj, jak zostało wykonane działanie - Zainstaluj dwie baterie AAA w budziku i przećwicz ustawianie godziny i alarmu zgodnie z dołączonymi instrukcjami. W szczególności zwróć uwagę na dźwięk alarmu - powinieneś zobaczyć (1) migający mały symbol alarmu na wyświetlaczu, (2) brzęczyk brzmi przez 1 minutę, a następnie wyłącza się i (3) dioda LED podświetlenia świeci przez 5 sekund, a następnie gaśnie.

Zdemontuj - usuń cztery śruby z tyłu zegara, aby oddzielić dwie połówki, a następnie wykręć cztery dodatkowe śruby, aby uwolnić główną płytkę drukowaną.

Hack - Przytnij przewody LED z przodu płytki PCB, jak pokazano i przylutuj do przewodów o długości 5 do pozostałych przewodów z tyłu płytki drukowanej (patrz ilustracja). Odlutuj brzęczyk, jak pokazano.

Do zacisków komory baterii dodaj dwa dodatkowe przewody (czerwony i czarny) oraz kondensator elektrolityczny 100MFD, jak pokazano (zwróć uwagę na polaryzację).

Zmontuj zegar, upewniając się, że dioda LED i nowa bateria są wyprowadzone z gniazd mocujących tylną pokrywę, jak pokazano.

Retest - Zainstaluj baterie i przetestuj funkcję alarmu - teraz, gdy alarm się włączy, powinieneś zobaczyć migający mały symbol alarmu na wyświetlaczu - ale bez brzęczyka i bez podświetlenia. Podłącz multimetr do przewodów LED, powinieneś wykryć około 3 VDC, gdy alarm włączy się w okresie około 5 sekund.

Krok 5: Zbuduj płytkę drukowaną Attiny85

Zbuduj płytkę drukowaną Attiny85
Zbuduj płytkę drukowaną Attiny85
Zbuduj płytkę drukowaną Attiny85
Zbuduj płytkę drukowaną Attiny85

Nawiązując do zdjęcia i Attiny85 Schematic.pdf, zbuduj płytkę drukowaną na małym kawałku płyty perforowanej lub paskowej. Uwagi:

  • Pamiętaj, aby użyć 8-pinowego gniazda DIP dla układu Attiny85, ponieważ należy je usunąć w celu programowania.
  • Zapewnij prawidłową orientację Optos przed lutowaniem.
  • Zworki prowadzące do Pimoroni Shim powinny mieć co najmniej 4 cale długości z żeńskimi nagłówkami do mocowania męskich pinów Shims BTN.
  • Zwróć uwagę na polaryzację podczas wykonywania połączeń z kliknięciem alarmowym - obwód nie ma zabezpieczenia przed odwrotną polaryzacją

Krok 6: Prześlij kod do układu Attiny 85

Za pomocą Arduino Uno lub w inny sposób prześlij kod (załączony plik AttinyPiPowerControl.ino) do układu Attiny85. Uwaga - ten kod pozwala na uruchomienie PI przez 60 sekund, zrobienie zdjęcia i przejście do wiersza poleceń terminala przed rozpoczęciem procesu zamykania. Następnie możesz zainstalować układ Attiny85 w gnieździe płytki drukowanej - dokładnie sprawdź orientację.

Uwaga: Jeśli potrzebujesz więcej lub mniej środowiska uruchomieniowego Pi, po prostu edytuj ten wiersz na dole:

opóźnienie (60000); // pozwól Pi uruchomić się i uruchomić przez jakiś czas

Krok 7: Okablowanie i test wstępny oraz pobieranie plików zdjęć z PI

Okablowanie i test wstępny oraz pobieranie plików zdjęć z PI
Okablowanie i test wstępny oraz pobieranie plików zdjęć z PI

Okablowanie:

Podłącz power bank USB do portu micro USB podkładki Pimoroni. Podłącz przewody połączeniowe z płytki drukowanej Attiny85 do podkładki Pimoroni, upewnij się, że czarny przewód łączy się z najbardziej zewnętrznym stykiem BTN na podkładce Pimoroni.

Test:

Włóż 2 baterie AAA do budzika i ustaw zegar. Polecam również podłączenie portu HDMI Pi do lokalnego monitora.

Włącz alarm i ustaw go na kilka minut w przyszłość. Gdy włączy się alarm, powinieneś zobaczyć:

a. Ikona alarmu zegara zacznie migać

b. Po około 5 sekundach czerwona dioda LED Pimoroni Shim zapala się na 5 sekund

C. Pi zaczyna się uruchamiać

D. Po około 20 sekundach zapali się dioda aparatu i zostanie zrobione zdjęcie. Jeśli masz podłączony monitor lokalny, zobaczysz krótki podgląd zrobionego zdjęcia.

mi. Po kolejnych 40 sekundach Pi uruchamia się aż do wiersza poleceń terminala

F. Pi rozpoczyna proces wyłączania, po około 20 sekundach czerwona dioda LED Pimoroni Shim miga wskazując na odcięcie zasilania PI

Pobieranie plików zdjęć z PI

Podłączam PI do mojej sieci za pomocą kabla OTG i adaptera USB do Ethernet, zasilając Pi z brodawki ściennej. Następnie użyj WinSCP, aby pobrać pliki na mój komputer.

Krok 8: Zamontuj obudowę elektroniki

Zamontuj obudowę elektroniki
Zamontuj obudowę elektroniki
Zamontuj obudowę elektroniki
Zamontuj obudowę elektroniki
Zamontuj obudowę elektroniki
Zamontuj obudowę elektroniki

Przymocuj płytkę drukowaną Attiny85 do tylnej części budzika za pomocą małej śruby samogwintującej. Przymocuj PI do zegara za pomocą podwójnej taśmy klejącej, jak pokazano

Przymocuj zegar po lewej stronie do dna gabloty za pomocą taśmy dwustronnie klejącej

Przymocuj power bank USB do dolnej części gabloty za pomocą podwójnej taśmy samoprzylepnej, jak pokazano.

Umieść górną obudowę na dole gabloty, jak pokazano.

Krok 9: Skonstruuj kołek montażowy, montaż końcowy i wypuść PI na wolność

Skonstruuj kołek montażowy, montaż końcowy i uwolnij PI na wolności
Skonstruuj kołek montażowy, montaż końcowy i uwolnij PI na wolności
Skonstruuj kołek montażowy, montaż końcowy i uwolnij PI na wolności
Skonstruuj kołek montażowy, montaż końcowy i uwolnij PI na wolności
Skonstruuj słupek montażowy, montaż końcowy i uwolnij PI na wolności
Skonstruuj słupek montażowy, montaż końcowy i uwolnij PI na wolności
Skonstruuj kołek montażowy, montaż końcowy i uwolnij PI na wolności
Skonstruuj kołek montażowy, montaż końcowy i uwolnij PI na wolności

Dolny element: W kawałku drewna o wymiarach 5 1/2 X 5 1/2 wytnij 4 szczeliny 3/4" do wewnątrz z każdej strony, jak pokazano. Użyłem frezu frezarskiego 1/4, ale można również wiercić i piłować. w środku otwór na złączkę PVC 1 1/4. Idealny rozmiar otworu to 1 5/8", ale ponieważ miałem tylko otwornicę 1 3/4", użyłem tego i zbudowałem złączkę OD za pomocą taśmy kaczkowej. Klej połączenie na miejscu za pomocą żywicy epoksydowej.

Wyśrodkuj obudowę elektroniki nad drewnianym klockiem i zaznacz jej kontur. Następnie wywierć cztery otwory 1/4 z każdej strony, jak pokazano. Przyklej cztery drewniane kołki o średnicy 1" o średnicy 1/4" w tych otworach - pomoże to utrzymać obudowę na środku.

Górna część: wywierć cztery otwory 3/16" w pobliżu dolnej krawędzi każdego rozmiaru i włóż haki S o długości 3/4" w każdy otwór, zginając końce tak, aby nie odpadły. Na wewnętrznych krawędziach przyklej na gorąco 4 cztery kawałki drewna o grubości 1/2 - pomogą one utrzymać górną część wyśrodkowaną nad obudową.

Montaż końcowy: Włóż obudowę elektroniki między górną i dolną część i zabezpiecz dwoma linkami bungee, jak pokazano

Wypuść PI na wolność: Zrób kołek montażowy, wycinając 1 1/4 rury PVC o długości odpowiedniej do twoich celów, odetnij jeden koniec pod kątem 45 stopni, aby ułatwić wbicie się w ziemię. W moim przypadku ja' Jestem zainteresowany wzrostem roślin okrywowych (Vinea minor) tej wiosny, więc moja kołka z PVC ma tylko 15 cali długości. Dokładnie sprawdź, czy baterie AAA są świeże, power bank USB jest w pełni naładowany, a budzik jest prawidłowo ustawiony - następnie wbij kołek w ziemię i wsuń zespół na kołek montażowy - patrz zdjęcie.

Krok 10: Pomiary prądu i przyspieszony test żywotności baterii

Pomiary prądu i przyspieszony test żywotności baterii
Pomiary prądu i przyspieszony test żywotności baterii
Pomiary prądu i przyspieszony test żywotności baterii
Pomiary prądu i przyspieszony test żywotności baterii
Pomiary prądu i przyspieszony test żywotności baterii
Pomiary prądu i przyspieszony test żywotności baterii
Pomiary prądu i przyspieszony test żywotności baterii
Pomiary prądu i przyspieszony test żywotności baterii

Zmierzyłem prąd za pomocą multimetru Radio Shack RS-232 (22-812) i towarzyszącego mu oprogramowania Meter View. Nie najlepszy wybór, ale to właśnie mam.

Pomiar poboru prądu z dwóch baterii AAA zasilających płytkę Attiny85 i budzik

Do multimetru „series connect” użyłem atrapy baterii i zasilacza ławkowego 3 VDC (patrz zdjęcie). Zobacz wykres prądu mierzonego w okresie "aktywnym" (zaczyna się zdarzeniem alarmowym - kończy się przejściem Attiny85 do trybu uśpienia). Pobór bez alarmu wynosił 0,0049 mA. Streszczenie -

Okres aktywności = 78 sekund

Śr. Prąd = 4,85 mA

Prąd niealarmowy = 4,9 mikroA (0,0049 mA)

Obliczyłem średni dzienny pobór prądu 0,0093 mA z dwóch AAA (750 mAh/każdy) biorąc pod uwagę tryb uśpienia i tryb aktywny oraz teoretyczną żywotność baterii > 8 lat przy użyciu tej metody.

Pomiar poboru prądu PI z powerbanku USB. Do "połączenia szeregowego" multimetru użyłem zmodyfikowanego kabla usb (patrz zdjęcie). Zobacz wykres prądu mierzonego w okresie „aktywnym” (rozruch PI - wyłączenie PI). W okresie nieaktywności podkładka Pimoroni ONOFF całkowicie odcina zasilanie do Pi, więc pobór prądu ~ zero. Streszczenie -

Okres aktywności = 97 sekund

Śr. Prąd = 137 mA

Zakładając power bank 11200 mAh teoretyczna liczba cykli aktywnych okresów wynosi > 3000.

Przyspieszony test żywotności baterii

Tymczasowo kontrolowałem PI za pomocą Arduino UNO zaprogramowanego na szybką jazdę - czas między alarmami wynosił 2 minuty w porównaniu do normalnych 24 godzin.

Test nr 1: bank mocy 11200 mAh. Rozpocząłem o 22.00 i zatrzymałem się o 13.00 następnego dnia. Wyniki: zrobiono 413 zdjęć, 3 z 4 diod LED wskazujących poziom naładowania nadal świeci się na koniec testu.

Test #2: power bank 7200 mAh. Rozpocząłem o 19:30 i zatrzymałem się o 16:30 następnego dnia. Wyniki: zrobiono 573 zdjęcia, 2 z 4 diod LED poziomu naładowania nadal się świeci po zakończeniu testu.

Wniosek: wydaje mi się, że powyższe wyniki wskazują na prawdopodobną co najmniej roczną operację przy 1 na zdjęciu.

Zalecana: