Inhaltsverzeichnis:

Himbeer-Pi in freier Wildbahn! Verlängerter Zeitraffer mit Batteriestrom - Gunook
Himbeer-Pi in freier Wildbahn! Verlängerter Zeitraffer mit Batteriestrom - Gunook

Video: Himbeer-Pi in freier Wildbahn! Verlängerter Zeitraffer mit Batteriestrom - Gunook

Video: Himbeer-Pi in freier Wildbahn! Verlängerter Zeitraffer mit Batteriestrom - Gunook
Video: ЛУЧШИЕ ТРАВЯНЫЕ ЧАИ НА КАЖДЫЙ ДЕНЬ. Какие Травы Можно Пить Вместо Чая 2024, Juli
Anonim
Himbeer-Pi in freier Wildbahn! Verlängerter Zeitraffer mit Batteriestrom
Himbeer-Pi in freier Wildbahn! Verlängerter Zeitraffer mit Batteriestrom
Himbeer-Pi in freier Wildbahn! Verlängerter Zeitraffer mit Batteriestrom
Himbeer-Pi in freier Wildbahn! Verlängerter Zeitraffer mit Batteriestrom
Himbeer-Pi in freier Wildbahn! Verlängerter Zeitraffer mit Batteriestrom
Himbeer-Pi in freier Wildbahn! Verlängerter Zeitraffer mit Batteriestrom

Motivation: Ich wollte eine batteriebetriebene Raspberry Pi-Kamera verwenden, um einmal am Tag Fotos im Freien zu machen, um langfristige Zeitraffer-Videos zu erstellen. Meine spezielle Anwendung besteht darin, das Wachstum von Bodendeckern im kommenden Frühjahr und Sommer aufzuzeichnen.

Herausforderung: Entwerfen Sie eine Raspberry Pi-Stromsteuerung mit niedrigem Strom, um eine lange Batterielebensdauer zu gewährleisten.

Meine Lösung: Ich verwende einen gehackten Wecker, eine Attiny85-Schaltung und ein Pimoroni OnOff-Shim, um den Strom zum Raspberry Pi bei Nichtgebrauch vollständig zu unterbrechen. Während Attiny85 und Wecker im Standby-Modus weiterlaufen, beträgt die Stromaufnahme nur 5 Mikroampere. Zwei AAA-Batterien versorgen sowohl Attiny als auch den Wecker, während eine USB-Powerbank den Pi mit Strom versorgt.

Grundlegende Bedienung: Wenn der Wecker klingelt, weckt er einen schlafenden Attiny-Schaltkreis, der dann Pimoroni OnOff-Shim signalisiert, Strom von der USB-Powerbank an den Raspberry Pi anzulegen. Der Pi führt ein Run-at-Boot-Skript aus (Foto machen). Nach ausreichender Zeit (60 Sekunden in meiner Anwendung) signalisiert die Attiny-Schaltung erneut Pimoroni OnOff Shim und dann wechselt die Attiny in den Schlafmodus. Basierend auf dem Signal von Attiny führt der Pimoroni OnOff Shim den Pi-Shutdown-Befehl aus und unterbricht nach Abschluss des Pi-Shutdown-Prozesses die Stromversorgung von der USB-Powerbank zum Raspberry Pi.

Schritt 1: Teile und Werkzeuge

Teile und Werkzeuge
Teile und Werkzeuge
Teile und Werkzeuge
Teile und Werkzeuge

Teile:

Raspberry Pi Zero oder Raspberry Pi Zero W (zieht mehr Strom)

Raspberry PI Kameramodul

Raspberry Pi Zero-Gehäuse

Pimoroni ONOFF SHIM RASP PI POWER SWITCH, Digikey

OPTOISOLATOR Digikey

Batteriebetriebenes digitales Weckerziel

ATtiny85 8 DIP Digikey

(2) CAP ALUM 100UF Digikey

DS3231 RTC-Modul AliExpress

(2) 68 Ohm Widerstand

Kurzes (ca. 6 Zoll) Micro-USB-Kabel

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

