Hinweise zur Dokumentation

Diese Beschreibung wendet sich ausschließlich an ausgebildetes Fachpersonal der Steuerungs- und Automatisierungstechnik, das mit den geltenden nationalen Normen vertraut ist.
Zur Installation und Inbetriebnahme der Komponenten ist die Beachtung der Dokumentation und der nachfolgenden Hinweise und Erklärungen unbedingt notwendig.
Das Fachpersonal ist verpflichtet, für jede Installation und Inbetriebnahme die zu dem Zeitpunkt veröffentlichte Dokumentation zu verwenden.

Das Fachpersonal hat sicherzustellen, dass die Anwendung bzw. der Einsatz der beschriebenen Produkte alle Sicherheitsanforderungen, einschließlich sämtlicher anwendbaren Gesetze, Vorschriften, Bestimmungen und Normen erfüllt.

Disclaimer

Diese Dokumentation wurde sorgfältig erstellt. Die beschriebenen Produkte werden jedoch ständig weiter entwickelt.
Wir behalten uns das Recht vor, die Dokumentation jederzeit und ohne Ankündigung zu überarbeiten und zu ändern.
Aus den Angaben, Abbildungen und Beschreibungen in dieser Dokumentation können keine Ansprüche auf Änderung bereits gelieferter Produkte geltend gemacht werden.

Marken

Beckhoff®, TwinCAT®, EtherCAT®, EtherCAT G®, EtherCAT G10®, EtherCAT P®, Safety over EtherCAT®, TwinSAFE®, XFC®, XTS® und XPlanar® sind eingetragene und lizenzierte Marken der Beckhoff Automation GmbH.
Die Verwendung anderer in dieser Dokumentation enthaltenen Marken oder Kennzeichen durch Dritte kann zu einer Verletzung von Rechten der Inhaber der entsprechenden Bezeichnungen führen.

Patente

Die EtherCAT Technologie ist patentrechtlich geschützt, insbesondere durch folgende Anmeldungen und Patente:
EP1590927, EP1789857, EP1456722, EP2137893, DE102015105702
mit den entsprechenden Anmeldungen und Eintragungen in verschiedenen anderen Ländern.

EtherCAT® ist eine eingetragene Marke und patentierte Technologie lizenziert durch die Beckhoff Automation GmbH, Deutschland.

Copyright

© Beckhoff Automation GmbH & Co. KG, Deutschland.
Weitergabe sowie Vervielfältigung dieses Dokuments, Verwertung und Mitteilung seines Inhalts sind verboten, soweit nicht ausdrücklich gestattet.
Zuwiderhandlungen verpflichten zu Schadenersatz. Alle Rechte für den Fall der Patent-, Gebrauchsmuster- oder Geschmacksmustereintragung vorbehalten.


Anschluss des Raumbediengerätes WRF08 RS 485 MODBUS_Einführung

Beckhoff Knowledge Base: Kommunikation mit dem Raumbediengerät WRF08 RS485 MODBUS von der Firma Thermokon

Einführung

Im Folgenden wird ein Beispiel gezeigt, wie Sie zwischen TwinCAT und dem Raumbediengerät WRF08 8T RS485 MODBUS mit acht Tasten der Firma Thermokon (www.thermokon.de) kommunizieren können. Das Beispiel beschränkt sich hierbei auf die Grundfunktionen, um das Raumbediengerät in eine Applikation einzubinden.

Das Raumbediengerät gibt es in verschiedenen Ausführungen bezogen auf die Anzahl der Funktionstasten. Das Gerät besitzt einen integrierten Temperatursensor. Über die Modbus Kommunikationsschnittstelle können die Funktionstasten und das Display abgefragt bzw. angesteuert werden.

Voraussetzungen

  • Microsoft Windows mit TwinCAT PLC (ab Version 2.10) für die Programmierung und Inbetriebnahme
  • TwinCAT PLC Modbus RTU (Softwarebibliothek für TwinCAT)
  • TwinCAT PLC Serial Communcation (Softwarebibliothek für TwinCAT)
  • Programmierkenntnisse in IEC 61131-3 unter TwinCAT
  • KL6041(Serielle Schnittstelle RS485)
  • WRF08 der Firma Thermokon

Übersicht

Applikationsbeispiele | Bemerkung
Applikationsbeispiel: PLC_KL6041.zip | Zielplattform CX (ARM)

Einzubindende Bibliotheken:


Anschluss des Raumbediengerätes WRF08 RS 485 MODBUS an eine KL6041

Beckhoff Knowledge Base: Kommunikation mit dem Raumbediengerät WRF08 RS485 MODBUS von der Firma Thermokon

