R+S Bus


 

Der R+S Bus Treiber ermöglicht es Wertänderungen über die RS-232 oder RS-485 Schnittstelle mit Hilfe des R+S Bus Protokolls zu lesen und zu schreiben.

Die Abfrage des aktuellen Wertes eines Datenpunktes erfolgt nach Ablauf der konfigurierten Abfragezeit. Die Abfrage erfolgt asynchron. Innerhalb von 10 Sekunden liefert der Slave den abgefragten Wert, sonst läuft der Treiber in eine Timeout-Behandlung für diesen Slave. Während einer laufenden Abfrage werden vom Treiber keine weiteren Abfragen gestartet.

Der Name des R+S Bus Treibers lautet: rus
Die Routing-Adresse des ersten R+S Bus Treibers ist die 1460
Die Datenpunktdatei für den ersten R+S Bus Treiber heißt: rus1.txt
Die Konfigurationsdatei für globale Einstellungen des ersten R+S Bus Treibers heißt: rus1.cfg

Beim R+S Bus Treiber sowie allen weiteren Gateway-Treibern gilt für die Definition von Datenpunkten in der Datenpunktdatei:

Typ:Bedeutung
MGanzzahliger Wert der vom Gateway nur gelesen werden kann/soll.
SGanzzahliger Wert der vom Gateway gelesen sowie geschrieben werden kann/soll.
XAnalogwert (mit Nachkommastellen) der vom Gateway nur gelesen werden kann/soll.
YAnalogwert (mit Nachkommastellen) der vom Gateway gelesen sowie geschrieben werden kann/soll.

Die Adressen der R+S Bus-Datenpunkte sind wie folgt aufgebaut:

“<Type>.<Slave>.<Gruppe>[.<Gruppe>[.<Gruppe>[.<Gruppe>]]].<Parameter>”

Dabei gilt folgende Definition:

ParameterWertebereichBeschreibung
<Typ>failure
binary
analog
Parameter
für binäre Parameter
für analoge Parameter
<Slave>0 - 254Nummer des Slaves
<Gruppe>1 - 254Nummer der Gruppe
Gruppen können bis zu einer Tiefe von 7 Gruppen verschachtelt werden
Üblicherweise genutzt wird: Kreis.Hauptgruppe.Obergruppe.Untergruppe
<Parameter>1 - 254Nummer des Parameters
Das Format eines Parameters wird per Datentelegramm übertragen

Typische Datenpunkt-Definitionen können demnach sein:

# failure Datenpunkte

[M failure]
name = Communication failure
query = pe

[M failure 0]
name = Slave 0 (Communication failure)
query = pe

# Istwerte

# 2.6.01.00.xxx Uhr Servicefunktion Uhrzeit
[S analog 0.2.6.1.1]
name = Slave 0 (UHRZEIT)
query = pe

# 3.1.00.00.xxx Heizkreis Istwerte
[X analog 0.3.1.1]
name = Slave 0 (RAUM)
query = pe

[M analog 0.3.1.2]
name = Slave 0 (VORLAUF)
query = pe