Treiber
Was ein Treiber ist, wie Treiber aktiviert und deaktiviert werden, der feste Treiber eines Geräts, die Tabelle jedes Treibers, den dieses Produkt kennt, was jede Treiberseite dokumentiert, und der Hinweis auf Treiber, die das Paket nicht mitbringt.
Ein Treiber ist das Protokoll, mit dem die Station mit einer Familie von Anlagen spricht: Modbus-Register über TCP, ein OPC UA-Server, eine Siemens-Steuerung. Jedes Gerät auf der Seite Connector gehört zu genau einem Treiber, und der Treiber entscheidet, welche Verbindungsfelder das Gerät zeigt, wie seine Tags adressiert werden, welche Datentypen sie tragen dürfen, ob sie geschrieben werden können, ob der Treiber nach Anlagen suchen kann und ob die Station sie zyklisch liest oder die Anlage von sich aus sendet. Diese Gruppe enthält eine Seite je Treiber; diese Seite ist das, was sie gemeinsam haben.
Das Verzeichnis
Die Menge der Treiber ist fest: Sie kommt mit der Anwendung und lässt sich von der Seite aus nicht erweitern. Die Zeile Treiber oben in der Spalte Kommunikation führt die auf, die diese Installation mitbringt, jeden mit seiner Beschreibung, der Anzahl seiner Geräte, seinem Zustand und einem Paar zum Aktivieren und Deaktivieren; die Tabelle und ihre Regeln stehen auf Die Treiberliste und die Seite eines Treibers.
Treiber kommen aktiviert. Einen zu deaktivieren verbirgt nur seine Gruppe im Baum, und es wird abgelehnt, solange der Treiber noch Geräte hat (bei Modbus RTU auch serielle Leitungen), ein konfiguriertes Gerät kann also nie aus dem Blick verschwinden. Einen zu aktivieren fügt unter der Zeile Treiber ohne Geräte im Baum eine leere Gruppe hinzu. Ein Gerät zu einem Treiber hinzuzufügen aktiviert diesen Treiber von selbst. Die Menge der aktivierten Treiber wird mit der Konfiguration gespeichert und reist mit den Sicherungen.
Der Treiber eines Geräts ist fest
Sie wählen den Treiber, wenn Sie das Gerät anlegen: Das Menü Neu… der Spalte nennt den Treiber, unter dem das Gerät landet, und Gerät hinzufügen auf der Seite eines Treibers legt unter diesem Treiber an. Von da an zeigt die Karte Gerät den Treiber als Text, der nur gelesen wird. Um ein Gerät auf ein anderes Protokoll zu bringen, legen Sie ein neues Gerät unter dem anderen Treiber an und löschen das alte; die Adresse ändert sich, die Verweise müssen also über die Karte Verwendet von jedes Tags auf die neuen Tags gerichtet werden.
Jeder Treiber
| Treiber | Spricht mit |
|---|---|
| Simulated | Künstlichen Signalen in der Anwendung, zum Prüfen ohne Hardware. |
| Modbus TCP | Modbus-Registern über TCP/IP. Standardport 502. |
| Modbus RTU | Modbus-Registern über eine serielle Leitung (RS-485/232). |
| OPC UA | OPC Unified Architecture als Client über opc.tcp. |
| Siemens S7 | Siemens S7-Steuerungen über den Treiber S7comm. |
| Rockwell EtherNet/IP | Allen-Bradley- und Rockwell-Steuerungen über EtherNet/IP (CIP). |
| Beckhoff ADS | Beckhoff TwinCAT-Steuerungen über ADS/AMS. |
| Mitsubishi MC | Mitsubishi-Steuerungen über den Treiber MELSEC MC. |
| BACnet | BACnet/IP-Geräten der Gebäudeautomation. |
| IEC 61850 | IEC 61850-Feldgeräten der Schaltanlage über MMS. Nicht im ausgelieferten Paket enthalten (siehe unten). |
| OCPP | Ladestationen für Elektrofahrzeuge über OCPP (die Ladestationen verbinden sich mit dieser Station). |
| Redfish | Der REST-API Redfish für Server- und Rechenzentrumshardware. |
| Matter | Matter-Geräten des vernetzten Zuhauses (Inbetriebnahme über Bluetooth). |
| LoRaWAN | LoRaWAN-Sensoren über den eingebetteten Netzwerkserver Basics Station. |
| AVEVA PI | Punkten des AVEVA PI System über die PI Web API, standardmäßig über HTTPS. |
| HTTP | Beliebigen HTTP/JSON-Endpunkten, die als Tags zyklisch gelesen werden. |
Das Verzeichnis kennt außerdem OPC DA (klassischen OPC Data Access über COM/DCOM), aber kein Treiber bedient es in diesem Produkt: Es wird nie aufgeführt, nie aktiviert und nimmt kein Gerät an.
Was die Treiber gemeinsam haben und worin sie sich unterscheiden
Der Connector zeichnet einen Editor für jeden Treiber und lässt den Treiber entscheiden, welche Teile erscheinen. Diese Tabelle sagt, was Sie erwartet, bevor Sie die Seite eines Treibers öffnen:
| Treiber | Verbindungsfelder auf der Seite Gerät | Adressierung der Tags | Abfrageintervall | Schreiben auf Tags | Suchen |
|---|---|---|---|---|---|
| Simulated | keine | der Name des Tags und die Form des Signals | ja | ja | ja (sein Katalog) |
| Modbus TCP | Host, Port, Unit-ID, minimales Transaktionsintervall | typisiert: Registerklasse und Nummer | ja | ja | ja (Suchlauf über Host oder CIDR) |
| Modbus RTU | Serielle Leitung (fest), Unit-ID | typisiert: Registerklasse und Nummer | ja | ja | ja (Abtasten der Unit-IDs auf einer Leitung) |
| OPC UA | Host, Port, Ressourcenpfad, Benutzername, Passwort | Freitext: Node-ID | ja | ja | ja (Adresse des Servers) |
| Siemens S7 | Host, Rack / Slot | typisiert: Bereich, DB, Byte, Bit | ja | ja | nein |
| Rockwell EtherNet/IP | Host, Slot | Freitext: Controller-Tag und ein Versatz | ja | ja | ja (Broadcast) |
| Beckhoff ADS | Host, Port, lokale IP (AMS) | Freitext: Symbol | ja | ja | nein |
| Mitsubishi MC | Host, Port | Freitext: Geräteadresse | fest 1 s | ja | nein |
| BACnet | Host, Port, Geräte-ID | typisiert: Objekttyp und Instanz | fest 1 s | ja | ja (Who-Is) |
| IEC 61850 | Host, Port | Freitext: MMS-Pfad | fest 1 s | ja | nein |
| OCPP | Kennung | typisiert: Nummer des Ladepunkts; der Name des Tags endet auf Meter oder Status | von der Ladestation gesendet | nein (nur lesen) | ja (verbundene Ladestationen) |
| Redfish | Host, Benutzername, Passwort | Freitext: Ressourcenpfad und ein JSON-Zeiger | ja | ja | nein |
| Matter | Node-ID (nur lesen) | der Name des Tags ist der Cluster | ja | nein (nur lesen) | ja (in Betrieb genommene Knoten) |
| LoRaWAN | Kennung (DevEUI), Server / Schlüssel (App-Key) | typisiert: Kanal oder Versatz, LPP-Typ | vom Sensor gesendet | nein (nur lesen) | nein |
| AVEVA PI | Host, Port, Ressourcenpfad, Transport, Benutzername, Passwort, Bearer-Token | Freitext: PI-Pfad | ja | ja | nein |
| HTTP | Host, Port, Ressourcenpfad | Freitext: Pfad | ja | ja | nein |
Jeder Treiber schränkt außerdem die Liste Datentyp eines Tags auf das ein, was er tatsächlich übertragen kann; die genaue Liste steht auf der Seite des Treibers. Wo die Tabelle "fest 1 s" sagt, übergeht der Treiber das eingestellte Intervall, die Seiten Gerät und Tag verbergen das Feld Abfrageintervall für ihn also. Wo sie "nur lesen" sagt, bietet das Feld Zugriff allein Nur lesen an, und das Schreibfeld erscheint nie.
Was jede Treiberseite dokumentiert
Jede Treiberseite geht dieselben Abschnitte in derselben Reihenfolge durch: die Verbindungsfelder, die die Karte Gerät zeigt, und wie sie den Basis-URI zusammensetzen; wie ein Tag adressiert wird (die typisierten Felder oder das Freitextfeld und die Busadresse, die der Bereich als Vorschau zeigt); die angebotenen Datentypen; die Gerätesuche, wenn der Treiber sie hat; das Schreiben, wenn der Treiber es annimmt; und die Besonderheiten des Treibers (Anmeldedaten, Zertifikate, Zeiten, ein Netzwerkserver, den die Station betreibt, Kopplung).
Ein Treiber, den das Paket nicht mitbringt
Der Treiber IEC 61850 wird in einer Entwicklungsinstallation gebaut und ausgeführt, kommt aber nicht ins ausgelieferte Paket: Die Bibliothek seines Protokolls steht unter Bedingungen, die es nicht erlauben, sie im Installationsprogramm mitzuliefern. Der Connector führt nie einen Treiber auf, den das laufende Paket nicht mitbringt, und aktiviert ihn nie. Eine Konfiguration, die trotzdem mit solchen Geräten ankommt (eine eingespielte Sicherung, eine Konfiguration von einem anderen Rechner), behält sie: Die Zeile des Treibers bleibt aufgeführt, solange es diese Geräte gibt, seine Beschreibung liest sich "Treiber in diesem Paket nicht enthalten.", und die Seite des Treibers sowie jedes Gerät darunter tragen einen Hinweis desselben Inhalts. Diese Geräte bleiben offline und behalten ihre Einstellungen; sie lassen sich löschen, aber nicht kopieren, und unter diesem Treiber lässt sich weder ein neues Gerät anlegen noch ein Suchlauf starten. Die Zeile zu aktivieren wird abgelehnt mit "'IEC 61850' wurde nicht aktiviert: Treiber in diesem Paket nicht enthalten."
Welche Treiber ein Paket mitbringt, wird aus dem Verzeichnis der Erweiterungen des eingebetteten Servers gelesen, das es erst gibt, sobald der Server gestartet ist. Bis dahin gilt jeder Treiber als vorhanden, die Treiberliste kommt also einige Sekunden nach dem Start zur Ruhe und bleibt dann für die Sitzung stehen, auch wenn der Server gestoppt und wieder gestartet wird.
Der Code eines Treibers wird einmal geladen, für die Laufzeit der Anwendung. Die Kommunikation zu stoppen und zu starten baut die laufenden Geräte und die Treiberliste aus derselben Ladung neu auf, und genau das hält den Speicherbedarf der Station über einen Tag voller Neustarts flach. Die Folge ist, dass es erst nach einem Neustart der Anwendung selbst wirkt, wenn die Dateien eines Treibers auf dem Datenträger ersetzt werden.