Sadržaj:

Raspberry Pi u divljini! Produženi vremenski interval sa napajanjem baterije: 10 koraka (sa slikama)
Raspberry Pi u divljini! Produženi vremenski interval sa napajanjem baterije: 10 koraka (sa slikama)

Video: Raspberry Pi u divljini! Produženi vremenski interval sa napajanjem baterije: 10 koraka (sa slikama)

Video: Raspberry Pi u divljini! Produženi vremenski interval sa napajanjem baterije: 10 koraka (sa slikama)
Video: CS50 2014 – 7-я неделя 2024, Juli
Anonim
Raspberry Pi u divljini! Produženi vremenski interval s napajanjem iz baterije
Raspberry Pi u divljini! Produženi vremenski interval s napajanjem iz baterije
Raspberry Pi u divljini! Produženi vremenski interval s napajanjem iz baterije
Raspberry Pi u divljini! Produženi vremenski interval s napajanjem iz baterije
Raspberry Pi u divljini! Produženi vremenski interval s napajanjem iz baterije
Raspberry Pi u divljini! Produženi vremenski interval s napajanjem iz baterije

Motivacija: Htio sam upotrijebiti Raspberry Pi kameru na baterije za snimanje fotografija jednom dnevno na otvorenom za stvaranje dugoročnih video zapisa s vremenskim odmakom. Moja posebna primjena je zabilježiti rast biljnih pokrivača ovog proljeća i ljeta.

Izazov: Dizajnirajte niskostrujnu kontrolu snage Raspberry Pi kako biste osigurali dugo trajanje baterije.

Moje rješenje: Koristim hakirani budilnik, sklop Attiny85 i Pimoroni OnOff podlogu za potpuno isključivanje napajanja Raspberry Pi -a kada se ne koristi. Dok Attiny85 i budilica nastavljaju raditi u stanju pripravnosti, trenutna potrošnja je samo 5 mikroAmp. Dvije AAA baterije napajaju Attiny i budilicu, dok USB napaja Pi.

Osnovne operacije: Kada se alarm oglasi, on budi uspavani Attiny krug, koji zatim signalizira Pimoroni OnOff podlošku da napaja iz USB banke napajanja na Raspberry Pi. Pi izvršava skriptu run-at-boot (snimite fotografiju). Nakon što prođe dovoljno vremena (60 sekundi u mojoj aplikaciji), Attiny kolo ponovo signalizira Pimoroni OnOff shim, a zatim Attiny prelazi u stanje mirovanja. Na osnovu signala iz Attiny -a, Pimoroni OnOff podloga izvršava Pi naredbu za isključivanje, a nakon što se proces isključivanja Pi -a prekine, napajanje iz USB banke napajanja do Raspberry Pi -a.

Korak 1: Dijelovi i alati

Dijelovi i alati
Dijelovi i alati
Dijelovi i alati
Dijelovi i alati

Dijelovi:

Raspberry Pi Zero ili Raspberry Pi Zero W (crpi više energije)

Modul PI kamere za maline

Raspberry Pi Zero Case

Pimoroni ONOFF SHIM RASP PI PREKIDAČ POWER, Digikey

OPTOISOLATOR Digikey

Ciljak digitalnog budilnika na baterije

ATtiny85 8 DIP Digikey

(2) KAPA ALUM 100UF Digikey

DS3231 RTC modul AliExpress

(2) 68 ohmski otpornik

Kratki (oko 6 inča) mikro USB kabel

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

Kmashi 11200 mAh USB Power Bank # k-mp806 ili slično

Dvostruka ljepljiva traka

Mali samorezni vijak

(2) 1 X 8 -pinska ženska zaglavlja za slaganje - obično se prodaju Arduino UNO zaglavlja za slaganje AliExpress

Perf ili strip ploča oko 1 1/4 "po 2"

5 1/2 x 5/12 x 3/4 debljine bora ili šperploče

1 1/4 PVC cijev duga oko 15"

1 1/4 PVC spojnica

(2) kratki bungee kabeli dugački oko 10"

(4) Drveni igle za klinove promjera 1/4 "dugačke oko 1"

UltraDeck prirodni zatvarač s rukavima

Alati:

Rezači žice i lemilice

Arduino UNO ili neki drugi način programiranja ATtiny85

Priključite žicu i kratkospojnike

