Cuprins:

Raspberry Pi in the Wild! Timelapse extinse cu baterie: 10 pași (cu imagini)
Raspberry Pi in the Wild! Timelapse extinse cu baterie: 10 pași (cu imagini)

Video: Raspberry Pi in the Wild! Timelapse extinse cu baterie: 10 pași (cu imagini)

Video: Raspberry Pi in the Wild! Timelapse extinse cu baterie: 10 pași (cu imagini)
Video: Raspberry Pi Plant Watering (& Time Lapse) 2024, Noiembrie
Anonim
Raspberry Pi in the Wild! Timelapse extinse cu baterie
Raspberry Pi in the Wild! Timelapse extinse cu baterie
Raspberry Pi in the Wild! Timelapse extinse cu baterie
Raspberry Pi in the Wild! Timelapse extinse cu baterie
Raspberry Pi in the Wild! Timelapse extinse cu baterie
Raspberry Pi in the Wild! Timelapse extinse cu baterie

Motivație: am vrut să folosesc camera Raspberry Pi alimentată cu baterie pentru a face fotografii o dată pe zi în aer liber, pentru a crea videoclipuri time-lapse pe termen lung. Aplicația mea specială este de a înregistra creșterea plantelor de acoperire a solului în primăvara și vara următoare.

Provocare: Proiectați controlul puterii Raspberry Pi de curent redus pentru a asigura o durată lungă de viață a bateriei.

Soluția mea: folosesc un ceas cu alarmă spart, circuitul Attiny85 și shim Pimoroni OnOff pentru a întrerupe complet alimentarea Raspberry Pi atunci când nu este utilizată. În timp ce ceasul Attiny85 și alarma continuă să ruleze în modul de așteptare, extragerea curentului este de doar 5 microAmp. Două baterii AAA alimentează atât Attiny, cât și ceasul cu alarmă, în timp ce o bancă de alimentare USB alimentează Pi.

Funcționare de bază: Când se declanșează ceasul cu alarmă, se trezește un circuit Attiny adormit, care apoi semnalizează Pimoroni OnOff shim pentru a aplica alimentarea de la banca de alimentare USB la Raspberry Pi. Pi execută un script run-at-boot (faceți o fotografie). După ce a trecut suficient timp (60 de secunde în aplicația mea), circuitul Attiny semnalizează din nou Pimoroni OnOff shim și apoi Attiny intră în modul de repaus. Pe baza semnalului de la Attiny, shimul Pimoroni OnOff execută comanda de închidere Pi și, după finalizarea procesului de închidere Pi, întrerupe alimentarea de la banca de alimentare USB la Raspberry Pi.

Pasul 1: Piese și instrumente

Piese și instrumente
Piese și instrumente
Piese și instrumente
Piese și instrumente

Părți:

Raspberry Pi Zero sau Raspberry Pi Zero W (atrage mai multă putere)

Modul de cameră Raspberry PI

Raspberry Pi Zero Case

Pimoroni ONOFF SHIM RASP PI POWER SWITCH, Digikey

OPTOIZOLATOR Digikey

Țintă cu ceas cu alarmă digitală cu baterie

ATtiny85 8 DIP Digikey

(2) CAP ALUM 100UF Digikey

DS3231 Modul RTC AliExpress

(2) rezistor de 68 ohmi

Cablu micro USB scurt (aproximativ 6 inci)

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

Kmashi 11200 mAh USB Power Bank # k-mp806 sau similar

Bandă dublă

Șurub mic autofiletant

(2) Anteturi de stivuire 1 x 8 pini feminine - vândute în mod obișnuit un antet de stivuire Arduino UNO AliExpress

Placă de perfecționare sau bandă aproximativ 1 1/4 "pe 2"

5 1/2 cu 5/12 cu 3/4 grosime de pin sau placaj

1 1/4 țeavă din PVC de aproximativ 15 lungime

1 cuplaj din PVC 1/4

(2) snururi scurte de aproximativ 10 lungime

(4) 1/4 "dia. Știfturi din lemn de aproximativ 1" lungime

Șapcă cu manșon natural UltraDeck

Instrumente:

Freze de sârmă și fier de lipit

Arduino UNO sau alt mod de a programa ATtiny85

Conectați sârmă și jumperi

Tastatură, mouse, monitor HDMI, port USB și hub Ethernet, cablu OTG

Mulitmetru

Pasul 2: Instalați Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC și Pi Camera Module

Instalați Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC și modulul de cameră Pi
Instalați Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC și modulul de cameră Pi
Instalați Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC și modulul de cameră Pi
Instalați Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC și modulul de cameră Pi
Instalați Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC și modulul de cameră Pi
Instalați Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC și modulul de cameră Pi

Configurare Pi Zero. Pregătiți cardul SD pentru Raspberry Pi cu distribuția la alegere. În timpul procesului de configurare inițială, asigurându-vă că activați interfața I2C, camera și boot la CLI cu autentificare automată, setați ora locală corectă și schimbați parola. De asemenea, vă recomand să configurați o adresă IP statică pentru a face lucrurile mai ușoare pe drum. Solder header masculin către Pi Zero. Puteți utiliza fie antetul standard 2 x 20, fie un antet 2 x 6 mai scurt, deoarece nu sunt necesari toți cei 40 de pini pentru acest proiect - doar primii 12 pini.

Instalare cameră. Introduceți Pi Zero în carcasă și utilizați modulul camerei de conectare a cablului scurt cu bandă scurtă inclus la Pi Zero, direcționând slotul pentru capătul carcasei. Montați capacul superior cu fante GPIO și atașați camera la capac cu bandă dublă (vezi fotografia).

Pregătiți Pimoroni OnOff Shim, DS3231 RTC. Deși Pimoroni OnOff Shim vine cu un antet 2 x 6 feminin, am folosit în schimb două anteturi de stivuire 1 x 6 feminine vândute în mod obișnuit pentru Arduino UNO, pinii antetului trebuie să se extindă deasupra Pimoroni OnOff Shim la locațiile pin 1, 3, ale Raspberry Pi, 5, 7, 9, ceilalți pini pot fi tăiați la lungimea standard a pinilor. Împingeți DS3231 RTC pe pinii extinse așa cum se arată în fotografie și apoi împingeți subansamblul Pimoroni OnOff Shim și DS3231 RTC pe pinii de antet Raspberry Pi așa cum se arată.

Instalați software-ul Pimoroni OnOff Shim cu:

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

Pentru informații suplimentare despre instalarea Shim, uitați-vă aici

Instalați software-ul DS3231 RTC conform acestor instrucțiuni

Teste inițiale - Aparat foto, Pimoroni OnOff Shim, DS3231 RTC

Conectați tastatura locală și monitorul la Pi Zero. Asigurați-vă că aveți o conexiune la rețea (cablu Ethernet sau Wifi). Conectați cablul de alimentare USB Pimoroni OnOff Shim.

A. Apăsați butonul Pimoroni OnOff Shim timp de 3 secunde și apoi eliberați - acesta activează sau dezactivează Pi Zero. Observați procesul de pornire și oprire pe monitor. Pi Zero dvs. are acum un upgrade de tehnologie avansată - un comutator de pornire / oprire!

b. Setați ora DS3231 și verificați dacă citește ora corectă cu:

sudo hwclock -w

sudo hwclock -r

c. Testați funcția camerei conform acestor instrucțiuni.

Pasul 3: Configurați scriptul Raspberry Pi Run-At-Boot și testați camera

Configurați scriptul Raspberry Pi Run-At-Boot și testați camera
Configurați scriptul Raspberry Pi Run-At-Boot și testați camera

Creați și mutați în noul subdirector zerocam

mkdir zerocam

cd zerocam

Utilizați editorul nano pentru a crea un fișier script nou

nano photo.sh

Apoi copiați și lipiți codul de mai jos în editorul nano. Nanul închis cu Ctrl + X, Y apoi Return.

#! / bin / bash

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

Deoarece acest script folosește comanda convert, va trebui să instalați ImageMagick pe Raspberry Pi

sudo apt-get update

sudo apt-get install imagemagick

Faceți fișierul executabil

chmod + x photo.sh

