Wie man ein Foto mit der angeschlossenen Pi Camera am Raspberry Pi Zero 2 W per Tastendruck speichern kann, möchte ich dir in diesem Beitrag zeigen.
Den Raspberry Pi Zero 2 W habe ich dir bereits in den Beiträgen
- Vorstellung des neuen Raspberry Pi Zero 2 W
- Raspberry Pi Zero 2 W & Pi Camera
- Raspberrry Pi Zero 2 W – Softreset über GPIO
vorgestellt. Hier möchte ich dir nun zeigen, wie du ein Foto per Tastendruck aufnehmen kannst.
Bezug der benötigten Ressourcen
Für dieses Projekt benötigst du:
- einen Raspberry Pi Zero 2 W*,
- ein 40 Pin GPIO Header*,
- zwei Breadboardkabel, weiblich – männlich*,
- ein Breadboard*,
- einen Taster für die Printmontage*,
- eine Pi Camera*
- einen CSI Adapter* für den Anschluss der Pi Camera an den Pi Zero
Hinweis von mir: Die mit einem Sternchen (*) markierten Links sind Affiliate-Links. Wenn du über diese Links einkaufst, erhalte ich eine kleine Provision, die dazu beiträgt, diesen Blog zu unterstützen. Der Preis für dich bleibt dabei unverändert. Vielen Dank für deine Unterstützung!
Die Pi Camera gibt es mittlerweile mit einer Auflösung von 5 Megapixel, ich verwende in diesem Beitrag jedoch noch die alte Variante mit 2 MP.
Du kannst dieses Projekt auch mit dem Vorgängermodell Raspberry Pi Zero WH durchführen, jedoch unterscheiden diese sich vom Preis her eher nur marginal.
Ich empfehle dir noch ein Gehäuse für deinen Raspberry Pi Zero 2 W* damit dieser besser geschützt ist.
Aufbau der Schaltung
Die Schaltung ist recht einfach, denn der Taster wird einfach an den GPIO2 (Pin 3) und GND angeschlossen.
Die Pi Camera wird über die seitlich angebrachte CSI Schnittstelle mit dem Pi Zero verbunden.
Der Taster wird am GPIO2 & GND angeschlossen.
Vorsicht mit dem CSI Anschluss
Die kleine graue Leiste am CSI Anschluss ist sehr dünn und kann, wenn dieser zu sehr beansprucht wird abbrechen. In meinem Fall sind links und rechts die Stifte abgebrochen und somit musste ich die Zuleitung zur Pi Camera mit Heißkleber* fixieren.
Programmieren des Tasters zum Aufnehmen eines Fotos mit der Pi Camera in Python3
Im Beitrag Raspberrry Pi Zero 2 W – Softreset über GPIO hatte ich dir gezeigt wie man den Pi Zero mithilfe eines Tasters neu startet. Das Python3 Skript aus dem Beitrag startet dazu ein Bash Command, wenn der Taster betätigt wird.
from picamera import PiCamera from gpiozero import Button from time import sleep from datetime import datetime button = Button(2) camera = PiCamera() target_folder = "/home/pi/cam/" def getTimestamp(): now = datetime.now() return now.strftime("%Y-%m-%d-%H%M%S") try: print("Programm gestartet.") while True: # Wenn der Taster gedrückt ist, mache... if button.is_pressed: filename = "image_" + getTimestamp() + ".jpg" print("Bild wird aufgenommen.") camera.start_preview() for i in range(3): print(".") sleep(1) camera.capture(target_folder+filename) camera.stop_preview() print("Bild wurde unter", filename, "gespeichert.", sep=" ") except KeyboardInterrupt: print("Programm beendet.")
Hier nun das Video zu dem obigen Skript:
Hallo, sehr gute Anleitung, gut zu verstehen.
Das müsste doch auch mit Videos funktionieren oder?
Also per Tastendruck ein Video aufnehmen und speichern lassen?
Danke schonmal!
Hi,
vielen Dank für die Idee, ich habe mal ein kurzen Beitrag verfasst, dieser geht morgen (Donnerstag 24.02.2022 um 18 Uhr) online.
Vorab kannst du bereits das entsprechende Video unter https://www.youtube.com/watch?v=gfP8hWVCAJk abrufen.
Gruß
Stefan Draeger
Kann mir jmd noch sagen wie ich es schaffen kann den Namen des Bilder per RFID einzulesen ?
Also ich habe ein „Hochregal“ möchte immer eine Bild von jeder Schublade und die Schubladennamen möchte ich per RFID einlesen oder hat mir da jmd eine einfachere Methode
Hi,
man könnte vorher die RFID einlesen und lokal in einer Variablen speichern und danach dann das Bild aufnehmen.
Zum abspeichern wird dann mit der ID in einem mehrdimensionalem Array gesucht wobei der Key die ID ist und der Wert dann der Dateiname.
Eigentlich recht simple.
Gruß, Stefan
Ich habe den Code soweit fertig aber bekomme Fehlermeldungen. Kann ich diesen evt zur Einsicht irgendwo hochladen ?
Hi,
deinen Quellcode kannst du mir als PY-Datei (ggf. gezipt wegen der Firewall vom Mailserver) an meine Mailadresse senden oder hier per https://pastebin.com/
Gruß, Stefan
Habe es Ihnen per Mail an : info@draeger-it.blog
gesendet
Habe es Ihnen per Mail an:
info@draeger-it.blog
zukommen lassen.
Vielen Dank im voraus !
Beste Grüße