Tastatura, miš, HDMI monitor, USB port i Ethernet čvorište, OTG kabl

Mulitmetar

Korak 2: Instalirajte Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC i Pi kameru

Instalirajte Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC i Pi Camera Modul
Instalirajte Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC i Pi Camera Modul
Instalirajte Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC i Pi Camera Modul
Instalirajte Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC i Pi Camera Modul
Instalirajte Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC i Pi Camera Modul
Instalirajte Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC i Pi Camera Modul

Pi Zero podešavanje. Pripremite SD karticu za Raspberry Pi s distribucijom po vašem izboru. Tijekom početnog procesa postavljanja, obavezno omogućite I2C sučelje, kameru i podizanje sustava na CLI s automatskim prijavljivanjem, postavite ispravno lokalno vrijeme i promijenite lozinku. Preporučujem i postavljanje statičke IP adrese kako biste olakšali stvari. Lemljeno muško zaglavlje za Pi Zero. Možete koristiti standardno zaglavlje 2 x 20 ili kraće zaglavlje 2 x 6, jer za ovaj projekt nije potrebno svih 40 pinova - samo prvih 12 pinova.

Camera Install. Utaknite Pi Zero u kućište i upotrijebite priloženi kratki vrpčani kabel za povezivanje modula kamere s Pi Zero usmjeravanjem kabela vanjskog utora kućišta. Postavite gornji poklopac s prorezom za GPIO i pričvrstite kameru na poklopac dvostrukom ljepljivom trakom (pogledajte fotografiju).

Pripremite Pimoroni OnOff Shim, DS3231 RTC. Iako Pimoroni OnOff Shim dolazi sa ženskim zaglavljem 2 x 6, umjesto toga koristio sam dva 1 x 6 ženska zaglavlja za slaganje koja se obično prodaju za Arduino UNO, igle zaglavlja moraju se proširiti iznad Pimoroni OnOff Shima na Raspberry Pi pin lokacijama 1, 3, 5, 7, 9, drugi pinovi se mogu skratiti na standardnu dužinu pinova. Gurnite DS3231 RTC na produžene pinove kao što je prikazano na fotografiji, a zatim gurnite Pimoroni OnOff Shim & DS3231 RTC podsklop na pinove zaglavlja Raspberry Pi kako je prikazano.

Instalirajte softver Pimoroni OnOff Shim sa:

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

Za dodatne informacije o instaliranju Shima pogledajte ovdje

Instalirajte softver DS3231 RTC prema ovim uputama

Početna ispitivanja - Kamera, Pimoroni OnOff Shim, DS3231 RTC

Spojite lokalnu tastaturu i monitor na Pi Zero. Provjerite imate li mrežnu vezu (ethernet kabel ili Wifi). Priključite USB kabl za napajanje Pimoroni OnOff Shim.

a. Pritisnite tipku Pimoroni OnOff Shim na 3 sekunde, a zatim je otpustite - ovo uključuje ili isključuje Pi Zero. Promatrajte postupak pokretanja i gašenja na monitoru. Vaš Pi Zero sada ima naprednu tehnološku nadogradnju - prekidač za uključivanje/isključivanje!

b. Postavite vrijeme DS3231 i provjerite da li čita točno vrijeme pomoću:

sudo hwclock -w

sudo hwclock -r

c. Testirajte funkciju kamere prema ovim uputama.

Korak 3: Postavite Raspberry Pi skriptu za pokretanje i testiranje kamere

Postavljanje Raspberry Pi skripte za pokretanje i testiranje
Postavljanje Raspberry Pi skripte za pokretanje i testiranje

Kreirajte i premjestite se u novi podkategoriju zerocam

mkdir zerocam

cd zerocam

Koristite nano editor za kreiranje nove datoteke skripte

nano photo.sh

Zatim kopirajte i zalijepite donji kod u nano editor. Zatvorite nano pomoću Ctrl+X, Y, a zatim se vratite.

#!/bin/bash

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

Budući da ova skripta koristi naredbu convert, morate instalirati ImageMagick na Raspberry Pi

sudo apt-get update

sudo apt-get install imagemagick

Učinite datoteku izvršnom

chmod +x photo.sh

Otvorite /etc/rc.local (naredbe u ovoj datoteci pokreću se pri pokretanju)

sudo nano /etc/rc.local

