Kazalo:

Raspberry Pi v naravi! Podaljšani časovni zamik z močjo baterije: 10 korakov (s slikami)
Raspberry Pi v naravi! Podaljšani časovni zamik z močjo baterije: 10 korakov (s slikami)

Video: Raspberry Pi v naravi! Podaljšani časovni zamik z močjo baterije: 10 korakov (s slikami)

Video: Raspberry Pi v naravi! Podaljšani časovni zamik z močjo baterije: 10 korakov (s slikami)
Video: CS50 2015 - Week 5 2024, November
Anonim
Raspberry Pi v naravi! Podaljšan časovni zamik z močjo baterije
Raspberry Pi v naravi! Podaljšan časovni zamik z močjo baterije
Raspberry Pi v naravi! Podaljšan časovni zamik z napajanjem iz baterije
Raspberry Pi v naravi! Podaljšan časovni zamik z napajanjem iz baterije
Raspberry Pi v naravi! Podaljšan časovni zamik z napajanjem iz baterije
Raspberry Pi v naravi! Podaljšan časovni zamik z napajanjem iz baterije

Motivacija: Želel sem uporabiti fotoaparat Raspberry Pi z baterijo, da bi enkrat na dan fotografiral na prostem in ustvarjal dolgoročne videoposnetke s časovnim zamikom. Moja posebna aplikacija je zabeležiti rast rastlin na tleh prihodnjo pomlad in poletje.

Izziv: Oblikujte nizkotočni nadzor moči Raspberry Pi, da zagotovite dolgo življenjsko dobo baterije.

Moja rešitev: Uporabljam vdrto budilko, vezje Attiny85 in podlogo Pimoroni OnOff, da popolnoma prekinem napajanje Raspberry Pi, ko ga ne uporabljam. Medtem ko Attiny85 in budilka še naprej delujeta v stanju pripravljenosti, je trenutna poraba le 5 mikroAmp. Dve bateriji AAA napajata Attiny in budilko, medtem ko napajalnik USB napaja Pi.

Osnovno delovanje: Ko se budilka izklopi, zbudi spalno vezje Attiny, ki nato signalizira Pimoronijevemu vklopu OnOff, da napaja iz napajalnega kabla USB na Raspberry Pi. Pi izvede skript run-at-boot (naredi fotografijo). Ko preteče dovolj časa (60 sekund v moji aplikaciji), vezje Attiny znova signalizira Pimoroni OnOff shim, nato pa Attiny preklopi v način spanja. Na podlagi signala Attinyja podloga Pimoroni OnOff izvede ukaz za zaustavitev Pi in po zaključku postopka zaustavitve Pi prekine napajanje iz napajalnika USB v Raspberry Pi.

Korak: Deli in orodja

Deli in orodja
Deli in orodja
Deli in orodja
Deli in orodja

Deli:

Raspberry Pi Zero ali Raspberry Pi Zero W (črpa več energije)

Modul kamere Raspberry PI

Ohišje Raspberry Pi Zero

Pimoroni ONOFF SHIM RASP PI POWER SWITCH, Digikey

OPTOISOLATOR Digikey

Digitalni cilj budilke na baterije

ATtiny85 8 DIP Digikey

(2) KAPA ALUM 100UF Digikey

DS3231 RTC modul AliExpress

(2) 68 ohmski upor

Kratek (približno 6 palcev) kabel mikro USB

Clear Box Amac SKU#: 60120. 4 "x 4" x 5-1/16 "h Kontejnerska trgovina

USB napajalnik Kmashi 11200 mAh # k-mp806 ali podoben

Dvojni lepilni trak

Majhen samorezni vijak

(2) 1 X 8 -polne ženske zložljive glave - običajno se prodajajo zložljive glave Arduino UNO AliExpress

Perf plošča ali trak približno 1 1/4 "do 2"

5 1/2 x 5/12 x 3/4 debelega bora ali vezanega lesa

1 1/4 PVC cev dolga približno 15"

1 1/4 PVC spojka

(2) kratke bungee vrvice, dolge približno 10"

(4) Leseni zatiči za moznike premera 1/4 ", dolgi približno 1"

UltraDeck naravni ovratni pokrovček z rokavi

Orodja:

