Verwendung des INSTAR MQTT-Alarmservers zur Verfolgung bewegter Objekte
Q: Ist es möglich, Node-RED zu verwenden, damit meine Full-HD Pan&Tilt Kamera bewegten Objekten folgt?
Machen Sie Ihrer Kamera zum Herzstück Ihres Smarthomes

Mithilfe der MQTT Schnittstelle Ihrer INSTAR Full HD Kameras können Sie diese zu einem bestehenden Smarthome-System (Home Assistant, OpenHAB, Node-RED, Athom Homey, Homematic, ioBroker, Loxone, homee) hinzufügen kann. Oder auch zum Haupt-Broker für Ihre MQTT Sensoren machen. MQTT ermöglicht es Ihnen ALLE Funktionen Ihrer Kamera zu automatisieren und mit anderen Diensten in Ihrem Smarthome zu verknüpfen.
Kontrollieren Sie Ihre Kamera über den IFTTT Online Dienst
Auf der IFTTT-Plattform stellten wir einen Dienst namens INSTAR zur Verfügung. Die INSTAR Applets bieten Ihnen die Möglichkeit, einige Einstellungen Ihrer INSTAR Kamera oder INSTAR Cloud mit IFTTT zu steuern. Sie können INSTAR mit Auslösern für Ort (Geo Location) und Datum & Zeit verbinden, Benachrichtigungen versenden und vieles mehr. Zum Beispiel können Sie die INSTAR Applets mit dem IFTTT-Ortungsdienst verbinden und automatisch den Alarm deaktivieren lassen, wenn Sie zu Hause ankommen. Sie können die INSTAR-Applets auch verwenden, um Ihre eigene Automatisierung zu erstellen und sie mit anderen Applets von Drittanbietern zu verbinden.
A: Sie können den INSTAR MQTT Alarmserver verwenden, um Node-RED über erkannte Bewegungen zu benachrichtigen. Sie können damit beginnen, zwei Bereiche auszuwählen, die Sie zum Auslösen einer Schwenk- oder Neigebewegung Ihrer Kamera verwenden möchten:
Wir möchten nun Node-RED anweisen, unsere Kamera nach links zu bewegen, wenn der linke Bewegungserkennungsbereich (Bereich 1) ausgelöst wird, und nach rechts, wenn der rechte Erkennungsbereich (Bereich 4) ausgelöst wird.
Um sicherzustellen, dass unsere Kamera nicht durch Schatten oder Lichtreflexionen verwirrt wird und plötzlich zur Wand schaut, stellen wir zunächst die Preset-Position 1 in einer sinnvollen Mittelposition ein:
Und sagen Sie Ihrer Kamera, dass sie nach einer angemessenen Zeit auf diese Position (Parkposition) zurückkehren soll:
Node-RED benötigt nun ein Abonnement für das MQTT-Status-Topic status/alarm/triggered
. Wie wir zuvor gezeigt haben, erhält dieses Topic ein Update mit dem Wert 1-4, wenn die Bereiche 1 bis 4 ausgelöst werden.
Wenn wir eine Meldung mit dem Wert {"val": "1"}
erhalten, wissen wir jetzt, dass der linke Bereich ausgelöst wurde und wir uns nach links bewegen müssen. Auf dieselbe Weise bedeutet eine Nutzlast von {"val": "4"}
, dass wir uns einen Schritt nach rechts bewegen müssen. Der komplette Node-RED Flow sieht so aus (siehe JSON-Export am Ende dieses Artikels):
Und hier ist der Flow in Aktion:
[
{
"id": "b3f2131d.c323e",
"type": "mqtt in",
"z": "c025b147.f6afb",
"name": "Alarm Server",
"topic": "instar/local/status/alarm/triggered",
"qos": "1",
"datatype": "auto",
"broker": "996228fe.ababc8",
"x": 90,
"y": 620,
"wires": [
[
"7e41db00.f5ed94"
]
]
},
{
"id": "7e41db00.f5ed94",
"type": "json",
"z": "c025b147.f6afb",
"name": "",
"property": "payload",
"action": "",
"pretty": false,
"x": 230,
"y": 620,
"wires": [
[
"da03fe2f.869de"
]
]
},
{
"id": "da03fe2f.869de",
"type": "switch",
"z": "c025b147.f6afb",
"name": "",
"property": "payload.val",
"propertyType": "msg",
"rules": [
{
"t": "eq",
"v": "1",
"vt": "str"
},
{
"t": "eq",
"v": "4",
"vt": "str"
}
],
"checkall": "true",
"repair": false,
"outputs": 2,
"x": 347,
"y": 620,
"wires": [
[
"682bc199.6b418"
],
[
"ec0056bc.645fa8"
]
]
},
{
"id": "682bc199.6b418",
"type": "change",
"z": "c025b147.f6afb",
"name": "Area 1 => Move Left",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "{\"val\":\"left\"}",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 520,
"y": 600,
"wires": [
[
"5bbe46a4.047128"
]
]
},
{
"id": "ec0056bc.645fa8",
"type": "change",
"z": "c025b147.f6afb",
"name": "Area 4 => Move Right",
"rules": [
{
"t": "set",
"p": "payload",
"pt": "msg",
"to": "{\"val\":\"right\"}",
"tot": "str"
}
],
"action": "",
"property": "",
"from": "",
"to": "",
"reg": false,
"x": 520,
"y": 640,
"wires": [
[
"5bbe46a4.047128"
]
]
},
{
"id": "5bbe46a4.047128",
"type": "mqtt out",
"z": "c025b147.f6afb",
"name": "features/ptz/movestep",
"topic": "instar/local/features/ptz/movestep",
"qos": "1",
"retain": "false",
"broker": "996228fe.ababc8",
"x": 740,
"y": 620,
"wires": []
},
{
"id": "996228fe.ababc8",
"type": "mqtt-broker",
"z": "",
"name": "INSTAR MQTT",
"broker": "192.168.2.117",
"port": "1883",
"clientid": "iored",
"usetls": false,
"compatmode": false,
"keepalive": "60",
"cleansession": true,
"birthTopic": "",
"birthQos": "0",
"birthPayload": "",
"closeTopic": "",
"closeQos": "0",
"closePayload": "",
"willTopic": "",
"willQos": "0",
"willPayload": ""
}
]