Pri dnu datoteke, neposredno prije naredbe exit 0, dodajte ovaj novi red, a zatim zatvorite nano pomoću Ctrl+X, Y, a zatim pritisnite Return.

sh /home/pi/zerocam/photo.sh

S priključenim lokalnim monitorom provjerite radi li

sudo reboot

Pi bi trebao ponovo pokrenuti sistem i snimiti fotografiju. U direktoriju/home/pi/zerocam bit će nova-j.webp

Takođe testirajte uključivanje i isključivanje Pi pomoću Pimoronijevog dugmeta. Izmerite i zabeležite vreme pokretanja Pi. Trebalo bi da traje manje od 60 sekundi.

Korak 4: Hakirajte budilicu

Hack Alarm Clock
Hack Alarm Clock
Hack Alarm Clock
Hack Alarm Clock
Hack Alarm Clock
Hack Alarm Clock

Promatrajte kao proizveden rad - Umetnite dvije AAA baterije u budilnik i uvježbajte postavljanje vremena i alarma prema priloženim uputama. Posebno promatrajte zvuk alarma - trebali biste vidjeti (1) mali simbol alarma na ekranu kako treperi, (2) zvučni signal se oglašava 1 minutu, zatim se isključuje i (3) LED svjetlo stražnjeg svjetla svijetli 5 sekundi, a zatim se isključuje.

Rastavite - Uklonite četiri vijka sa sata unatrag kako biste odvojili dvije polovice, a zatim uklonite još četiri vijka kako biste oslobodili glavnu PCB.

Hakiranje - Odrežite LED vodiče na prednjoj strani PCB -a kako je prikazano i lemite na 5 dugačke žice do preostalih vodiča na stražnjoj strani PCB -a (pogledajte sliku). Odlemite zujalicu kao što je prikazano.

Priključcima odjeljka za baterije dodajte dvije dodatne žice (crvenu i crnu) plus elektrolitički kondenzator od 100 MFD, kako je prikazano (obratite pažnju na polaritet).

Ponovno sastavite sat pazeći da LED i nova baterija izlaze van iz utora za pričvršćivanje stražnjeg poklopca, kao što je prikazano.

Ponovno testiranje - Postavite baterije i testirajte funkciju alarma - sada kada se alarm oglasi, trebali biste vidjeti kako mali simbol alarma na ekranu treperi - ali nema zujalice i nema pozadinskog osvjetljenja. Spojite multimetar na LED vodiče trebali biste otkriti oko 3 VDC kada se alarm oglasi u razdoblju od oko 5 sekundi.

Korak 5: Izgradite Attiny85 ploču

Napravite Attiny85 pločicu
Napravite Attiny85 pločicu
Napravite Attiny85 pločicu
Napravite Attiny85 pločicu

Pozivajući se na fotografiju i Attiny85 Schematic.pdf konstruirajte pločicu na malom komadu perf ploče ili trake. Napomene:

  • Obavezno koristite 8 -pinski DIP utičnicu za čip Attiny85 jer ga je potrebno ukloniti za programiranje.
  • Prije lemljenja osigurajte ispravnu orijentaciju Optosa.
  • Džemper vodi do Pimoroni Shim bi trebao biti dugačak najmanje 4 inča sa ženskim zaglavljima za pričvršćivanje muških igala Shims BTN.
  • Obratite pažnju na polaritet prilikom povezivanja sa alarmom - krug nema zaštitu od obrnutog polariteta

Korak 6: Postavite kôd na Attiny 85 čip

Koristeći Arduino Uno ili na neki drugi način, učitajte kôd (priložena datoteka AttinyPiPowerControl.ino) na svoj čip Attiny85. Napomena - ovaj kôd dopušta 60 sekundi da se PI pokrene, fotografira i dođe do naredbenog retka terminala prije pokretanja procesa isključivanja. Zatim možete instalirati čip Attiny85 u utičnicu na ploči - provjerite orijentaciju.

Napomena: Ako vam je potrebno više ili manje vremena izvođenja Pi, samo uredite ovaj redak pri dnu:

kašnjenje (60000); // neka se Pi pokrene i pokrene neko vrijeme

Korak 7: Ožičenje i početno testiranje i preuzimanje foto datoteka sa PI -a