Kmashi 11200 mAh USB Powerbank # k-mp806 oder ähnlich

Doppelklebeband

Kleine selbstschneidende Schraube

(2) 1 x 8-polige Buchsen-Stacking-Header - häufig verkauft ein Arduino UNO-Stacking-Header aus AliExpress

Perf oder Streifenbrett etwa 1 1/4 "x 2"

5 1/2 x 5/12 x 3/4 dickes Kiefern- oder Sperrholz

1 1/4 PVC-Rohr ca. 15 lang

1 1/4 PVC-Kupplung

(2) kurze Bungee-Schnüre ca. 10 lang

(4) 1/4 "Durchmesser Holz-Dübelstifte ca. 1" lang

UltraDeck Natural Post Sleeve Cap Menards

Werkzeuge:

Drahtschneider und Lötkolben

Arduino UNO oder eine andere Möglichkeit, ATtiny85 zu programmieren

Kabel und Jumper anschließen

Tastatur, Maus, HDMI-Monitor, USB-Anschluss und Ethernet-Hub, OTG-Kabel

Multimeter

Schritt 2: Installieren Sie Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC und Pi-Kameramodul

Installieren Sie Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC und Pi-Kameramodul
Installieren Sie Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC und Pi-Kameramodul
Installieren Sie Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC und Pi Camera Module
Installieren Sie Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC und Pi Camera Module
Installieren Sie Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC und Pi-Kameramodul
Installieren Sie Raspberry Pi OS, Pimoroni OnOff Shim, DS3231 RTC und Pi-Kameramodul

Pi Zero-Setup. Bereiten Sie die SD-Karte für Raspberry Pi mit der Distribution Ihrer Wahl vor. Stellen Sie während der Ersteinrichtung sicher, dass die I2C-Schnittstelle, die Kamera und das Booten über die CLI mit automatischer Anmeldung aktiviert sind, stellen Sie die richtige Ortszeit ein und ändern Sie Ihr Passwort. Ich empfehle auch, eine statische IP-Adresse einzurichten, um die Dinge auf der Straße einfacher zu machen. Stiftleiste an Pi Zero anlöten. Sie können entweder den standardmäßigen 2 x 20-Header oder einen kürzeren 2 x 6-Header verwenden, da für dieses Projekt nicht alle 40 Pins benötigt werden - nur die ersten 12 Pins.

Kamera installieren. Setzen Sie den Pi Zero in sein Gehäuse ein und verwenden Sie das mitgelieferte kurze Flachbandkabel, um das Kameramodul mit dem Pi Zero zu verbinden, indem Sie das Kabel aus dem Gehäuseendschlitz führen. Bringen Sie die GPIO-geschlitzte obere Abdeckung an und befestigen Sie die Kamera mit Doppelklebeband an der Abdeckung (siehe Foto).

Bereiten Sie Pimoroni OnOff Shim, DS3231 RTC vor. Obwohl das Pimoroni OnOff Shim mit einer 2 x 6 Buchsenleiste geliefert wird, habe ich stattdessen zwei 1 x 6 Buchsenleisten verwendet, die üblicherweise für Arduino UNOs verkauft werden. 5, 7, 9, die anderen Pins können auf die Standard-Pin-Länge gekürzt werden. Schieben Sie den DS3231 RTC wie auf dem Foto gezeigt auf die verlängerten Pins und schieben Sie dann die Pimoroni OnOff Shim & DS3231 RTC Unterbaugruppe auf die Raspberry Pi Headerpins wie gezeigt.

Installieren Sie die Pimoroni OnOff Shim-Software mit:

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

Weitere Informationen zur Installation von Shim finden Sie hier

Installieren Sie die DS3231 RTC-Software gemäß dieser Anleitung

Erste Tests - Kamera, Pimoroni OnOff Shim, DS3231 RTC

Schließen Sie die lokale Tastatur und den Monitor an Pi Zero an. Stellen Sie sicher, dass Sie über eine Netzwerkverbindung verfügen (Ethernet-Kabel oder Wifi). Schließen Sie das USB-Stromkabel Pimoroni OnOff Shim an.

