Ich habe daran gearbeitet, eine Raspberry Pi-Webcam einzurichten, dank einer Anleitung auf PingBin . Ich komme jedoch nicht an einem Problem vorbei, bei dem die Kamera nach einigen Stunden Schnappschuss verloren geht.
Ich nahm die im Beitrag erwähnte Microsoft LifeCam Cinema 720p HD-Webcam und schloss sie an einen steckbaren 7-Port-Hochgeschwindigkeitshub an . Ich habe auch einen Raspberry Pi Model B doppelt an den Hub angeschlossen, sowohl für die Stromversorgung als auch für die Daten. Zuletzt den Wi-Pi USB WiFi Adapter an den Hub angeschlossen und für mein Netzwerk konfiguriert. Hier ist ein Foto von meinem Hardware-Setup:
Für das Software-Setup verwende ich vom 16.12.2012 ein Raspbian-Bild mit „Keuchen“. Ich habe meine motion.conf zur Verfügung gestellt. Ich habe motion
als Daemon konfiguriert , dass alle 10 Sekunden ein Snapshot erstellt wird. Ich habe einen Cronjob, der den neuesten Schnappschuss zur Anzeige auf einen Webserver hochlädt.
Dies alles funktioniert ein paar Stunden lang hervorragend (die längste Laufzeit war ungefähr ein halber Tag), aber dann geht die Kamera verloren, wie man sehen kann bei /var/log/syslog
:
10:46:25 motion: [1] v4l2_next: VIDIOC_QBUF: No such device
10:46:25 motion: [1] Video device fatal error - Closing video device
10:46:25 motion: [1] Closing video device /dev/video0
10:46:30 motion: [1] Retrying until successful connection with camera
10:46:30 motion: [1] Failed to open video device /dev/video0: No such file or directory
Wenn ich mir dann die Ausgabe von anschaue lsusb
, sehe ich nicht einmal mehr die Kamera als eines der angeschlossenen Geräte (dasselbe gilt für ls /dev/bus/usb/001/
):
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 001 Device 016: ID 0424:9512 Standard Microsystems Corp.
Bus 001 Device 017: ID 0424:ec00 Standard Microsystems Corp.
Bus 001 Device 018: ID 1a40:0201 Terminus Technology Inc. FE 2.1 7-port Hub
Bus 001 Device 019: ID 148f:5370 Ralink Technology, Corp. RT5370 Wireless Adapter
Ich habe alles versucht, was mir einfällt, einschließlich eines Root-Cronjobs, der motion
einige Sekunden lang einmal pro Stunde stoppt , um der Kamera eine „Pause“ zu geben:
sudo service motion stop
sleep 5
sudo service motion start
Dies hat keine spürbaren Auswirkungen gehabt. Ich habe sogar versucht zu untersuchen, wie der USB-Anschluss für das Gerät programmgesteuert ausgeschaltet werden kann, um die Kamera aus- und wieder einzuschalten, aber es scheint, dass dies nicht möglich ist (abgesehen von der Tatsache, dass es ein trauriger Hack wäre). Die Kamera bietet keine power/level
Schnittstelle, sondern nur power/persist
, deshalb habe ich sogar erfolglos versucht, sie umzuschalten:
echo 0 | sudo tee /sys/bus/usb/devices/usb1/1-1/1-1.3/1-1.3.2/power/persist
Die einzige Möglichkeit motion
, weiterhin Snapshots zu erstellen, besteht darin, die Webcam physisch vom Hub zu trennen, sie erneut zu verbinden und den Dämon neu zu starten.
Haben Sie eine Idee, wie Sie verhindern können, dass die Kamera offline geht? Es scheint, dass sich die Kamera nach einer bestimmten Zeit, in der sie an die Stromversorgung angeschlossen ist, selbst ausschaltet.
Update: Ich habe diese USB-Kamera aufgegeben und verwende jetzt das Pi-Kameramodul mit großem Erfolg.
Antworten:
Leider gibt es keine einfache Antwort, um es sofort zum Laufen zu bringen. Hier sind jedoch einige Dinge, die ich in Ihrem Fall versuchen würde.
Zunächst einmal würde ich versuchen, Ihre Auflösung auf 320x240 zu senken und zu prüfen, ob sie stabiler ist. Im Grunde sollte dies die Belastung des Pi verringern.
Sie könnten sogar noch einen Schritt weiter gehen und "webcam_port" für einen Ihrer Tests auf Null setzen, wodurch der Webserver deaktiviert wird, Ihre Snapshot-Funktionalität jedoch weiterhin ausgeführt wird. Dadurch wird die Last nicht viel geringer als bei diesem Setup.
Nehmen Sie als nächstes ein Multimeter heraus (falls Sie eines haben), überprüfen Sie den USB-Ausgang, bevor Sie die Webcam anschließen, dann, sobald sie eingesteckt ist und schließlich, wenn sie ausgefallen ist. Ich habe von einigen USB-Hubs mit Stromversorgung gehört, die nicht wirklich genug Strom einspeisen, insbesondere wenn einige Geräte sie verwenden.
Schließlich würde ich auch versuchen, eine Weile eine kabelgebundene Netzwerkverbindung anstelle von WiFi zu versuchen, um dies auszuschließen.
Hoffe, einige von ihnen könnten dir helfen, es festzuhalten :)
quelle
webcam_port
auf Null gesetzt und die Auflösung reduziert. Ich sollte beachten, dass ich es auch versucht hatte,sudo shutdown -r now
als eson_camera_lost
passierte. Wenn der Pi jedoch neu/dev/video0
gestartet wird , geht die Kamera immer noch verloren und ist nicht vorhanden. Zeigt dies nicht ein Problem mit der Kamera und nicht mit dem Pi selbst an?Sie haben nicht angegeben, welches Betriebssystem Sie auf Ihrem Pi ausführen.
Ich habe mit Motion (dem Kameraerfassungsprogramm) auf dem Raspberry Pi unter Arch Linux herumgespielt. Ich habe mehrere Pi, mehrere Webcams, mehrere Netzteile, mehrere SD-Karten ... und eines bleibt gleich. Alle von ihnen werden nach 1 bis 3 Tagen vollständig blockiert (da Sie nicht einmal den Pi anpingen können und die Videoanzeige schwarz ist). Wenn ich Bewegung aus dem Setup entferne, läuft das Pis auf unbestimmte Zeit (derzeit muss ich Pis zwei Wochen lang ohne Bewegung laufen lassen und jetzt zählen).
Meine Erfahrung führt mich zu der Meinung, dass Bewegung fehlerhaft ist, zumindest die Arch Linux ARM-Version. Ich habe seit Februar versucht, die Wurzel dieses Problems aufzuspüren.
quelle
Ich leite seit 12 Jahren hauptberuflich ein Unternehmen für technischen Support. Hier sind die Schritte, mit denen ich das Problem weiter eingrenzen und beheben kann:
1) Probieren Sie eine andere Kamera auf dem Pi aus. Verliert es nach einiger Zeit auch die Verbindung?
2) Probieren Sie die Originalkamera unter Windows, Mac oder Linux aus. Bleibt es lange wach?
Ergebnisse (wahrscheinlichstes Problem):
1 = ja, 2 = ja - Schlechter USB am Pi. Es könnte ein fehlerhaftes Pi-Board sein. USB und Ethernet arbeiten beide auf demselben Bus, sodass Sie möglicherweise etwas darüber erfahren, ob der USB nicht mehr funktioniert und das Ethernet weiterhin funktioniert oder beide nicht mehr funktionieren. Ein weiterer Test würde wahrscheinlich einen anderen Pi erfordern.
1 = nein, 2 = nein - Das Problem ist die Originalkamera.
1 = ja, 2 = nein - Möglicherweise haben Sie zwei schlechte Kameras.
1 = nein, 2 = ja - Höchstwahrscheinlich eine Inkompatibilität zwischen der Originalkamera und dem Pi oder ein seltsames Stromproblem auf dem Pi.
quelle
Ein weiterer möglicher "hässlicher Hack" wäre die Verwendung der GPIO-Pins zur Stromversorgung eines Relais, das in das USB-Kabel der Kamera gespleißt wird. Sie können dies dann verwenden, um die Stromleitung zur Kamera ein- und auszuschalten.
quelle
Versuchen Sie dies auf der Datei motion.conf, es funktioniert perfekt für mich ...
quelle
backquotes
Ihren Code um. Gefällt Ihnen dieses `