HART-IP (4-20mA + digital)
HART (Highway Addressable Remote Transducer) ist ein industrieller Messstandard, bei dem digitale Informationen zusätzlich zum 4-20-mA-Analogsignal übertragen werden. Dieses Gateway kommuniziert über HART-IP (TCP/UDP), das HART in Ethernet einbettet.
Es wird am häufigsten in Druck-, Durchfluss-, Temperatur- und Füllstandstransmittern der Prozessindustrie eingesetzt, z. B. in Chemie, Raffinerie, Kraftwerken sowie Wasser- und Abwasseranlagen.
Eingabewerte im Registrierungsformular
| Eingabefeld | Was wird eingetragen | Beispiel |
|---|---|---|
| IP-Adresse | HART-IP-Gateway- / Multiplexer-IP | 192.168.0.110 |
| Port | HART-IP-Port | 5094 (Standard) |
| Antwort-Timeout (request-timeout) | Wartezeit auf Antwort (ms) | 5000 |
| Polling-Adresse (polling-address) | HART-Geräteadresse (0–63) | 0 (Punkt-zu-Punkt) / 1–15 (Multidrop) |
Wenn hinter einem HART-IP-Gateway mehrere Transmitter im Multidrop-Betrieb zusammengeschlossen sind, ist es am saubersten, für jedes Gerät eine andere Polling-Adresse zu vergeben und als separate Verbindung zu registrieren.
PLC-Adressnotation für Tags
HART liest Werte über Befehle (Commands). Häufig verwendete Befehle:
| HART-Befehl | Bedeutung |
|---|---|
| Cmd 0 | Geräteidentifikation (Hersteller/Modell/Tag – für Metadaten) |
| Cmd 1 | Primäre Variable (PV) – am häufigsten verwendet |
| Cmd 2 | mA-Wert der PV |
| Cmd 3 | Vier dynamische Variablen (PV, SV, TV, QV) in einem Zug |
| Cmd 13 | Geräte-Tag / Einheit / Ober- und Untergrenze |
Im Gateway wird die Eingabe im Format cmd:<number>:<field> vorgenommen.
| Notation | Bedeutung |
|---|---|
cmd:1:PV | Primäre Variable (Druck, Durchfluss usw.) |
cmd:3:PV | Nur PV aus der Cmd-3-Antwort |
cmd:3:SV | Sekundäre Variable |
cmd:3:TV | Tertiäre Variable |
cmd:3:QV | Quartäre Variable |
cmd:2:CURRENT | Tatsächlicher mA-Wert des 4–20-mA-Signals |
cmd:13:TAG | Geräte-Tag (Zeichenkette) |
cmd:13:UNIT | Einheiten-Code |
Bei HART ist die Variable selbst (d. h. was das 4–20-mA-Signal bedeutet) in der Gerätekonfiguration festgelegt. Das Gateway empfängt lediglich die „PV“. Welche physikalische Größe diese PV darstellt, ergibt sich aus dem Einheiten-Code des Transmitters (Cmd 13 unit) oder Sie legen es über den Tag-Namen fest.
Zuordnung der Datenformate
| Wert von HART | Datenformat | Format-Code |
|---|---|---|
| PV / SV / TV / QV (Float) | Float | REAL |
| mA (Cmd 2) | Float | REAL |
| Geräte-Tag / Einheitenname | String | STR[8] usw. |
| Statuscode / Field Device Status | Integer | (leer) |
HART überträgt Gleitkommazahlen im IEEE-754-32-Bit-Big-Endian-Format. Das Gateway dekodiert dies automatisch, sodass Sie nur REAL angeben müssen.
Schreibzugriff (Write)
Die Schreibbefehle von HART sind riskant (sie ändern Bereich / Einheit / Dämpfung / Nullpunkt des Transmitters) und sollten daher mit Vorsicht verwendet werden.
| Befehl | Bedeutung |
|---|---|
| Cmd 6 | Polling-Adresse ändern |
| Cmd 17 | Gerätenachricht (32 Zeichen) |
| Cmd 18 | Geräte-Tag / Beschreibung / Datum |
| Cmd 35 | Ober- / Untergrenze der PV (Bereich) ändern |
Beispiel für Schreibnotation: cmd:18:TAG, der Wert wird als Zeichenkette gesendet.
Häufige Probleme und Lösungen
| Symptom | Mögliche Ursache | Lösung |
|---|---|---|
| „No response from device“ | Nur das HART-Gateway antwortet, das Gerät nicht | Polling-Adresse für Multidrop prüfen (0 vs. 1–15) |
| Cmd-1-Wert bleibt auf 0 | Transmitter im Fail-Safe-Modus | 4–20-mA-Leitung auf Unterbrechung / Kurzschluss prüfen |
| „Cmd 3 not supported“ | Altes HART-Gerät (Rev. < 5) | Nur Cmd 1 verwenden. SV/TV/QV nicht verfügbar |
| Einheiten-Code erscheint als Zahl | HART-Einheiten sind Enums (1=°C, 32=Pa, …) | Mit Formel / Zuordnungstabelle in benutzerfreundliche Einheiten umrechnen |
Praxisbeispiele für spezifische Geräte
Rosemount 3051 (Drucktransmitter)
Der am weitesten verbreitete Differenz- / Überdrucktransmitter. Die PV des 4–20-mA-Signals wird auf Druck (kPa, bar, psi usw.) abgebildet.
| Tag-Name | Adresse | Format | Bemerkung |
|---|---|---|---|
| Druck (PV) | cmd:1:PV | Float | REAL |
| mA | cmd:2:CURRENT | Float | REAL – zur Leitungsprüfung |
| Geräte-Tag | cmd:13:TAG | String | z. B. TT-201 |
| Einheiten-Code | cmd:13:UNIT | Integer | 1=in H2O, 7=kPa, 13=bar |
| Gerätestatus | cmd:48:STATUS | Integer | Ergebnis des Selbsttests |
Endress+Hauser Promass 80 (Coriolis-Durchflussmesser)
| Tag-Name | Adresse | Format | Bemerkung |
|---|---|---|---|
| Durchfluss (PV) | cmd:3:PV | Float | kg/h |
| Dichte (SV) | cmd:3:SV | Float | kg/m³ |
| Temperatur (TV) | cmd:3:TV | Float | °C |
| Summenmenge (QV) | cmd:3:QV | Float | kg |
Yokogawa EJX910A (Multivariable-Transmitter)
| Tag-Name | Adresse | Format | Bemerkung |
|---|---|---|---|
| Differenzdruck | cmd:3:PV | Float | kPa |
| Statischer Druck | cmd:3:SV | Float | kPa abs |
| Prozesstemperatur | cmd:3:TV | Float | °C |
| Korrigierter Durchfluss | cmd:3:QV | Float | (interne Berechnung im Gerät) |
Häufige Betriebsmuster
Muster 1. Mehrfaches Multidrop (8 Transmitter an einem Gateway)
| Tag-Name | Adresse | Bemerkung |
|---|---|---|
| TT-101 PV | cmd:1:PV | (als separate Verbindung mit Polling-Adresse 1 registriert) |
| TT-102 PV | cmd:1:PV | (als separate Verbindung mit Polling-Adresse 2 registriert) |
Für jede Polling-Adresse 1–15 wird auf PlantPulse-Seite eine separate OPC-Registrierung vorgenommen (host:port gleich, nur polling-address unterschiedlich).
Muster 2. Automatische Einheitenanzeige
cmd:13:UNIT (Einheiten-Enum) mit erfassen und im Anzeigebildschirm in mapTable(unit) = "kPa" / "bar" / ... umwandeln. Bei einer Änderung der Transmitter-Einheit wird die Anzeigeeinheit automatisch nachgeführt, ohne die PlantPulse-Registrierung anzupassen.
Muster 3. Erkennung von Leitungsunterbrechungen
Wenn cmd:2:CURRENT (mA) unter 4 oder über 20 liegt, ist ein Fail-Safe-Zustand oder eine Leitungsunterbrechung zu vermuten. In die Alarmregeln aufnehmen.
Nächste Schritte
- Tag-Registrierung – Zuordnungstabelle für [Datenformat] / [Format-Code]
- Erweitert – REST API – HART-IP-Automatisierungsbeispiel