Seite 1 von 1

Kamera für Pimatic - Raspberry Pi

Verfasst: Mittwoch 29. August 2018, 11:26
von mango94
Hallo!
Seit einiger Zeit beschäftige ich mich schon mit dem Raspberry Pi und Pimatic.

Bei meinem Projekt fehlt mir noch die Möglichkeit, meine Raspberry Kamera in Pimatic hinzuzufügen, da kein passendes Plugin verfügbar ist.
Also dachte ich mir, ich versuch es über einen Python Code, der dann mit der Camera ein Foto macht, und dann in einem Ordner, irgendwo am Pi ablegt.

Wäre super, wenn mir jemand mit der Formulierung helfen könnte, bzw zumindest einen Link, wo ich mich dann selbst zurechtfinden würde...


Danke :mrgreen:

Re: Kamera für Pimatic - Raspberry Pi

Verfasst: Mittwoch 29. August 2018, 12:14
von __blackjack__
@mango94: Ich vermisse in dem Beitrag eine konkrete Frage die man beantworten könnte. :-)

Wo hakt das mit dem Photo machen und in einem Ordner ablegen denn?

Re: Kamera für Pimatic - Raspberry Pi

Verfasst: Mittwoch 29. August 2018, 15:15
von mango94
Eigentlich wollte ich das noch editieren, jedoch kam mir das Mittagessen dazwischen^^

Ist es für mich als Laie möglich, so einen Code zu schreiben? Ich werde mir mal einige Youtube Videos ansehen, vielleicht ist es mir dann klar, wie ich den Code formulieren muss.
Mit Python hatte ich noch nichts zu tun, ich weiß nur, dass man mit diesem Skript diverse Dinge ausführen kann, nur welche Codes ich benutzten muss, weiß ich leider nicht, ich hab bei meiner Google Suche leider nichts brauchbares gefunden.

LG

Re: Kamera für Pimatic - Raspberry Pi

Verfasst: Mittwoch 29. August 2018, 15:36
von __blackjack__
@mango94: Wenn man etwas in Python programmieren möchte und kein Python kann, müsste man als erstes mal Python lernen. :-) In der Python-Dokumentation gibt es beispielsweise ein Tutorial.

Re: Kamera für Pimatic - Raspberry Pi

Verfasst: Montag 3. September 2018, 14:28
von mango94
Ich hab mir die letzten Tage ein paar Videos angesehen und einige Anleitungen dazu gelesen.

Mir ist aber noch immer nicht klar, ob ich für mein Vorhaben überhaupt Python benutzen kann.
Zur Zeit benutze ich Pimatic am Raspberry Pi um einige Zimmerpflanzen per Sensor abzufragen, und dann gegeben falls per Pumpe zu gießen.

Die Grundfunktionen klappen, jedoch muss ich noch einige Optimierungen vornehmen, die über die Pimatic Regeln erfolgen werden. Hier ist das Problem, wie schon oben genannt, dass ich noch immer nicht weiß, wie ich einen SSH Befehl als Skript ausführen kann - ich konnte nur finden, wie man Hello World usw anzeigen lassen kann.
Dass #!/bin/bash im Skript ganz oben stehen muss, ist mir klar, jedoch wie der Rest aussieht, ist mir überhaupt nicht klar.

Wäre super, wenn mir jemand als kleines Beispiel einen Denkanstoß geben könnte.


Danke

Re: Kamera für Pimatic - Raspberry Pi

Verfasst: Montag 3. September 2018, 18:42
von __blackjack__
@mango94: Ob Dein Problem mit Python lösbar ist, weiss ich auch nicht. Dazu müsste man das Problem und Pimatic besser kennen. :-)

Wozu jetzt SSH noch in den Mix dazu kommt ist mir auch nicht klar, und ``#!/bin/bash`` ist die erste Zeile in Bash-Skripten, das ist ja noch mal etwas anderes. Bei Python steht da üblicherweise ``#!/usr/bin/env python`` (Python 2.x) beziehungsweise ``#!/usr/bin/env python3`` (Python 3.x).

Wofür möchtest Du denn ein Beispiel? Wenn das Problem nicht ausreichend beschrieben ist, dann nützen auch irgendwelche Beispiele nichts.

Was ist denn die Ausgangssituation? Du sagst was von einer Kamera — was für eine? Wie wird die angeschlossen/angesprochen? Webcam per USB? Oder eine speziellere Raspberry-Kamera per CSI?

Re: Kamera für Pimatic - Raspberry Pi

Verfasst: Dienstag 4. September 2018, 09:27
von mango94
Danke für die Infos.
Kammera ist folgende: https://www.reichelt.at/raspberry-pi-ka ... pos_0&&r=1