Anschluss des Raumbediengerätes WRF08 RS485 MODBUS an eine KL6041

Das Raumbediengerät hat vier Anschlüsse. Die Datenausgabe erfolgt an den Klemmen 1 (Net A) und 2 (Net B). Die Klemmen 3 (24 V DC) und 4 (GND) sind für die Spannungsversorgung vorgesehen.

Beachten Sie unbedingt die Installationshinweise des Herstellers. www.thermokon.de

Schließen Sie das Raumbediengerät wie folgt an die Klemme KL6041 an:

Pin 1 und 2 ( Data +) sowie Pin 5 und 6 (Data -) müssen an der KL6041 miteinander verbunden werden.

Einstellen der Klemme

Stellen Sie die Klemme KL6041 mit Hilfe der KS2000 Software auf folgende Werte ein:

Allgemeine Einstellungen:

  • 22 Datenbytes im Prozessabbild
  • Halbduplex
  • Transferratenoptimierung

RS485-Schnittstellenparameter:

  • 9600 Baud
  • 8 Datenbits, gerade Parität
  • Keine Parität
  • 1 Stoppbit


Protokollbeschreibung WRF08-RS485-Modbus

Die Protokollbeschreibung WRF08-RS485 Modbus können Sie auf der Webseite der Firma Thermokon herunterladen.

Hinweis: Weitere Informationen zu dem WRF08-RS485-Modbus erhalten Sie ebenfalls bei der Firma Thermokon (www.thermokon.de).


STOutRegs

TYPE STOutRegs :
STRUCT
  wButton                   : WORD;              (* zeigt den Zustand der Taster an 1= gedrueckt; 0=nicht gedrückt *)
  wButtonBufferd            : WORD;              (* Tastendruck wird zwischengespeichert bis zum naechsten Auslesen des Register *)
  iTemperature              : INT;               (* Temperaturmesswert des internen Temperaturfuehler; in zehntel Grad *)
  iSetTemp1Offset           : INT;               (* Sollwerttemperatur 1 offset *)
  wSetTemp1Effective        : WORD;              (* Sollwerttemperatur 1 effektiv *)
  iSetTemp2Offset           : INT;               (* Sollwerttemperatur 2 offset *)
  wSetTemp2Effective        : WORD;              (* Sollwerttemperatur 2 effektiv *)
  iSetPercent1Offset        : INT;               (* Sollwertprozent 1 offset *)
  wSetPercent1Effective     : WORD;              (* Sollwertprozent 1 effektiv *)
  iSetPercent2Offset        : INT;               (* Sollwertprozent 2 offset *)
  wSetPrecent2Effective     : WORD;              (* Sollwertprozent 2 effektiv *)
  iSetpoint1Offset          : INT;               (* Sollwert Wert 1 offset *)
  wSetpointEffective        : WORD;              (* Sollwert Wert 1 effektiv *)
  iSetpoint2Offset          : INT;               (* Sollwert Wert 2 offset *)
  wSetpoint2Effective       : WORD;              (* Sollwert WErt 2 effektiv *)
  wFanStage                 : WORD;              (* Luefterstufe *)
  wRoomOccupancy            : WORD;              (* Raumbelegung *)
END_STRUCT
END_TYPE

Diese Struktur beinhaltet den Zustand der Ausgaberegister des Raumbediengerätes. (Register 257 bis Register 273)


STReadConfigRegs