A. Drücken Sie den Pimoroni OnOff Shim-Druckknopf für 3 Sekunden und lassen Sie ihn dann los - dies schaltet den Pi Zero ein oder aus. Beobachten Sie den Boot- und Shutdown-Prozess auf dem Monitor. Ihr Pi Zero hat jetzt ein fortschrittliches Technologie-Upgrade - einen Ein-/Aus-Schalter!

B. Stellen Sie die DS3231-Zeit ein und überprüfen Sie, ob die korrekte Zeit ausgelesen wird mit:

sudo hwclock -w

sudo hwclock -r

C. Testen Sie die Kamerafunktion gemäß dieser Anleitung.

Schritt 3: Raspberry Pi Run-At-Boot-Skript einrichten und Kamera testen

Einrichten des Raspberry Pi Run-At-Boot-Skripts und Testen der Kamera
Einrichten des Raspberry Pi Run-At-Boot-Skripts und Testen der Kamera

Neues Zerocam-Unterverzeichnis erstellen und in das neue Unterverzeichnis verschieben

mkdir Zerocam

CD-Zerocam

Verwenden Sie den Nano-Editor, um eine neue Skriptdatei zu erstellen

nano photo.sh

Kopieren Sie dann den folgenden Code und fügen Sie ihn in den Nano-Editor ein. Den Nano mit Strg+X, Y dann Return schließen.

#!/bin/bash

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

Da dieses Skript den Befehl convert verwendet, müssen Sie ImageMagick auf dem Raspberry Pi installieren

sudo apt-get update

sudo apt-get install imagemagick

Machen Sie die Datei ausführbar

chmod +x photo.sh

Öffnen Sie /etc/rc.local (Befehle in dieser Datei werden beim Booten ausgeführt)

sudo nano /etc/rc.local

Am Ende der Datei, kurz vor der exit 0-Anweisung, fügen Sie diese neue Zeile hinzu und schließen Sie nano mit Strg + X, Y und dann Return.

sh /home/pi/zerocam/photo.sh

Testen Sie mit einem angeschlossenen lokalen Monitor, ob er funktioniert

sudo neu starten

Der Pi sollte neu starten und ein Foto machen. Es wird eine neue.jpg-Datei im Verzeichnis /home/pi/zerocam. geben

Testen Sie auch das Ein- und Ausschalten des Pi mit dem Pimoroni-Druckknopf. Messen und notieren Sie die Startzeit des Pi. Es sollte weniger als 60 Sekunden dauern.

Schritt 4: Wecker hacken

Wecker hacken
Wecker hacken
Wecker hacken
Wecker hacken
Wecker hacken
Wecker hacken

Beobachten Sie den produzierten Betrieb - Legen Sie zwei AAA-Batterien in den Wecker ein und üben Sie die Einstellung von Zeit und Wecker gemäß den mitgelieferten Anweisungen. Beachten Sie insbesondere den Alarmton - Sie sollten sehen, dass (1) das kleine Alarmsymbol des Displays blinkt, (2) der Summer 1 Minute lang ertönt und dann ausgeht und (3) die LED der Hintergrundbeleuchtung 5 Sekunden lang aufleuchtet und dann erlischt.

Demontieren - Entfernen Sie die vier Schrauben von der Rückseite der Uhr, um die beiden Hälften zu trennen, und entfernen Sie dann vier weitere Schrauben, um die Hauptplatine zu befreien.

Hack - Schneiden Sie die LED-Leitungen an der Vorderseite der Platine wie abgebildet ab und löten Sie die verbleibenden Leitungen auf der Rückseite der Platine mit 5 langen Drähten an (siehe Abbildung). Entlöten Sie den Summer wie abgebildet.

Fügen Sie an den Batteriefachklemmen zwei zusätzliche Drähte (rot und schwarz) sowie einen 100MFD-Elektrolytkondensator wie abgebildet hinzu (Polarität beachten).

Bauen Sie die Uhr wieder zusammen und vergewissern Sie sich, dass die LED- und die neuen Batteriekabel wie abgebildet aus den Rückhalteschlitzen der hinteren Abdeckung herausgeführt werden.