Rezalniki žice in spajkalnik

Arduino UNO ali drug način programiranja ATtiny85

Priključite žico in mostičke

Tipkovnica, miška, monitor HDMI, vrata USB in zvezdišče Ethernet, OTG kabel

Mulitmeter

Korak: Namestite Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC in modul Pi kamere

Namestite Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC in modul Pi kamere
Namestite Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC in modul Pi kamere
Namestite Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC in modul Pi kamere
Namestite Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC in modul Pi kamere
Namestite Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC in modul Pi kamere
Namestite Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC in modul Pi kamere

Nastavitev Pi Zero. Pripravite kartico SD za Raspberry Pi z distribucijo po vaši izbiri. Med začetnim postopkom namestitve obvezno omogočite vmesnik I2C, kamero in zagon v CLI s samodejno prijavo, nastavite pravilen lokalni čas in spremenite geslo. Priporočam tudi nastavitev statičnega naslova IP, da boste olajšali stvari. Spajkati moško glavo na Pi Zero. Uporabite lahko standardno glavo 2 x 20 ali krajšo glavo 2 x 6, saj vseh 40 zatičev za ta projekt ni potrebno - samo prvih 12 zatičev.

Namestitev kamere. Pripnite Pi Zero v ohišje in uporabite priloženi modul kamere s kratkim trakovnim kablom za povezavo s Pi Zero in napeljite kabel iz končne reže ohišja. Namestite zgornji pokrov z režo GPIO in pritrdite fotoaparat na pokrov z dvojnim trakom (glejte fotografijo).

Pripravite Pimoroni OnOff Shim, DS3231 RTC. Čeprav ima Pimoroni OnOff Shim priloženo 2 x 6 žensko glavo, sem namesto tega uporabil dve 1 x 6 ženski glavi za zlaganje, ki se običajno prodajajo za Arduino UNO, zatiči glave morajo biti razširjeni nad Pimoroni OnOff Shim na mestih pin Pin 1, 3, 5, 7, 9, druge zatiče lahko zmanjšate na standardno dolžino nožic. DS3231 RTC potisnite na razširjene zatiče, kot je prikazano na fotografiji, nato pa potisnite sklop Pimoroni OnOff Shim & DS3231 RTC na zatiče glave Raspberry Pi. kot je prikazano.

Namestite programsko opremo Pimoroni OnOff Shim z:

curl https://get.pimoroni.com/onoffshim | bash

Za dodatne informacije o namestitvi Shima poglejte tukaj

V skladu s temi navodili namestite programsko opremo DS3231 RTC

Začetni testi - kamera, Pimoroni OnOff Shim, DS3231 RTC

Lokalno tipkovnico in monitor priključite na Pi Zero. Prepričajte se, da imate omrežno povezavo (ethernetni kabel ali Wi -Fi). Priključite napajalni kabel USB Pimoroni OnOff Shim.

a. Pritisnite gumb Pimoroni OnOff Shim za 3 sekunde in ga nato spustite - s tem vklopite ali izklopite Pi Zero. Opazujte postopek zagona in zaustavitve na monitorju. Vaš Pi Zero ima zdaj napredno tehnološko nadgradnjo - stikalo za vklop/izklop!

b. Nastavite čas DS3231 in preverite, ali odčita pravilen čas z:

sudo hwclock -w

sudo hwclock -r

c. Preverite delovanje kamere v skladu s temi navodili.

3. korak: Namestite skript Run-At-Boot za zagon Raspberry Pi in preizkusite kamero

Namestite Raspberry Pi skript za zagon in preskusno kamero
Namestite Raspberry Pi skript za zagon in preskusno kamero

Ustvarite in se premaknite v nov podimenik zerocam

mkdir zerocam

cd zerocam

Za ustvarjanje nove skriptne datoteke uporabite urejevalnik nano

nano photo.sh

Nato kopirajte in prilepite spodnjo kodo v urejevalnik nano. Zapri nano s Ctrl+X, Y in nato vrni.

#!/bin/bash

DATE = $ (datum +"%Y-%m-%d_%H%M") raspistill -o /home/pi/zerocam/$DATE.jpg pretvori -točka 80 -polni rumeno -nariši "besedilo 570, 1800 ' $ (date) '"/home/pi/zerocam/$DATE.jpg /home/pi/zerocam/$DATE.jpg

