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

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.

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)

Einstellungen in der SPS Hardware Konfiguration

Parameter vom HTTP Server

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

Formatierte Datenausgabe im Browser Firefox

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.