Deschideți /etc/rc.local (comenzile din acest fișier rulează la boot)

sudo nano /etc/rc.local

Aproape de partea de jos a fișierului, chiar înainte de declarația exit 0 adăugați această nouă linie și apoi închideți nano cu Ctrl + X, Y apoi Return.

sh /home/pi/zerocam/photo.sh

Cu un monitor local conectat, testați dacă funcționează

sudo reboot

Pi ar trebui să repornească și să facă o fotografie. Va fi un nou fișier-j.webp

De asemenea, testați pornirea și oprirea Pi cu butonul Pimoroni. Măsurați și înregistrați timpul de pornire Pi. Ar trebui să aibă mai puțin de 60 de secunde.

Pasul 4: Hack Alarm Clock

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

Respectați funcționarea produsă - Instalați două baterii AAA în ceas cu alarmă și practicați setarea timpului și a alarmei conform instrucțiunilor incluse. Observați în special sunarea alarmei - ar trebui să vedeți (1) micul simbol al alarmei afișând intermitent, (2) soneria sună timp de 1 minut, apoi se oprește și (3) LED-ul luminii din spate se aprinde timp de 5 secunde, apoi se stinge.

Demontați - Scoateți cele patru șuruburi din ceas înapoi pentru a separa cele două jumătăți, apoi scoateți încă patru șuruburi pentru a elibera PCB-ul principal.

Hack - Tăiați cablurile LED din partea din față a PCB-ului așa cum se arată și lipiți-le cu fire lungi de 5 la cablurile rămase pe partea din spate a PCB-ului (a se vedea ilustrația). Desoldați soneria așa cum se arată.

La bornele compartimentului bateriei adăugați două fire suplimentare (roșu și negru) plus un condensator electrolitic 100MFD așa cum se arată (respectați polaritatea).

Reasamblați ceasul asigurându-vă că direcționați LED-urile și bateria nouă conduce prin sloturile de reținere a capacului spate, așa cum se arată.

Retestare - Instalați bateriile și testați funcția de alarmă - acum, când alarma se stinge, ar trebui să vedeți micul simbol alarmei afișând intermitent - dar fără buzzer și fără lumină de fundal. Conectați un mulitmetru la cablurile LED pe care ar trebui să le detectați aproximativ 3 VDC atunci când alarma se declanșează într-o perioadă de aproximativ 5 secunde.

Pasul 5: Construiți placa de circuit Attiny85

Construiți placa de circuit Attiny85
Construiți placa de circuit Attiny85
Construiți placa de circuite Attiny85
Construiți placa de circuite Attiny85

Referindu-ne la fotografie și la Attiny85 Schematic.pdf, construiți placa de circuite pe o bucată mică de tablă de perf sau bandă. Note:

  • Asigurați-vă că utilizați o priză DIP cu 8 pini pentru cipul Attiny85, deoarece trebuie eliminată pentru programare.
  • Asigurați orientarea corectă a Optos înainte de lipire.
  • Jumperul duce la Pimoroni Shim ar trebui să aibă o lungime de cel puțin 4 inci, cu anteturi feminine pentru a atașa știfturile masculine Shims BTN.
  • Respectați polaritatea atunci când realizați conexiuni cu clic de alarmă - circuitul nu are protecție împotriva polarității inversă

Pasul 6: Încărcați codul pe cipul Attiny 85

Folosind un Arduino Uno sau alte mijloace, încărcați codul (fișier AttinyPiPowerControl.ino atașat) pe cipul Attiny85. Notă - acest cod permite 60 de secunde ca PI să pornească, să facă o fotografie și să ajungă la promptul de comandă al terminalului înainte de a începe procesul de oprire. Apoi puteți instala cipul Attiny85 în soclul plăcii de circuite - verificați dublă orientarea.

Notă: dacă aveți nevoie de mai mult sau mai puțin timp de execuție Pi, trebuie doar să editați această linie în partea de jos:

întârziere (60000); // lasa-l pe Pi sa porneasca si sa ruleze o perioada

Pasul 7: Cablarea și testarea inițială și descărcarea fișierelor foto de la PI

