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 nachfolgenden Hinweise und Erklärungen unbedingt notwendig.

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.
Deshalb ist die Dokumentation nicht in jedem Fall vollständig auf die Übereinstimmung mit den beschriebenen Leistungsdaten, Normen oder sonstigen Merkmalen geprüft.
Falls sie technische oder redaktionelle Fehler enthält, behalten wir uns das Recht vor, Änderungen jederzeit und ohne Ankündigung vorzunehmen.
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®, Safety over EtherCAT®, TwinSAFE®, XFC® und XTS® 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, DE102004044764, DE102007017835
mit den entsprechenden Anmeldungen und Eintragungen in verschiedenen anderen Ländern.

Die TwinCAT Technologie ist patentrechtlich geschützt, insbesondere durch folgende Anmeldungen und Patente:
EP0851348, US6167425 mit den entsprechenden Anmeldungen und Eintragungen in verschiedenen anderen Ländern.

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.


Kommunikation mit der Wetterstation P02-RS485 / P03-RS485 der Firma Elsner Elektronik - Übersicht

Beckhoff Knowledge Base: Kommunikation mit der Wetterstation P02-RS485 / P03-RS485 der Firma Elsner Elektronik

Einführung

Im Folgenden wird ein Beispiel gezeigt, wie Sie zwischen TwinCAT und der Wetterstation P02-RS485 oder der Wetterstation P03-RS485 der Firma Elsner Elektronik (www.Elsner-Elektronik.de) kommunizieren können. Das Beispiel beschränkt sich hierbei auf die Grundfunktionen, die notwendig sind, um die Wetterstation in eine Applikation einzubinden.

Die Wetterstation P02-RS485 verwendet das gleiche Übertragungsprotokoll wie die P03/1-RS485 oder die P03/3-RS485. Somit sind die einzelnen Wetterstationen zueinander kompatibel. Der Unterschied zwischen der P03/1-RS485 und der P03/3-RS485 besteht in der Anzahl der Helligkeitssensoren. Die P03/3-RS485 besitzt 3 Sensoren (Süden, Osten und Westen), wobei die P03/1-RS485 nur einen Helligkeitssensor besitzt.

Die Wetterstation erfasst die Wettervariablen Außentemperatur, Helligkeit, Windgeschwindigkeit und Niederschlag. Ein DCF77-Funkempfänger für Datum und Uhrzeit ist im Gehäuse integriert. Alle Daten werden als RS485-Protokoll ausgegeben. Dieser Datenstrom kann mit einem Endgerät (z.B. mit einer SPS) empfangen und ausgewertet werden. Die aktuell erfassten Daten werden einmal pro Sekunde von der Wetterstation versendet. Wenn das DCF-Signal nicht empfangen werden kann, erfolgt die Datenausgabe ca. alle 1,35 Sekunden. Elsner Elektronik bietet auch eine Variante der Wetterstation an, die nur alle 3 Sekunden die Daten versendet. Besonders bei langsamen Steuerungen ist diese Variante sinnvoll.

Voraussetzungen

  • Microsoft Windows mit TwinCAT PLC (ab Version 2.10) für die Programmierung und Inbetriebnahme
  • TwinCAT PLC Serial Communication Library
  • BK9000 mit KL6041 und KL9010 oder Embedded-PC (z.B. CX9000) mit N031-Schnittstelle (RS485)
  • Programmierkenntnisse in IEC 61131-3 unter TwinCAT
  • P02-RS485, P03/1-RS485 oder P03/3-RS485 Wetterstation der Firma Elsner Elektronik

Anschlüsse der Wetterstation

Die Wetterstation hat vier Anschlüsse, die Datenausgabe erfolgt an den Klemmen A und B. Die Klemmen 1 und 2 sind für die Spannungsversorgung vorgesehen (24 V DC). Die Anschlüsse sind nicht verpolfest. Bei Falschanschluss werden die Schnittstellenbausteine zerstört.

Beachten Sie unbedingt die Installationshinweise des Herstellers.

Beim Einsatz von Schaltnetzteilen kann die Qualität des Funkempfangs beeinträchtigt werden. Es ist möglich, dass für längere Zeit kein Funkuhrempfang vorhanden ist. Benutzen Sie daher die ausgegebene Uhrzeit nur zur Synchronisation einer parallel in Ihrem System laufenden Uhr. Hierzu sollte die Sekunde 0 benutzt werden.