Diese Kamera kann man in Pimatic nicht über Plugins einbinden, deshalb muss ich über die Regeln ein Skript erstellen, das mit der Kamera ein Foto macht. Das soll dann am Pi gespeichert werden.
Angeschlossen ist sie per 15-polige serielle MIPI-Schnittstelle (CSI-2).

Wäre echt super, wenn mir jemand einen Link zeigen kann, wie ich das formulieren muss. Vielleicht finde ich ja gleich was bei Google, was mir weiterhilft.

LG

Re: Kamera für Pimatic - Raspberry Pi

Verfasst: Dienstag 4. September 2018, 09:54
von __blackjack__
Für die Kamera gibt es das picamera-Modul. Das hat eine Dokumentation. Und direkt bei der Quelle der Hardware gibt es ein Tutorial: Getting started with picamera.

Re: Kamera für Pimatic - Raspberry Pi

Verfasst: Dienstag 4. September 2018, 11:09
von mango94
Danke!!! Sowas hab ich gesucht!

Freut mich :mrgreen:

Re: Kamera für Pimatic - Raspberry Pi

Verfasst: Dienstag 4. September 2018, 12:33
von mango94
Also so einfach ist es dann doch nicht...

Ich bin gerade mitten im Tutorial, bei Punkt Camera Preview: https://projects.raspberrypi.org/en/pro ... picamera/5

Hier soll ich jetzt folgenden Code eingeben, im Python3 IDLE:

Code: Alles auswählen

from picamera import PiCamera
from time import sleep

camera = PiCamera()

camera.start_preview()
sleep(10)
camera.stop_preview()
und hier kommt die Fehlermeldung:

Code: Alles auswählen

Python 3.5.3 (/usr/bin/python3)
>>> %Run camera.py
  File "/home/pi/camera.py", line 1
    Python 3.5.3 (default, Jan 19 2017, 14:11:04)
             ^
SyntaxError: invalid syntax

>>> 
Ich habs dann mit noch einen anderem Code versucht, aber das hat auch nicht geklappt:

Code: Alles auswählen

from time import sleep
from picamera import PiCamera

camera = PiCamera()
camera.resolution = (1024, 768)
camera.start_preview()
# Camera warm-up time
sleep(2)
camera.capture('foo.jpg')
Versuchsweise hab ich in die erste Zeile auch noch #!/usr/bin/env python3 geschrieben, da hab ich auch einige Varianten getestet wie python3.5.3, python3.5 usw
Der Error Code war aber gleich, wie oben.

Hat vielleicht jemand eine Idee, wo der Fehler liegt?

LG

Re: Kamera für Pimatic - Raspberry Pi

Verfasst: Dienstag 4. September 2018, 13:31
von Tholo
Ich glaube du arbeitest in der idle falsch. Entweder man startet eine py Datei oder man führt den Code direkt im Idle aus.

Im Idle sobald
>>>

Code: Alles auswählen

from picamera import PiCamera
from time import sleep

camera = PiCamera()

camera.start_preview()
sleep(10)
camera.stop_preview()
Zeile für Zeile eingeben

Oder im terminal unter home/pi/

Code: Alles auswählen

Python3 camera.py

Re: Kamera für Pimatic - Raspberry Pi

Verfasst: Dienstag 4. September 2018, 13:57
von __blackjack__
@mago94: Du hast da offensichtlich ``Python 3.5.3 (default, Jan 19 2017, 14:11:04)`` in der ersten Zeile Deiner Datei stehen. Das ist kein gültige Pythonquelltext. Das ist die Ausgabe vom Python-Interpreter wenn man ihn ohne Angabe einer Datei startet. Oder was er in IDLE im Python-Shell-Fenster am Anfang ausgibt.

Re: Kamera für Pimatic - Raspberry Pi

Verfasst: Dienstag 4. September 2018, 16:43
von mango94
Danke, jetzt hat es geklappt!

Leider kann ich jetzt aber nur ein Bild abspeichern. Kann man das Skript nicht ändern, dass Datum+Uhrzeit in den Dateinamen geschrieben wird?

DANKE :D

Re: Kamera für Pimatic - Raspberry Pi

Verfasst: Dienstag 4. September 2018, 19:08
von __blackjack__
@mango94: Das gezeigte Programm speichert kein Bild. Wenn man ein Bild unter einem Namen speichert, dann kann man da auch Datum und Uhrzeit in den Namen einbauen. Im `datetime`-Modul gibt es passende Datentypen um mit Datums- und Zeitwerten zu arbeiten. Und wenn man mehr als ein Bild speichern möchte, also regelmässig wiederholend, braucht man eine Schleife. Da kommt einem das Wissen das man sich in einem Grundlagentutorial angeeignet hat zugute. In der Python-Dokumentation ist beispielsweise eines.