API Overview: Unterschied zwischen den Versionen

Aus Gude Systems GmbH
Zur Navigation springen Zur Suche springen
Zeile 1: Zeile 1:
 
Dies ist eine Übersicht über die GUDE API (Application Programming Interface) zur Steuerung und zum Zugriff auf GUDE Geräte mit verschiedenen Protokollen.
 
Dies ist eine Übersicht über die GUDE API (Application Programming Interface) zur Steuerung und zum Zugriff auf GUDE Geräte mit verschiedenen Protokollen.
  
Unsere APIs sind modular aufgebaut und somit einheitlich für alle GUDE Geräte zu verwenden. Wir verwenden eine REST-API. Die Geräte können automatisch über die folgenden fünf verschiedenen Schnittstellen angesprochen werden, die unterschiedliche Möglichkeiten zur Steuerung und zum Zugriff auf die Konfigurationsdaten und Statusinformationen bieten. Nur http und die Konsole (telnet und seriell) bieten vollen Zugriff auf das Gerät.
+
Unsere APIs sind modular aufgebaut und somit einheitlich für alle GUDE Geräte zu verwenden. Wir verwenden eine REST-API. Die Geräte können automatisch über die folgenden fünf verschiedenen Schnittstellen angesprochen werden, die unterschiedliche Möglichkeiten zur Steuerung und zum Zugriff auf die Konfigurationsdaten und Statusinformationen bieten. Nur HTTP(S) und die Konsole (Command Line Interface) bieten vollen Zugriff auf das Gerät.
  
Aus Erfahrung mit unzähligen realisierten Kundenprojekten sind folgende Basisfunktionen bei einer Integration wichtig:
+
Aus Erfahrung mit erfolgreich realisierten Kundenprojekten sind folgende Basisfunktionen bei einer Integration wichtig:
* Schalten der Ausgänge: Ein und Aus
+
* Ein- und Ausschalten der Ausgänge
* Portstatus: Ein oder Aus
+
* Abfrage des Port-Zustands
* Messdaten: Stromstärke, Spannung, Strom und Stromverbrauch + Fehlerstrom (RCM)
+
* Messdaten: Spannung, Strom + Fehlerstrom (RCM), Stromverbrauch, Energiezähler (ein Zähler rücksetzbar)  
* Status des Überspannungsschutzes
+
* Status des Überspannungsschutzes (Over Voltage Protection)
* Plug&Play-Sensordaten: Temperatur, Luftfeuchte und Luftdruck
+
* Externe Sensordaten: Temperatur, Luftfeuchtigkeit und Luftdruck
  
 
{|class="wikitable"
 
{|class="wikitable"
!colspan="5"|Übersicht EPC/ENC APIs
+
!colspan="5"|Übersicht APIs
 
|-
 
|-
!Protkoll
+
!Protokoll
 
!Transport
 
!Transport
 
!Funktions-Umfang
 
!Funktions-Umfang
!Pros / Cons
+
!Positiv / Negativ
 
!Weitere Informationen
 
!Weitere Informationen
 
|-
 
|-
 
|'''CGI/JSON'''
 
|'''CGI/JSON'''
|HTTP / HTTPS
+
|HTTP(S)
 
|Lesen/Schreiben aller Konfigurationsdaten<br />Lesen/Schreiben aller Statusinformationen
 
|Lesen/Schreiben aller Konfigurationsdaten<br />Lesen/Schreiben aller Statusinformationen
|''Pros'': Vollständiger Funktionsumfang<br>''Cons'': Braucht HTTP Blibliotheken und JSON Parse
+
|''Positiv'': Vollständiger Funktionsumfang<br>''Negativ'': Braucht HTTP(S) Bibliotheken und JSON Parser
 
|
 
|
 
*[[EPC HTTP Interface]]
 
*[[EPC HTTP Interface]]
Zeile 33: Zeile 33:
 
|-
 
|-
 
|'''CLI'''<br />''Command Line Interface''
 
|'''CLI'''<br />''Command Line Interface''
|Telnet / SSH / Serial / HTTP / HTTPS
+
|Telnet / SSH / MQTT<br />
 +
HTTP(S) / RS232
 
|Lesen/Schreiben aller Konfigurationsdaten<br />Lesen/Schreiben aller Statusinformationen
 
|Lesen/Schreiben aller Konfigurationsdaten<br />Lesen/Schreiben aller Statusinformationen
|''Pros'': Vollständiger Funktionsumfang, einfacher Umgang
+
|''Positiv'': Vollständiger Funktionsumfang<br />
 +
''Positiv'': einfacher Umgang
 
|
 
|
 
|-
 
|-
 
|'''SNMP'''
 
|'''SNMP'''
 
|SNMPv2 / SNMPv3
 
|SNMPv2 / SNMPv3
|Lesen/Schreiben Zustand der Powerports (Relais oder eFuses)<br />
+
|Lesen/Schreiben Zustand der Ports (Relais oder eFuses)<br />
Lesen/Schreiben Namen der Powerports (Relais oder eFuses)<br />
+
Lesen/Schreiben Namen der Ports (Relais oder eFuses)<br />
 
Lesen/Schreiben Zustand der Port Startkonfiguration<br />
 
Lesen/Schreiben Zustand der Port Startkonfiguration<br />
 
Lesen/Schreiben Zustand Buzzer<br />
 
Lesen/Schreiben Zustand Buzzer<br />
Zeile 51: Zeile 53:
 
Rücksetzen der Energiezähler<br />
 
Rücksetzen der Energiezähler<br />
 
Lesen Zustand Overvoltage Protection
 
Lesen Zustand Overvoltage Protection
|''Pros'': Stark im SNMP Umfeld<br>''Cons'': nicht alle Gerätefunktionen nutzbar
+
|''Positiv'': Einsatz in SNMP Umgebung erwünscht<br>''Negativ'': Gerät nicht komplett konfigurierbar
 
|
 
|
 
|-
 
|-
 
|'''Modbus TCP'''
 
|'''Modbus TCP'''
 
|Modbus TCP
 
|Modbus TCP
|Lesen/Schreiben Zustand der Powerports (Relais oder eFuses)<br />
+
|Lesen/Schreiben Zustand der Ports (Relais oder eFuses)<br />
 
Lesen Zustand der Eingänge<br />
 
Lesen Zustand der Eingänge<br />
 
Lesen/Schreiben Konfiguration der Stromquellen<br />
 
Lesen/Schreiben Konfiguration der Stromquellen<br />
Zeile 63: Zeile 65:
 
Lesen Messwerte aller Energiesensoren<br />
 
Lesen Messwerte aller Energiesensoren<br />
 
Lesen Zustand Overvoltage Protection
 
Lesen Zustand Overvoltage Protection
|''Pros'': Stark im ModbusTCP Umfeld<br>''Cons'': nicht alle Gerätefunktionen nutzbar
+
|''Positiv'': Einsatz in ModbusTCP Umgebung erwünscht<br>''Negativ'': Gerät nicht komplett konfigurierbar
 
|
 
|
 
*[[ModbusTCP]]
 
*[[ModbusTCP]]
Zeile 70: Zeile 72:
 
|'''MQTT'''<br />
 
|'''MQTT'''<br />
 
|MQTT
 
|MQTT
|Lesen/Schreiben aller Konfigurationsdaten<br />Lesen/Schreiben aller Statusinformationen<br />Ausführen von Konsolenkommandos
+
|Verteilung von Nachrichten über MQTT-Broker<br />
|''Pros'': Vollständiger Funktionsumfang, einfach Umgang
+
Verteilung von Sensordaten über MQTT-Broker<br />
 +
Ausführen von Konsolenkommandos
 +
|''Positiv'': Publish von Daten lokal oder in der Cloud<br />
 +
''Positiv'': Vollständiger Funktionsumfang durch CLI
 
|}
 
|}