Übersicht

Applikationsbeispiele | Anmerkung
Applikationsbeispiel 1: Elsner P02-RS485 / P03-RS485 kommuniziert mit KL6041 |
Applikationsbeispiel 2: Elsner P02-RS485 / P03-RS485 kommuniziert mit CXxxxx-N031 |
Protokollbeschreibung Elsner P02-RS485 / P03-RS485 |


Anschluss der Elsner P02-RS485 / P03-RS485 Wetterstation an eine KL6041

Anschluss der Elsner Wetterstation an eine KL6041

Die Wetterstation hat vier Anschlüsse, die Datenausgabe erfolgt an den Klemmen A und B. Die Klemmen 1 und 2 sind für die Spannungsversorgung vorgesehen (24 V DC). Die Anschlüsse sind nicht verpolfest. Bei Falschanschluss werden die Schnittstellenbausteine zerstört.

Beachten Sie unbedingt die Installationshinweise des Herstellers.

Beim Einsatz von Schaltnetzteilen kann die Qualität des Funkempfangs beeinträchtigt werden. Es ist möglich, dass für längere Zeit kein Funkuhrempfang vorhanden ist. Benutzen Sie daher die ausgegebene Uhrzeit nur zur Synchronisation einer parallel in Ihrem System laufenden Uhr. Hierzu sollte die Sekunde 0 benutzt werden.

Schließen Sie die Wetterstation auf folgende Weise 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:

  • 22 Datenbytes im Prozessabbild
  • Halbduplex
  • 19200 Baud
  • 8 Datenbits
  • Keine Parität
  • 1 Stopbit

Alternativ hierzu können Sie auch die Klemme aus dem SPS-Programm konfigurieren (siehe Beispielprogramm). Hierdurch entfällt das Einstellen der Klemme mit der KS2000.

Beispiel

Die Erstellung des SPS-Programms entnehmen Sie bitte dem nachfolgenden Beispiel:

SampleKL6041.zip


Anschluss der Elsner P02/P03-RS485 an eine -N031 Schnittstelle

Anschluss der Elsner Wetterstation an eine N031 Schnittstelle

Die Wetterstation hat vier Anschlüsse, die Datenausgabe erfolgt an den Klemmen A und B. Die Klemmen 1 und 2 sind für die Spannungsversorgung vorgesehen (24 V DC). Die Anschlüsse sind nicht verpolfest. Bei Falschanschluss werden die Schnittstellenbausteine zerstört.

Beachten Sie unbedingt die Installationshinweise des Herstellers!

Beim Einsatz von Schaltnetzteilen kann die Qualität des Funkempfangs beeinträchtigt werden. Es ist möglich, dass für längere Zeit kein Funkuhrempfang vorhanden ist. Benutzen Sie daher die ausgegebene Uhrzeit nur zur Synchronisation einer parallel in Ihrem System laufenden Uhr. Hierzu sollte die Sekunde 0 benutzt werden.

Anschluss an die CXxxxx-N031 Schnittstelle eines Embedded-PC's (z.B. CX9000, CX9001, CX9010, CX1xxx, ... )

Schließen Sie die Wetterstation auf folgende Weise an die N031-Schnittstelle an:

COM-Schnittstelle (Buchse):

Pinbelegung COM-Schnittstelle:

PIN | Signal
2 | TxD+
3 | RxD+
5 | GND
6 | VCC
7 | TxD-
8 | RxD-

Pin 2 und 3 ( Data +) sowie Pin 7 und 8 (Data -) müssen im DSub-9 Stecker der N031-Schnittstelle miteinander verbunden werden.

Einstellen der Schnittstelle

Stellen Sie die N031-Schnittstelle im TwinCAT System Manager auf folgende Werte ein:

  • 64 Datenbytes im Prozessabbild
  • RS485
  • 19200 Baud
  • 8 Datenbits
  • Keine Parität
  • 1 Stopbit

Beispiel

Die Erstellung des SPS-Programms entnehmen Sie bitte dem nachfolgenden Beispiel:

SampleN031.zip


Protokollbeschreibung Elsner P02/P03-RS485

Alle verwendeten Zeichen bzw. Zahlen beruhen auf der ASCII-Norm, d. h. dass jeder Messwert, der intern als Integer oder Float-Wert verarbeitet wird, immer in seine einzelnen Zeichen im ASCII-Format zerlegt und übertragen wird. Diese müssen dann vom Empfänger im umgekehrten Prozess wieder zusammengesetzt werden. Die Prüfsumme wird durch Addition aller empfangenen Bytes bis Byte 35 vom Empfänger mitgerechnet und dann mit der von der P02 übertragenen Prüfsumme verglichen.

Byte-Nr. | Beschreibung | Anmerkung
1 | 'W' - Start |
2 | Außentemperatur Vorzeichen '-' oder '+' |
3 | Außentemperatur 1. Zahl (Zehner) |
4 | Außentemperatur 2. Zahl (Einer) |
5 | Außentemperatur Punkt '.' |
6 | Außentemperatur 3. Zahl (Zehntel) | Der aus Byte 2 bis 6 zusammengesetzte Float/Real-Wert entspricht der Aussentemperatur in Grad Celsius (°C).
7 | Helligkeit Süd 1. Zahl (Zehner) |
8 | Helligkeit Süd 2. Zahl (Einer) |
9 | Helligkeit West 1. Zahl (Zehner) | Da die P03/1-RS485 nur einen Helligkeitssensor verwendet, wird hier in dem Fall der gleiche Wert eingesetzt wie im Byte 7.
10 | Helligkeit West 2. Zahl (Einer) | Da die P03/1-RS485 nur einen Helligkeitssensor verwendet, wird hier in dem Fall der gleiche Wert eingesetzt wie im Byte 8.
11 | Helligkeit Ost 1. Zahl (Zehner) | Da die P03/1-RS485 nur einen Helligkeitssensor verwendet, wird hier in dem Fall der gleiche Wert eingesetzt wie im Byte 7.
12 | Helligkeit Ost 2. Zahl (Einer) | Da die P03/1-RS485 nur einen Helligkeitssensor verwendet, wird hier in dem Fall der gleiche Wert eingesetzt wie im Byte 8.
13 | Dämmerung: 'J' = Ja; 'N' = Nein |
14 | Tageslicht 1. Zahl (Hunderter) |
15 | Tageslicht 2. Zahl (Zehner) |
16 | Tageslicht 3. Zahl (Einer) | Der aus Byte 14 bis 16 zusammengesetzte Wert entspricht der aktuellen Helligkeit in Lux.
17 | Windgeschwindigkeit 1. Zahl (Zehner) |
18 | Windgeschwindigkeit 2. Zahl (Einer) |
19 | Windgeschwindigkeit Punkt '.' |
20 | Windgeschwindigkeit 3. Zahl (Zehntel) | Der aus Byte 17 bis 20 zusammengesetzte Float/Real-Wert entspricht der Windgeschwindigkeit in m/s. Eine Bestimmung der Windstärke kann anhand der Beaufortskala erfolgen.
21 | Regen: 'J' = Ja; 'N' = Nein |
22 | Wochentag: 1 = Montag, 7 = Sonntag, '?' = nicht definiert |
23 | Datum Tag 1. Zahl (Zehner) |
24 | Datum Tag 2. Zahl (Einer) |
25 | Datum Monat 1. Zahl (Zehner) |
26 | Datum Monat 2. Zahl (Einer) |
27 | Datum Jahr 1. Zahl (Zehner) |
28 | Datum Jahr 2. Zahl (Einer) |
29 | Uhrzeit Stunde 1. Zahl (Zehner) |
30 | Uhrzeit Stunde 2. Zahl (Einer) |
31 | Uhrzeit Minute 1. Zahl (Zehner) |
32 | Uhrzeit Minute 2. Zahl (Einer) |
33 | Uhrzeit Sekunde 1. Zahl (Zehner) |
34 | Uhrzeit Sekunde 2. Zahl (Einer) |
35 | Sommerzeit: 'J' = Sommerzeit, 'N' = Winterzeit, '?' = nicht definiert |
36 | Prüfsumme 1. Zahl (Einer) |
37 | Prüfsumme 2. Zahl (Zehner) |
38 | Prüfsumme 3. Zahl (Hunderter) |
39 | Prüfsumme 4. Zahl (Tausender) |
40 | Endkennung 0x03 |