Ožičenje i početno testiranje i preuzimanje foto datoteka s PI -a
Ožičenje i početno testiranje i preuzimanje foto datoteka s PI -a

Ožičenje:

Spojite USB power bank na mikro usb port Pimoroni shim. Spojite kratkospojne vodiče s ploče Attiny85 na Pimoroni podlošku, pazite da se crni kabel spoji s vanjskim rubom BTN pina na Pimoroni podlošku.

Test:

U budilicu umetnite 2 AAA baterije i postavite vrijeme sata. Preporučujem i povezivanje Pi -jevog HDMI porta na lokalni monitor.

Uključite alarm i postavite alarm nekoliko minuta u budućnosti. Kada se alarm oglasi, trebali biste vidjeti:

a. Ikona alarma sata počinje da treperi

b. Nakon otprilike 5 sekundi, crvena LED lampica Pimoroni Shim svijetli 5 sekundi

c. Pi se pokreće

d. Nakon otprilike 20 sekundi LED lampica kamere se pali i slika se. Ako imate priključeni lokalni monitor, vidjet ćete kratak pregled snimljene fotografije.

e. Nakon otprilike 40 sekundi, Pi se pokreće sve do naredbenog retka terminala

f. Pi započinje proces gašenja, nakon otprilike 20 sekundi crvena LED dioda Pimoroni Shim treperi što znači da je napajanje isključeno na PI

Preuzimanje datoteka fotografija sa PI -a

Povezujem PI na svoju mrežu pomoću OTG kabela, a USB na Ethernet adapter, napajajući Pi iz zidne bradavice. Zatim koristite WinSCP za preuzimanje datoteka na moj računar.

Korak 8: Sastavite elektroničko kućište

Sastavite elektroničko kućište
Sastavite elektroničko kućište
Sastavite elektroničko kućište
Sastavite elektroničko kućište
Sastavite elektroničko kućište
Sastavite elektroničko kućište

Pričvrstite ploču Attiny85 na stražnju stranu budilice malim vijkom za samoprezanje. Prikačite PI na sat pomoću dvostruke ljepljive trake kao što je prikazano

Pričvrstite lijevu stranu sata na dno vitrine dvostrukom ljepljivom trakom

Priključite USB bateriju za napajanje na dno vitrine dvostrukom trakom kao što je prikazano.

Gornju vitrinu postavite na dno vitrine, kao što je prikazano.

Korak 9: Konstruirajte nosač za montažu, završnu montažu i pustite PI u divljinu

Konstruirajte nosač za montažu, završnu montažu i pustite PI u divljinu
Konstruirajte nosač za montažu, završnu montažu i pustite PI u divljinu
Konstruirajte nosač za montažu, završnu montažu i pustite PI u divljinu
Konstruirajte nosač za montažu, završnu montažu i pustite PI u divljinu
Konstruirajte nosač za montažu, završnu montažu i pustite PI u divljinu
Konstruirajte nosač za montažu, završnu montažu i pustite PI u divljinu
Konstruirajte nosač za montažu, završnu montažu i pustite PI u divljinu
Konstruirajte nosač za montažu, završnu montažu i pustite PI u divljinu

Donji komad: U drvenom komadu veličine 5 1/2 X 5 1/2 izrežite 4 utora 3/4 "prema unutra sa svake strane, kao što je prikazano. Koristio sam glodalicu za glodanje 1/4, ali možete i bušiti i rezati. središte napravite rupu za 1 1/4 PVC spojnicu. Idealna veličina rupe je 1 5/8 ", ali budući da sam imala samo pilu za rupe 1 3/4", to sam upotrijebila i izgradila spojnicu OD sa patka trakom. Ljepilo spoj na mjestu sa epoksidom.

Centrirajte kućište elektronike iznad drvenog bloka i označite njegove obrise. Zatim izbušite četiri rupe od 1/4 sa svake strane, kao što je prikazano. U ove rupe zalijepite četiri 1 2 "dugačka 1/4" klina od drveta - to će pomoći da kućište ostane centrirano.

Gornji dio: izbušite četiri rupe od 3/16 "blizu donjeg ruba svake veličine i umetnite dugačke S-kuke 3/4" u svaku rupu savijajući krajeve tako da ne padnu. Na unutrašnjim rubovima vruće ljepilo 4 četiri 1/2 debljine komada drveta - oni će pomoći da gornji dio ostane centriran iznad kućišta.