Cablarea și testarea inițială și descărcarea fișierelor foto de la PI
Cablarea și testarea inițială și descărcarea fișierelor foto de la PI

Cablare:

Conectați banca de alimentare USB la portul micro USB al shim Pimoroni. Conectați cablurile jumperului de la placa de circuit Attiny85 la carcasa Pimoroni, asigurați-vă că cablul negru se conectează la pinul BTN de la marginea exterioară a carcasei Pimoroni.

Test:

Instalați 2 baterii AAA în ceas cu alarmă și setați ora ceasului. Vă recomand, de asemenea, să conectați portul HDMI al Pi la un monitor local.

Porniți alarma și setați o alarmă în câteva minute în viitor. Când alarma se declanșează, ar trebui să vedeți:

A. Pictograma alarmei ceasului începe să clipească

b. După aproximativ 5 secunde, LED-ul roșu Pimoroni Shim se aprinde timp de 5 secunde

c. Pi începe să pornească

d. După aproximativ 20 de secunde, LED-ul camerei se aprinde și se face o fotografie. Dacă aveți un monitor local conectat, veți vedea o scurtă previzualizare a fotografiei făcute.

e. După încă 40 de secunde, Pi porneste până la linia de comandă a terminalului

f. Pi pornește procesul de oprire, după aproximativ 20 de secunde, LED-ul roșu Pimoroni Shim clipește indicând că puterea este întreruptă la PI

Descărcarea fișierelor foto de la PI

Conectez PI la rețeaua mea folosind cablul OTG și adaptorul USB la Ethernet, alimentând Pi de la negul de perete. Apoi utilizați WinSCP pentru a descărca fișiere pe computerul meu.

Pasul 8: Asamblați carcasa electronică

Asamblați carcasa electronică
Asamblați carcasa electronică
Asamblați carcasa electronică
Asamblați carcasa electronică
Asamblați carcasa electronică
Asamblați carcasa electronică

Atașați placa de circuit Attiny85 la spatele ceasului cu alarmă folosind un șurub mic auto-filetat. Atașați PI la ceas folosind bandă dublă, așa cum se arată

Atașați partea stângă a ceasului pentru a afișa fundul carcasei cu bandă dublă

Atașați banca de alimentare USB la partea de jos a vitrinei cu bandă dublă, așa cum se arată.

Așezați carcasa superioară deasupra vitrinei, așa cum se arată.

Pasul 9: Construiți miza de montare, asamblarea finală și eliberați PI în sălbăticie

Construiți miza de montare, asamblarea finală și eliberați PI în sălbăticie
Construiți miza de montare, asamblarea finală și eliberați PI în sălbăticie
Construiți miza de montare, asamblarea finală și eliberați PI în sălbăticie
Construiți miza de montare, asamblarea finală și eliberați PI în sălbăticie
Construiți miza de montare, asamblarea finală și eliberați PI în sălbăticie
Construiți miza de montare, asamblarea finală și eliberați PI în sălbăticie
Construiți miza de montare, asamblarea finală și eliberați PI în sălbăticie
Construiți miza de montare, asamblarea finală și eliberați PI în sălbăticie

Bucată de jos: într-o bucată de lemn de 5 1/2 X 5 1/2, tăiați 4 fante de 3/4 "spre interior din fiecare parte, așa cum se arată. centrul face o gaură pentru 1 1/4 cuplaj din PVC. Dimensiunea ideală a găurii este de 1 5/8 ", dar din moment ce am avut doar un ferăstrău de 1 3/4", am folosit asta și am construit cuplajul OD cu bandă de rață. Lipici cuplare pe loc cu epoxidic.

Centrați carcasa electronică deasupra blocului de lemn și marcați conturul acestuia. Apoi găuriți patru găuri de 1/4 de-a lungul fiecărei părți, așa cum se arată. Lipiți patru dibluri din lemn de 1 "lungime 1/4" în aceste găuri - acest lucru vă va ajuta să păstrați centrala centrată.