Version vom 6. Januar 2022, 21:16 Uhr

Dies ist eine Übersicht über die GUDE API (Application Programming Interface) zur Steuerung und zum Zugriff auf GUDE Geräte mit verschiedenen Protokollen.

Unsere APIs sind modular aufgebaut und somit einheitlich für alle GUDE Geräte zu verwenden. Wir verwenden eine REST-API. Die Geräte können automatisch über die folgenden fünf verschiedenen Schnittstellen angesprochen werden, die unterschiedliche Möglichkeiten zur Steuerung und zum Zugriff auf die Konfigurationsdaten und Statusinformationen bieten. Nur HTTP(S) und die Konsole (Command Line Interface) bieten vollen Zugriff auf das Gerät.

Aus Erfahrung mit erfolgreich realisierten Kundenprojekten sind folgende Basisfunktionen bei einer Integration wichtig:

  • Ein- und Ausschalten der Ausgänge
  • Abfrage des Port-Zustands
  • Messdaten: Spannung, Strom + Fehlerstrom (RCM), Stromverbrauch, Energiezähler (ein Zähler rücksetzbar)
  • Status des Überspannungsschutzes (Over Voltage Protection)
  • Externe Sensordaten: Temperatur, Luftfeuchtigkeit und Luftdruck
Übersicht APIs
Protokoll Transport Funktions-Umfang Positiv / Negativ Weitere Informationen
CGI/JSON HTTP(S) Lesen/Schreiben aller Konfigurationsdaten
Lesen/Schreiben aller Statusinformationen
Positiv: Vollständiger Funktionsumfang
Negativ: Braucht HTTP(S) Bibliotheken und JSON Parser


CLI
Command Line Interface
Telnet / SSH / MQTT

HTTP(S) / RS232

Lesen/Schreiben aller Konfigurationsdaten
Lesen/Schreiben aller Statusinformationen
Positiv: Vollständiger Funktionsumfang

Positiv: einfacher Umgang

SNMP SNMPv2 / SNMPv3 Lesen/Schreiben Zustand der Ports (Relais oder eFuses)

Lesen/Schreiben Namen der Ports (Relais oder eFuses)
Lesen/Schreiben Zustand der Port Startkonfiguration
Lesen/Schreiben Zustand Buzzer
Lesen/Schreiben Konfiguration der Stromquellen
Lesen/Schreiben Konfiguration des Lüfters
Lesen Messwerte externer Sensoren
Lesen Messwerte aller Energiesensoren
Lesen NTP Zeit und Status
Rücksetzen der Energiezähler
Lesen Zustand Overvoltage Protection

Positiv: Einsatz in SNMP Umgebung erwünscht
Negativ: Gerät nicht komplett konfigurierbar
Modbus TCP Modbus TCP Lesen/Schreiben Zustand der Ports (Relais oder eFuses)

Lesen Zustand der Eingänge
Lesen/Schreiben Konfiguration der Stromquellen
Lesen/Schreiben Konfiguration des Lüfters
Lesen Messwerte externer Sensoren
Lesen Messwerte aller Energiesensoren
Lesen Zustand Overvoltage Protection

Positiv: Einsatz in ModbusTCP Umgebung erwünscht
Negativ: Gerät nicht komplett konfigurierbar
MQTT
MQTT Verteilung von Nachrichten über MQTT-Broker

Verteilung von Sensordaten über MQTT-Broker
Ausführen von Konsolenkommandos

Positiv: Publish von Daten lokal oder in der Cloud

Positiv: Vollständiger Funktionsumfang durch CLI