Feldbus-Controller 750-842 • 67
Datenaustausch
Feldbus-
Master 
Programmierbarer Feldbus Controller
Speicherbereich für |
|
|
||
Eingangsdaten |
|
|
||
Wort 0 |
1 |
Busklemmen |
||
Eingangs- |
||||
|
|
|||
klemmen |
|
|
|
|
Wort 255 |
|
|
|
|
Wort 256 |
3 |
IEC 61131- |
|
|
PFC- |
|
|
||
|
Programm |
|
||
Eingangs- |
|
|
||
variablen |
CPU |
|
||
Wort 511 |
|
|
||
|
|
|
||
Speicherbereich für |
|
|
||
Ausgangsdaten |
|
|
||
Wort 0 |
2 |
|
|
|
Ausgangs- |
|
|
||
klemmen |
|
|
||
2 |
|
|
|
|
Wort 255 |
|
|
|
|
Wort 256 |
4 |
I |
O |
|
PFC- |
||||
|
|
|
||
Ausgangs- |
|
|
||
4 |
|
|
|
|
variablen |
|
|
||
Wort 511
Abb. 3-24: Speicherbereiche und Datenaustausch fü r einen Feldbus-Controller |
g012938d |
Das Prozessabbild des Controllers enthält in dem jeweils oberen Speicherbereich (Wort 0 ... 255) die physikalischen Daten der Busklemmen.
(1)Von der CPU und von der Feldbusseite kö nnen die Eingangsklemmendaten gelesen werden.
(2)Ebenso kann von CPU und Feldbusseite aus auf die Ausgangsklemmen geschrieben werden. Bei gleichzeitigem Schreiben auf einen Ausgang, wird der Wert des Masters auf den Ausgang ausgegeben.
In dem jeweils unteren Speicherbereich (Wort 256 ... 511) des Prozessabbildes sind die PFC-Variablen abgelegt.
(3)Von der Feldbusseite werden die PFC-Eingangsvariablen in den Eingangsspeicherbereich geschrieben und von der CPU zur Verarbeitung eingelesen.
(4)Die von der CPU ü ber das IEC 61131-3-Programm verarbeiteten Variablen werden in den Ausgangsspeicherbereich gelegt und kö nnen von dem Master ausgelesen werden.
Zusätzlich sind bei dem ETHERNET TCP/IP Controller alle Ausgangsdaten auf einen Speicherbereich mit dem Adressen-Offset 0x0200 gespiegelt. Dadurch ist es mö glich, durch Hinzuaddieren von 0x0200 zu der MODBUSAdresse Ausgangswerte zurü ckzulesen.
Modulares I/O-System
ETHERNET TCP/IP
68 • Feldbus-Controller 750-842
Datenaustausch
In dem Controller sind darü ber hinaus weitere Speicherbereiche vorhanden, auf die von der Feldbusseite aus jedoch nicht zugegriffen werden kann:
•RAM
•Retain und
•Code-Speicher.
Der RAM-Speicher dient zum Anlegen von Variablen, die nicht zur Kommunikation mit den Schnittstellen sondern fü r interne Verarbeitungen, wie z. B. die Berechnung von Ergebnissen benö tigt werden.
Der Retain-Speicher ist ein nicht flü chtiger Speicher, d. h. nach einem Spannungsausfall bleiben alle Werte beibehalten. Die Speicherverwaltung erfolgt automatisch. In diesem Speicherbereich werden Merker fü r das IEC 61131-3- Programm abgelegt sowie Variablen ohne Speicherbereichs-Adressierung oder Variablen, die explizit mit "var retain" definiert werden.
Hinweis
Durch die automatische Speicherverwaltung kann es zu Ü berlagerungen von Daten kommen. Deshalb wird empfohlen, Merker und retain-Variablen nicht gemischt zu betreiben.
In dem Code-Speicher wird das IEC 61131-3-Programm abgelegt. Der CodeSpeicher ist ein Flash-ROM. Nach dem Einschalten der Versorgungsspannung wird das Programm von dem Flashin den RAM-Speicher ü bertragen. Nach fehlerfreiem Hochlauf startet der PFC-Zyklus bei oberer Stellung des Betriebsartenschalters oder durch einen Start-Befehl aus WAGO-I/O-PRO 32.
Die physikalische Anordnung der Busklemmen in einem Knoten ist beliebig. Bei der Adressierung werden zunächst die komplexen Klemmen (Klemmen, die 1 oder mehrere Byte belegen) entsprechend ihrer physikalischen Reihenfolge hinter dem Feldbus-Controller berü cksichtigt. Diese belegen somit die Adressen ab Wort 0.
Im Anschluss daran folgen immer in Bytes zusammengefasst, die Daten der ü b- rigen Klemmen (Klemmen, die weniger als 1 Byte belegen). Dabei wird entsprechend der physikalischen Reihenfolge Byte fü r Byte mit diesen Daten aufgefü llt. Sobald ein ganzes Byte durch die bitorientierten Klemmen belegt ist, wird automatisch das nächste Byte begonnen.
Beachten
Die Anzahl der Einund Ausgangsbits bzw. –bytes der einzelnen angeschalteten Busklemmen entnehmen Sie bitte den entsprechenden Beschreibungen der Busklemmen.
Modulares I/O-System
ETHERNET TCP/IP
Feldbus-Controller 750-842 • 69
Datenaustausch
Beachten
Wenn ein Knoten geändert bzw. erweitert wird, kann sich daraus ein neuer Aufbau des Prozessabbildes ergeben. Damit ändern sich dann auch die Adressen der Prozessdaten. Bei einer Erweiterung sind die Prozessdaten aller vorherigen Klemmen zu berü cksichtigen.
Datenbreite • :RUW .DQDO
Analoge Eingangsklemmen
Analoge Ausgangsklemmen Eingangsklemmen fü r Thermoelemente Eingangsklemmen fü r Widerstandssensoren Pulsweiten Ausgangsklemmen Schnittstellenklemmen
Vor-/Rü ckwärtszähler
Busklemmen fü r Winkelund Wegmessung
Datenbreite = 1 Bit / Kanal
Digitale Eingangsklemmen
Digitale Ausgangsklemmen
Digitale Ausgangsklemmen mit Diagnose (2 Bit / Kanal)
Einspeiseklemmen mit Sicherungshalter / Diagnose
Solid State Lastrelais
Relaisausgangsklemmen
Tabelle 1.4: Datenbreite der Busklemmen
Adressbereich fü r die E-/A-Daten der Busklemmen:
Datenbreite Adresse
|
|
|
|
|
|
|
|
|
|
|
Bit |
0.0 ... |
0.8... |
1.0 ... |
1.8... |
..... |
254.0 ... |
254.8... |
255.0 ... |
255.8... |
|
|
0.7 |
0.15 |
1.7 |
1.15 |
|
254.7 |
254.15 |
255.7 |
255.15 |
|
Byte |
0 |
1 |
2 |
3 |
..... |
508 |
509 |
510 |
511 |
|
|
|
|
|
|
|
|
|
|
|
|
Word |
0 |
|
1 |
|
..... |
254 |
|
255 |
|
|
|
|
|
|
|
|
|
|
|
|
|
DWord |
0 |
|
|
|
..... |
127 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Tabelle 1.5: Adressbereich fü r die E-/A-Daten der Busklemmen
Adressbereich fü r die Feldbusdaten:
Datenbreite |
Adresse |
|
|
|
|
|
|
|
|
Bit |
256.0 |
256.8 |
257.0 |
257.8 |
..... |
510.0 |
510.8 |
511.0 |
511.8 |
|
... |
... |
... |
... |
|
... |
... |
... |
... |
|
256.7 |
256.15 |
257.7 |
257.15 |
|
510.7 |
510.15 |
511.7 |
511.15 |
Byte |
512 |
513 |
514 |
515 |
..... |
1020 |
1021 |
1022 |
1023 |
Word |
256 |
|
257 |
|
..... |
510 |
|
511 |
|
DWord |
128 |
|
|
|
..... |
255 |
|
|
|
Tabelle 1.6: Adressbereich fü r die Feldbusdaten
Adressbereich fü r Merker:
Datenbreite Adresse
|
|
|
|
|
|
|
|
|
|
|
Bit |
0.0 ... |
0.8... |
1.0... |
1.8... |
..... |
4094.0.. |
4094.8.. |
4095.0 ... |
4095.8... |
|
|
0.7 |
0.15 |
1.7 |
1.15 |
|
4094.7 |
4094.15 |
4095.7 |
4095.15 |
|
Byte |
0 |
1 |
2 |
3 |
..... |
8188 |
8189 |
8190 |
8191 |
|
|
|
|
|
|
|
|
|
|
|
|
Word |
0 |
|
1 |
|
..... |
4094 |
|
4095 |
|
|
|
|
|
|
|
|
|
|
|
|
|
DWord |
0 |
|
|
|
..... |
2047 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Tabelle 1.7: Adressbereich fü r Merker
Ab Adresse 0x1000 liegen die Registerfunktionen. Diese sind analog mit den implementierten MODBUS-Funktionscodes (read/write) ansprechbar.
Modulares I/O-System
ETHERNET TCP/IP
70 • Feldbus-Controller 750-842
Datenaustausch
Die direkte Darstellung einzelner Speicherzellen (absolute Adressen) nach IEC 1131-3 erfolgt mittels spezieller Zeichenketten:
|
Position |
|
Zeichen |
|
Benennung |
|
Kommentar |
|
|
1 |
|
% |
|
Leitet absolute Adresse ein |
|
|
|
|
2 |
|
I |
|
Eingang |
|
|
|
|
|
|
Q |
|
Ausgang |
|
|
|
|
|
|
|
|
|
|
||
|
|
|
M |
|
Merker |
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
3 |
|
X* |
|
Einzelbit |
|
Datenbreite |
|
|
|
|
B |
|
Byte (8 Bits) |
|
|
|
|
|
|
|
|
|
|
||
|
|
|
W |
|
Word (16 Bits) |
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
||
|
|
|
D |
|
Doppelword (32 Bits) |
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
4 |
|
|
|
Adresse |
|
|
|
|
|
|
|
|
|
|
|
|
* Das Kennzeichen ‘X’ für Bits kann entfallen
Tabelle 1.8: Absolute Adressen
Beachten
Die Zeichenketten der absoluten Adressen sind zusammenhängend, d. h. ohne Leerzeichen oder Sonderzeichen einzugeben!
Beispiel: Absolute Adressierung von Eingängen
%IX14 |
.15 |
.14 |
.13 |
.12 |
.11 |
.10 |
.9 |
.8 |
.7 |
|
.6 |
.5 |
.4 |
.3 |
.2 |
.1 |
.0 |
%IB29 |
|
|
%IB28 |
|
|
|
|
|
|
|
|||||||
%IW14 |
|
|
|
|
|
|
|
|
|
|
|
||||||
%IDW7 |
|
|
|
|
|
|
|
|
|
|
|
||||||
* Das Kennzeichen ‘X’ fü r Einzelbit kann entfallen
Tabelle 1.9: Beispiel für absolute Adressen von Eingängen
Adressen berechnen (in Abhängigkeit von der Wortadresse):
Bit-Adresse: |
Wortadresse .0 bis .15 |
Byte-Adresse: |
1. Byte: 2 x Wortadresse |
|
2. Byte: 2 x Wortadresse + 1 |
DWord-Adresse: |
|
|
Wortadresse (gerade Zahl) / 2 |
|
bzw. Wortadresse (ungerade Zahl) / 2, abgerundet |
Modulares I/O-System
ETHERNET TCP/IP
Feldbus-Controller 750-842 • 71
Datenaustausch
Der Datenaustausch zwischen MODBUS-Master und den Busklemmen erfolgt ü ber die in dem Controller implementierten MODBUS-Funktionen durch bitoder wortweises Lesen und Schreiben.
Im Controller gibt es 4 verschiedene Typen von Prozessdaten:
•Eingangsworte
•Ausgangsworte
•Eingangsbits
•Ausgangsbits
Der wortweise Zugriff auf die digitalen Einund Ausgangsklemmen erfolgt ent- sprechend der folgenden Tabelle:
Digitale Eingänge/ 16. 15. 14. 13. 12. 11. 10. 9. 8. 7. 6. 5. 4. 3. 2. 1.
Ausgänge
Prozessdatenwort
Byte
Bit |
Bit |
Bit |
Bit |
Bit |
Bit |
Bit |
Bit |
Bit |
Bit |
Bit |
Bit |
Bit |
Bit |
Bit |
Bit |
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
High-Byte |
|
|
|
|
|
|
Low-Byte |
|
|
|
|
|
|
||
D1 |
|
|
|
|
|
|
|
D0 |
|
|
|
|
|
|
|
Tabelle 1.10: Zuordnung digitale Ein-/Ausgänge zum Prozessdatenwort gemäß Intel-Format
Durch Hinzuaddieren von 0x0200 zu der MODBUS-Adresse kö nnen die Ausgänge zurü ckgelesen werden.
Die Registerfunktionen sind analog mit den implementierten MODBUSFunktionscodes (read/write) ansprechbar. Anstatt der Adresse eines Klemmenkanals wird dazu die jeweilige Register-Adresse angegeben.
MODBUS-Master |
||
0x000 |
0x000 |
|
|
(0x200) |
|
PAE |
PAA |
|
0x0FF |
0x0FF |
|
(0x2FF) |
||
|
||
Eingänge |
Ausgänge |
|
|
Busklemmen |
|
|
PAE = Prozessabbild |
|
|
der Eingänge |
|
|
PAA = Prozessabbild |
|
|
der Ausgänge |
|
Programmierbarer Feldbus-Controller
Abb. 3-25: Datenaustausch zwischen MODBUS-Master und Busklemmen |
g012929d |
Modulares I/O-System
ETHERNET TCP/IP