Završna montaža: Zatvorite kućište elektronike između gornjeg i donjeg dijela i učvrstite s dva bungee kabela kao što je prikazano

Pustite PI u divljinu: Napravite kolac za montažu tako što ćete izrezati 1 1/4 "PVC cijev dužine koja odgovara vašim potrebama, odrežite jedan kraj pod kutom od 45 stupnjeva kako biste lakše udarili u zemlju. U mom slučaju ja ću Mene zanima ovo proljeće rast biljaka pokrivača tla (Vinea minor), pa je moj PVC ulog dug samo 15 ". Dvaput provjerite da li su AAA baterije svježe, da li je USB napajanje potpuno napunjeno i da je budilica ispravno postavljena - zatim udarite kolac u tlo i klizite sklop na vrh montažnog kolčića - pogledajte fotografiju.

Korak 10: Trenutna mjerenja i test ubrzanog vijeka trajanja baterije

Trenutna mjerenja i test ubrzanog vijeka trajanja baterije
Trenutna mjerenja i test ubrzanog vijeka trajanja baterije
Trenutna mjerenja i test ubrzanog vijeka trajanja baterije
Trenutna mjerenja i test ubrzanog vijeka trajanja baterije
Trenutna mjerenja i test ubrzanog vijeka trajanja baterije
Trenutna mjerenja i test ubrzanog vijeka trajanja baterije
Trenutna mjerenja i test ubrzanog vijeka trajanja baterije
Trenutna mjerenja i test ubrzanog vijeka trajanja baterije

Mjerio sam struju pomoću Radio Shack RS-232 multimetra (22-812) i pratećeg softvera Meter View. Nije izbor zveri, ali to je ono što imam.

Mjerenje potrošnje struje iz dvije AAA baterije napajanja Attiny85 ploče i budilice

Za "serijsko povezivanje" multimetra koristio sam lažne baterije i napajanje sa 3 VDC stola (vidi sliku). Pogledajte grafikon struje izmjerene tokom "aktivnog" perioda (počinje sa alarmnim događajem - završava sa Attiny85 se vraća u stanje mirovanja). Povlačenje bez alarma bilo je konstantno 0,0049 mA. Sažetak -

Aktivni period = 78 sekundi

Prosječno razdoblje u aktivnom periodu Struja = 4,85 mA

Ne-alarmna struja = 4,9 mikroA (0,0049 mA)

Izračunao sam prosječno dnevno napajanje struje od 0,0093 mA iz dva AAA (750 mAh/svaki) uzimajući u obzir spavanje i aktivni način rada te teoretski vijek trajanja baterije> 8 godina koristeći ovu metodu.

Mjerenje strujnog napona PI iz USB powerbank -a. Za "serijsko povezivanje" multimetra koristio sam modificirani USB kabel (vidi sliku). Pogledajte grafikon struje izmjerene tokom "aktivnog" perioda (PI pokretanje - PI gašenje). U neaktivnom razdoblju Pimoroni ONOFF podmetač potpuno isključuje napajanje Pi, pa struja vuče ~ nulu. Sažetak -

Aktivni period = 97 sekundi

Prosječni period aktivnog perioda Struja = 137 mA

Uz pretpostavku banke napajanja od 11200 mAh, teoretski broj ciklusa aktivnog perioda je> 3000.

Test ubrzanog trajanja baterije

Privremeno sam kontrolirao PI pomoću Arduino UNO programiranog za brzu vožnju bicikla - vrijeme između alarma bilo je 2 minute u odnosu na normalna 24 sata.

Test #1: Banka napajanja 11200mAh. Počelo je u 22 sata, a ja sam stao sljedećeg dana u 13 sati. Rezultati: 413 snimljenih fotografija, 3 od 4 LED diode napunjenosti su još uključene na kraju testa.

Test #2: Banka napajanja kapaciteta 7200mAh. Počelo je u 19:30, a ja sam stao sljedećeg dana u 16:30. Rezultati: 573 snimljenih fotografija, 2 od 4 LED razine napunjenosti i dalje su uključene na kraju testa.

Zaključak: Vjerujem da gornji rezultati ukazuju na to da je vjerovatno da će barem jedna godina raditi po jednoj fotografiji.

Preporučuje se: