JSON SPS

SPS liefert
JSON Daten

Einige Kunden fragten mich nach einer einfachen Datenschnittstelle der SPS. So etwa 5 bis 20 Werte sollten nur lesbar aus der SPS kommen. Eine bereits angebotene SQL oder MySQL Schnittstelle ist viel leistungsfähiger, aber auch komplexer. Wer keine Kenntnisse in SQL und Datenbanken besitzt und die Funktionalität nicht nutzen möchte, wird mit dieser JSON Datenschnittstelle vielleicht eher eine Lösung finden. Bewußt wollte ich keine neuen Dinge entwickeln und möglichst hardwareunabhängig bleiben. Einzige Voraussetzung ist ein Ethernet-Interface an der SPS. Ob auch Adapter z.B. ACCON NetLink PRO compact auch dafür eingesetzt werden können, kann ich nicht sagen.

Beispiel
Aufgabe: Stückzähler von mehreren Maschinen sollen vom Meisterbüro eingesehen werden.
Lösung: Hierbei werden in jede SPS die JSON Bausteine eingespielt und die Datenpunkte verknüpft. Auf dem PC im Meisterbüro wird nur der Browser geöffnet und über die URL auf die SPS zugegriffen. Die Stückzahl ist direkt ablesbar und als Datei abspeicherbar. Interessiert? Anfrage hier

Samsung Internet
Samsung_Internet

Andere mögliche Clients, z.B. Smartphone mit Browser funktionieren selbstverständlich auch.

Die SPS stellt einen HTTP Server bereit. Mit der GET-Methode werden Datenpunkte von der SPS angefordert. Ein Internet Browser kann dies sofort leisten.

JSON_Firefox
JSON_Firefox

Beispiel einer JSON Antwort der SPS

Ausgehend von einem TIA Beispiel für einfachen Datenexport aus SPS in JSON wurden Bausteine entwickelt, um Datenpunkte direkt auszugeben.

Siemens Bibliothek für Daten-Streams (LStream)

SPS Hardware Konfiguration
TIA Portal Hardware Konfiguration

Einstellungen in der SPS Hardware Konfiguration

Parameter des HTTP Servers

Parameter vom HTTP Server

Datenquelle in der SPS im Datenbaustein

Datenquelle in der SPS im Datenbaustein
Die einzelnen Bezeichnungen, die Struktur und die Werte sind in der SPS frei wählbar.

JSON im Firefox

Formatierte Datenausgabe im Browser Firefox

„Schöndruck“ im Edge

Andere Browser können es auch darstellen, aber trotz Schöndruck ist noch Luft nach oben.

Die JSON Antwort ist hier unformatiert komplett mit 695 Byte dargestellt:

{„Webseite URL“:“christian-hubert.de“,“timestamp“:“2023-04-04T06:40:37+00:00″,“currentProduct“:{„type“:“8a93928f-b0b9-4444-84ce-a428f1d5e2bf“,“dimensions“:{„width“:33.56,“length“:563.5,“height“:20}},“sensors“:[{„id“:“=1+PU202-96Y104:1″,“value“:false,“lastUpdated“:“2023-04-04T06:40:37+00:00″},{„id“:“=1+PU202-96Y103:1″,“value“:true,“lastUpdated“:“2023-04-04T06:40:37+00:00″},{„id“:“=1+PU202-96B191:1″,“value“:true,“lastUpdated“:“2023-04-04T06:40:37+00:00″},{„id“:“=1+RO301-46S120:4″,“value“:false,“lastUpdated“:“2023-04-04T06:40:37+00:00″}],“actors“:[{„id“:“=1+RO301-202V3:5″,“value“:false,“lastUpdated“:“2023-04-04T06:40:37+00:00″},{„id“:“=1+RO301-202V3:2″,“uptime“:12052,“UpdateTime“:“2023-04-04T06:40:37+00:00″}]}

Der JSON Block kann hier auf Gültigkeit geprüft werden.

Bei Interesse bitte Kontakt aufnehmen.

Ähnliche Beiträge