Beckhoff-Realtime-Kernel

Echtzeitverarbeitung – die Basis für PC-Control

Seite: 2/4

Anbieter zum Thema

Unter der Bezeichnung S1000 entwickelte Beckhoff 1988 seine erste DOS-basierte Software-PLC-Lösung. 1993 folgte mit der S2000 dann die Weiterentwicklung zur softwarebasierten SPS/NC/CNC mit Bedienoberfläche in einem Programm.

Die S2000-Software unterschied drei Taskebenen: Die NC-Task mit höchster Priorität, gefolgt von der SPS-Task und der Vordergrund-Task, der Bedienoberfläche, die in der restlichen, verfügbaren Rechenzeit des PCs ablief. Die Umschaltung zwischen den Taskebenen erfolgte durch einen Scheduler, der vom Timer-Interrupt in einstellbaren, ganzzahligen Vielfachen einer Millisekunde aufgerufen wurde. Die NC-Funktionalität hatte Vorrang gegenüber der frei programmierbaren SPS-Funktion. Die SPS bestand aus einer Task, die vom Anwender in einem S5-AWL-Dialekt programmiert werden konnte. Sensoren und Aktoren der zu steuernden Maschine wurden über den Beckhoff Lightbus eingelesen bzw. ausgegeben.

Die S2000-Vordergrund-Task beinhaltete ein kooperatives Multitasking, das Benutzereingaben parallel zu Hintergrundfunktionen ermöglichte, womit die Singletask-Einschränkung des DOS-Betriebssystems behoben war. Die visuelle Darstellung der Bedienoberfläche erfolgte über textuelle Grafik mit 80 x 25 Zeichen und ASCII-Zeichensatz. DOS man zum Verwalten der PC-Betriebsmittel und im Wesentlichen zum Speichern von Daten in Massenspeichern.

PC-Control auf der Basis von Microsoft Windows

Mit der Weiterentwicklung der allgemeinen PC-Technologie, mit höherer Rechenleistung und vollgrafischen Bildschirmausgaben, wurden weitreichende Betriebssystemerweiterungen notwendig, um die sich ergebenden neuen Möglichkeiten auch nutzen zu können. Auf dem PC entstand mit Windows zunächst eine grafische Bedienoberfläche für DOS, die sich ab der Version 3.1 vermehrter Beliebtheit erfreute. Windows 95 nutzte 32-Bit-Prozessoren und führte preemptives Multitasking sowie eine moderne Benutzeroberfläche ein.

Mit Windows NT entwickelte Microsoft zunächst für den professionellen Bereich ein von Grund auf neues Betriebssystem für Server- und Workstationsysteme. Aufgrund der höheren Stabilität von Windows NT gegenüber Windows 95 (das intern immer noch auf MS-DOS zurückgriff) erhielt NT im industriellen Umfeld eine größere Akzeptanz als Windows 95. Windows NT war dann auch die Basis für TwinCAT, die erste windowsbasierte PC-Control-Lösung von Beckhoff. Mit TwinCAT (The Windows Control and Automation Technology) entstand ein vollkommen neues Automatisierungssystem auf Basis des PC-Control-Gedankens, das herkömmliche SPS- und NC/CNC-Steuerungen sowie Bediengeräte, substituiert. Die von der konventionellen Automatisierungstechnik her bekannten Hardwarekomponenten (SPS, NC, Achskarten usw.) sind in TwinCAT als sog. Softwaregeräte implementiert. So lässt sich TwinCAT, je nach Bedarf, modular erweitern, ohne bestehende Softwarestrukturen verändern zu müssen.

Die Softwaregeräte von TwinCAT kann der Automatisierer, je nach Anforderung, auf verschiedene Betriebsmittel verteilen: Die TwinCAT-SPS-Programme können gleichermaßen auf Beckhoff-PCs und auf Busklemmen-Controllern ablaufen. Ein sogenannter Message-Router verwaltet und verteilt alle Nachrichten im System über TCP/IP-Verbindungen (PC-Systeme) oder über serielle Schnittstellen und Feldbusse (Busklemmen-Controller).

Echtzeitfunktionalität unter Windows

Die Integration einer Echtzeiterweiterung in ein komplexes Betriebssystem, wie Windows NT (Windows 2000, Windows XP, Windows Vista und Windows 7 sind in dieser Hinsicht sehr nah verwandt), ist deutlich diffiziler als es bei MS-DOS war. Windows ist von sich aus schon multitaskingfähig, sodass viele Prozesse parallel ablaufen können. Hardwarezugriffe können daher nur im geschützten Kernel-Mode erfolgen. Treiber und Betriebssystem erwarten ein definiertes Zeitverhalten der PC-Hardware. Um eine möglichst transparente Integration der Echtzeitfunktionalität in Windows zu ermöglichen und das Betriebssystem oder andere Standardsoftwarekomponenten dabei nicht zu verändern, hat Beckhoff für TwinCAT eine patentierte Timer-Implementation entwickelt: der „Doppeltick“.

Hinter der Bezeichnung „Doppeltick“ verbirgt sich die Systemeigenschaft, beim Umschalten vom Nicht-Echtzeitmodus in den Echtzeitmodus und wieder zurück, jeweils einen Interrupt auszulösen. Bei der Umschaltung in den Echtzeitmodus wird der Interrupt gleichzeitig zur Aktivierung des TwinCAT-Schedulers genutzt. Durch das aktive, deterministische Zurückschalten in den Nichtechtzeitmodus nach einer einstellbaren Zeitdauer ist garantiert, dass Windows nicht nur genügend Rechenzeit von der jeweiligen CPU erhält, sondern auch die notwendigen Antwortzeiten für bestimmte Hardwarefunktionen, wie Modem, Netzwerk oder USB, eingehalten werden.

(ID:384424)