TYPE STReadConfigRegs :
STRUCT
  wNumberOfButtons             : WORD;             (* WRF08 mit der Anzahl der Funktionsbedientasten *)
  wDeviceLocationID            : WORD;             (* Geräte-Standortkennung *)
  wIllumRest                   : WORD;             (* Intensität Hintergrundbeleuchtung LCD, nach 15s ohne Tastbetätigung *)
  wIllumActive                 : WORD;             (* Intensität Hintergrundbeleuchtung LCD bei Tastbetätigung *)
  wIllumLabelRest              : WORD;             (* Intensität Hintergrundbeleuchtung Beschriftungsfeld nach 15s ohne Tastbetätigung *)
  wIllumLabelActive            : WORD;             (* Intensität Hintergrundbeleuchtung Beschriftungsfeld bei Tastbetätigung *)
  wButtonT1                    : WORD;             (* Funktion Taste -T1 *)
  wButtonT2                    : WORD;             (* Funktion Taste -T2 *)
  wButtonT3                    : WORD;             (* Funktion Taste -T3 *)
  wButtonT4                    : WORD;             (* Funktion Taste -T4 *)
  wButtonT5                    : WORD;             (* Funktion Taste -T5 *)
  wButtonT6                    : WORD;             (* Funktion Taste -T6 *)
  wButtonT7                    : WORD;             (* Funktion Taste -T7 *)
  wButtonT8                    : WORD;             (* Funktion Taste -T8 *)
  wButtonT9                    : WORD;             (* Funktion Taste -T9 *)
  wButtonT10                   : WORD;             (* Funktion Taste -T10 *)
  wButtonT11                   : WORD;             (* Funktion Taste -T11 *)
  wButtonT12                   : WORD;             (* Funktion Taste -T12 *)
  wLEDT5                       : WORD;             (* Funktion LED -T5 *)
  wLEDT6                       : WORD;             (* Funktion LED -T6 *)
  wLEDT7                       : WORD;             (* Funktion LED -T7 *)
  wLEDT8                       : WORD;             (* Funktion LED -T8 *)
  wLEDT9                       : WORD;             (* Funktion LED -T9 *)
  wLEDT10                      : WORD;             (* Funktion LED -T10 *)
  wLEDT11                      : WORD;             (* Funktion LED -T11 *)
  wLEDT12                      : WORD;             (* Funktion LED -T12 *)
  wDispWeekday                 : WORD;             (* Anzeige Wochentag *)
  wDispDate                    : WORD;             (* Anzeige Datum *)
  wDispTime                    : WORD;             (* Anzeige Uhrzeit *)
  wDispTimeMode                : WORD;             (* Anzeige Uhrzeit Modus *)
  wDispUpdate                  : WORD;             (* Aktualisierungsintervall der Anzeige in Sekunden *)
  wMinResponseTime             : WORD;             (* Min-Response Time *)
  wCalibrationOffset           : WORD;             (* Temperatur-Offset zur Kalibrierung des Temperatursensors *)
  wTemp1UpperRange             : WORD;             (* Oberer Verstellbereich Solltemperatur 1 *)
  wTemp1LowerRange             : WORD;             (* Unterer Verstellbereich Solltemperatur 1 *)
  wJumpDistTemp1               : WORD;             (* Sprungweite bei Solltemperatur 1 *)
  wSetTemp1                    : WORD;             (* Solltemperatur 1; Basissollwert nach Reset *)
  wTemp2UpperRange             : WORD;             (* Oberer Verstellbereich Solltemperatur 2 *)
  wTemp2LowerRange             : WORD;             (* Unterer Verstellbereich Solltemperatur 2 *)
  wJumpDistTemp2               : WORD;             (* Sprungweite bei Solltemperatur 2 *)
  wSetTemp2                    : WORD;             (* Solltemperatur 2; Basissollwert nach Reset *)
  wAdjust1PercentUpper         : WORD;             (* Oberer Verstellbereich Sollprozentwert 1 *)
  wAdjust1PercentLower         : WORD;             (* Unterer Verstellbereich Sollprozentwert 1 *)
  wJumpDist1Percent            : WORD;             (* Sprungweite bei Sollprozentwert 1 *)
  wSetTemp1Percent             : WORD;             (* Sollprozentwert 1; Basissollwert nach Reset *)
  wAdjust2PercentUpper         : WORD;             (* Oberer Verstellbereich Sollprozentwert 2 *)
  wAdjust2PercentLower         : WORD;             (* Unterer Verstellbereich Sollprozentwert 2 *)
  wJumpDist2Percent            : WORD;             (* Sprungweite bei Sollprozentwert 2 *)
  wSetTemp2Percent             : WORD;             (* Sollprozentwert 2; Basissollwert nach Reset *)
  wUpperRange1Setpoint         : WORD;             (* Oberer Verstellbereich Sollwert 1 *)
  wLowerRange1Setpoint         : WORD;             (* Unterer Verstellbereich Sollwert 1 *)
  wJumpDist1Setpoint           : WORD;             (* Sprungweite bei Sollwert 1 *)
  wSetPoint1                   : WORD;             (* Sollwert 1; Basissollwert nach Reset *)
  wUpperRange2Setpoint         : WORD;             (* Oberer Verstellbereich Sollwert 2 *)
  wLowerRange2Setpoint         : WORD;             (* Unterer Verstellbereich Sollwert 2 *)
  wJumpDist2Setpoint           : WORD;             (* Sprungweite bei Sollwert 2 *)
  wSetPoint2                   : WORD;             (* Sollwert 2; Basissollwert nach Reset *)
  wFanStages                   : WORD;             (* Anzahl Lüfterstufen *)
END_STRUCT
END_TYPE

Über die Konfigurationsregister hat der Anwender die Möglichkeit das Raumbediengerät zu parametrieren. Jeder Parameter ist standardmäßig mit Voreinstellwerten vordefiniert, die je nach Anwendung verändert werden kann.