Hinweis: Weitere Informationen zu den RS485-Protokoll der Wetterstation erhalten Sie bei der Firma Elsner Elektronik (www.Elsner-Elektronik.de).


Beaufortskala

Die Beaufortskala ist eine Klassifizierung von Winden nach ihrer Geschwindigkeit. Es handelt sich um das allgemeinste System zur Definition der Windgeschwindigkeit.
Eigentlich wurde sie eingeführt, um den Seegang des Meeres bestimmen zu können. Es gibt allerdings auch eine Übertragung auf Landbedingungen, welche anschaulicher für die Umgebung von Wetterstationen im Heimbereich herangezogen werden können.

Windstärke in Bft. | Windgeschwindigkeit (in m/s) | Bezeichnung der Windstärke | Wirkung an Land
0 | > 0.3 | Windstille | Keine Luftbewegung, Rauch steigt senkrecht empor.
1 | 0.3 - 1.5 | leiser Zug | Kaum merklich, Rauch treibt leicht ab, Windflügel und Windfahnen unbewegt.
2 | 1.5 - 3.3 | leichte Brise | Blätter rascheln, Wind im Gesicht spürbar.
3 | 3.3 - 5.5 | schwache Brise | Blätter und dünne Zweige bewegen sich, Wimpel werden gestreckt.
4 | 5.5 - 8.0 | mäßige Brise | Zweige bewegen sich, loses Papier wird vom Boden gehoben.
5 | 8.0 - 10.8 | frische Brise | Größere Zweige und Bäume bewegen sich, Wind deutlich hörbar.
6 | 10.8 - 13.9 | starker Wind | Dicke Äste bewegen sich, hörbares Pfeifen an Drahtseilen, in Telefonleitungen
7 | 13.9 - 17.2 | steifer Wind | Bäume schwanken, Widerstand beim Gehen gegen den Wind.
8 | 17.2 - 20.7 | stürmischer Wind | Große Bäume werden bewegt, Zweige brechen von Bäumen, beim Gehen erhebliche Behinderung.
9 | 20.7 - 24.5 | Sturm | Äste brechen, kleinere Schäden an Häusern, Ziegel werden von Dächern gehoben.
10 | 24.5 - 28.4 | schwerer Sturm | Bäume werden entwurzelt, Baumstämme brechen, größere Schäden an Häusern; selten im Landesinneren
11 | 28.4 - 32.6 | orkanartiger Sturm | Heftige Böen, schwere Sturmschäden, schwere Schäden an Wäldern, Dächer werden abgedeckt; selten im Landesinneren.
12 | >= 32.6 | Orkan | schwerste Sturmschäden und Verwüstungen; sehr selten im Landesinneren.

Für weitergehende Informationen über die Klassifikation von Windgeschwindigkeiten nach der Beaufortskala, siehe: http://de.wikipedia.org/wiki/Beaufortskala.


FUNCTION F_DEG_CELSIUS_TO_FAHRENHEIT (Beispiel)

FUNCTION F_DEG_CELSIUS_TO_FAHRENHEIT (*Beispiel*)

Dieses kleine Beispiel zeigt eine Möglichkeit der Umrechnung von Grad Celsius Messwerten in die, in einigen Ländern übliche, Grad Fahrenheit-Einteilung. Die Funktionsdeklaration besteht lediglich aus dem Funktionsnamen, dessen Datentyp des Rückgabewertes, sowie der Eingangsvariable für den Temperaturwert in Grad Celsius.

FUNCTION F_DEG_CELSIUS_TO_FAHRENHEIT : REAL
VAR_INPUT
    rCelsius : REAL; (* °C *)
END_VAR

Bespielcode (ST)

Die einzig notwendige Codezeile innerhalb des Funktionskörpers (bei Implementierung in der Sprache Strukturierter Text ) wird im Folgenden gezeigt:

F_DEG_CELSIUS_TO_FAHRENHEIT := rCelsius * 1.8 + 32;