Piesa superioară: găuriți patru găuri de 3/16 "lângă marginea inferioară a fiecărei dimensiuni și introduceți cârlige S lungi de 3/4" în fiecare gaură îndoind capetele închise, astfel încât să nu cadă. Pe marginile interioare lipici fierbinte 4 patru bucăți de lemn groase de 1/2 1/2 - acestea vor ajuta la menținerea piesei superioare centrate deasupra incintei.

Asamblare finală: Îndepărtați carcasa electronică între piesele de sus și de jos și fixați-o cu două cabluri bungee, așa cum se arată

Eliberați PI în sălbăticie: Faceți un miză de montare tăind o țeavă din PVC de 1 1/4 "cu o lungime potrivită scopurilor dvs., tăiați un capăt la un unghi de 45 de grade pentru a ușura lovirea în pământ. În cazul meu Sunt interesat de creșterea plantelor de acoperire a solului (Vinea minor) în această primăvară și, astfel, miza mea din PVC are o lungime de doar 15 ". Verificați dublu dacă bateriile AAA sunt proaspete, banca de alimentare USB este complet încărcată și ceasul deșteptător este setat corect - apoi bateți miza în pământ și glisați ansamblul deasupra stâlpului de montare - vezi fotografia.

Pasul 10: Măsurători curente și test de viață accelerată a bateriei

Măsurători curente și test de viață accelerată a bateriei
Măsurători curente și test de viață accelerată a bateriei
Măsurători curente și test de viață accelerată a bateriei
Măsurători curente și test de viață accelerată a bateriei
Măsurători curente și test de viață accelerată a bateriei
Măsurători curente și test de viață accelerată a bateriei
Măsurători curente și test de viață accelerată a bateriei
Măsurători curente și test de viață accelerată a bateriei

Am măsurat curentul folosind multimetrul Radio Shack RS-232 (22-812) și software-ul companion Meter View. Nu alegerea bestiei, dar este ceea ce am.

Măsurarea consumului de curent de la două baterii AAA alimentează placa Attiny85 și ceasul cu alarmă

Pentru a "conecta în serie" multimetrul, am folosit baterii fictive și sursă de alimentare de 3 VDC pe bancă (vezi foto). Vedeți graficul curentului măsurat în timpul perioadei „active” (începe cu evenimentul de alarmă - se termină cu Attiny85 revine în modul de repaus). Extragerea fără alarmă a fost constantă de 0,0049 mA. Rezumat -

Perioada activă = 78 de secunde

Media perioadei active Curent = 4,85 mA

Curent fără alarmă = 4,9 microA (0,0049 mA)

Am calculat o medie zilnică de curent de 0,0093 mA din cele două AAA (750 mAh / fiecare) luând în considerare modurile de repaus și active și durata de viață teoretică a bateriei> 8 ani folosind această metodă.

Măsurarea consumului de curent PI de la powerbank USB. Pentru multimetrul „conectați în serie” am folosit un cablu USB modificat (a se vedea fotografia). Vezi graficul curentului măsurat în perioada „activă” (pornire PI - oprire PI). În timpul perioadei inactive, butonul Pimoroni ONOFF reduce complet puterea la Pi, astfel încât curentul să treacă ~ zero. Rezumat -

Perioada activă = 97 secunde

Media perioadei active Curent = 137 mA

Presupunând o bancă de putere de 11200 mAh, numărul teoretic al ciclurilor de perioadă activă este> 3000.

Test de viață a bateriei accelerat

Am controlat temporar PI cu Arduino UNO programat pentru ciclism rapid - timpul dintre alarme a fost de 2 minute față de cel normal de 24 de ore.

Test # 1: 11200mAh power bank. Am început la ora 22:00 și m-am oprit la ora 13:00 a doua zi. Rezultate: 413 fotografii realizate, 3 din 4 LED-uri de nivel de încărcare încă aprinse la sfârșitul testului.

Test # 2: banca de energie de 7200 mAh. Am început la 19:30 și m-am oprit la 16:30 a doua zi. Rezultate: 573 de fotografii realizate, 2 din 4 niveluri de încărcare LED încă aprinse la sfârșitul testului.

Concluzie: cred că rezultatele de mai sus indică cel puțin un an de funcționare luând câte 1 per fotografie.

Recomandat: