HART-IP — 4-20 mA + digitale Kommunikation
HART (Highway Addressable Remote Transducer) ist ein industrieller Messtechnik-Standard, der digitale Informationen zusätzlich auf das analoge 4-20-mA-Signal aufmoduliert. Dieses Gateway kommuniziert über HART-IP (TCP/UDP), also HART gekapselt in Ethernet.
Am häufigsten wird es bei Druck-, Durchfluss-, Temperatur- und Füllstandstransmittern in Prozessindustrien wie Chemie, Raffinerie, Kraftwerken sowie Wasser-/Abwassertechnik eingesetzt.
Eingabewerte im Registrierungsformular
| Eingabefeld | Was wird eingetragen | Beispiel |
|---|---|---|
| IP-Adresse | IP des HART-IP-Gateways / Multiplexers | 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 (Point-to-Point) / 1~15 (Multidrop) |
Wenn hinter einem HART-IP-Gateway mehrere Transmitter im Multidrop-Betrieb zusammengefasst sind, ist es am saubersten, für jedes Gerät eine eigene Polling-Adresse zu vergeben und es als separate Verbindung zu registrieren.
PLC-Adressnotation der Tags
HART holt Werte über Kommandos (Command) ab. Häufig verwendete Kommandos:
| HART-Kommando | Bedeutung |
|---|---|
| Cmd 0 | Geräteidentifikation (Hersteller/Modell/Tag — für Metadaten) |
| Cmd 1 | Primärvariable (Primary Variable, PV) — am häufigsten verwendet |
| Cmd 2 | mA-Wert der PV |
| Cmd 3 | Alle vier dynamischen Variablen (PV, SV, TV, QV) auf einmal |
| Cmd 13 | Geräte-Tag / Einheit / Ober- und Untergrenze |
Im Gateway erfolgt die Eingabe im Format cmd:<number>:<field>.
| Notation | Bedeutung |
|---|---|
cmd:1:PV | Primärvariable (Druck, Durchfluss usw.) |
cmd:3:PV | Nur PV aus der Antwort von Cmd 3 |
cmd:3:SV | Sekundärvariable (Secondary Variable) |
cmd:3:TV | Tertiärvariable |
cmd:3:QV | Quartärvariable |
cmd:2:CURRENT | Tatsächlicher mA-Wert des 4-20-mA-Signals |
cmd:13:TAG | Geräte-Tag (Zeichenkette) |
cmd:13:UNIT | Einheitencode |
Bei HART wird die Variable selbst (was das 4-20-mA-Signal bedeutet) in der Gerätekonfiguration festgelegt. Das Gateway liest lediglich die „PV“ aus; welche physikalische Größe diese PV darstellt, ergibt sich aus dem Formatzusatz des Transmitters (Cmd 13 unit) oder Sie geben es selbst über den Tag-Namen an.
Zuordnung der Datenformate
| HART-Wert | Datenformat | Formatzusatz |
|---|---|---|
| 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 Gleitkommawerte als IEEE 754 32-Bit Big-Endian. Das Gateway dekodiert automatisch, Sie müssen also lediglich REAL angeben.
Unterstützung für Schreibzugriffe (Write)
Schreibkommandos in HART sind riskant (sie ändern Messbereich / Einheit / Dämpfung / Nullpunkt des Transmitters) — setzen Sie sie mit Bedacht ein.
| Kommando | Bedeutung |
|---|---|
| Cmd 6 | Polling-Adresse ändern |
| Cmd 17 | Gerätemeldung (32 Zeichen) |
| Cmd 18 | Geräte-Tag / Deskriptor / Datum |
| Cmd 35 | Ober-/Untergrenze (Messbereich) der PV ändern |
Beispiel für die 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 | Multidrop-Polling-Adresse prüfen (0 vs. 1–15) |
| Wert von Cmd 1 bleibt konstant 0 | Transmitter im Fail-Safe-Modus | 4-20-mA-Leitung auf Unterbrechung/Kurzschluss prüfen |
| „Cmd 3 not supported“ | Älteres HART-Gerät (vor Rev. 5) | Nur Cmd 1 verwenden. SV/TV/QV nicht nutzbar |
| Einheitencode erscheint als Zahl | HART-Einheiten sind ein Enum (1=°C, 32=Pa, …) | Über Formel / Mapping-Tabelle in lesbare Einheiten umsetzen |
Praxisbeispiele für die Zuordnung gängiger Geräte
Rosemount 3051 (Drucktransmitter)
Der am weitesten verbreitete Differenz-/Überdrucktransmitter. Die PV des 4-20-mA-Signals wird auf den 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 |
| Einheitencode | 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 |
| Summenzähler Durchfluss (QV) | cmd:3:QV | Float | kg |
Yokogawa EJX910A (Multivariablen-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 |
| Kompensierter Durchfluss | cmd:3:QV | Float | (geräteinterne Berechnung) |
Häufige Betriebsmuster
Muster 1. Mehrfach-Multidrop (8 Transmitter an einem Gateway)
| Tag-Name | Adresse | Bemerkung |
|---|---|---|
| TT-101 PV | cmd:1:PV | (als separate Verbindung mit Polling-Adresse 1 registrieren) |
| TT-102 PV | cmd:1:PV | (als separate Verbindung mit Polling-Adresse 2 registrieren) |
Für jede Polling-Adresse 1–15 eine eigene OPC-Registrierung in PlantPulse anlegen (host:port identisch, nur polling-address unterschiedlich).
Muster 2. Automatische Anzeige der Einheit
cmd:13:UNIT (Einheiten-Enum) mit erfassen und in der Anzeige nach mapTable(unit) = "kPa" / "bar" / ... umsetzen. Bei einer Änderung der Transmitter-Einheit folgt die angezeigte Einheit automatisch, ohne dass die Registrierung in PlantPulse angepasst werden muss.
Muster 3. Erkennung von Leitungsunterbrechungen
Liegt cmd:2:CURRENT (mA) unter 4 oder über 20, liegt vermutlich Fail-Safe oder eine Leitungsunterbrechung vor. In die Alarmregeln aufnehmen.
Nächste Schritte
- Zuordnungstabelle [Datenformat] / [Formatzusatz] unter Tag registrieren
- HART-IP-Automatisierungsbeispiele unter Erweitert — REST API