Werte der icom Data Suite können auf verschiedene Arten gesetzt werden.
1. Situation
Der Wert eines analogen Merkers der icom Data Suite soll mittels SMS, MQTT und Cloud Control geschrieben werden.
2. Lösung
Es wird ein Ereignis definiert, dass eine Aktion auslöst, sobald eine Nachricht erhalten wird, die einen bestimmten Text enthält. Die Aktion setzt dann einen Analogwert auf einen Wert, der aus dem Nachrichtentext entnommen wird.
Es wird vorausgesetzt, dass Sie Zugriff auf das Web-Interface der icom Data Suite haben. Das Smart Device muss über eine Internet-Verbindung verfügen.
2.1. Schreiben eines Werts mittels SMS
Es wird vorausgesetzt, dass das Smart Device SMS empfangen kann.
-
Das Web-Interface der icom Data Suite mit einem Browser aufrufen:
-
192.168.1.10 oder ids.local [1]
-
Benutzername: insys (Voreinstellung)
-
Kennwort: icom (Voreinstellung)
-
-
Im Menü Datenpunkte → Merker einen neuen Merker hinzufügen ():
-
Beschreibung: analogue test flag
-
Typ: Unsigned Integer
-
-
Auf Einstellungen speichern klicken.
-
Im Menü Ereignis ein neues Ereignis hinzufügen () und dieses bearbeiten ():
-
Auf Einstellungen speichern klicken.
-
Das Profil aktivieren ().
-
Eine SMS, die den Text Set value to: 23 (oder eine andere vorzeichenbehaftete Ganzzahl) enthält, an das INSYS Smart Device senden und im Menü Status → Aktuelle Werte der icom Data Suite prüfen, ob sich der Wert entsprechend geändert hat.
2.2. Schreiben eines Werts mittels MQTT
Es wird vorausgesetzt, dass Sie über einen funktionierenden MQTT-Broker und ein weiteres Gerät als MQTT-Client verfügen.
-
Das Web-Interface der icom Data Suite mit einem Browser aufrufen:
-
192.168.1.10 oder ids.local [1]
-
Benutzername: insys (Voreinstellung)
-
Kennwort: icom (Voreinstellung)
-
-
Im Menü Datenpunkte → Merker einen neuen Merker hinzufügen ():
-
Beschreibung: analogue test flag
-
Typ: Unsigned Integer
-
-
Auf Einstellungen speichern klicken.
-
Im Menü Nachrichten → MQTT einen neuen Broker hinzufügen () und diesen bearbeiten ():
-
Beschreibung: test broker
-
Server: die Server-URL Ihres MQTT-Brokers eingeben [5]
-
Port: den Server-Port Ihres MQTT-Brokers eingeben
-
-
Auf Einstellungen speichern klicken.
-
Im Menü Ereignis ein neues Ereignis hinzufügen () und dieses bearbeiten ():
-
Beschreibung: set value by MQTT message
-
Ereignis: MQTT-Nachricht wurde empfangen
-
Von MQTT-Broker: oben hinzugefügten Broker auswählen
-
Topic: einen Topic eingeben, wie z.B. test/set [6]
-
Text: Set value to: [7]
-
QoS: 0 [8]
-
Aktion: Analogen Datenpunkt setzen
-
Datenpunkt: setzen auf Wert aus Nachricht zwischen to: und [4]
-
-
Auf Einstellungen speichern klicken.
-
Das Profil aktivieren ().
-
Eine MQTT-Nachricht an den Broker mit demselben Topic und dem Inhalt Set value to: 23 (oder einer anderen vorzeichenbehaftete Ganzzahl) vom anderen MQTT-Client aus senden und im Menü Status → Aktuelle Werte der icom Data Suite prüfen, ob sich der Wert entsprechend geändert hat.
2.3. Schreiben eines Werts mittels Cloud Control
Es wird vorausgesetzt, dass Sie über einen Cumulocity Cloud Account von INSYS icom verfügen.
-
Das Web-Interface der icom Data Suite mit einem Browser aufrufen:
-
192.168.1.10 oder ids.local [1]
-
Benutzername: insys (Voreinstellung)
-
Kennwort: icom (Voreinstellung)
-
-
Im Menü Datenpunkte → Merker einen neuen Merker hinzufügen ():
-
Beschreibung: analogue test flag
-
Typ: Unsigned Integer
-
-
Auf Einstellungen speichern klicken.
-
Im Menü Nachrichten → Cumulocity einen neuen Server hinzufügen () und diese bearbeiten ():
-
Auf Einstellungen speichern klicken.
-
Im Menü Meldungen → Cumulocity eine neue Meldungen hinzufügen () und diese bearbeiten (): [11]
-
Beschreibung: cloud control message
-
Klasse: Cloud Control
-
Datenpunkte: den oben hinzugefügten analogue test flag markieren
-
-
Auf Einstellungen speichern klicken.
-
Im Menü Datenpunkte → Timer einen neuen Timer hinzufügen () und diesen bearbeiten ():
-
Beschreibung: message send interval
-
Typ: Intervall, jede 1 Stunde ausgelöst
-
-
Auf Einstellungen speichern klicken.
-
Im Menü Ereignisse ein neues Ereignis hinzufügen () und dieses bearbeiten (): [12]
-
Beschreibung: send cloud control message
-
Ereignis: Timer ist abgelaufen
-
Timer: message send interval
-
Aktion: Nachricht versenden
-
Nachricht … versenden: cloud control message
-
-
Auf Einstellungen speichern klicken.
-
Das Profil aktivieren ().
-
Ein weiteres Browser-Fenster oder -Tab öffnen und an Ihrem Cumulocity-Konto anmelden.
-
Auf Andere Applikationen () rechts oben klicken und NSYS icom auswählen.
-
Auf Alle Geräte () im Menü links klicken und Ihr INSYS Smart Device aus der Geräteliste auswählen.
-
Den Bildschirm Cloud Control () auswählen und zu dem zu ändernden Datenpunkt gehen.
-
Den neuen Wert für diesen Datenpunkt im Feld New Value eingeben und auf Send Value Update klicken.
-
Die Änderung des Werts im Menü Status → Aktuelle Werte der icom Data Suite verifizieren.
-
Auf Request Value Update und Refresh View () in Cloud Control klicken, um den neuen Wert auch in Cloud Control zu sehen.
3. Fehlersuche
-
Um eine SMS durch die icom Data Suite versenden zu können, muss das Modem im Router die SMS Center Nummer des Providers kennen. Diese wird üblicherweise von der SIM-Karte ausgelesen. Wenn keine Nummer auf der SIM-Karte gespeichert ist, muss diese im Menü Interfaces → Slot 2: LTE im Web-Interface des Routers eingetragen werden.
-
Um eine SMS durch die icom Data Suite empfangen zu können, müssen eingehende SMS in den Container weitergeleitet werden. Die Checkbox SMS in die Container weiterleiten muss im Menü Administration → Container im Web-Interface des Routers markiert sein.
-
Wenn in dem INSYS Smart Device, auf dem die icom Data Suite läuft, IP-Filter aktiviert sind, prüfen, ob eine Filterregel im Menü Netzfilter → IP-Filter im Web-Interface des Routers vorhanden ist, die den Empfang von MQTT-Nachrichten erlaubt.
-
Der Status einer MQTT- oder Cumulocity-Verbindung kann im Menü Status → Aktuelle Werte verifiziert werden.
-
Die Cloud Control-Nachricht muss mindestens einmal gesendet werden, bevor der/die mit dieser Nachricht übertragene(n) Datenpunkt(e) in Cloud Control erscheint/erscheinen. [13]
4. Ressourcen
Folgende ASCII-Konfiguration kann per Copy & Paste übernommen werden. Dabei ist zu beachten, dass die einzelnen Parameter entsprechend der eigenen Anwendung anzupassen sind. Bei nummerierten Parameter ist die korrekte Nummerierung zu beachten. Außerdem ist zu beachten, dass keine bestehenden Parameter mit derselben Nummer überschrieben werden. Eine ordentliche Funktionalität kann nur gewährleistet werden, wenn das geöffnete Profil zuvor aus den Werkseinstellungen erzeugt wurde.
datapoints.flags.flag.add datapoints.flags.flag[1].name=flag1 datapoints.flags.flag[1].active=1 datapoints.flags.flag[1].description=analogue test flag datapoints.flags.flag[1].type=unsigned_int datapoints.timer.timer.add datapoints.timer.timer[1].name=timer1 datapoints.timer.timer[1].active=1 datapoints.timer.timer[1].description=message send interval datapoints.timer.timer[1].type=interval datapoints.timer.timer[1].interval_hh=1 messages.mqtt.broker.add messages.mqtt.broker[1].active=1 messages.mqtt.broker[1].name=mqttBrkr1 messages.mqtt.broker[1].description=test broker messages.mqtt.broker[1].server=broker-url.com messages.mqtt.broker[1].port=1883 messages.mqtt.broker[1].username= messages.mqtt.broker[1].password= messages.mqtt.broker[1].client_id= messages.mqtt.broker[1].use_ssl_tls=0 messages.mqtt.broker[1].verify_peer=0 messages.mqtt.broker[1].verify_host=0 messages.cumulocity.server.add messages.cumulocity.server[1].active=1 messages.cumulocity.server[1].name=c8yServ1 messages.cumulocity.server[1].description=cumulocity server messages.cumulocity.server[1].protocol=https messages.cumulocity.server[1].server=tenant.cumulocity.com messages.cumulocity.server[1].verify_peer=0 messages.cumulocity.server[1].verify_host=0 messages.cumulocity.server[1].device_name=INSYS Smart Device messages.cumulocity.server[1].self_registration=1 messages.cumulocity.server[1].username=serial_number messages.cumulocity.server[1].password= messages.cumulocity.server[1].device_id= messages.cumulocity.server[1].feed.add messages.cumulocity.server[1].feed[1].message_active=1 messages.cumulocity.server[1].feed[1].message_name=c8yMsg1 messages.cumulocity.server[1].feed[1].message_description=cloud control message messages.cumulocity.server[1].feed[1].message_class=cloudcontrol messages.cumulocity.server[1].feed[1].message_datapoints=flag1 messages.cumulocity.server[1].feed[1].message_buffer=0 events.event.add events.event[1].active=1 events.event[1].description=set value by SMS message events.event[1].event_type=ev_sms events.event[1].event_sms_contact= events.event[1].event_sms_text=-----BEGIN event_sms_text-----Set value to:-----END event_sms_text----- events.event[1].event_mqtt_broker=--- events.event[1].action_type=act_analog events.event[1].action_analog_datapoint=flag1 events.event[1].action_analog_set=by_message events.event[1].action_analog_message_escape_start=to: events.event[1].action_analog_message_escape_end= events.event.add events.event[2].active=1 events.event[2].description=set value by MQTT message events.event[2].event_type=ev_mqtt events.event[2].event_mqtt_broker=mqttBrkr1 events.event[2].event_mqtt_topic=test/set events.event[2].event_mqtt_text=-----BEGIN event_mqtt_text-----Set value to:-----END event_mqtt_text----- events.event[2].event_mqtt_qos=0 events.event[2].action_type=act_analog events.event[2].action_analog_datapoint=flag1 events.event[2].action_analog_set=by_message events.event[2].action_analog_message_escape_start=to: events.event[2].action_analog_message_escape_end= events.event.add events.event[3].active=1 events.event[3].description=send cloud control message events.event[3].event_type=ev_timer events.event[3].event_timer_name=timer1 events.event[3].action_type=act_message events.event[3].action_message=c8yMsg1
Zurück zu den Configuration Guides für die icom Data Suite
Zurück zur Übersicht