Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

SmartThings Bewegungssensor mit Computer Vision auf Raspberry Pi 3

Einen Computer-Vision-fähigen Bewegungssensor auf einem Raspberry Pi 3 mit PiCamera deployen. Das Gerät erkennt menschliche Gesichter und überträgt Anwesenheitsinformationen via UPnP über das lokale Netzwerk an SmartThings.

Ich setze voraus, dass Sie einen Raspberry Pi 3 mit funktionsfähiger Kamera und installiertem OpenCV haben. Falls nicht, empfehle ich dieses Tutorial 🙂

Custom SmartThings Device Handler erstellen

In der SmartThings IDE einen neuen Device Handler für unseren Computer-Vision-Bewegungssensor erstellen.

Zum „My Device Handler“ Bereich gehen und rechts oben „+ Create New Device Handler“ klicken.

In diesem Fall erstellen wir es aus Code. Zweiten Tab „From Code“ klicken, angehängten Device Handler Code einfügen und „Create“ klicken.

Auf nächster Seite „Publish“ klicken, um Gerät für Sie verfügbar zu machen.

SmartThings App schreiben

Ähnlich ein SmartApp erstellen. Im „My SmartApps“ Bereich „+ Create New SmartApps“ rechts oben klicken.

Aus Code erstellen, angehängten SmartApp Code einfügen und „Create“ klicken. Dann veröffentlichen.

Raspberry Pi vorbereiten

Wir benötigen jetzt ein Python-Skript, das Bilder aufnimmt, Gesichter erkennt und Status an SmartThings meldet.

Benötigte Libraries installieren:

pip install imutils
sudo apt-get install python3-twisted-web

Verzeichnis für Skript erstellen:

mkdir -p /home/pi/camera
cd /home/pi/camera

Skriptdatei erstellen:

sudo nano ssdpcamera.py

Angehängten Camera Python Script einfügen und speichern.

Skript testen mit python3 ssdpcamera.py – Sie sollten Log-Ausgabe sehen, die Kamera-Initialisierung und Gesichtserkennungs-Events anzeigt.

Raspberry Pi entdecken & koppeln

In der SmartThings Mobile App zu Marketplace → SmartApps navigieren, dann „Computer Vision (Connect)“ unter „+ My Apps“ finden.

Sicherstellen, dass Raspberry Pi eingeschaltet ist und Python-Skript läuft. SmartApp initiert Discovery; sobald Gerät erscheint, auswählen und „Done“ tippen.

Nach Kopplung beginnt das Gerät, Presence-Updates an Ihren SmartThings-Account zu senden.

Auto-Start Konfiguration

Um Skript automatisch beim Boot auszuführen, /etc/rc.local bearbeiten und folgende Zeile vor exit 0 hinzufügen:

(sleep 10; python3 /home/pi/camera/ssdpcamera.py)&

Die Klammern führen den Befehl nach kurzer Verzögerung im Hintergrund aus.

Code-Übersicht

Unten ein kurzer Auszug der Schlüsselkomponenten im Python-Skript. Vollständige Source-Files in den Anhängen.

#!/usr/bin/python3
import cv2
from picamera import PiCamera
from twisted.web import server, resource

# Kamera-Initialisierung
camera = PiCamera()
camera.resolution = (640, 480)
camera.framerate = 32

# Gesichtserkennung
face_cascade = cv2.CascadeClassifier('haarcascade_frontalface_default.xml')

# SSDP und HTTP Server für SmartThings Discovery und Status-Polling.

Das Skript erfasst kontinuierlich Frames, führt Haar-Cascade Gesichtserkennung durch und benachrichtigt den SmartThings Hub, wann immer eine Person erkannt wird oder die Szene leer wird.

Herstellungsprozess

  1. STMicroelectronics LSM6DSOX: Machine-Learning-fähiger Inertial Sensor für präzises, energieeffizientes Activity Tracking
  2. Sicheres Home Monitoring mit Home Assistant auf Raspberry Pi: Bewegung, Alarm & Video-Capture
  3. DIY Infrarot-Bewegungsmelder für Raspberry Pi – Schritt-für-Schritt-Anleitung
  4. LED mit PIR-Bewegungsmelder am Raspberry Pi steuern
  5. Raspberry Pi Geigerzähler bauen – Open-Hardware Strahlungssensor Tutorial
  6. Raspberry Pi GPIO meistern: PIR-Bewegungsmelder an B+/Model 2 anschließen
  7. Drahtloses Sensornetzwerk in einer Mühle des 18. Jahrhunderts einsetzen
  8. HC-SR501 PIR-Bewegungssensor an Raspberry Pi anschließen, kalibrieren und programmieren
  9. Raspberry Pi Hindernis-vermeidenden Roboter bauen – Einsteiger-Anleitung
  10. Sieben bewährte Wege, wie Computer Vision Effizienz steigert & Kosten senkt