Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Industrietechnik

Sicheren Remote-gRPC-Zugriff mit grpcurl auf PLCnext-Geräten

WARNUNG: Das hier beschriebene Verfahren nutzt Features der PLCnext Runtime, die aktuell nicht unterstützt werden. Auf eigenes Risiko verwenden, und keinesfalls in Produktionsanwendungen einsetzen.

Vom grpcurl GitHub-Projekt:

In aktuellen Firmware-Versionen war Zugriff auf den gRPC-Server auf PLCnext Control Geräten möglich, aber nur mit gRPC-Clients, die lokal auf dem Gerät laufen. Frühere Makers Blog Posts zeigten Beispiele für gRPC-Clients in C# und Python.

In zukünftigen Firmware-Versionen wird auch Remote-Zugriff auf den gRPC-Server von PLCnext Control Geräten möglich sein. Tatsächlich ist dieses Feature bereits in Firmware 2022.6 enthalten, aber noch in Entwicklung und nicht offiziell unterstützt. Dieser Artikel beschreibt, wie man es für Test- und Entwicklungszwecke aktiviert, mittels Open-Source-gRPC-Client grpcurl.

Bitte beachten: Der gRPC-Server sollte NICHT aktuell remote in Produktionsanwendungen angesprochen werden.

Vorgehen

Auf dem PLCnext Control Gerät (Firmware 2022.6)

In Zukunft wird diese Einstellung über die Web-Based-Management-Seite „System Services“ erfolgen.

Auf dem Remote-Gerät

grpcurl -insecure -import-path Documents/plcnext-grpc/protobuf -proto Device/Interface/IDeviceStatusService.proto -d '{"identifier":"Status.Board.Temperature.Centigrade"}' 192.168.1.10:50051 Arp.Device.Interface.Services.Grpc.IDeviceStatusService/GetItem

… wobei -import-path der Pfad zum protobuf-Verzeichnis ist und die IP-Adresse die des PLCnext Control Geräts.

Die Antwort sollte ein JSON-Objekt mit Board-Temperatur in °C sein:

{
 "ReturnValue": {
 "TypeCode": "CT_Int8",
 "Int8Value": 43
 }
}

FAQ

Das könnte möglich sein, aber grpcurl müsste für die Zielplattform aus Source gebaut werden – angesichts der Dependencies wohl nicht einfach.

Für weitere Hilfe …

grpcurl -help für mehr Infos zu Optionen.

Fragen zum gRPC-Server in der PLCnext Runtime: PLCnext Community Forum nutzen.

Industrietechnik

  1. C# using-Anweisungen meistern: Importe, Aliase und statische Direktiven
  2. Remote-Wetterüberwachung mit Raspberry Pi 3 & PubNub
  3. IR-Fernbedienungsbefehle auf Raspberry Pi ohne LIRC erfassen: Python UART-Ansatz
  4. 5 Schlüsselvorteile der ferngesteuerten Produktionskontrolle für die moderne Industrie
  5. Sicheren Remote-gRPC-Zugriff mit grpcurl auf PLCnext-Geräten
  6. Cluster-Management auf PLCnext: Kubernetes für die industrielle Automatisierung nutzen
  7. Echtzeit-Monitoring von PLCnext mit Tableau-Dashboards
  8. Power BI Dashboards aus PLCnext-Clouddaten erstellen
  9. Echtzeit-Grafana-Dashboards für PLCnext Control in Azure IoT Hub erstellen
  10. Java 9 Apps auf PLCnext Control mit Jlink optimieren