Ker ta skript uporablja ukaz convert, boste morali namestiti ImageMagick na Raspberry Pi

sudo apt-get posodobitev

sudo apt-get install imagemagick

Naj bo datoteka izvedljiva

chmod +x photo.sh

Odpri /etc/rc.local (ukazi v tej datoteki se izvajajo ob zagonu)

sudo nano /etc/rc.local

Pri dnu datoteke, tik pred stavkom exit 0, dodajte to novo vrstico in nato zaprite nano s Ctrl+X, Y in nato Return.

sh /home/pi/zerocam/photo.sh

Ko je priključen lokalni monitor, preverite, ali deluje

sudo ponovni zagon

Pi se mora znova zagnati in posneti fotografijo. V imeniku/home/pi/zerocam bo nova datoteka.jpg

Preizkusite tudi vklop in izklop Pi s pritiskom na gumb Pimoroni. Izmerite in zabeležite čas zagona Pi. Trajalo naj bi manj kot 60 sekund.

4. korak: Hack budilke

Hack Budilka
Hack Budilka
Hack Budilka
Hack Budilka
Hack Budilka
Hack Budilka

Opazujte kot opravljeno delovanje - V budilko vstavite dve bateriji AAA in vadite nastavitev časa in alarma po priloženih navodilih. Zlasti opazujte zvonjenje alarma - videti morate (1), da utripa mali simbol alarma na zaslonu, (2) zvonec se oglasi 1 minuto, nato ugasne in (3) lučka za zadnjo luč zasveti 5 sekund, nato pa ugasne.

Razstavite - Odstranite štiri vijake z ure nazaj, da ločite dve polovici, nato odstranite še štiri vijake, da sprostite glavno tiskano vezje.

Hack - Odrežite LED vodnike na sprednji strani tiskanega vezja, kot je prikazano, in spajkajte na 5 dolge žice na preostale kable na hrbtni strani tiskanega vezja (glejte sliko). Odlepite brenčalec, kot je prikazano.

Na priključke prostora za baterije dodajte dve dodatni žici (rdečo in črno) ter elektrolitski kondenzator 100MFD, kot je prikazano (upoštevajte polarnost).

Ponovno sestavite uro, pri tem pazite, da LED in nova baterija vodi skozi zadrževalne reže na zadnjem pokrovu, kot je prikazano.

Ponovno preizkusite - vstavite baterije in preizkusite funkcijo alarma - zdaj, ko se alarm sproži, boste morali utripati mali simbol alarma na zaslonu - vendar brez brenčal in brez osvetlitve ozadja. Priključite multitmeter na LED vodnike, ko zaznate alarm v obdobju približno 5 sekund, morate zaznati približno 3 VDC.

5. korak: Zgradite vezje Attiny85

Zgradite vezje Attiny85
Zgradite vezje Attiny85
Zgradite vezje Attiny85
Zgradite vezje Attiny85

Sklicujoč se na fotografijo in Attiny85 Schematic.pdf sestavite vezje na majhnem kosu plošče perf ali traku. Opombe:

  • Za čip Attiny85 uporabite 8 -polno DIP vtičnico, saj jo je treba za programiranje odstraniti.
  • Pred spajkanjem zagotovite pravilno usmeritev optosa.
  • Jumper vodi do Pimoroni Shim mora biti dolg najmanj 4 cm z ženskimi glavami za pritrditev moških zatičev Shims BTN.
  • Pri vzpostavljanju povezave z alarmnim klikom upoštevajte polarnost - vezje nima zaščite pred povratno polariteto

Korak 6: Naložite kodo na čip Attiny 85

Z Arduino Uno ali drugimi sredstvi naložite kodo (priložena datoteka AttinyPiPowerControl.ino) na svoj čip Attiny85. Opomba - ta koda omogoča 60 sekund, da se PI zažene, fotografira in pride v ukazni poziv terminala, preden začne postopek zaustavitve. Nato lahko namestite čip Attiny85 v vtičnico na tiskanem vezju - dvakrat preverite usmerjenost.

Opomba: Če potrebujete več ali manj časa delovanja Pi, samo uredite to vrstico pri dnu:

