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?

Mike Polinowski
INSTAR MQTT
Firmware Update
Full HD Serie
INSTAR Deutschland GmbH
INSTAR MQTT

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.

Mike Polinowski
IFTTT Applets
Firmware Update
Full HD Serie
INSTAR Cloud
INSTAR Deutschland GmbH
INSTAR IFTTT Applets

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:

INSTAR MQTT Alarmserver and Node-RED

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:

INSTAR MQTT Alarmserver and Node-RED

Und sagen Sie Ihrer Kamera, dass sie nach einer angemessenen Zeit auf diese Position (Parkposition) zurückkehren soll:

INSTAR MQTT Alarmserver and Node-RED

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):

INSTAR MQTT Alarmserver and Node-RED

Und hier ist der Flow in Aktion:

INSTAR MQTT Alarmserver and Node-RED

[
    {
        "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": ""
    }
]