KARL, Harald (Wiesengrundstraße 10, Fürth, 90765, DE)
BAUMANN, Stefan (Wettersteinplatz 2, München, 81547, DE)
KARL, Harald (Wiesengrundstraße 10, Fürth, 90765, DE)
| Patentansprüche 1. Verfahren zur Datenübertragung innerhalb eines Automatisierungssystems (1), umfassend eine zentrale Verarbeitungs- einheit (2) mit mehreren Peripheriemodulen (6.1 bis 6.m) und eine Mehrzahl von mit der zentralen Verarbeitungseinheit (2) verbundenen dezentralen Peripherieeinheiten (3.1 bis 3.n) mit zugehörigen Peripheriemodulen (6.1 bis 6.m), dadurch gekennzeichnet, dass sendeseitig von der jeweiligen Peripherieeinheit (3.1 bis 3.n) und/oder der zentralen Verarbeitungseinheit (2) als Telegramm (DT) ein Prozessabbild von Eingängen und/oder Ausgängen der zugehörigen Peripheriemodule (6.1 bis 6.m) erzeugt und mittels einer zugehörigen frei programmierbaren Schaltungsanordnung (11) nach zumindest ei- ner der anderen Peripherieeinheiten (3.1 bis 3.n) bzw. der zentralen Verarbeitungseinheit (2) übertragen und empfangs- seitig mittels einer weiteren frei programmierbaren Schaltungsanordnung (11) der empfangenen Peripherieeinheit (3.1 bis 3.n) und/oder der empfangenen zentralen Verarbeitungsein- heit (2) empfangen und zur Aktualisierung des Prozessabbilds der Peripheriemodule (6.1 bis 6.m) verwendet wird. 2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass das oder die Telegramme (DT) se- riell und/oder bidirektional zwischen der jeweiligen Peripherieeinheit (3.1 bis 3.n) und der zentralen Verarbeitungseinheit (2) oder umgekehrt übertragen wird bzw. werden. 3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass als Prozessabbild zumindest das Abbild aller Eingänge und/oder Ausgänge aller Peripheriemodu¬ le (6.1 bis 6.m) der jeweiligen dezentralen Peripherieeinheit (3.1 bis 3.n) unabhängig von der Belegung der Eingänge bzw. der Ausgänge erzeugt und übertragen wird. 4. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass von jeder dezentralen Periphe¬ rieeinheit (3.1 bis 3.n) zyklisch das Abbild aller Eingänge und/oder Ausgänge der Peripheriemodule (6.1 bis 6.m) erzeugt und zumindest in einem Telegramm (DT) des Prozessabbilds übertragen wird. 5. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die dezentralen Peripherieeinheiten (3.1 bis 3.n) asynchron oder synchron die Telegramme (DT) übertragen. 6. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass ein von einer der dezentralen Peripherieeinheiten (3.1 bis 3.n) empfangenes Telegramm (DT) mit einem Prozessabbild der Abbilder sämtlicher Eingänge und/oder Ausgänge aller Peripheriemodule (6.1 bis 6.m) dieser Peripherieeinheit (3.1 bis 3.n) zur Aktualisierung des eige¬ nen Abbilds verwendet wird. 7. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass die Länge des jeweils übertrage- nen Prozessabbilds konstant, insbesondere 64 Byte lang ist. 8. Verfahren nach einem der vorhergehenden Ansprüche, dadurch gekennzeichnet, dass als Prozessabbild zusätzlich zu dem Abbild sämtlicher Eingänge und/oder Ausgänge der Periphe- riemodule (6.1 bis 6.m) einer jeweiligen Peripherieeinheit (3.1 bis 3.n) mindestens ein Datenelement mit einer vor¬ gegebenen Bytelänge vorgegeben, gelesen oder erzeugt und übertragen wird. 9. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass als Datenelemente Adressdaten, Kommunikationsdaten und/oder Prüfdaten vorgegeben, gelesen oder erzeugt werden bzw. wird. 10. Vorrichtung zur Datenübertragung innerhalb eines Automatisierungssystems (1), umfassend eine zentrale Verarbeitungs¬ einheit (2) mit mehreren Peripherieeinheiten (3.1 bis 3.n) und eine Mehrzahl von mit der zentralen Verarbeitungsein- heit (2) verbundenen dezentralen Peripherieeinheiten (3.1 bis 3.n) , dadurch gekennzeichnet, dass die Peripherieeinheiten (3.1 bis 3.n) und die zentrale Verarbeitungseinheit (2) jeweils eine zugehörige frei programmierbare Schaltungsanordnung (11) um¬ fassen, mittels welcher ein erzeugtes Telegramm (DT) eines Prozessabbilds von Eingängen und/oder Ausgängen von jeweils zugehörigen Peripheriemodulen (6.1 bis 6.m) nach zumindest einer der anderen Peripherieeinheiten (3.1 bis 3.n) bzw. der zentralen Verarbeitungseinheit (2) übertragbar ist. 11. Vorrichtung nach Anspruch 10, dadurch gekennzeichnet, dass die frei programmierbare Schal¬ tungsanordnung (11) eine Feldbusschnittstelle (13.1) und ei- nen Prozessabbildspeicher (14) umfasst, wobei Daten von zumindest einem empfangenen Telegramm (DT) in den Prozessabbildspeicher (14) hinterlegbar sind. 12. Vorrichtung nach Anspruch 11, dadurch gekennzeichnet, dass die Feldbusschnittstelle (13.1) und der Prozessabbildspeicher (14) mittels eines Telegrammprozessors (13) der frei programmierbaren Schaltungsanord¬ nung (11) mit einem Feldbusprozessor (10.1) eines Kommunika¬ tionsmoduls (10) verbunden sind. |
Verfahren und Vorrichtung zur Übertragung von Daten in einem AutomatisierungsSystem
Die Erfindung betrifft ein Verfahren und eine Vorrichtung zur Übertragung von Daten in einem Automatisierungssystem einer technischen Anlage, z. B. einer chemischen Anlage oder einer Kraftwerksanlage .
Übliche Architekturen von Automatisierungssystemen basieren auf dem Konzept einer zentralen Verarbeitungseinheit, d. h. Steuerungs- und/oder Regelungseinheit, und mindestens einer mit dieser verbundenen dezentralen Peripherieeinheit, z. B. so genannte Feldgeräte, wie Prozessoreinheiten, intelligente Prozesssensoren, wie Sensoreinheiten mit integrierter Prozessoreinheit, und/oder intelligente Prozessaktore, wie steuer ¬ bare Antriebe, Motoren, Ventile, etc. Einfache Sensoreinhei ¬ ten und/oder Aktore ohne eigene Prozessoreinheit sind übli- cherweise direkt an die dezentralen Prozessoreinheiten angebunden, welche dezentral und somit nahe der Sensoreinheiten bzw. Aktore angeordnet sind. Die dezentralen Prozessoreinhei ¬ ten und/oder die intelligenten Feldgeräte sind mit der zentralen Verarbeitungseinheit direkt über einen so genannten Feldbus, z. B. einem Profibus oder Profinet, verbunden.
Bei der Datenübertragung werden verschiedene Übertragungspro ¬ tokolle verwendet. Dabei wird ein Protokoll für die gerätein ¬ terne Datenübertragung und ein weiteres Protokoll für die ex- terne Datenübertragung über den Feldbus verwendet. Dies führt zu einem hohen Rechenaufwand und die Verwendung von leis ¬ tungsfähigen Prozessoren. Zudem sind die Konfiguration und die Projektierung eines Automatisierungssystems mit einer solchen Datenübertragung besonders aufwändig.
Der Erfindung liegt daher die Aufgabe zugrunde, ein Verfahren und eine Vorrichtung zur Übertragung von Daten innerhalb eines Automatisierungssystems anzugeben, bei welchen ohne auf- wändige Konfiguration eine Kommunikation innerhalb des Auto ¬ matisierungssystems zwischen deren verschiedenen Einheiten einfach und sicher ermöglicht ist. Die Aufgabe hinsichtlich des Verfahrens wird erfindungsgemäß durch die im Anspruch 1 angegebenen Merkmale gelöst. Hinsichtlich der Vorrichtung wird die Aufgabe erfindungsgemäß durch die im Anspruch 10 angegebenen Merkmale gelöst. Vorteilhafte Weiterbildungen der Erfindung sind Gegenstand der Unteransprüche.
Beim Verfahren zur Datenübertragung innerhalb eines Automatisierungssystems, umfassend eine zentrale Verarbeitungseinheit mit mehreren Peripheriemodulen und eine Mehrzahl von mit der zentralen Verarbeitungseinheit verbundenen dezentralen Peripherieeinheiten mit zugehörigen Peripheriemodulen, wird sen- deseitig von der jeweiligen Peripherieeinheit und/oder der zentralen Verarbeitungseinheit als Telegramm ein Prozessab- bild von Eingängen und/oder Ausgängen der zugehörigen Peripheriemodule erzeugt und nach zumindest einer der anderen Pe ¬ ripherieeinheiten bzw. der zentralen Verarbeitungseinheit mittels einer zugehörigen frei programmierbaren Schaltungsanordnung übertragen und empfangsseitig mittels einer weiteren frei programmierbaren Schaltungsanordnung empfangen und zur Aktualisierung des Prozessabbilds verwendet.
Das erfindungsgemäße Verfahren ermöglicht eine einheitliche Kommunikation sowohl für eine geräteinterne Kommunikation, d. h. innerhalb der zentralen Verarbeitungseinheit oder der dezentralen Peripherieeinheit, als auch für eine Kommunikati ¬ on über einen Feldbus, so dass kein Protokollwechsel beim Übergang auf einen Feldbus notwendig ist. Darüber hinaus ba ¬ siert die Kommunikation zwischen zentraler Verarbeitungsein- heit und dezentralen Peripherieeinheiten nur auf den Austausch eines Datenelements, nämlich des Prozessabbildes. Das Prozessabbild enthält entgegen der üblichen parallel arbei ¬ tenden Dienste in Feldbusprotokollen alle Datenelemente, wel- che für eine Kommunikation der zentralen Verarbeitungseinheit mit den lokalen oder verteilten, dezentralen Peripherieeinheiten notwendig sind. Mittels des erfindungsgemäßen Verfahrens ist die Kommunikati ¬ on zwischen den Peripherieeinheiten (auch I/O-Module genannt) und der zentralen Verarbeitungseinheit (auch CPU genannt) er ¬ heblich vereinfacht, da die Kommunikation nur über das Prozessabbild erfolgt. Ein herkömmliches Umkopieren und Umcodie- ren des Prozessabbildes beim Übergang von der zentralen Verarbeitungseinheit zum Feldbus und vom Feldbus zur Peripherie ¬ einheit entfällt, da alle für die Kommunikation erforderlichen Daten im übertragenen Prozessabbild enthalten sind.
Hierdurch ist der Aufwand für Konfiguration und Projektierung des Feldbusses besonders gering. Lediglich die Adressierung der Peripherieeinheit ist erforderlich.
In einer möglichen Ausführungsform wird bzw. werden das oder die Telegramme seriell und/oder bidirektional zwischen der jeweiligen Peripherieeinheit und der zentralen Verarbeitungs ¬ einheit oder umgekehrt übertragen.
Zweckmäßigerweise wird als Prozessabbild zumindest das Abbild aller Eingänge und/oder Ausgänge aller Peripheriemodule der jeweiligen dezentralen Peripherieeinheit unabhängig von der Belegung der Eingänge bzw. der Ausgänge erzeugt und übertra ¬ gen. Unter dem Abbild aller Eingänge und/oder Ausgänge aller Peripheriemodule werden insbesondere Prozesssignale, wie ana ¬ loge und/oder digitale Sensorsignale, Steuersignale und/oder andere zur Steuerung eines Anlagenprozesses und/oder eines
Anlagenteils erforderliche Eingangs- und/oder Ausgangssignale aller Peripheriemodule mindestens einer der Peripherieeinhei ¬ ten und/oder der zentralen Verarbeitungseinheit verstanden. Diese Abbilder der Eingänge und/oder Ausgänge mehrerer Peri- pheriemodule werden auch als Nutz- oder Betriebsdaten bezeichnet . In einer weiteren Ausführungsform wird von jeder dezentralen Peripherieeinheit zyklisch das Abbild der Eingänge und/oder Ausgänge der Peripheriemodule erzeugt und zumindest in einem Telegramm des Prozessabbilds übertragen.
Weiterhin können die dezentralen Peripherieeinheiten die Telegramme asynchron oder synchron übertragen.
Eine einfache Weiterbildung der Erfindung sieht vor, dass ein von einer der dezentralen Peripherieeinheiten empfangenes Telegramm des Prozessabbilds mit einem Abbild sämtlicher Ein ¬ gänge und/oder Ausgänge aller Peripheriemodule dieser Peri ¬ pherieeinheit zur Aktualisierung des eigenen Abbilds der Eingänge bzw. Ausgänge verwendet wird.
In einer möglichen Ausführungsform ist die Länge des jeweils übertragenen Prozessabbilds konstant, insbesondere 64 Byte lang . Für ein weitgehend einheitliches Kommunikationsmodell oder
Kommunikationsprotokoll wird als Prozessabbild zusätzlich zu dem Abbild sämtlicher Eingänge und/oder Ausgänge der Periphe ¬ riemodule einer jeweiligen Peripherieeinheit mindestens ein Datenelement mit einer vorgegebenen Bytelänge vorgegeben, ge- lesen oder erzeugt und übertragen. Dabei werden als Datenele ¬ mente Adressdaten, wie ein Modulkode, Kommunikationsdaten, wie Protokollkode, ein Befehlskode, ein Antwortkode und/oder Prüfdaten, wie eine Prüfsumme, vorgegeben, gelesen oder erzeugt .
Das als Telegramm zu übertragene Prozessabbild wird vorzugs ¬ weise mit folgenden vorgegebenen Datenelementen erzeugt:
Nutz- oder Betriebsdaten, diese Klasse enthält das Ab- bild der Eingänge und/oder Ausgänge der Peripheriemodu ¬ le, d. h. alle für den Betrieb notwendigen Informationen inkl. von Prozesssignalen, Parametern und/oder Alarmmeldungen ; Adressdaten, wie topologische Informationen, die Angaben für das Ziel oder die Quelle des Prozessabbilds enthal ¬ ten;
Kommunikationsdaten, z. B. Daten, die Informationen über die Dynamisierung enthalten, welche es dem Endpunkt der Kommunikation ermöglicht, autark zu entscheiden, ob es sich bei dem Prozessabbild um eine statische Kopie (ein ¬ gefroren) handelt und der andere Endpunkt noch arbeitet (Lebenszeichen) ;
Prüfdaten, z. B. Daten, die Informationen über die Sicherung der Kommunikation oder Übertragung enthalten, z. B. dass das Prozessabbild fehlerfrei übertragen wurde (Prüfsumme) .
Hinsichtlich der Vorrichtung zur Datenübertragung innerhalb eines Automatisierungssystems, umfassend eine zentrale Verar ¬ beitungseinheit mit mehreren Peripherieeinheiten und eine Mehrzahl von mit der zentralen Verarbeitungseinheit verbunde ¬ nen dezentralen Peripherieeinheiten, weisen die Peripherieeinheiten und die zentrale Verarbeitungseinheit jeweils eine zugehörige frei programmierbare Schaltungsanordnung auf, mit ¬ tels welcher ein erzeugtes Telegramm eines Prozessabbilds von Eingängen und/oder Ausgängen von jeweils zugehörigen Peripheriemodulen nach zumindest einer der anderen Peripherieeinheiten bzw. der zentralen Verarbeitungseinheit übertragbar und somit zwischen diesen austauschbar ist.
In einer möglichen Ausführungsform umfasst die frei programmierbare Schaltungsanordnung eine Feldbusschnittstelle und einen Prozessabbildspeicher, wobei Daten von zumindest einem empfangenen Telegramm in den Prozessabbildspeicher hinterleg bar sind.
Zweckmäßigerweise sind die Feldbusschnittstelle und der Pro ¬ zessabbildspeicher mittels eines Telegrammprozessors der frei programmierbaren Schaltungsanordnung mit einem Feldbusprozes- sor eines Kommunikationsmoduls verbunden. Hierdurch ist ein einheitliches Kommunikationsmodell sowohl für den gerätein ¬ ternen Datenverkehr als auch den externen Datenverkehr über den Feldbus sichergestellt.
Ausführungsbeispiele der Erfindung werden anhand von Zeichnungen näher erläutert. Dabei zeigen:
FIG 1 schematisch ein Blockschaltbild einer zentralen
Verarbeitungseinheit eines Automatisierungssystems, FIG 2 schematisch ein Blockschaltbild eines Automatisie ¬ rungssystems mit einer zentralen Verarbeitungseinheit, die über einen Feldbus mit einer Mehrzahl von dezentralen Peripherieeinheiten koppelbar ist, FIG 3 schematisch ein Blockschaltbild mehrerer dezentra ¬ ler Peripherieeinheit, die an einen Feldbus gekop ¬ pelt sind, und
FIG 4 schematisch ein Blockschaltbild einer frei programmierbaren Schaltungsanordnung.
Einander entsprechende Teile sind in allen Figuren mit den gleichen Bezugszeichen versehen.
Figur 1 zeigt schematisch ein Blockschaltbild eines Automati- sierungssystems 1 mit einer zentralen Verarbeitungseinheit 2. Figur 2 zeigt im Detail schematisch eine mögliche Ausführungsform der zentralen Verarbeitungseinheit 2.
Bei dem Automatisierungssystem 1 kann es sich um eine automa- tische Steuerung, insbesondere eine so genannte SPS- oder
CNC-Steuerung von Prozessen, Anlagenteilen und Maschinen einer technischen Anlage handeln.
Das Automatisierungssystem 1 umfasst dabei die zentrale Ver- arbeitungseinheit 2, die mit entfernt von dieser angeordneten dezentralen Verarbeitungs- oder Peripherieeinheiten 3.1 bis 3.n (im Folgenden zur besseren Übersichtlichkeit Peripherie ¬ einheit genannt) koppelbar sind. Zur Kopplung der zentralen Verarbeitungseinheit 2 mit den dezentralen Peripherieeinheiten 3.1 bis 3.n umfasst das Automatisierungssystem 1 einen Feldbus 4. Der Feldbus 4 ist anstelle eines Profibusses oder eines Profinet als ein standardi- siertes Datennetz, insbesondere Ethernet-Bus , RS485-Datennetz oder einen CAN-Bus, ausgebildet.
Die zentrale Verarbeitungseinheit 2 umfasst eine Prozessor ¬ einheit 5, auch Applikations- oder Anwendungsprozessor ge- nannt, in welchem verschiedene Steuerungs- und/oder Rege ¬ lungsalgorithmen zur Steuerung bzw. Regelung der Anlage implementiert sind.
Die Peripherieeinheiten 3.1 bis 3.n und die zentrale Verar- beitungseinheit 2 umfassen jeweils eine Anzahl von Periphe ¬ riemodulen 6.1 bis 6.m zur Anbindung von Feldgeräten 7, z. B. Aktoren, Sensoren und/oder Anlagenteilen und -komponenten . Jedes Peripheriemodul 6.1 bis 6.m umfasst einen zugehörigen Modulprozessor 8.1 bis 8.m zur Ansteuerung der Feldgeräte 7. Mit anderen Worten: Eine der Anzahl von Peripheriemodulen 6.1 bis 6.m entsprechende Anzahl von Modulprozessoren 8.1 bis 8.m ist zur Ansteuerung der Feldgeräte 7 vorgesehen.
Dabei können die Modulprozessoren 8.1 bis 8.m integraler Teil der Peripheriemodule 6.1 bis 6.m (Figuren 2, 3) oder als se ¬ parate Baueinheiten Bestandteil der Peripherieeinheit 3.1 bis 3.n (Figur 1) sein.
Dabei dient die jeweilige Peripherieeinheit 3.1 bis 3.n ins- besondere der Gruppierung mehrerer Peripheriemodule 6.1 bis 6.m und Zuordnung dieser zu einer Busschnittstelle für den Feldbus 4 an die zentrale Verarbeitungseinheit 2, wodurch mehrere Peripheriemodule 6.1 bis 6.m sich eine aufwändige und kostenintensive Busschnittstelle teilen.
Die Peripheriemodule 6.1 bis 6.m (auch als I/O-Module be ¬ zeichnet) mit den zugehörigen, insbesondere integrierten Mo ¬ dulprozessoren 8.1 bis 8.m sind üblicherweise jeweils mittels einer internen elektrischen Verbindung 9 mit anderen Peripheriemodulen 6.1 bis 6.m und/oder bezogen auf die zentrale Verarbeitungseinheit 2 mit der Prozessoreinheit 5 gekoppelt. Bei der internen elektrischen Verbindung 9 handelt es sich um ei- nen so genannten spezifischen elektrischen Rückwandbus, der an die jeweilige Anwendung und Funktion der stationären, mo- dularen Peripherieeinheit 3.1 bis 3.n und der zentralen Ver ¬ arbeitungseinheit 2 angepasst ist. Über den Rückwandbus, d. h. die elektrische Verbindung 9, z. B. eine Punkt-zu-Punkt- Verbindung, findet der Datenaustausch zwischen den Modulprozessoren 8.1 bis 8.m und/oder den Peripheriemodulen 6.1 bis 6.m statt. Darüber hinaus werden die Peripheriemodule 6.1 bis 6.m über die elektrische Verbindung 9 mit Strom versorgt. So ¬ mit sind die Komponenten der dezentralen Peripherieein- heit 3.1 bis 3.n beispielsweise bei einer Anordnung in einem Einschubmodul oder einem Einbauschrank intern über die rückseitig angeordnete elektrische Verbindung 9 miteinander ver ¬ bunden . Alternativ oder zusätzlich zur elektrischen Verbindung 9 kann diese intern drahtlos ausgebildet sein. Beispielsweise können die Komponenten über eine Funkverbindung, insbesondere eine standardisierte und offene Funkverbindung, wie Bluetooth-, Zigbee- oder Z-Wave-Standard, gekoppelt sein.
Über die rückwandige elektrische Verbindung 9 sind die Peri ¬ pheriemodule 6.1 bis 6.m und die Modulprozessoren 8.1 bis 8.m als eine Einheit in der modularen Peripherieeinheit 3.1 bis 3.n bzw. in der zentralen Verarbeitungseinheit 2 integriert.
Für eine übergeordnete und externe Verbindung der Peripherie ¬ einheiten 3.1 bis 3.n untereinander und/oder mit der zentralen Verarbeitungseinheit 2 über den Feldbus 4 umfassen diese, d. h. jede Peripherieeinheit 3.1 bis 3.n und die zentrale Verarbeitungseinheit 2, jeweils ein zugehöriges Kommunikati ¬ onsmodul 10 (auch Feldprozessor oder Kommunikationsprozessor genannt) . Für ein einheitliches Kommunikationsmodell sowohl für die ge ¬ räteinterne Kommunikation als auch die externe Kommunikation über den Feldbus 4 umfasst die zentrale Verarbeitungsein ¬ heit 2 und jede Peripherieeinheit 3.1 bis 3.n eine zugehörige frei programmierbare Schaltungsanordnung 11 (auch kurz FPGA (field programmable application) ) . Mittels der frei program ¬ mierbaren Schaltungsanordnung 11 wird als Telegramm DT ein Prozessabbild aller Eingänge und/oder Ausgänge der zugehöri ¬ gen Peripheriemodule 6.1 bis 6.m erzeugt oder gelesen und übertragen .
Dabei umfasst das Prozessabbild des jeweiligen Telegramms DT als Datenelemente Nutz- oder Betriebsdaten, Adressdaten, Kommunikationsdaten und/oder Prüfdaten.
Im Detail wird das Telegramm DT beispielsweise mit den fol ¬ genden vier Datenelementen (auch Datenklassen genannt) erzeugt :
Nutz- oder Betriebsdaten, diese Klasse enthält bevorzugt die Abbilder sämtlicher Eingänge und/oder Ausgänge aller Peripheriemodule 6.1 bis 6.m, d. h. alle für den Betrieb notwendigen Informationen einschließlich Prozesssignalen, Parametern und/oder Alarmmeldungen;
Adressdaten, wie topologische Informationen, die Angaben für das Ziel oder die Quelle des Prozessabbilds enthal ¬ ten;
Kommunikationsdaten, z. B. Daten, die Informationen über die Dynamisierung enthalten, welche es dem Endpunkt der Kommunikation ermöglicht, autark zu entscheiden, ob es sich bei dem Prozessabbild um eine statische Kopie (ein ¬ gefroren) handelt und der andere Endpunkt noch arbeitet (Lebenszeichen) ;
Prüfdaten, z. B. Daten, die Informationen über die Sicherung der Kommunikation oder Übertragung enthalten, z. B. dass das Prozessabbild fehlerfrei übertragen wurde (Prüfsumme) .
Das alle Datenelemente des Prozessabbilds umfassende Tele- gramm DT wird zwischen der Prozessoreinheit 5 und den jewei ¬ ligen Modulprozessoren 8.1 bis 8.m der zentralen Verarbeitungseinheit 2 und/oder der dezentralen Peripherieeinhei ¬ ten 3.1 bis 3.n mittels der Schaltungsanordnungen 11 über den jeweiligen Datenbus 12 und den Feldbus 4 übertragen und aus- getauscht. Der jeweilige Modulprozessor 8.1 bis 8.m extra ¬ hiert nach vorheriger Integritätsprüfung von Prüf- und Adressdaten aus dem empfangenen Prozessabbild die empfangenen Nutzdaten, d. h. das Abbild aller Ein- und/oder Ausgänge des zugeordneten Peripheriemoduls 6.1 bis 6.m, und aktualisiert und/oder steuert die Eingänge bzw. Ausgänge des zugeordneten Peripheriemoduls 6.1 bis 6.m entsprechend.
Die Schaltungsanordnung 11 wird auf der Basis einer so genannten frei programmierbaren, integrierten Schaltung (FPGA = field programmable gate array) realisiert. Eine solche als integrierte Schaltung aufgebaute Schaltungsanordnung 11 bietet aufgrund der Möglichkeit eines verschlüsselten Bitstroms für die Konfiguration und seiner zentralen Bedeutung für das Automatisierungssystem 1 auch einen wirksamen Schutz gegen den Nachbau in Plagiaten. Die Schaltungsanordnung 11 kann aber auch in einer anderen Art und Weise als elektronische Schaltung aufgebaut sein.
Die Prozessoreinheit 5 der zentralen Verarbeitungseinheit 2 ist über einen internen Datenbus 12 sowohl mit dem Kommunikationsmodul 10 als auch mit der frei programmierbaren Schal ¬ tungsanordnung 11 verbunden. Dabei ist die Prozessoreinheit 5 über die freiprogrammierbare Schaltungsanordnung 11 und den internen Datenbus 12 an das Kommunikationsmodul 10 und den Feldbus 4 gekoppelt. Somit ist eine Kommunikation zwischen Prozessoreinheit 5 und dezentraler Peripherie über die frei programmierbare Schaltungsanordnung 11 über das vorgegebene Telegramm DT und somit eine vorgegebene, standardisierte Form mittels des erzeugten Prozessabbildes sichergestellt.
Die Kommunikation der zentralen Verarbeitungseinheit 2 mit den Peripheriemodulen 6.1 bis 6.m erfolgt über eine serielle Kommunikationsverbindung. Das Kommunikationsmodul 10, insbe ¬ sondere ein Feldbusprozessor 10.1 dieses greift über eine pa ¬ rallele Speicherschnittstelle des internen Datenbusses 12 auf das Prozessabbild zu, wie in Figuren 2 und 3 dargestellt.
Figur 3 zeigt schematisch ein Blockschaltbild mehrerer dezentraler Peripherieeinheiten 3.1 bis 3.n, die an den Feldbus 4 gekoppelt sind. Dabei beträgt die Entfernung der Peripherie ¬ einheiten 3.1 bis 3.n untereinander und/oder zur zentralen Verarbeitungseinheit 2 beispielsweise 1000 m oder mehr.
Die jeweils zugehörige frei programmierbare Schaltungsanord ¬ nung 11 ist mittels des internen Datenbusses 12 mit dem Kom ¬ munikationsmodul 10, insbesondere dem Feldbusprozessor 10.1 und mittels der elektrischen Verbindung 9 (Figuren 2, 3) oder über den internen Datenbus 12 (Figur 1) mit den Modulprozessoren 8.1 bis 8.m der Peripheriemodule 6.1 bis 6.m und der Prozessoreinheit 5 verbunden, wobei die Telegramme DT in Form der Prozessabbilder der Ein- und/oder Ausgänge der zugehöri- gen Peripheriemodule 6.1 bis 6.m übertragen und ausgetauscht werden. Hierdurch ist eine einheitliche Kommunikation von Prozessor zu Prozessor, d. h. von Modulprozessoren 8.1 bis 8.m einer der dezentralen Peripherieeinheiten 3.1 bis 3.n und/oder der zentralen Verarbeitungseinheit 2 zu Modulprozes- soren 8.1 bis 8.m anderer Einheiten und/oder zur Prozessoreinheit 5 der zentralen Verarbeitungseinheit 2 ermöglicht.
Figur 4 zeigt schematisch eine mögliche Ausführungsform einer frei programmierbaren Schaltungsanordnung 11, wie sie in ei- ner der Peripherieeinheiten 3.1 bis 3.n und/oder der zentralen Verarbeitungseinheit 2 integriert ist. Die frei programmierbare Schaltungsanordnung 11 umfasst einen Telegrammprozessor 13, der über eine Feldbusschnittstel ¬ le 13.1 mit dem Feldbus 4 verbunden ist. Mittels des Tele ¬ grammprozessors 13 werden empfangene Telegramme DT geprüft. Empfangsseitig wird mittels entsprechender Prozessormodu ¬ le 13.2 bis 13.5 geprüft, ob das empfangene Telegramm DT ein Feldbustelegramm ist, welches IP-Eigenschaften aufweist. Handelt es sich bei dem Telegramm DT um ein Feldbustelegramm, so werden die empfangenen Daten, d. h. das empfangene Prozessab- bild der Ein- und/oder Ausgänge der Peripheriemodule 6.1 bis 6.m, in einen Prozessabbildspeicher 14 hinterlegt. Das heißt, die dort hinterlegten Prozessabbilder werden aktualisiert, beispielsweise überschrieben. Bei den Prozessormodulen 13.2 bis 13.5 handelt es sich um implementierte Algorithmen, wel- che unter anderem den IP-frame, den Port und/oder die Prozessabbilder aus dem empfangenen Telegramm DT selektieren, überprüfen und weiterleiten.
In Senderichtung umfasst der Telegrammprozessor 13 die Pro- zessormodule 13.6 bis 13.8, anhand welcher das aktuelle Pro ¬ zessabbild der Ein- und Ausgänge der Peripheriemodule 6.1 bis 6.m aus dem Prozessabbildspeicher 14 ausgelesen und codiert als ein zu sendendes Telegramm DT erzeugt wird. Dabei kann das Telegramm DT zusätzlich mit Daten aus dem Feldbusprozes- sor 10.1 des Kommunikationsmoduls 10 zur Definition der Da ¬ tenübertragung versehen werden.
Im Betrieb des Automatisierungssystems 1 werden Telegramme DT zwischen den Peripherieeinheiten 3.1 bis 3.n und/oder der zentralen Verarbeitungseinheit 2 über den Feldbus 4 seriell und/oder bidirektional übertragen. Dabei erfolgt die Übertra ¬ gung bevorzugt zyklisch. Alternativ oder zusätzlich kann die Übertragung der Telegramme DT ereignisgesteuert erfolgen. Das oder die Telegramme DT sind derart vereinheitlicht und werden somit derart standardisiert anhand des Prozessabbilds erzeugt, dass diese zumindest das Abbild aller Eingänge und aller Ausgänge aller Peripheriemodule 6.1 bis 6.m der jewei- ligen Peripherieeinheit 3.1 bis 3.n und/oder der zentralen Verarbeitungseinheit 2 als Nutz- oder Betriebsdaten umfassen.
Hierdurch entfällt ein Umkopieren oder Umkodieren von Daten beim Übergang von der Prozessoreinheit 5 und/oder den Modulprozessoren 8.1 bis 8.m zum Feldbus 4 oder umgekehrt. Somit reduziert sich der Datenverkehr auf dem Feldbus 4 auf die Übertragung der Prozessabbilder in den Telegrammen DT. Die Telegramme DT können zusätzlich zu dem jeweiligen Prozessabbild mit den Nutzdaten weitere Datenelemente wie Ad ¬ ressdaten, Kommunikationsdaten, Prüfdaten, Protokolldaten für die betreffende Kommunikation umfassen. Damit ist eine siche ¬ re Kommunikation möglich, welche Fehler auf dem Übertragungs- medium, d. h. den Feldbus 4, und/oder in den Prozessabbildern identifiziert und bei identifiziertem Fehler eine Fehlerbehe ¬ bung ermöglicht.
Die Prozessoreinheit 5 und/oder die Modulprozessoren 8.1 bis 8.m kommunizieren dabei mit den jeweils zugehörigen Peripheriemodulen 6.1 bis 6.m (= I/O-Modulen) nur über das Prozessabbild des Telegramms DT. Das Prozessabbild wird mittels der Schaltungsanordnung 11 (= FPGA) als Telegramm DT aufbereitet und erlaubt der Prozessoreinheit 5 bzw. den Modulprozesso- ren 8.1 bis 8.m einen Zugriff auf die Peripherie über einen standardisierten und einheitlichen Speicherzugriff.
Für die Prozessoreinheit 5 und/oder die Modulprozessoren 8.1 bis 8.m ist der Zugriff auf die Peripheriemodule 6.1 bis 6.m im eigenen Zentralgerät oder auf die Peripheriemodule 6.1 bis 6.m in den dezentralen Peripherieeinheiten 3.1 bis 3.n somit identisch und transparent.
Die Schaltungsanordnung 11 der jeweiligen dezentralen Peri- pherieeinheit 3.1 bis 3.n empfängt die Telegramme DT von der Schaltungsanordnung 11 der zentralen Verarbeitungseinheit 2 und/oder einer der anderen Peripherieeinheiten 3.1 bis 3.n und schreibt die Daten der Telegramme DT, d. h. das Prozess- abbild in den Prozessabbildspeicher 14. Parallel sendet die Schaltungsanordnung 11 das Prozessabbild in die Gegenrichtung als Telegramme DT zur zentralen Verarbeitungseinheit 2 und/oder andere Peripherieeinheiten 3.1 bis 3.n. Auch dort wird mittels der Schaltungsanordnung 11 im Prozessabbildspei ¬ cher 14 jeweils das Prozessabbild der Ein- und Ausgänge der Peripheriemodule 6.1 bis 6.m aktualisiert.
Dabei werden die Daten von der sendenden Einheit, z. B. der Prozessoreinheit 5 der zentralen Verarbeitungseinheit 2 und/oder einem der Modulprozessoren 8.1 bis 8.m einer der Peripherieeinheiten 3.1 bis 3.n und/oder der zentralen Verarbeitungseinheit 2, sicher verpackt und erst von der empfange ¬ nen Einheit, der Prozessoreinheit 5 bzw. einem der Modulpro- zessoren 8.1 bis 8.m wieder entpackt und geprüft. Dadurch ist die gesamte Übertragungskette von einem Prozessor zum anderen Prozessor über die Kommunikationsmodule 10 und den Feldbus 4 als eine Einheit oder ein Kanal zu betrachten, an welche kei ¬ ne Anforderungen an funktionale Sicherheit gestellt werden müssen.
In einer einfachen Ausführungsform ist vorgesehen, dass die Peripherieeinheiten 3.1 bis 3.n derart behandelt werden, dass alle Peripheriemodule 6.1 bis 6.m verwendet werden. D. h. beim Datenaustausch zwischen den Peripherieeinheiten 3.1 bis 3.n und/oder der zentralen Verarbeitungseinheit 2 werden im Prozessabbild das Abbild aller Eingänge und Ausgänge aller Peripheriemodule 6.1 bis 6.m jeweils einer Einheit, der zent ¬ ralen Verarbeitungseinheit 2 oder einer der Peripherieeinhei- ten 3.1 bis 3.n, als Nutzdaten übertragen.
Zur einheitlichen Ausführung und vereinheitlichten Kommunikation und somit zur Reduzierung des Konfigurationsaufwandes der Kommunikation des Feldbusses 4 und der Komponenten des Automatisierungssystems 1 sind die Peripherieeinheiten 3.1 bis 3.n und die zentrale Verarbeitungseinheit 2 jeweils mit sechs Peripheriemodulen 6.1 bis 6.m ausgeführt. Hierdurch weisen die zu übertragenden Telegramme DT die gleiche Länge auf, wobei aufgrund der vorgegebenen Anzahl von sechs Peripheriemodulen 6.1 bis 6.6 die Größe des Prozessabbildes im Telegramm DT identisch ist. Für eine insbesondere im gleichen Umfang und zeitlich kontinuierlich wiederkehrende Kommunikation wird stets im Prozess ¬ abbild das gesamte Abbild aller Ein- und Ausgänge aller Peri ¬ pheriemodule 6.1 bis 6.6 der jeweiligen Einheit übertragen, unabhängig davon, ob alle Ein- und Ausgänge belegt sind.
Zweckmäßigerweise wird das jeweilige Prozessabbild aller Ein ¬ heiten, d. h. der Peripherieeinheiten 3.1 bis 3.n und der zentralen Verarbeitungseinheit 2, zyklisch, z. B. mit einem Takt von 1,25 KHz (und somit alle 800 ys) , übertragen. Da- durch ergibt sich für Daten der dezentralen Peripherieeinheiten 3.1 bis 3.n eine Verzögerung im Bereich einiger ms, abhängig von der topologischen Position im Feldbus 4, gegenüber Daten von den internen Peripheriemodulen 6.1 bis 6.m. Eine weitere Ausführungsform sieht je Peripherieeinheit 3.1 bis 3.n eine maximale Anzahl von 12 Peripheriemodulen 6.1 bis 6.m für eine Vereinheitlichung und Standardisierung der Kommunikation vor. Dadurch ergibt sich eine Größe des Prozessab ¬ bilds von beispielsweise 768 Bytes pro Peripherieeinheit 3.1 bis 3.n. Bei maximal sechs Peripheriemodulen 6.1 bis 6.6 je Peripherieeinheit 3.1 bis 3.n ergibt sich eine Gesamtgröße des Prozessabbilds von beispielsweise 4608 Bytes. Der Aus ¬ tausch des Prozessabbilds von 4608 Bytes alle 800 ys führt dabei zu einer benötigten Bandbreite des Feldbusses 4 von 5,76 MByte/s, also 46,08 Mbit/s in Sende- und Empfangsrich ¬ tung. Mit einer Kommunikationstoleranz von ca. 10 % ergibt sich eine Netzwerkbandbreite von ca. 51 Mbit/s.
Durch die Verwendung von konstanter Größe des Prozessabbilds und konstanter Zykluszeit ist die Realisierung auf der Basis des Feldbusses 4, z. B. Ethernet/IP/UDP, einfach möglich und in der frei programmierbaren Schaltungsanordnung 11 realisierbar . Im Prozessabbild des Telegramms DT des Feldbusprotokolls wer ¬ den dabei alle Daten eines Gerätes, d. h. der zentralen Verarbeitungseinheit 2 oder der dezentralen Peripherieeinhei ¬ ten 3.1 bis 3.n, in einem Protokoll übertragen. Dadurch ist die Synchronität der Peripheriemodule 6.1 bis 6.m innerhalb einer Peripherieeinheit 3.1 bis 3.n sichergestellt.
Für den Fall, dass keine Synchronisierung der Teilnehmer des Feldbusses 4 untereinander stattfindet, kann keine konstante Verzögerungszeit untereinander sichergestellt werden. Optio ¬ nal kann das Feldbusprotokoll dahingehend erweitert werden, dass alle Feldbusteilnehmer auf einige ys untereinander synchronisiert sind. Das Feldbusprotokoll stellt nur sicher, dass von jedem Feldbusteilnehmer zyklisch ein Telegramm DT gesendet wird. Das Senden und Empfangen der Telegramme DT an der zentralen Verarbeitungseinheit 2 wird durch die frei programmierbare Schaltungsanordnung 11 und so ¬ mit ohne Belastung der Prozessoreinheit 5 durchgeführt.
Die Kommunikationsverbindungen werden dabei zwischen der Prozessoreinheit 5 und/oder den Modulprozessoren 8.1 bis 8.m auf der zentralen Verarbeitungseinheit 2 und den Modulprozesso ¬ ren 8.1 bis 8.m auf den Peripherieeinheiten 3.1 bis 3.n aufgebaut. Zwischen diesen Prozessoren ist erfindungsgemäß eine zustandsbasierte Kommunikation über das Prozessabbild (nicht den Feldbus) definiert. Das Feldbusprotokoll stellt nur eine Tunnelung dieser Kommunikation dar.
Die Übertragung basiert beispielsweise auf einem herkömmli ¬ chen priorisierten Ethernet-Telegramm und IP/UDP. Jedes der dezentralen Peripherieeinheiten 3.1 bis 3.n erhält eine lo- kal, z. B. mittels eines Codierschalters oder DIP-Schalters, einstellbare Teilnehmernummer von 1 bis z. Die zentrale Ver ¬ arbeitungseinheit 2 hat immer die Teilnehmernummer 0. Der Aufbau des Feldbusprotokolls und somit des zu erzeugenden Telegramms DT ist herkömmlich und weist aufgrund der Verein ¬ heitlichung eine konstante Länge auf und besteht aus einem Telegrammkopf oder Header und 12 Protokollelementen für das jeweilige Prozessabbild (z. B. FBP PAO bis FBP PA11).
Der Telegrammkopf ist optional und kann beispielsweise für eine Erweiterung vorgesehen sein. Anderenfalls wird der Telegrammkopf mit 0 vorbelegt. Alle Feldbusteilnehmer (zentrale Verarbeitungseinheit 2 und dezentrale Peripherieeinheiten 3.1 bis 3.n) senden mit ihrem lokalen Takt ihre Feldbustelegramme oder Telegramme DT (mit den darin enthaltenen Prozessabbil ¬ dern) auf den Feldbus 4. Das Senden der einzelnen Teilnehmer ist dabei nicht synchronisiert, es ist lediglich sicherge- stellt, dass alle Feldbusteilnehmer in einem konstanten Zyklus senden.
Das Senden der Telegramme DT wird von dem Telegrammprozes ¬ sor 13 der Schaltungsanordnung 11 automatisch und zyklisch durchgeführt.
Der maximale dabei auftretende Zyklus ist 800 ys, es sind je ¬ doch auch längere Zykluszeiten möglich. Es muss lediglich beachtet werden, dass innerhalb der Überwachungszeit der End- punkte (Prozessoreinheit 5 und Modulprozessoren 8.1 bis 8.m) Telegramme DT ausgetauscht werden.
Bei Ausführung des Feldbusses 4 als Ethernet-Bus werden allen Teilnehmern in herkömmlicher Art und Weise Kommunikations- adressen, z. B. MAC-Adressen in der Produktion oder IP- Adressen während der Kommunikation, zugewiesen.
Die Applikationssoftware auf dem jeweiligen Feldbusprozes ¬ sor 10.1 des Kommunikationsmoduls 10 führt während des zykli- sehen Betriebs nur eine Überwachung des Datenverkehrs am
Feldbus 4 durch. Die Applikation ist für die Bearbeitung des Protokollverkehrs am Feldbus 4 zuständig, welcher nicht zyk ¬ lisch ausgeführt und adressiert wird. Dieser nichtzyklische Datenaustausch kann die nachfolgenden Funktionen umfassen:
ARP, Auflösung der IP-Adresse zu einer Ethernetadresse beim erstmaligen Ansprechen der IP-Adresse.
Zentrale Basis der Kommunikation ist das Prozessabbild, wel ¬ ches bidirektional - zwischen der Prozessoreinheit 5 und/oder den Modulpro ¬ zessoren 8.1 bis 8.m (Richtung A2M) und zwischen den Modulprozessoren 8.1 bis 8.m und der Prozessoreinheit 5 (Richtung M2A) ausgetauscht wird. Das Prozessabbild bildet das Protokoll für die Kommunikation zwischen zwei Prozessoren. Wie bereits oben beschrieben, überträgt das Prozessabbild nicht nur die zykli ¬ sche Nutzdateninformation zwischen den beiden Prozessoren, sondern auch noch weitere Protokollbestandteile.
Hierzu wird das Telegramm DT entsprechend verlängert. Der Te ¬ legrammprozessor 13 sorgt für das automatische Senden und Empfangen auf dem Feldbus 4 und aktualisiert das Prozessab- bild automatisch. Die Paket- oder Telegerammverarbeitung erfolgt mittels der Schaltungsanordnung 11, da aufgrund der hohen Datenrate von bis zu 50 Mbit/s in jede Übertragungsrich ¬ tung die Realisierung in einem Mikroprozessor zu aufwändig wäre .
Die Kommunikation zu den Modulprozessoren 8.1 bis 8.m in der jeweiligen Peripherieeinheit 3.1 bis 3.n erfolgt mittels se ¬ rieller Verbindungen, z. B. den Datenbus 12. Das Senden und Empfangen auf diesen Verbindungen wird ebenfalls autark durch die Schaltungsanordnung 11 realisiert. Durch die Implementie ¬ rung der Sende- und Empfangsalgorithmen in der Schaltungsanordnung 11 wird die Prozessoreinheit 5 der zentralen Verarbeitungseinheit 2 signifikant von zeitaufwändigen Routinetä- tigkeiten für die Kommunikation entlastet und kann komfortabel und in einfacher Art und Weise auf eine Speicherschnitt ¬ stelle mit den aufbereiteten Daten des Prozessabbildes zu ¬ rückgreifen .
Die Schaltungsanordnung 11 wird sowohl in der zentralen Verarbeitungseinheit 2 als auch von den Peripherieeinheiten 3.1 bis 3.n identisch verwendet. Das Konzept des Prozessabbilds wird auch bei leistungsfähigen Automatisierungssystemen 1 und Feldbussen 4, wie SPS-Steuerungen und Ethernet-Bus , einge ¬ setzt .
Das Auslesen des Prozessabbilds erfolgt mit einem vorgegebe ¬ nen Abtasttakt, z. B. alle 100 ys . Der Austausch des Prozess- abbilds zwischen den Teilnehmern im Feldbus 4 erfolgt zyklisch mit einem vorgegebenen Übertragungstakt, z. B. alle 800 ys .
In nicht näher dargestellter Art und Weise kann eine jede Einheit einen Koppelspeicher für einen asynchronen Datenaustausch zwischen der zentralen Verarbeitungseinheit 2 und der jeweiligen dezentralen Peripherieeinheit 3.1 bis 3.n aufwei ¬ sen. Der Koppelspeicher dient z. B. für ein Softwareupdate oder zukünftige Funktionen.
Das jeweilige Telegramm DT und somit das Prozessabbild um- fasst zusätzlich zu dem Abbild sämtlicher Eingänge und Aus ¬ gänge der Peripheriemodule 6.1 bis 6.m als Nutzdatenelement mindestens ein weiteres Datenelement.
Als ein erstes Datenelement ist ein Protokollkode mit einer Länge von 1 Byte. Das Feld „Protokollkode" kodiert in einem 7-Bit-Wort (= 1 Byte) , ob es sich um eine Übertragung von der zentralen Verarbeitungseinheit 2 zu einer Peripherieein- heit 3.1 bis 3.n (z. B. ein Bit = 0) oder umgekehrt (dasselbe Bit =1) handelt. Die letzten Bits geben die Protokollversion an (z.B. letztes Bit = 0) . Die Länge des gesamten Prozessab ¬ bilds und somit des Telegramms DT ist 64 Bytes und konstant. Als ein weiteres Datenelement sind Adressdaten enthalten, die beispielsweise ein Modulkode im Telegramm DT repräsentieren. Es gibt immer ein Empfangs- oder Sendemodul an. Die höherwer ¬ tigen 4 bits sind beispielsweise die Teilnehmerkennung am Feldbus 4, wobei der Wert 0 angibt, dass sich das Modul di ¬ rekt in der zentralen Verarbeitungseinheit 2 befindet. Die niederwertigen Bits geben immer die Slotnummer im jeweiligen Gerät, in der zentralen Verarbeitungseinheit 2 oder in der jeweiligen Peripherieeinheit 3.1 bis 3.n, beginnend mit 0 an.
Darüber hinaus können als ein weiteres Datenelement Kommuni ¬ kationsdaten, wie z. B. ein Zähler, enthalten sein, welcher an den anderen Partner der Kommunikation, insbesondere in der so genannten End-to-End-Kommunikation, übertragen wird. Die- ser antwortet auf den Zählerwert im Datenelement mit einem
Antwortkode mit einem Wert, welcher über einen festzulegenden Algorithmus aus dem übertragenen Wert errechnet wird. Vom je ¬ weils empfangenen Prozessor (Prozessoreinheit 5 und/oder Modulprozessor 8.1 bis 8.m) werden dann die Vorgabe und die Antwort überprüft. Ein Schleifendurchlauf muss innerhalb ei ¬ nes festzulegenden Zyklus (in der Regel Prozessfehlertole- ranzzeit) erfolgreich durchlaufen werden, andernfalls werten die Prozessoren (Prozessoreinheit 5 und/oder Modulprozes ¬ sor 8.1 bis 8.m) dies als Ausfall des Kommunikationspartners und leiten autark den sicheren Zustand der betroffenen Prozesssignale ein.
Ein weiteres Datenelement enthält Prüfdaten, wie eine Prüf ¬ summe für das gesamte zu übertragende Prozessabbild (64
Bytes) . Für die PrüfSummenberechnung wird das Element mit dem Wert 0 angenommen. Die Prüfsumme wird immer zwischen den Partnern der End-to-End-Kommunikation, d. h. zwischen der Prozessoreinheit 5 und/oder dem/n Modulprozessor/en 8.1 bis 8.m, berechnet und ausgewertet. Alle anderen Elemente im Übertragungsweg (Schaltungsanordnungen 11, Kommunikationsmo ¬ dule 10) transportieren die Information nur. Weitere Datenelemente können im Rahmen des Protokolls defi ¬ niert werden, z. B. Befehlskodes, Alarmkodes, Sicherungsko ¬ des . Der Prozessabbildspeicher 14 basiert auf einen so genannten Dual-Port-Speicher, auf welche die Prozessoreinheit 5 der zentralen Verarbeitungseinheit 2 bzw. der Modulprozessor 8.1 bis 8.m und/oder der Feldbusprozessor 10.1 der dezentralen Peripherieeinheit 3.1 bis 3.n und der in der Schaltungsanord- nung realisierte Telegrammprozessor 13, insbesondere einer seiner Komponenten, z. B. ein I /O-Prozessor 13.3, zugreifen.
Da das Prozessabbild atomar ausgewertet werden muss, ist ein Wechselpuffersystem implementiert, d. h. ein Puffer befindet sich jeweils im Zugriff von einem oder mehreren Komponenten, beispielsweise vom Modulprozessor 8.1 bis 8.m und Feldbuspro ¬ zessor 10.1, der andere im Zugriff vom I /O-Prozessor 13.3 und Paketprozessor 13. Insgesamt enthält ein Telegramm DT für das Prozessabbild die nachfolgenden Puffer:
16 Puffer für das Prozessabbild der Peripheriemodule 6.1 bis 6.m des eigenen Geräts in Richtung zentraler Verar- beitungseinheit 2.
16 Puffer für das Prozessabbild der Peripheriemodule 6.1 bis 6.m des eigenen Geräts in Richtung einer anderen Peripherieeinheit 6.1 bis 6.m.
96 Puffer für das über den Feldbus 4 an die zentrale Verarbeitungseinheit 2 gesendete Prozessabbild.
96 Puffer für das über den Feldbus 4 an die Peripherie ¬ module 6.1 bis 6.m gesendete Prozessabbild. Bei einer Größe eines Puffers von beispielsweise 64 Bytes und dem Doppelpuffersystem ergibt sich ein Speicherbedarf für die Puffer von beispielsweise insgesamt 26672 Bytes. Die gewählte Architektur ermöglicht eine vollständige Ent ¬ kopplung von den beiden Übertragungsrichtungen. Diese Entkopplung wird durch die Ausführung des Übertragungsweges im gesamten Automatisierungssystem 1 als Voll-Duplex-Kanal erreicht .
Das Protokoll für die Übertragung des Telegramms DT mit dem Prozessabbild wird im Wesentlichen durch die beiden Datenele ¬ mente Befehlskode und Statusabfrage definiert. Bei dem Proto ¬ koll nimmt immer der Applikationsprozessor und somit die Pro- zessoreinheit 5 der zentralen Verarbeitungseinheit 2 durch die Vorgabe des Datenelements „Befehlskode" (z. B. Steuerbe ¬ fehle, Sollwertvorgaben) die Masterrolle ein, der jeweilige Modulprozessor 8.1 bis 8.m reagiert darauf als Slave mit der Antwort des Datenelements „Statusabfrage". Dem Slave ist es jedoch unter bestimmten Umständen erlaubt, selbstständig seinen Zustand zu ändern. Alle Zustandswechsel werden mit einer Zeitfunktion überwacht und führen dann zu einem sicheren Zustand der Ausgänge des Peripheriemoduls 6.1 bis 6.m. Es können verschiedene Protokolle zur Datenübertragung zwischen Master und Slave implementiert sein. Beispielsweise ha ¬ ben Master und Slave zwei gleichlaufende Zustandsautomaten mit den Zuständen: - „Init", in diesem Zustand ist der Ausgang der Prozess ¬ signale energielos. Das Prozessabbild des Telegramms DT überträgt in diesem Zustand als Nutzdaten statische Kon ¬ figurationsinformationen der Peripheriemodule 6.1 bis 6. m.
„Run", in diesem Zustand erfolgt der zyklische Nutzda ¬ tenaustausch zwischen Prozessoreinheit 5 und Modulpro ¬ zessor 8.1 bis 8.m. „Stop", in diesem Zustand ist der zyklische Nutzdaten ¬ austausch angehalten. Der Inhalt des Prozessabbilds ist noch nicht definiert. Der Ausgang der Prozesssignale ist energielos. Der Zustand dient als Zwischenzustand für weitere Konfigurationstätigkeiten wie einem Softwaredownload .
„SafeState", in diesem Zustand befindet sich der jewei ¬ lige Datenendpunkt im sicheren Zustand.
Weitere Zustände (z.B. Softwareupdate) können implementiert werden .
Die Synchronisation der Prozessoren, der Prozessoreinheit 5 und der Modulprozessoren 8.1 bis 8.m auf den Anfang des Protokollabbilds erfolgt durch einen Break, d. h. eine definierte übertragungslose Zeit. Aufgrund der End-to-End- oder Peer- to-Peer-Anbindung der Modulprozessoren 8.1 bis 8.m und der Prozessoreinheit 5 befinden sich auf der Schaltungsanord- nung 11 für jeden möglichen Steckplatz der Peripherieeinheit 3.1 bis 3.n eine UART-Sende-/Empfangseinheit (nicht dar ¬ gestellt, UART = Universal Asynchronous Receiver Transmit ¬ ted . Eine solche Sende-/Empfangseinheit hat gegenüber einer seriellen Schnittstelle (= SPI-Protokoll, mit SPI = serial peripheral interface) den Vorteil einer Vollduplex-Verbin- dung, d. h. das Senden und Empfangen kann gleichzeitig und auch asynchron erfolgen und ist störsicherer. Die Übertragung erfolgt ohne extra Protokoll, da dieses komplett in den Pro ¬ zessabbildern realisiert ist.
Das Senden der Telegramme DT mit den Prozessabbildern wird getriggert durch: die Prozessoreinheit 5 der zentralen Verarbeitungsein- heit 2 mit einem vorgegebenen Takt, und/oder an den dezentralen Peripherieeinheiten 3.1 bis 3.n durch den Empfang eines Feldbustelegramms. Der Empfang eines Prozessabbilds wird abgeschlossen durch: die Prozessoreinheit 5 der zentralen Verarbeitungseinheit 2 mit dem vorgegebenen Takt, da alle Peripheriemo- dule 6.1 bis 6.m einer Peripherieeinheit 3.1 bis 3.n in ¬ nerhalb einer Periode neue Werte liefern müssen, und an den dezentralen Peripherieeinheiten 3.1 bis 3.n durch den vorgegebenen Takt, da alle Peripheriemodule 6.1 bis 6.m einer Peripherieeinheit 3.1 bis 3.n innerhalb einer
Periode neue Werte liefern müssen.
Zur Generierung des Takts ist nicht näher dargestellt ein herkömmlicher Taktgenerator vorgesehen.
Als ein Takt wird der Abtasttakt, mit welchem innerhalb eines Gerätes (zentrale Verarbeitungseinheit 2 oder dezentrale Pe ¬ ripherieeinheit 3.1 bis 3.m) eine synchrone Abtastung über mehrere Peripheriemodule 6.1 bis 6.m hinweg möglich ist, er- zeugt. Peripheriemodule 6.1 bis 6.m, bei welchen keine Syn- chronität über Modulgrenzen hinweg gefordert sind, können ei ¬ nen individuellen, auch niedrigeren Abtasttakt verwenden. Es ist zu beachten, dass sich die Synchronität nur auf ein Ge ¬ rät, d. h. die zentrale Verarbeitungseinheit 2 oder eine de- zentrale Peripherieeinheit 3.1 bis 3.m, bezieht. Der Abtast ¬ takt wird beispielsweise auf 10 KHz festgelegt.
Der Übertragungs- oder Kommunikationstakt (auch als Transfer- Sync bezeichnet) ist der Takt, mit welchem der Datenaustausch innerhalb eines Gerätes (innerhalb der zentralen Verarbei ¬ tungseinheit 2 oder einer jeden dezentralen Peripherieeinheit 3.1 bis 3.m) mithilfe des Prozessabbilds erfolgt. Davon ausgenommen sind die Übertragungen, welche durch den Empfang eines Telegramms DT vom Feldbus 4 getriggert werden.
Der Paket- oder Telegrammprozessor 13 der Schaltungsanordnung 11 sendet und empfängt selbstständig die Telegramme DT des Feldbusses 4 und greift autark auf das Prozessabbild, d. h. den Prozessabbildspeicher 14, zu.
Der Telegrammprozessor 13 ist direkt mit der Feldbusschnitt- stelle 13.1 verbunden und prüft empfangene Telegramme DT an ¬ hand des Ethertypes und der IP-Eigenschaften (IP-Frame, UDP- Frame, richtiger Port) und ob das Telegramm DT ein Feldbuste ¬ legramm ist. Diese werden über eine implementierte Funktion „FBP Select" direkt in das entsprechende Prozessabbild im Prozessabbildspeicher 14 eingeschrieben. Danach wird am korrespondierenden Prozessor ein Interrupt über den Empfang generiert. Alle anderen Telegramme DT werden direkt an den Feldbusprozessor 10.1 zur Bearbeitung weitergeleitet. In Senderichtung liest der Telegrammprozessor 13 zyklisch die Daten des Prozessabbilds aus und codiert sie in IP-Telegramme und zu sendende Telegramme DT. Optional können diese mittels einer implementierten Funktion „Ethernet Merger" mit anderen Telegrammen des Feldbusprozessors 10.1 gemischt und über den Feldbus 4 an andere Busteilnehmer gesendet werden.
Der mit der Erfindung erzielte Vorteil besteht darin, dass die gesamte Kommunikation über ein das Prozessabbild enthal ¬ tenes Telegramm DT ausgeführt und kein Unterschied zwischen einer geräteinternen und geräteexternen Kommunikation über den Feldbus 4 mehr gemacht wird.