zamuda (60000); // pustimo, da se Pi zažene in nekaj časa teče

7. korak: Ožičenje in začetni preskus ter prenos foto datotek iz PI

Ožičenje in začetni preskus ter prenos foto datotek iz PI
Ožičenje in začetni preskus ter prenos foto datotek iz PI

Ožičenje:

Napajalnik USB priključite na vrata micro usb Pimoroni shim. Priključite kable mostička z vezja Attiny85 na podložko Pimoroni in se prepričajte, da se črni kabel poveže z zunanjim robom BTN zatiča na Pimoronijevi podložki.

Test:

V budilko vstavite 2 bateriji AAA in nastavite uro. Priporočam tudi priključitev Pi -jevih vrat HDMI na lokalni monitor.

Vklopite alarm in nastavite alarm nekaj minut v prihodnosti. Ko se alarm oglasi, bi morali videti:

a. Ikona alarma ure začne utripati

b. Po približno 5 sekundah se za 5 sekund prižge rdeča LED dioda Pimoroni Shim

c. Pi se zažene

d. Po približno 20 sekundah zasveti LED kamera in posname se fotografija. Če imate priključen lokalni monitor, boste videli kratek predogled posnete fotografije.

e. Po približno 40 sekundah se Pi zažene vse do terminalskega ukaznega poziva

f. Pi zažene postopek zaustavitve, po približno 20 sekundah utripa rdeča LED dioda Pimoroni Shim, kar kaže, da je napajanje prekinjeno na PI

Prenos datotek s fotografijami iz PI

PI povežem v svoje omrežje s kablom OTG in USB v ethernetni adapter, ki napaja Pi iz stenske bradavice. Nato uporabite WinSCP za prenos datotek v računalnik.

8. korak: Sestavite ohišje elektronike

Sestavite ohišje za elektroniko
Sestavite ohišje za elektroniko
Sestavite ohišje za elektroniko
Sestavite ohišje za elektroniko
Sestavite ohišje za elektroniko
Sestavite ohišje za elektroniko

Pritrdite vezje Attiny85 na zadnji del budilke z majhnim samoreznim vijakom. PI pritrdite na uro z dvojnim trakom, kot je prikazano

Levo stran ure na dno vitrine pritrdite z dvojnim trakom

Priključite napajalno enoto USB na dno vitrine z dvojnim trakom, kot je prikazano.

Zgornjo ohišje postavite na dno vitrine, kot je prikazano.

9. korak: Konstruirajte montažni vložek, končno montažo in spustite PI v divjino

Konstruirajte montažni vložek, končno montažo in spustite PI v divjino
Konstruirajte montažni vložek, končno montažo in spustite PI v divjino
Konstruirajte montažni vložek, končno montažo in spustite PI v divjino
Konstruirajte montažni vložek, končno montažo in spustite PI v divjino
Konstruirajte montažni vložek, končno montažo in spustite PI v divjino
Konstruirajte montažni vložek, končno montažo in spustite PI v divjino
Konstruirajte montažni vložek, končno montažo in spustite PI v divjino
Konstruirajte montažni vložek, končno montažo in spustite PI v divjino

Spodnji del: V 5 1/2 X 5 1/2 kosu lesa izrežite 4 reže 3/4 "navznoter z vsake strani, kot je prikazano. Uporabil sem 1/4 stružnico, lahko pa tudi vrtate in žagate. sredina naredi luknjo za 1 1/4 PVC sklopko. Idealna velikost luknje je 1 5/8 ", a ker sem imel samo žago za luknjo 1 3/4", sem jo uporabil in z račnim trakom sestavil OD sklopke. na mestu spajanja z epoksidom.

Ohišje za elektroniko centrirajte nad leseni blok in označite njegov obris. Nato izvrtajte štiri 1/4 luknje vzdolž vsake strani, kot je prikazano. V te luknje prilepite štiri 1 "dolge 1/4" lesene moznike - tako boste ohranili ohišje na sredini.

