Foundation-Fieldbus- und Profibus-PA-Geräte übernehmen häufig Aufgaben der Mess- und Steuerungstechnik in der Prozessautomatisierung. Hierfür werden sie oft in einer gefährlichen Umgebung eingesetzt, in der auch explosive Gase vorhanden sein können. Der Leitstand kann dabei kilometerweit entfernt sein. Für die Versorgung der Sensoren und Kommunikationsgeräte steht über den Feldbus nur eine minimale Energie zur Verfügung, da in den meisten Fällen die Vorschriften für explosionsgefährdete Räume eingehalten werden müssen. Der Physical Layer der Feldbussysteme Foundation Fieldbus bzw. Profibus PA wurde deshalb speziell auf diese Anwendung ausgelegt. Mit einer Übertragungsgeschwindigkeit von 31,25 KBit/s gehören Foundation Fieldbus und Profibus PA nicht zu den High-Speed-Bussystemen, trotzdem benötigt die Kommunikation einen ASIC, um Echtzeit-Anforderungen gerecht zu werden.
Prozessor ist zu viel mit Feldbuskommunikation beschäftigt
Der Physical Layer (Schicht 1 im OSI-Schichtenmodell) besteht bei den beiden Feldbussystemen aus einer Zweidrahtleitung, bei der die Daten in Anlehnung an die IEC61158-2 mittels Manchester-Kodierung übertragen werden. Die Energieversorgung von Feldgeräten mit niedrigem Strombedarf lässt sich ebenfalls über den Feldbus realisieren, wobei eine so genannte MAU (Medium Attached Unit) die Datensignale von der Stromversorgung trennt. Für die erste Auswertung der Datensignale wird ein Komminikations-ASIC verwendet. Solche ASICs sind bereits seit mehr als zehn Jahren verfügbar, doch aufgrund der geringen Marktgröße wurden sie nicht unter Einbeziehung der aktuellsten Halbleitertechnik weiterentwickelt. In den vorhandenen Lösungen der Kommunikations-ASICs wurden allenfalls Basisfunktionen implementiert.
Deshalb müssen viele zeitkritische Funktionen überwiegend per Software gesteuert werden, was dazu führt, dass der Prozessor nicht mehr für andere Aufgaben zur Verfügung steht. Beispielsweise wird bei einem empfangenen Frame die Zieladresse nicht überprüft und immer ein Interrupt ausgelöst. Dieser unterbricht den Prozessor bei der Abarbeitung der Feldgeräte-Anwendung, um zu verifizieren, ob der Frame angenommen wird oder nicht. Die Folge ist, dass der Prozessor mehr mit der Feldbuskommunikation beschäftigt ist als mit der eigentlichen Anwendung des Feldgerätes. Damit auf entsprechend zeitkritische Anforderungen rechtzeitig reagiert wird bzw. die getaktete (zyklische) und ungetaktete Kommunikation erfolgen kann, sind spezielle Timer nötig. Diese werden in den bestehenden Lösungen per Software gesteuert: Die Werte der Zeitgeber und Zähler werden geladen, andere entsprechend gestartet oder angehalten. Die genannten Maßnahmen erhöhen die Prozessorlast und führen zu einem nicht zu unterschätzenden, erhöhten Energieverbrauch. Die Feldbuskommunikation ist an das OSI-Schichtenmodell angelehnt, wobei nur die Schichten 1, 2 und 7 realisiert sind. In der Schicht 1 (physikalische Schicht) wird spezifiziert, wie die Hardware zu realisieren ist, damit die Feldgeräte miteinander kommunizieren können. Es wird hauptsächlich festgelegt, wie die Datenübertragung zu erfolgen hat, wie die Busspeisung der Feldgeräte durchgeführt wird und welche maximale Leitungslänge abhängig von der Bus-Teilnehmerzahl zugelassen ist. Die Schicht 2 (Sicherungsschicht) beschäftigt sich mit der eigentlichen Kommunikation. Sie gewährleistet, dass
- ▶
- jedes Feldgerät mit einem anderen Daten austauschen kann,
- ▶
- alle Feldgeräte rechtzeitig bedient werden,
- ▶
- nie zwei Feldgeräte gleichzeitig auf den Bus zugreifen.
Daten getaktet und ungetaktet übertragen
Bei den Kommunikationsdiensten unterscheidet man zwischen der getakteten (zyklischen) und ungetakteten Datenübertragung. Während zeitkritische Aufgaben, zum Beispiel die Regelung der Prozessgrößen, ausschließlich über zyklische Dienste abgewickelt werden, erfolgen Parametrierung und Diagnose mit ungetakteten Kommunikationsdiensten. Damit keine Zugriffskonflikte (beispielsweise wenn zwei Feldgeräte gleichzeitig auf den Bus zugreifen) oder Echtzeitprobleme entstehen, werden für beide Kommunikationsdienste Timer benötigt. Zum Beispiel synchronisiert sich der Note Time Counter mit der Netzwerkzeit mit einer Genauigkeit von 1/32 Millisekunde und stellt so die getaktete Übertragung sicher.
Die ungetaktete Übertragung erfolgt nur in den Zeitlücken, in denen keine getaktete Übertragung stattfindet. Jedes Gerät erhält für diese Zwecke einen so genannten Token, der der Reihe nach an jedes Gerät am Bus vergeben wird. So lange ein Gerät einen Token besitzt, darf es über den Bus Nachrichten versenden. Um die verfügbare Zeit für die Übertragung von Frames zu registrieren, gibt es einen Token Counter. Spätestens nach Ablauf dieser Zeit muss der Token wieder zurückgegeben werden. Die Daten werden für die Übertragung in Frameformate gepackt. Die meisten dieser Frameformate sind so beschaffen, dass der Prozessor den gesamten Frame in seinen Speicher schreiben kann. Die Übertragung der Daten beginnt nur dann, wenn der Abstand zwischen dem zuletzt empfangenen oder gesendeten Frame größer oder gleich dem erforderlichen Mindestabstand ist. Mit einer festgelegten Anzahl von Präambelbytes (Vorspann) und der Anfangskennzeichnung (Starting Delimiter) startet die Übertragung. Es folgen die Daten selbst. Die Übertragung endet mit zwei FCS-Bytes (Prüfsumme) und dem Endbegrenzer (End Delimiter). Beim empfangenen Frame überprüft der Prozessor, ob die Empfangsadresse richtig ist und entscheidet dann, ob die Daten angenommen oder abgelehnt werden. Hier entstand nun die Idee, dass diese Überprüfung bereits durch den Kommunikations-ASIC erfolgt und so die meisten unerwünschten Frames automatisch abgelehnt werden. Ein Interrupt an den Prozessor wird dann nur erzeugt, wenn der Frame nicht abgewiesen wird. Dies trägt zu selteneren Prozessorunterbrechungen und damit zu sinkender Prozessorbelastung bei. Ein FIFO-Speicher für die empfangenen Frames ermöglicht, dass die Daten vor der Weiterleitung an den Prozessor zwischengespeichert werden. Sie werden erst dann weitergeleitet, wenn sichergestellt ist, dass die Daten auch erwünscht sind.
Aktueller ASIC entlastet mit zusätzlichen Funktionen den Prozessor
Diese Idee hat Softing aufgegriffen und in Zusammenarbeit mit dem Unternehmen Aniotek den Kommunikations-ASIC UFC100-F1 entwickelt, der auf moderner Halbleitertechnik (CMOS) basiert. Die industriellen Feldbusse sind in der Regel einem hohem elektronischen Rauschen ausgesetzt. Der aktuelle ASIC filtert mit Hilfe digitaler Technik einen Großteil des Rauschens und erhöht damit die Robustheit der Lösung. Abbildung 1 zeigt den Aufbau des ASIC. Es ist zu erkennen, dass neben den notwendigen Standard-Bausteinen weitere Funktionen hinzugekommen sind, die den Prozessor merklich entlasten: Zum Beispiel die Counter „Gap“ und „Idle“, die für die Einhaltung des Mindestabstands zwischen zwei Frames sorgen. Damit lässt sich erreichen, dass sich die Kommunikationssoftware nicht mehr um die Steuerung und Einhaltung des Timings kümmern muss. Alle zeitkritischen Funktionen werden in der Hardware ausgeführt, so dass die Prozessorlast und damit verbunden der Energieverbrauch herabgesetzt werden. Der Bus Inactivity Timer, der zur Bus-Reaktivierung verwendet wird, sowie die Token- und Node-Timer sind ebenfalls in der Hardware abgebildet.
Um dem Feldgerätehersteller die Anwendung des UFC100-F1 so einfach wie möglich zu gestalten, hat der Hersteller das Modul FBK2 entwickelt. Hier bekommt der Anwender eine vollständige Lösung, um Feldgeräte mit einer Hart- bzw. seriellen Schnittstelle an den Feldbus anzubinden. Dabei kommen neben dem ASIC UFC100-F1 ein Prozessor mit entsprechender Kommunikationssoftware für Foundation Fieldbus bzw. Profibus-PA sowie eine MAU für den physikalischen Busanschluss zum Einsatz. Die Modullösung passt wegen ihrer Größe von 40 mm × 40 mm in nahezu alle Feldgeräte und besitzt neben der ATEX-Zertifizierung auch eine Zulassung für den Einsatz in Gruppe IIC/IIB in Ex-Zone 1.
Zusammenfassung
Die Anforderungen der Prozessautomatisierung an robuste Feldgeräte mit möglichst niedrigem Energieverbrauch sind sehr hoch und werden in den nächsten Jahren auch weiter steigen. Aus diesem Grund ist es sinnvoll, speziell in der Kommunikationstechnik neue Ansätze zuzulassen. Mit dem hier vorgestellten Lösungsansatz unter Verwendung eines Kommunikations-ASICs können Prozesse wie Timer, Counter, Frame-Adresserkennung und Interrupt-Handling bereits in der Hardware ablaufen – zusätzliche Software im Prozessor wird überflüssig. Auf diese Weise ermöglicht man energiesparende Kommunikationslösungen, die unter Umständen sogar vollständig über den Feldbus gespeist werden. Dadurch, dass der ASIC UFC100-F1 auf aktueller Halbleitertechnik basiert, garantiert er eine robuste und zukunftssichere Lösung.
Literatur
[1] http://www.fieldbus.org [2] http://www.softing.com [3] http://www.aniotek.com
• more@click-Code: EEK80302