Erneut testen - Batterien einlegen und die Weckfunktion testen - jetzt, wenn der Weckruf ertönt, sollten Sie das kleine Wecksymbol des Displays blinken sehen - aber kein Summer und keine Hintergrundbeleuchtung. Schließen Sie ein Multimeter an die LED-Leitungen an. Sie sollten etwa 3 VDC feststellen, wenn der Alarm für einen Zeitraum von etwa 5 Sekunden ertönt.

Schritt 5: Bauen Sie die Attiny85-Platine

Bauen Sie die Attiny85-Platine
Bauen Sie die Attiny85-Platine
Bauen Sie die Attiny85-Platine
Bauen Sie die Attiny85-Platine

Unter Bezugnahme auf das Foto und Attiny85 Schematic.pdf konstruieren Sie die Leiterplatte auf einem kleinen Stück Perf- oder Streifenplatine. Anmerkungen:

  • Achten Sie darauf, einen 8-poligen DIP-Sockel für den Attiny85-Chip zu verwenden, da er zum Programmieren entfernt werden muss.
  • Achten Sie vor dem Löten auf die richtige Ausrichtung des Optos.
  • Jumper führt zu Pimoroni Shim sollte mindestens 4 Zoll lang mit Buchsenleisten sein, um die BTN-Steckerstifte der Shims zu befestigen.
  • Beachten Sie die Polarität, wenn Sie Verbindungen mit Alarmklick herstellen - Schaltung hat keinen Verpolungsschutz

Schritt 6: Code auf Attiny 85 Chip hochladen

Laden Sie den Code (Datei AttinyPiPowerControl.ino im Anhang) mit einem Arduino Uno oder auf andere Weise auf Ihren Attiny85-Chip hoch. Hinweis - Dieser Code lässt 60 Sekunden Zeit, damit der PI hochfährt, ein Foto macht und zur Eingabeaufforderung des Terminals gelangt, bevor der Herunterfahrvorgang gestartet wird. Sie können dann den Attiny85-Chip in seinem Platinensockel installieren - überprüfen Sie die Ausrichtung.

Hinweis: Wenn Sie mehr oder weniger Pi-Laufzeit benötigen, bearbeiten Sie einfach diese Zeile unten:

Verzögerung(60000); // Pi booten und eine Zeit lang laufen lassen

Schritt 7: Verdrahtung und Ersttest und Herunterladen von Fotodateien von PI

Verkabelung und Ersttest und Herunterladen von Fotodateien von PI
Verkabelung und Ersttest und Herunterladen von Fotodateien von PI

Verdrahtung:

Schließen Sie die USB-Powerbank an den Micro-USB-Anschluss des Pimoroni-Shims an. Verbinden Sie die Überbrückungskabel von der Attiny85-Platine mit der Pimoroni-Unterlegscheibe und stellen Sie sicher, dass das schwarze Kabel mit dem BTN-Pin der äußersten Kante der Pimoroni-Unterlegscheibe verbunden ist.

Prüfen:

Legen Sie 2 AAA-Batterien in den Wecker ein und stellen Sie die Uhrzeit ein. Ich empfehle auch, den HDMI-Anschluss von Pi an einen lokalen Monitor anzuschließen.

Schalten Sie den Wecker ein und stellen Sie einen Wecker einige Minuten in die Zukunft. Wenn der Wecker klingelt, sollten Sie Folgendes sehen:

A. Das Weckersymbol beginnt zu blinken

B. Nach ca. 5 Sekunden leuchtet die rote LED von Pimoroni Shim für 5 Sekunden

C. Der Pi beginnt zu booten

D. Nach etwa 20 Sekunden geht die Kamera-LED an und ein Foto wird aufgenommen. Wenn Sie einen lokalen Monitor angeschlossen haben, sehen Sie eine kurze Vorschau des aufgenommenen Fotos.

e. Nach weiteren 40 Sekunden oder so bootet der Pi bis zur Eingabeaufforderung des Terminals