Zgornji del: izvrtajte štiri luknje 3/16 "blizu spodnjega roba vsake velikosti in v vsako luknjo vstavite 3/4" dolge S-kljuke, ki upognejo konce, da ne odpadejo. Na notranjih robovih vroče lepilo 4 štiri 1/2 debele ostanke lesa - ti bodo pomagali ohraniti zgornji del v središču nad ohišjem.

Končna montaža: Ohišje elektronike stisnite med zgornji in spodnji del in ga pritrdite z dvema bungee vrvicama, kot je prikazano

Spustite PI v divjino: Naredite montažni vložek tako, da odrežete 1 1/4 "PVC cev dolžine, ki ustreza vašim namenom, en konec odrežite pod kotom 45 stopinj, da boste lažje udarjali v tla. V mojem primeru sem Mene spomladi zanima rast rastlin na tleh (Vinea minor), zato je moj PVC vložek dolg le 15 ". Dvakrat preverite, ali so baterije AAA sveže, napajalnik USB je popolnoma napolnjen in je budilka pravilno nastavljena - nato udarite kol v tla in zdrsnite sklop na vrhu nosilca - glejte fotografijo.

10. korak: Trenutne meritve in preskus pospešene življenjske dobe baterije

Trenutne meritve in preskus pospešene življenjske dobe baterije
Trenutne meritve in preskus pospešene življenjske dobe baterije
Trenutne meritve in preskus pospešene življenjske dobe baterije
Trenutne meritve in preskus pospešene življenjske dobe baterije
Trenutne meritve in preskus pospešene življenjske dobe baterije
Trenutne meritve in preskus pospešene življenjske dobe baterije
Trenutne meritve in preskus pospešene življenjske dobe baterije
Trenutne meritve in preskus pospešene življenjske dobe baterije

Meril sem tok z uporabo multimeterja Radio Shack RS-232 (22-812) in spremljajoče programske opreme Meter View. Ni izbira zveri, ampak to imam.

Merjenje porabe toka iz dveh AAA baterij, napajanje plošče Attiny85 in budilke

Za "serijsko povezavo" multimeter sem uporabil lutke in 3 VDC napajalnik (glej fotografijo). Oglejte si graf toka, izmerjenega v "aktivnem" obdobju (začne se z alarmnim dogodkom - konča z vrnitvijo Attiny85 v način mirovanja). Poraba brez alarma je bila konstantna 0,0049 mA. Povzetek -

Aktivno obdobje = 78 sekund

Povpr. Aktivnega obdobja Tok = 4,85 mA

Ne-alarmni tok = 4,9 mikroA (0,0049 mA)

Izračunal sem povprečno dnevno porabo toka 0,0093 mA iz dveh AAA (750 mAh/vsak) glede na spalni in aktivni način ter teoretično življenjsko dobo baterije> 8 let s to metodo.

Merjenje porabe toka PI iz USB powerbank. Za serijsko povezavo multimetra sem uporabil spremenjen USB kabel (glej fotografijo). Oglejte si graf toka, izmerjenega v "aktivnem" obdobju (zagon PI - zaustavitev PI). V času neaktivnosti podloga Pimoroni ONOFF popolnoma prekine napajanje Pi, zato tok potegne ~ nič. Povzetek -

Aktivno obdobje = 97 sekund

Povpr. Aktivnega obdobja Tok = 137 mA

Ob predpostavki, da je napajalnik 11200 mAh, je teoretično število ciklov aktivnega obdobja> 3000.

Preskus pospešene življenjske dobe baterije

PI sem začasno nadzoroval z Arduino UNO, programiranim za hitro kolesarjenje - čas med alarmi je bil 2 minuti v primerjavi z običajnimi 24 urami.

Test #1: 11200mAh napajalna banka. Začelo se je ob 22. uri in naslednji dan sem se ustavilo ob 13. uri. Rezultati: 413 posnetih fotografij, 3 od 4 LED napolnjenosti še vedno svetijo na koncu testa.

Preizkus #2: Napajalnik 7200mAh. Začelo se je ob 19.30, naslednji dan pa sem se ustavil ob 16.30. Rezultati: 573 posnetih fotografij, 2 od 4 LED napolnjenosti še vedno sveti na koncu testa.

Zaključek: Verjamem, da zgornji rezultati kažejo, da je verjetna vsaj ena letna operacija z 1 na fotografijo.

Priporočena: