Tags
Die Seite eines Tags Karte für Karte: Kopfzeile und Befehle, Allgemein, Quelle mit den Feldern jedes Treibers, Umrechnung, Live-Wert mit dem Schreibfeld und Verwendet von mit Alle ersetzen.
Ein Tag ist ein adressierbarer Punkt an einem Gerät: eine Adresse auf dem Bus, ein Datentyp und die Umrechnung, die aus dem Rohwert den technischen Wert macht. Wählen Sie eine Tag-Zeile unter einem Gerät oder drücken Sie Öffnen in einer Zeile der Tabelle Tags des Geräts, um seine Seite zu öffnen. Connector anzeigen liest sie; Connector konfigurieren bearbeitet sie; Tags kalibrieren bearbeitet allein die Stufe Kalibrierung.
Die Kopfzeile
Ein Punkt für den laufenden Wert (grün, solange das Tag einen Wert hat, gelb, wenn der Wert ein Ersatzwert ist, die Stufe Grenzen eine Verletzung gemeldet hat oder der Messwert verstummt ist, sonst grau, und grau, was immer es zuletzt zeigte, bei einem Tag, das die Station nicht liest: einem deaktivierten oder einem, dessen Gerät deaktiviert ist, unter einer deaktivierten Leitung steht oder noch keinen eingetragenen Host hat), der Name des Tags und darunter seine Adresse, Connector.<Driver>.<Folders…>.<Device>.<Tag>, also das, was Logic und Dashboards eintippen. Darunter, wo sie zutreffen: ein warnender Hinweis mit dem Prüfhinweis (ein leerer Name, eine fehlende Adresse, ein Faktor von 0) und der letzte Fehler in Rot. Solange das Gerät des Tags nicht verbunden ist, verweist ein neutraler Hinweis auf das Gerät, statt den Verbindungsfehler zu wiederholen: "Dieses Tag läuft über das Gerät Furnace, das nicht verbunden ist. Die Seite des Geräts sagt, warum."
Die Befehlsleiste
| Befehl | Wirkung | Ausgegraut, wenn (Situation) | Nicht gezeichnet, wenn (Rolle) |
|---|---|---|---|
| Wert kopieren | Kopiert den technischen Wert so, wie er angezeigt wird, in die Zwischenablage ("Wert von 'Temperature' in die Zwischenablage kopiert."). | Nie. | Nie. |
| Aktivieren | Nimmt das Tag wieder in die Erfassung und in den laufenden Adressraum auf. | Schon aktiviert, oder die Station lehnt Änderungen ab. | Ohne Connector konfigurieren. |
| Deaktivieren | Zieht das Tag aus der Erfassung und aus dem laufenden Adressraum zurück; das Gerät liest seine übrigen Tags weiter. | Schon deaktiviert, oder die Station lehnt Änderungen ab. | Ohne Connector konfigurieren. |
| Tag löschen (in der Gefahrenfarbe, rechts) | Fragt "'Temperature' löschen? Damit wird es aus 'Furnace' entfernt. Das lässt sich nicht rückgängig machen.", löscht und wählt das Gerät. | Die Station lehnt Änderungen ab. | Ohne Connector konfigurieren. |
Jede Karte speichert automatisch, wie auf Connector beschrieben. Die Karten Allgemein und Quelle werden für eine Rolle ohne Connector konfigurieren inaktiv gehalten, mit dem Hinweis "Änderungen am Connector setzen die Berechtigung “Connector konfigurieren” voraus." obenauf.
Die Karte Allgemein
| Feld | Was es ist | Werte / Standard | Wirkung |
|---|---|---|---|
| Tagname | Der Name des Punkts; das letzte Segment der Busadresse und der Adresse. | Pflichtfeld. | Beim Tippen wird vorgezeigt, wie viele Verweise das Umbenennen mitnimmt; das Übernehmen schreibt sie um: "Tag umbenannt und 2 Verweise aktualisiert." Leer wird abgelehnt: "Der Tagname ist erforderlich." Namen von OCPP-Tags müssen auf Meter, Status oder Transaction enden: "OCPP-Tagnamen müssen auf 'Meter', 'Status' oder 'Transaction' enden (z. B. Connector1Meter)." |
| Datentyp | Der skalare OPC UA-Typ, unter dem der eingebettete Server es veröffentlicht. | Boolean, SByte, Byte, Int16, UInt16, Int32, UInt32, Int64, UInt64, Float, Double, String, DateTime, Guid, ByteString, eingeengt auf das, was der Treiber überträgt; standardmäßig Float, wo der Treiber ihn hat, sonst der erste Typ, den er anbietet. | Ihn zu ändern zieht nach, was von ihm abhängt: Eine Aktion NaN bei Grenzverletzung wird auf einem Typ, der kein NaN halten kann, zu Null, die NaN-Regel geht auf einem nicht numerischen Typ auf Durchreichen zurück, eine Signalart der Simulation, die nicht zum Typ passt, wird durch den Standard des Typs ersetzt, und eine Modbus-Registerklasse überquert mit dem Typ die Grenze zwischen Bit und Register. Die Karte Umrechnung ändert mit ihm ihre Gestalt. |
| Zugriff | Ob die Station liest, schreibt oder beides. | Nur lesen, Nur schreiben, Lesen und schreiben; Nur lesen. OCPP und LoRaWAN bieten allein Nur lesen an. Ein Matter-Tag bietet das Schreiben nur für einen Wert an, den der Treiber ändern kann, und sagt sonst unter dem Feld, warum (Ein von Hand angelegtes Tag). Ein NI-DAQmx-Tag bietet die Zugriffe an, die seine Messgröße erlaubt (Messgrößen). Ein SNMP-Tag auf einem Standardobjekt, das seine MIB als nur lesbar erklärt, bietet allein Nur lesen an und sagt unter dem Feld, warum (Datentypen und Zugriff). Ein File-Tag bietet allein Nur lesen an, bis sein Gerät Schreiben erlaubt, und eine Angabe zur Datei bleibt Nur lesen (Was ein Tag liest). Ein Database-Tag zeigt erst, was ein Schreibvorgang tut, wenn sein Zugriff schreibt (Schreiben). | Lesen und schreiben sowie Nur schreiben zeichnen das Schreibfeld auf der Karte Live-Wert; ein Tag mit Nur schreiben wird nicht zyklisch gelesen, zählt nicht für den Zustand des Geräts und hat keine Regel für einen fehlgeschlagenen Lesevorgang, weil die Station es nie liest. |
| Einheit | Die technische Einheit, Freitext. | Leer. | Neben jedem Ergebnis einer Stufe und neben dem technischen Wert gezeigt, und überall dort, wo der Wert dargestellt wird. |
| Abfrageintervall (ms) | Eine Übersteuerung des Abfrageintervalls des Geräts je Tag. | 0 (den Standard des Geräts verwenden); ein negativer Wert wird als 0 gespeichert. | Verborgen bei Mitsubishi MC, BACnet, OCPP, LoRaWAN und MQTT, die es übergehen. |
Die Karte Quelle
"Woher der Wert dieses Tags kommt, und der letzte Rohwert." Die Felder hängen vom Treiber ab; die Seiten der Treiber erklären die Bedeutung, das hier ist die Aufstellung, so wie der Bereich sie zeichnet.
Freitextadresse
Treiber, die über ein Zeichen adressiert werden, das Sie tippen, zeigen ein Feld, je Treiber beschriftet: Node-ID (OPC UA), Symbol (Beckhoff ADS), Geräteadresse (Mitsubishi MC), Controller-Tag (Rockwell), Ressourcenpfad (Redfish), PI-Pfad (AVEVA PI), Pfad (HTTP), MQTT-Topic oder Metrik (MQTT, je nachdem, ob das Protokoll des Geräts Einfaches MQTT oder Sparkplug B ist), Speicheradresse oder Variablenname (Omron, je nachdem, ob das Protokoll des Geräts FINS oder NJ/NX-Tags nach Name ist), Abfrage (SCPI instruments), Physischer Kanal (NI-DAQmx), OID (SNMP), mit dem Hinweis des Treibers darunter. Bei diesen Treibern ist das Feld Pflicht: "Node-ID ist für diesen Treiber erforderlich."
Typisierte Felder je Treiber
| Treiber | Felder |
|---|---|
| Modbus TCP, Modbus RTU | Registerklasse (Spule (0xxxx), Diskreter Eingang (1xxxx), Eingangsregister (3xxxx), Holding-Register (4xxxx): jede mit der ersten Ziffer, die die Adresse im Handbuch des Geräts für sie trägt; der Standard folgt Typ und Zugriff: ein nur lesender Boolean ist ein diskreter Eingang, ein schreibbarer eine Spule, eine nur lesende Zahl ein Eingangsregister, eine schreibbare ein Holding-Register) und Registernummer (ab 0). |
| Siemens S7 | Bereich (DataBlock, Merker, ProcessInput, ProcessOutput, Timer, Counter), DB-Nummer (nur bei DataBlock), Startbyte, Bit (0-7) (bei Tags vom Typ Boolean), Höchstlänge (leer = 254) (bei Tags vom Typ String). |
| Rockwell | Offset im Tag (Bytes, Bits bei BOOL), nach dem Feld Controller-Tag; 0 ist der Anfang des Tags. |
| BACnet | Objekttyp (AnalogInput, AnalogOutput, AnalogValue, BinaryInput, BinaryOutput, BinaryValue, MultiStateInput, MultiStateOutput, MultiStateValue) und Instanz. Gelesen wird der aktuelle Wert. |
| OCPP | Connector (die Nummer des Ladepunkts, standardmäßig 1), mit dem Hinweis "Benennen Sie das Tag …Meter (Energiewert), …Status (Zustand des Anschlusses) oder …Transaction (Nummer der laufenden Transaktion)." |
| Redfish | JSON-Zeiger (leer = ganzes Dokument), "z. B. /Temperatures/0/ReadingCelsius", nach dem Ressourcenpfad. |
| Matter | Ausgang (Endpoint), Matter-Cluster und Attribut in einer Zeile; der Cluster wird im Matter-Katalog nach seinem Namen gewählt. Die Tags eines Matter-Geräts kommen meist vom Gerät selbst und werden nach der Kopplung oder bei Geräte suchen angehakt (siehe Matter); diese Felder dienen dem seltenen Tag, das von Hand angelegt wird. |
| MQTT | Auf einem Gerät in einfachem MQTT Wertpfad (wo der Wert in JSON-Nutzdaten steht; leer liest die gesamten Nutzdaten), Befehls-Topic (wo ein Schreibvorgang veröffentlicht wird; leer bleibt das Tag schreibgeschützt) und Nutzdatenvorlage (das JSON, das ein Schreibvorgang veröffentlicht, mit {value} an der Stelle des Werts), nach dem Feld MQTT-Topic. Eine Sparkplug B-Metrik hat keines davon: siehe MQTT. |
| Generic serial and TCP | Keine Adresse zum Eintippen: Lesemodus (Anfrage und Antwort oder Mithören), Anfrage, Nachrichtenfilter, Der Wert ist mit den Feldern der genannten Entnahme, Das Gerät schreibt ein Komma als Dezimalzeichen (Float und Double) und bei einem Tag, das geschrieben wird, Schreibnachricht und Erwartete Rückmeldung. Siehe Generic serial and TCP. |
| SCPI instruments | Neben der Abfrage Wert in der Antwort (welcher Wert einer kommagetrennten Antwort der des Tags ist, ab 1 gezählt; leer liest die ganze Antwort) bei einem Tag, das gelesen wird, und Schreibbefehl (was ein Schreibvorgang sendet, mit {value} an der Stelle des Werts) bei einem Tag, das geschrieben wird. Siehe SCPI instruments. |
| NI-DAQmx | Neben dem Physischen Kanal Messgröße und die Felder der Messgröße: der Bereich in ihrer Einheit (Minimum und Maximum), Anschlusskonfiguration, Shunt-Widerstand und Shunt-Widerstandswert (Ω), Thermoelementtyp, Vergleichsstellenkompensation (CJC) und CJC-Temperatur (°C), Gezählte Flanke, Zählrichtung, Anfangswert und Eingangsanschluss, jedes nur dort gezeichnet, wo die Messgröße es liest. Siehe NI-DAQmx. |
| SNMP | Unter der OID, nur lesbar: MIB-Name, der Standardname des Objekts mit dem, was seine MIB darüber sagt (oder "Kein Standardname"), und Numerische OID, die Zahl, die jede Anfrage trägt. Siehe SNMP. |
| File | Keine Adresse zum Eintippen: Liest (ein Wert, die ganze Datei oder eine Angabe zur Datei) und bei einem Wert die Felder des Formats des Geräts: Spalte und Zu lesende Zeile (CSV), Zu lesende Zeile und Der Wert ist (freier Text), JSON-Pfad oder XML-Pfad; bei einem Gerät, das Schreiben erlaubt, Ein Schreibvorgang und Zeilenvorlage. Siehe File. |
| Database | Keine Adresse zum Eintippen: Liest (Tabelle und Spalte oder Eigene Abfrage) und seine Felder: Tabelle, Wertspalte und Zu lesende Zeile, mit Schlüsselspalte und Schlüsselwert oder Datumsspalte, oder Abfragetext; bei einem Tag, das schreibt, Ein Schreibvorgang und Schreibbefehl. Siehe Database. |
| LoRaWAN | Adressierung über Cayenne LPP-Kanal/-Typ (Kontrollkästchen), Kanal / Offset in der Nutzlast, LPP-Typcode (bei eingeschaltetem LPP), Bitmaske (hexadezimal, leer = keine), Multiplikator (leer = keiner). |
Länge auf dem Bus und Byte-Reihenfolge
| Feld | Gezeigt bei | Was es ist |
|---|---|---|
| Anzahl (Register, leer = automatisch) | Modbus, nur bei Tags vom Typ String | Wie viele 16-Bit-Register gelesen werden; leer liest 4. Die anderen Modbus-Typen haben eine feste Breite (ein Register bei Boolean, Int16 und UInt16, zwei bei Int32 und Float), das Feld wird für sie also nicht gezeichnet. |
| Leselänge (Bytes, leer = automatisch) | Beckhoff, Mitsubishi, LoRaWAN | Die Anzahl Bytes; leer leitet sie aus dem Typ ab: 1 bei Boolean, Byte und SByte; 2 bei Int16 und UInt16; 4 bei Int32, UInt32 und Float; 8 bei Int64, UInt64 und Double; 16 bei String; sonst 4. |
| Länge (Zeichen, leer = 16) | Omron (FINS, nur String-Tags) | Wie viele Zeichen der Text belegt, zwei je Wort, 1 bis 1998; leer liest 16. Jeder andere FINS-Typ belegt die Wörter, die sein Typ vorgibt, daher wird das Feld für ihn nicht gezeichnet. |
| Höchstwertiges Byte zuerst (MSB first, Big-Endian) | Modbus (numerische Tags und Tags vom Typ Boolean in einem Register), LoRaWAN | Welches Ende des Werts zuerst über den Bus geht; die Wörter in Klammern sind die, die Handbücher dafür drucken. Bei Modbus standardmäßig ein, bei LoRaWAN aus. Modbus legt für Text keine Byte-Reihenfolge fest, einem Modbus-Tag vom Typ String wird sie also nicht angeboten. Ein Modbus-Boolean in einer Spule oder einem diskreten Eingang ist ein einzelnes Bit ohne Byte zum Ordnen, ihm wird sie also ebenfalls nicht angeboten. |
| Höchstwertiges Wort zuerst (High-Word zuerst) | Modbus (Tags vom Typ Int32 und Float) | Welche 16-Bit-Hälfte in einem Wert aus zwei Registern führt. Standardmäßig ein. Unter den beiden Feldern nennt Byte-Reihenfolge des Werts die Anordnung, die sie ergeben, in den Buchstaben, die ein Handbuch druckt: ABCD mit beiden ein, CDAB mit dem Wortfeld aus, BADC mit dem Bytefeld aus, DCBA mit beiden aus. Ein Typ aus einem einzigen Register (Boolean, Int16, UInt16) hat keine zweite Hälfte, dort wird das Feld also nicht gezeichnet; ebenso wenig bei LoRaWAN, dessen Nutzlast kein Wort hat, das vorangehen könnte. |
Quelladresse (Bus)
Ein Modbus-Tag schließt die Gruppe der Felder stattdessen mit Adresse im Handbuch ab: wo das Tag in der Schreibweise steht, die das Handbuch des Geräts druckt, die erste Ziffer der Klasse und dann das ab 1 gezählte Register. Eingangsregister 0 liest sich 30001, ein Float dort 30001 bis 30002, und ein Register über 9998 bekommt sechs Stellen (Holding-Register 9999 liest sich 410000). Die in Registernummer (ab 0) eingetippte Nummer bleibt die, die die Anfrage trägt; siehe Modbus TCP.
Jedes andere nicht simulierte Tag schließt die Gruppe der Felder mit einer Vorschau der Adresse ab, die der Treiber tatsächlich bekommt, die nur gelesen wird und aus den Feldern oben und den Verbindungsfeldern des Geräts zusammengesetzt ist: DB1?0 für ein S7-Byte, Program:Main.Counter?0 für ein Rockwell-Tag, MAIN.fValue?4 für ein ADS-Symbol, 0,3 für ein BACnet-Objekt, ocpp://<charge point>/<connector>, <resource>#/Temperatures/0/ReadingCelsius bei Redfish, <DevEUI>/<channel>/<lpp>?quantity=<n> bei LoRaWAN, <endpoint>/<cluster>/<attribute> bei Matter <topic>?path=<value path>&command=<command topic> bei einem Tag in einfachem MQTT und der Name der Metrik bei einem Sparkplug B-Tag, listen?extract=position&start=5&length=6 bei einem mithörenden Tag des Treibers Generic serial and TCP, D100 (oder D200?16 bei einem Text) bei einem Omron-FINS-Tag und Motor.Speed?0 bei einem NJ/NX-Tag, ask=READ?&field=3 bei einem SCPI-Tag, das den dritten Wert seiner Antwort liest, cDAQ1Mod1/ai0?measurement=voltageInput&terminal=diff&min=0&max=10 bei einem NI-DAQmx-Spannungseingang, 1.3.6.1.2.1.33.1.2.1.0 bei einem SNMP-Tag, das als upsBatteryStatus.0 geschrieben ist, column?name=Force bei einem File-Tag, das die Spalte Force einer CSV-Datei liest, row?table=dbo.Orders&column=Quantity&key=OrderNo&equals=4711 bei einem Database-Tag, das die Menge des Auftrags 4711 liest, und das Zeichen selbst bei OPC UA, AVEVA PI und HTTP (dem Ressourcenpfad des Geräts vorangestellt).
Parameter des simulierten Signals
Ein Tag unter Simulated hat kein Feld für die Adresse: Sein Name ist der Punkt. Stattdessen: Signalart, eine Liste, eingeengt auf die Formen, die der Datentyp treiben kann, jede mit einem kleinen Bild der Form neben ihrem Namen (Sinus, Rampe, Zufallslauf und Zähler bei Zahlen; Umschaltender Wahrheitswert bei Boolean; Aufzählungstext bei String; Uhr bei DateTime; Zufälliger GUID bei Guid; Zufällige Bytes bei ByteString; Sollwert halten und Impuls bei jedem Typ). Vorgabewert erscheint bei Zufallslauf, Zähler und Sollwert halten, als Textfeld, als Kontrollkästchen "Vorgabe ist ein (wahr)" bei Boolean oder als Datumsfeld bei DateTime. Zustände (durch Semikolon getrennt) erscheint bei Aufzählungstext: "z. B. Run;Stop;Pause (schaltet alle 3 s einen Schritt weiter)." Parameter der Form, die der Bereich nicht bearbeitet (Band und Periode eines Sinus, die Haltezeit eines Pulses), reisen unverändert mit dem Tag. Die Seite Simulated führt jeden Parameter auf.
Rohwert
Die Karte schließt mit dem jüngsten Rohwert, so wie der Treiber ihn geliefert hat, vor jeder Umrechnung und im Zahlenformat der Station; ein Strich, wenn es keinen gibt.
Die Karte Umrechnung
"Wie aus dem Rohwert der technische Wert wird." Die Karte wird bei numerischen Typen sowie bei Boolean und String gezeichnet, die jeweils eigene Umformungen haben. DateTime, Guid und ByteString gehen unverändert durch, ihre Karte trägt also nur die Stufe Ungültiger Messwert.
Bei einem numerischen Tag ist die Karte die gestufte Kette, von oben nach unten: Rohwert, dann Skalierung (Winkelig (×), Linear (+), eine Schaltfläche Zweipunkt), Kalibrierung (dieselben drei), Ungültiger Messwert (zwei Regeln), Grenzen (Min, Max, Aktion), Dezimalstellen (Dezimalstellen) und Technischer Wert mit der Einheit. Skalierung, Kalibrierung, Grenzen und Dezimalstellen tragen jeweils in ihrem Kopf ein Kontrollkästchen, das die Stufe ein- oder ausschaltet, und rechts ein Ergebnis: = Wert, wenn die Stufe greift, → Wert, wenn sie übergangen wird. Ungültiger Messwert hat kein Kontrollkästchen, weil das Ausschalten schon eine seiner Regeln ist (Unverändert durchreichen für ein NaN, Den Fehler zeigen für ein Gerät, das nicht geantwortet hat): Sein Kopf trägt den Titel und das Ergebnis, immer = Wert. Eine Grenzverletzung färbt die Stufe Grenzen rot und schreibt "Der Wert 130 liegt außerhalb der Grenzen (0 bis 100)." unter die Karte. Die Rechnung, die Standardwerte und die Regeln stehen auf Die Wertkette; der Zwei-Punkt-Assistent und die Aufteilung der Berechtigungen zwischen Skalierung und Kalibrierung stehen auf Kalibrierung.
Jede Zahl auf der Karte wird so geschrieben wie der Live-Wert, im Zahlenformat der Station (Lokalisierung): Eine Stufe zeigt die Stellen, die ihr Ergebnis hat, höchstens sechs, und die Stufe Dezimalstellen, wenn sie eingeschaltet ist, die Stellen, die sie festlegt; die Stufen eines Tags vom Typ Float lesen sich so, wie der Float sie hält (239,05, nicht 239,050003). Technischer Wert ist das, was das Tag liefert, derselbe Wert, den die Karte Live-Wert, die Aufzeichnung und jeder Ausdruck lesen. Ein ganzzahliges Tag, dessen Skalierung oder Kalibrierung den Wert ändert, liefert eine reelle Zahl: Ein Tag vom Typ Int16 mit Skalierung 0,1 zeigt bei Dezimalstellen 62,40 und als technischen Wert 62,40 (Die Wertkette). Ein ganzzahliges Tag, das Skalierung und Kalibrierung lassen, wie es ist, liefert eine ganze Zahl: Wo die Stufe Grenzen auf eine Grenze mit Dezimalstellen begrenzt und die Stufe Dezimalstellen nicht schon auf keine rundet, sagt ein Hinweis unter dem Wert "Int16 nimmt nur ganze Zahlen auf, daher liefert das Tag den technischen Wert auf die nächste ganze Zahl gerundet. Um die Dezimalstellen zu behalten, die die Umrechnung erzeugt, wählen Sie Float oder Double als Datentyp." Bei einem Tag vom Typ Int64 oder UInt64 wird ein Rohwert oder technischer Wert, der zu groß ist, als dass eine reelle Zahl ihn genau fassen könnte (etwa eine Anzahl Nanosekunden), mit allen seinen Ziffern und ohne Gruppierungszeichen geschrieben.
Ein Tag vom Typ Wahrheitswert zeigt Invertieren (die Verneinung des Rohwerts melden), das Ergebnis und die Regeln für ungültige Messwerte. Ein Tag vom Typ String zeigt Teilstring ab und Länge (leer = bis Ende), das Ergebnis und die Regeln für ungültige Messwerte. Ein Tag vom Typ DateTime, Guid oder ByteString zeigt diese Stufe und sonst nichts: die Zeile Das Gerät hat nicht geantwortet mit Den Fehler zeigen und Den letzten guten Wert halten. Ein Tag mit Nur schreiben wird nie gelesen, deshalb lässt die Stufe die Zeile für ein Gerät, das nicht geantwortet hat, weg: Bei einem numerischen Tag bleibt nur die Regel für NaN, ein Tag vom Typ Wahrheitswert oder String zeigt gar keine Stufe Ungültiger Messwert, und ein Tag vom Typ DateTime, Guid oder ByteString zeigt keine Karte Umrechnung.
Jenseits von Skalierung und Kalibrierung sind die numerischen Stufen und die Umformungen bei Boolean und String gewöhnliche Konfiguration: Connector konfigurieren bearbeitet sie, alle anderen lesen sie.
Die Karte Live-Wert
| Eintrag | Was er zeigt |
|---|---|
| Aktueller Wert | Der technische Wert mit seiner Einheit, im Zahlenformat der Station (Lokalisierung): mit so vielen Stellen, wie die Stufe Dezimalstellen festlegt (keine bei einem ganzzahligen Typ, den Skalierung und Kalibrierung lassen, wie er ist), oder, wenn die Stufe ausgeschaltet ist, mit den Stellen, die der Messwert hat, höchstens sechs; ein Strich, wenn es keinen gibt. |
| Hinweis auf einen Ersatzwert | Wenn der Wert keine Messung ist: "Ersetzt eine fehlende Messung.", "Letzter guter Wert, gehalten, solange das Gerät nicht antwortet." oder "Ersetzt eine fehlgeschlagene Lesung.", je nach den Regeln für ungültige Messwerte. |
| Hinweis auf einen verstummten Messwert | Wenn der Messwert verstummt ist, also während des Abfrageintervalls des Tags plus 10 Sekunden kein neuer eingetroffen ist: "Seit dem Zeitstempel der Anwendung ist kein neuer Messwert eingetroffen. Das Tag wertet das als fehlgeschlagene Lesung." Der Wert darüber ist, was das Tag zeigt, wenn das Gerät nicht geantwortet hat, standardmäßig ein Strich, neben dem Hinweis auf einen Ersatzwert, wenn das Tag seinen letzten guten Wert hält oder ersetzt; der Punkt wird gelb, und der Zustand des Geräts zählt das Tag als nicht antwortend. |
| Zeitstempel der Quelle | Wann die Anlage den Messwert genommen hat. Bei einem OPC UA-Gerät ist es der Zeitstempel der Quelle, den der Server mit dem Wert geschickt hat; ein Server darf ihn behalten, bis sich der Wert oder seine Qualität ändert, sodass ein gleichbleibender Wert einen früheren Stempel zeigen kann als der Zeitstempel der Anwendung. Bei den anderen Treibern ist es der Moment, in dem der Connector den Messwert empfangen hat, also derselbe wie der Zeitstempel der Anwendung. Solange ein Lesevorgang fehlschlägt, wird die Beschriftung zu Letzter Versuch, und der Stempel ist der des Versuchs; solange der letzte gute Wert gehalten wird oder der Messwert verstummt ist, bleibt die Beschriftung Zeitstempel der Quelle, und der Stempel bleibt der dieses Messwerts. |
| Zeitstempel der Anwendung | Wann der Connector ihn empfangen hat. |
| Zu schreibender Wert | Bei einem Tag mit Lesen und schreiben oder Nur schreiben und nur mit Connector konfigurieren: ein Textfeld (ein Kontrollkästchen "Ein (wahr)" bei Boolean, ein Datumsfeld bei DateTime) und Schreiben. "Geben Sie den technischen Wert ein; Skalierung und Invertierung werden vor dem Schreiben zurückgerechnet." Die Statuszeile liest "Geben Sie einen Wert zum Schreiben ein." oder "Der Wert konnte nicht umgewandelt werden.", bevor irgendetwas hinausgeht, "Wird geschrieben…", solange der Wert unterwegs ist, und danach das Ergebnis. |
Schreiben ist mit seinem Grund ausgegraut, solange ein Lauf die Station hält oder die Runtime gestoppt ist. Die Karte ist es, die auf die Anlage wartet, und nicht die Logic: Deshalb meldet die Statuszeile, was mit dem Wert tatsächlich geschehen ist, und nicht bloß, dass die Anfrage hinausging; ein zweiter Wert für dasselbe Tag wird abgelehnt, solange der erste noch unterwegs ist. Die Ergebnisse, die sie auseinanderhält:
| Statuszeile | Was geschehen ist |
|---|---|
| "Wert geschrieben." | Die Anlage hat den Wert angenommen. |
| "Schreiben abgelehnt: Die Quelle wird von einem Vorgang benutzt." | Ein Lauf oder eine Verriegelung hält das Tag. Wo der Trichter den Halter benannt hat, steht dieser Satz stattdessen an der Stelle der Ablehnung ("Schreiben abgelehnt: <reason>."). |
| "Schreiben abgelehnt: Dieses Tag ist nur lesbar.", "Schreiben abgelehnt: Dieses Tag läuft nicht mehr.", "Schreiben abgelehnt: Der Wert passt nicht zum Typ des Tags.", "Schreiben abgelehnt: Die Station nimmt gerade keine Schreibvorgänge an." | Die Station hat es entschieden, bevor irgendetwas gesendet wurde. |
| "'Flow' wurde vor dem Senden durch einen neueren Wert ersetzt." | Ein neuerer Wert für dasselbe Tag hat diesen in der Warteschlange des Geräts überholt und ist an seiner Stelle hinausgegangen. Kein Fehler: Der neuere Wert ist der, den die Anlage erfährt. |
| "Das Schreiben wurde abgebrochen, bevor es die Anlage erreicht hat." | Die Anfrage wurde zurückgezogen, während sie noch auf ihren Platz wartete. |
"Schreiben von der Anlage abgelehnt.", "Schreiben von der Anlage abgelehnt: <reason>." |
Das Gerät oder sein Treiber hat den Wert abgelehnt. Der Grund ist der, den der Treiber genannt hat, in der Sprache der Station ("Die Adresse ist nur lesbar", "Das Gerät ist nicht verbunden"), oder der eigene Code der Anlage, der in jeder Sprache gleich lautet: der Status eines Matter-Geräts (CONSTRAINT_ERROR, 0x87), ein ADS-Fehler (ADS 0x704). Eine Ablehnung, deren Grund die Station nicht in ihrer Sprache sagen kann, steht ohne Grund da; die eigenen Worte des Treibers, auf Englisch, stehen im Journal. Ein Fehler, dessen Art die Station kennt (die Ausnahmeantwort einer Modbus-Einheit, eine abgebrochene Verbindung, ein HTTP-Status), wird stattdessen in dem Satz gesagt, den die rote Zeile des Tags ihm gibt, in jeder Sprache, wie unter Letzter Fehler. |
| "Schreiben nicht bestätigt: Die Anlage hat nicht rechtzeitig geantwortet." | Es kam rechtzeitig keine Antwort, also ist nicht bekannt, ob die Anlage den Wert angenommen hat. |
| "Das Schreiben ist fehlgeschlagen: Die Anlage war nicht erreichbar." | Alles Übrige, was die Leitung geantwortet hat, vor allem ein Gerät, das nicht verbunden ist. |
Was rückwärts durchlaufen wird, bevor der Rohwert hinausgeht, steht auf Die Wertkette.
Die Karte Verwendet von
"Alles auf der Station, was dieses Tag liest oder schreibt." Die Tabelle führt jeden Verweis auf, mit Art (Kanal, Stopp-Verriegelung, Automatik, Variable, Aktion, Alarm, Dashboard, Modbus-Server, OPC UA-Server, MQTT-Veröffentlichung), Ort (das Modell oder das Dashboard, das ihn hält; leer bei den Arten aus Logic auf oberster Ebene und bei einer Zeile der Registertabelle des Modbus-Servers) und Bezeichnung (bei einer Zeile der Registertabelle ihre Registerklasse und ihre Adresse im Handbuch, etwa Holding-Register (4xxxx) 40101). Gibt es keinen: "Von keinem Kanal und keiner Eigenschaft verwendet." Das Nachschlagen ist beratend: Ein Fehlschlag lässt die Tabelle leer. Eine Zeile der Registertabelle hält ihr Tag über dessen Identität und folgt also einer Umbenennung; ist das Tag gelöscht, nennt sie weiter das Tag, das sie verloren hat, und ein Client, der sie liest, erhält die Ausnahme 04. Deshalb steht sie hier, wo das Tag gelöscht wird. Eine Zeile der Liste des OPC UA-Servers erscheint auf dieselbe Weise, mit ihrem Zugriff als Bezeichnung, und das Ersetzen des Tags verschiebt die Zeile auf das neue. Ebenso erscheint eine Zeile der Karte Veröffentlichen eines Brokers, mit dem Broker als Ort und ihrem Topic als Bezeichnung; das Ersetzen des Tags behält das Topic.
Für Connector konfigurieren ergänzt die Karte das Werkzeug zum Ersetzen: eine Auswahl, die jedes andere Tag im laufenden Adressraum über seine Adresse aufführt, eine Schaltfläche Alle ersetzen und einen Befehl zum Ersetzen je Zeile. Alle ersetzen schreibt jeden aufgeführten Verweis in einem Zug ganz oder gar nicht auf das gewählte Tag um ("4 Verweise nutzen jetzt Connector.Simulated.Air.Pump.Flow."; "Keine Verweise zum Ersetzen."); der Befehl in der Zeile schreibt diesen einen um ("'Furnace temperature' verweist jetzt auf Connector.Simulated.Air.Pump.Flow." oder "Der Verweis hat sich zwischenzeitlich geändert. Aktualisieren Sie und versuchen Sie es erneut.", wenn er sich unter Ihnen bewegt hat). Ein Verweis vom Typ Stopp-Verriegelung oder Automatik ist Struktur von Process, ihn zu ersetzen setzt also zusätzlich Process verwalten voraus: "Die Quelle einer Verriegelung einer Einheit zu ersetzen setzt die Berechtigung “Process verwalten” voraus." und "Alle ersetzen umfasst die Quelle einer Verriegelung einer Einheit und setzt die Berechtigung “Process verwalten” voraus." Solange kein Tag gewählt ist, stehen Alle ersetzen und der Befehl der Zeile ausgegraut mit dem Tooltip "Wählen Sie zuerst das Tag, das diese Verweise übernimmt."; solange ein Verweis Process verwalten verlangt, das der Rolle fehlt, stehen sie ausgegraut mit dem Satz oben als Tooltip. Eine Zeile der Registertabelle des Modbus-Servers geht nach den Regeln des Servers selbst auf das gewählte Tag über: Eine Zeile, die ein Client schreiben darf, lehnt ein Tag ab, das keine Schreibzugriffe annimmt, und dann wird nichts ersetzt.
Was die Seite eines Tags nicht tut
Das Gerät und der Treiber eines Tags stehen fest; einen Punkt verschiebt man, indem man ihn am anderen Gerät anlegt und Alle ersetzen verwendet. Hier werden immer nur die Stufen eines Tags bearbeitet; Bearbeitungen über mehrere Zeilen sind die Massenbearbeitung der Tabelle des Geräts, beschrieben auf Geräte. Es gibt weder Historie noch Verlauf auf der Seite: Punkt, Wert und Zeitstempel sind der aktuelle Abtastwert, einmal je Sekunde aufgefrischt.