F. Pi startet den Shutdown-Prozess, nach ca. 20 Sekunden blinkt die rote LED des Pimoroni Shim und zeigt an, dass die Stromversorgung des PI unterbrochen ist

Herunterladen von Fotodateien von PI

Ich verbinde den PI mit einem OTG-Kabel und einem USB-zu-Ethernet-Adapter mit meinem Netzwerk, um Pi von der Wandwarze mit Strom zu versorgen. Verwenden Sie dann WinSCP, um Dateien auf meinen PC herunterzuladen.

Schritt 8: Elektronikgehäuse zusammenbauen

Elektronikgehäuse zusammenbauen
Elektronikgehäuse zusammenbauen
Elektronikgehäuse zusammenbauen
Elektronikgehäuse zusammenbauen
Elektronikgehäuse zusammenbauen
Elektronikgehäuse zusammenbauen

Befestigen Sie die Attiny85-Platine mit einer kleinen selbstschneidenden Schraube an der Rückseite des Weckers. Befestigen Sie PI wie gezeigt mit Doppelklebeband an der Uhr

Befestigen Sie die Uhr auf der linken Seite des Vitrinenbodens mit Doppelklebeband

Befestigen Sie die USB-Powerbank wie abgebildet mit Doppelklebeband am Boden der Vitrine.

Platzieren Sie das obere Gehäuse wie abgebildet über dem Boden der Vitrine.

Schritt 9: Montagestange konstruieren, Endmontage und PI in die Wildnis freigeben

Montagepfosten konstruieren, Endmontage und PI in die Wildnis entlassen
Montagepfosten konstruieren, Endmontage und PI in die Wildnis entlassen
Montagepfosten konstruieren, Endmontage und PI in die Wildnis entlassen
Montagepfosten konstruieren, Endmontage und PI in die Wildnis entlassen
Montagepfosten konstruieren, Endmontage und PI in die Wildnis entlassen
Montagepfosten konstruieren, Endmontage und PI in die Wildnis entlassen
Montagepfosten konstruieren, Endmontage und PI in die Wildnis entlassen
Montagepfosten konstruieren, Endmontage und PI in die Wildnis entlassen

Unteres Stück: Schneiden Sie in ein 5 1/2 x 5 1/2 Stück Holz 4 Schlitze 3/4 "von jeder Seite nach innen, wie gezeigt. Ich habe einen 1/4-Fräser verwendet, aber Sie können auch bohren und sägen. In Die Mitte macht ein Loch für 1 1/4 PVC-Kupplung. Die ideale Lochgröße ist 1 5/8 ", aber da ich nur eine 1 3/4 "Lochsäge hatte, habe ich das verwendet und den Kupplungs-OD mit Entenband aufgebaut. Kleber Kupplung mit Epoxy.

Zentrieren Sie das Elektronikgehäuse über dem Holzblock und markieren Sie seinen Umriss. Dann bohren Sie vier 1/4 Löcher entlang jeder Seite wie gezeigt. Kleben Sie vier 1" lange Holzdübel mit 1/4" Durchmesser in diese Löcher - dies hilft, das Gehäuse zentriert zu halten.

Oberteil: Bohren Sie vier 3/16 "Löcher in der Nähe der unteren Kante jeder Größe und setzen Sie 3/4" lange S-Haken in jedes Loch ein, indem Sie die Enden schließen, damit sie nicht herunterfallen. An den Innenkanten Heißkleber 4 vier 1/2 dicke Holzreste - diese helfen, das Oberteil mittig über dem Gehäuse zu halten.

Endmontage: Legen Sie das Elektronikgehäuse zwischen Ober- und Unterteil und befestigen Sie es wie abgebildet mit zwei Gummiseilen

Lassen Sie PI in die Wildnis: Machen Sie einen Montagepfahl, indem Sie 1 1/4 "PVC-Rohr mit einer für Ihre Zwecke geeigneten Länge schneiden. Schneiden Sie ein Ende in einem 45-Grad-Winkel ab, um das Einschlagen in den Boden zu erleichtern. In meinem Fall ' Ich interessiere mich für das Wachstum von Bodendeckern (Vinea minor) in diesem Frühjahr und daher ist mein PVC-Pfahl nur 15 "lang. Überprüfen Sie noch einmal, ob die AAA-Batterien frisch sind, die USB-Powerbank vollständig aufgeladen und der Wecker richtig eingestellt ist - dann den Pfahl in den Boden hämmern und die Baugruppe auf den Befestigungspfahl schieben - siehe Foto.

Schritt 10: Strommessungen und beschleunigter Batterielebensdauertest

Strommessungen und beschleunigter Batterielebensdauertest
Strommessungen und beschleunigter Batterielebensdauertest
Strommessungen und beschleunigter Batterielebensdauertest
Strommessungen und beschleunigter Batterielebensdauertest
Strommessungen und beschleunigter Batterielebensdauertest
Strommessungen und beschleunigter Batterielebensdauertest
Strommessungen und beschleunigter Batterielebensdauertest
Strommessungen und beschleunigter Batterielebensdauertest

Ich habe den Strom mit dem Radio Shack RS-232 Multimeter (22-812) und der begleitenden Meter View-Software gemessen. Nicht die beste Wahl, aber es ist, was ich habe.

Messung der Stromaufnahme von zwei AAA-Batterien versorgt das Attiny85-Board und den Wecker

Zum "Reihenschalten" des Multimeters habe ich Dummy-Batterien und ein 3 VDC-Tischnetzteil verwendet (siehe Foto). Siehe Diagramm des während der "aktiven" Periode gemessenen Stroms (beginnt mit Alarmereignis - endet mit Attiny85 kehrt in den Schlafmodus zurück). Nicht-Alarm-Entnahme war konstant 0,0049 mA. Zusammenfassung -

Aktiver Zeitraum = 78 Sekunden

Aktiver Zeitraum Durchschn. Strom = 4,85 mA

Strom ohne Alarm = 4,9 MikroA (0,0049 mA)

Ich habe mit dieser Methode eine durchschnittliche tägliche Stromaufnahme von 0,0093 mA aus den beiden AAA (750 mAh/jeweils) unter Berücksichtigung des Schlaf- und Aktivmodus und einer theoretischen Batterielebensdauer von > 8 Jahren berechnet.

Messung der PI-Stromaufnahme von der USB-Powerbank. Für das Multimeter "Serienverbindung" habe ich ein modifiziertes USB-Kabel verwendet (siehe Foto). Siehe Diagramm des während der "aktiven" Periode gemessenen Stroms (PI Boot-Up - PI Shutdown). Während der nicht aktiven Zeit unterbricht das Pimoroni ONOFF Shim die Stromversorgung von Pi vollständig, so dass die Stromaufnahme ~ Null ist. Zusammenfassung -

Aktiver Zeitraum = 97 Sekunden

Aktiver Zeitraum Durchschn. Strom = 137 mA

Unter der Annahme einer Powerbank mit 11200 mAh beträgt die theoretische Anzahl aktiver Periodenzyklen > 3000.

Beschleunigter Batterielebensdauertest

Ich habe den PI vorübergehend mit Arduino UNO gesteuert, der für schnelles Radfahren programmiert war - die Zeit zwischen den Alarmen betrug 2 Minuten gegenüber den normalen 24 Stunden.

Test Nr. 1: 11200mAh Powerbank. Begann um 22 Uhr und ich habe am nächsten Tag um 13 Uhr aufgehört. Ergebnisse: 413 Fotos aufgenommen, 3 von 4 Ladezustands-LEDs leuchten am Ende des Tests noch.

Test #2: 7200mAh Powerbank. Begonnen um 19:30 Uhr und ich hielt am nächsten Tag um 16:30 Uhr an. Ergebnisse: 573 Fotos aufgenommen, 2 von 4 Ladezustands-LEDs leuchten am Ende des Tests noch.

Fazit: Ich glaube, dass die obigen Ergebnisse darauf hindeuten, dass eine Operation von mindestens einem Jahr pro Foto wahrscheinlich ist.

Empfohlen: