EF 2016
Einkaufsführer Produktionsautomatisierung - Fachzeitschrift für Industrielle Automation, Mess-, Steuer- und Regeltechnik
Einkaufsführer Produktionsautomatisierung - Fachzeitschrift für Industrielle Automation, Mess-, Steuer- und Regeltechnik
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Software/Tools/Kits<br />
trächtigen. Um diese Einflüsse zu<br />
umgehen, können entsprechende<br />
Prozesse stattdessen im Dedicated-<br />
Modus ausgeführt werden.<br />
Speedloop-Modus für<br />
Frequenzen bis zu 1 MHz<br />
und mehr<br />
Hierbei werden einzelne exklusiv<br />
verwendbare CPU-Kerne bereitgestellt,<br />
welche ausschließlich für das<br />
Echtzeitsystem zur Verfügung stehen.<br />
Windows wird dabei schon im<br />
Bootvorgang angewiesen, auf weniger<br />
Kernen hochzufahren, so dass<br />
Echtzeit und Windows parallel laufen,<br />
anstatt sich Ressourcen teilen<br />
zu müssen. Auf diese Weise können<br />
Echtzeit-Timer mit Task-Frequenzen<br />
von bis zu 100 kHz, bei<br />
Abweichungen von bis hinunter zu<br />
1 µs realisiert werden. Im speziellen<br />
„Speedloop-Modus“ kann darüber<br />
hinaus eine CPU exklusiv mit einer<br />
einzelnen Callback-Funktion belegt<br />
werden, womit sogar Frequenzen bis<br />
zu 1 MHz und mehr erzielbar sind.<br />
Stabiles Jitterverhalten<br />
Neben den aktuellen Vorteilen<br />
für Präzision und Effizienz werden<br />
dedizierte CPUs zum Erreichen von<br />
Echtzeit auch für die nahe Zukunft<br />
an Bedeutung gewinnen. Bereits<br />
Anfang 2015 wird der Mainstream<br />
Support von Windows 7 eingestellt,<br />
wodurch es für die meisten zukünftigen<br />
Entwicklungen schließlich<br />
auf Windows 8 und folgende Versionen<br />
hinausläuft. Ab Windows 8<br />
ist die geteilte Nutzung von Ressourcen<br />
ohnehin nicht mehr möglich,<br />
was den Shared-Modus letztendlich<br />
ausschließt. Deshalb stellt<br />
hier die Trennung von Windows und<br />
Echtzeit den logischen Schritt dar,<br />
um ein stabiles Jitterverhalten zu<br />
garantieren.<br />
Prioritätsgesteuertes,<br />
präemptives Multitasking-<br />
System<br />
Das Echtzeitsystem der „Real-<br />
Time Suite“ selbst ist einem autark<br />
betriebenen Echtzeitbetriebssystem<br />
ebenbürtig. So stellt das prioritätsgesteuerte,<br />
präemptive Multitasking-<br />
System dabei sicher, dass die wichtigsten<br />
Tasks auf jeder logischen<br />
CPU stets zuerst ausgeführt und<br />
unterbrochene Prozesse am Punkt<br />
des Interrupts fortgesetzt werden.<br />
Weiterhin wird zur Vermeidung der<br />
Prioritätsinversion die Methode<br />
der Prioritätsvererbung verwendet.<br />
Bis zu 255 Prioritätsstufen können<br />
konfiguriert und zudem dynamisch<br />
angepasst werden, wobei<br />
Tasks mit gleicher Prioritätsstufe<br />
nach dem „Round-Robin”-Verfahren<br />
behandelt werden. Bei all diesen<br />
Prioritätsmechanismen besitzt<br />
Windows stets die Stufe 0, also die<br />
geringste Priorität, um sicherzustellen,<br />
dass die relevanten Ressourcen<br />
vorrangig für das Echtzeitsystem<br />
bereitstehen.<br />
Vielfältige Synchronisationsmechanismen,<br />
wie zum Beispiel<br />
Semaphore, Mutexe, Events und<br />
Pipes stehen zur Verfügung. Auch<br />
zur schnellen Kommunikation zwischen<br />
Echtzeitkontext und Anwendung<br />
werden Events, Shared Memory,<br />
Daten- oder Message-Pipes sowie<br />
Sockets bereitgestellt.<br />
Nativer Maschinencode<br />
Da zum Erreichen von “harten”<br />
Echtzeiteigenschaften die Ausführung<br />
des Anwendungscodes<br />
auf der Kernel-Ebene vorausgesetzt<br />
wird, müssen die verwendeten<br />
Programmiersprachen in der<br />
Lage sein, nativen Maschinencode<br />
zu erzeugen. Hierbei können<br />
Anwender auf vertraute Sprachen<br />
wie C/C++ oder Delphi zurückgreifen<br />
sowie weit verbreitete Entwicklungsumgebungen<br />
wie z.B. Microsoft<br />
Visual Studio nutzen.<br />
Anbindung an die<br />
Außenwelt<br />
Die modulare Verknüpfung des<br />
Systems mit externen Geräten und<br />
Prozessen erfolgt über verschiedene<br />
Schnittstellen im Echtzeitkontext.<br />
Sollen mehrere Steuerungseinheiten<br />
und Sensor-/Aktor-Baugruppen<br />
auch untereinander große Mengen<br />
an Prozessdaten mit garantierten<br />
Jitterzeiten transferieren, so<br />
bietet sich auf der Feldebene eine<br />
Echtzeit-Lösung auf der Grundlage<br />
des Ethernet-basierten Automatisierungsprotokolls<br />
EtherCAT an. Der<br />
EtherCAT Master ist dabei in der<br />
Echtzeitumgebung von Kithara integriert<br />
und ermöglicht Zykluszeiten<br />
bis hinab zu etwa 50 µs. Weiterhin<br />
umfasst der Master alle von Ether-<br />
CAT bekannten Mechanismen wie<br />
Topologieerkennung, Distributed<br />
Clocks zur genauen Zeitsynchronisation<br />
der Ein- und Ausgangssignale,<br />
Hot-Connect und Kabelredundanz<br />
sowie die gängigen Protokolle<br />
wie zum Beispiel für Ethernet-<br />
Kommunikation, Dateitransfer oder<br />
sicherheitsgerichtete Steuerungen.<br />
Zukunftsweisende Automatisierungsanlagen<br />
profitieren mit PCs als Slaves<br />
in einer höheren Topologie oder<br />
dem EtherCAT Automation Protocol<br />
für schnelle ebenenübergreifende<br />
Peer-to-Peer-Kommunikation<br />
zudem von einer hohen horizontalen<br />
Skalierbarkeit.<br />
Nachfrage stark gestiegen<br />
Auf dem Gebiet der Automatisierung<br />
gewinnt vor allem die industrielle<br />
Bildverarbeitung weiter an<br />
Bedeutung. Die immer leistungsfähigeren<br />
Kameras, mit modernen<br />
Standards wie GigE Vision oder<br />
USB3 Vision, finden vermehrt Einsatz<br />
in der Robotik, Fertigung, Medizintechnik<br />
oder bei der Qualitätssicherung.<br />
Auch in diesen Bereichen<br />
steigen jedoch stetig die Anforderungen<br />
und damit die Nachfrage<br />
an Echtzeitlösungen. Wurden früher<br />
Werkstücke oder Schüttgut<br />
nur stichprobenartig einer Qualitätskontrolle<br />
unterzogen, so stellen<br />
heutige Ansprüche bereits die<br />
Aufgabe, jedes einzelne Teil präzise<br />
zu erfassen und die Bilddaten an<br />
verarbeitende Prozesse weiterzugeben.<br />
Bei steigenden Verarbeitungsmengen<br />
und schnellen Durchlaufzeiten<br />
kann dies ebenfalls nur noch<br />
in Verbindung mit harten Echtzeiteigenschaften<br />
bewerkstelligt werden.<br />
Harte Echtzeit ist kein bloßes<br />
Leistungsmerkmal. Für zahlreiche<br />
Anwendungen ist sie eine strikte<br />
Voraussetzung. Dass die Anzahl<br />
solcher Applikationen auch weiterhin<br />
stark steigen wird, zeigen<br />
Bereiche wie Automatisierung<br />
oder Bildverarbeitung. So<br />
können präzise Robotersysteme<br />
hochfrequent Sensordaten<br />
abfragen, um sich exakt auf<br />
den Zehntel Millimeter genau<br />
zu bewegen oder Bildverarbeitungssysteme<br />
Schüttgut noch<br />
Fazit<br />
Baugruppen besser<br />
entwickeln und testen<br />
Die im Automobilbereich verwendeten<br />
Bussysteme LIN, CAN oder<br />
FlexRay können ebenfalls unmittelbar<br />
aus dem Echtzeitsystem heraus<br />
angesprochen und gesteuert werden.<br />
Für Automobilhersteller und -zulieferer<br />
ist dies von Bedeutung, da auf<br />
diese Weise Geräte und Baugruppen<br />
besser entwickelt und getestet<br />
werden können. Auch die Integration<br />
in größere Baugruppen oder<br />
ganze Fahrzeuge lässt sich so mit<br />
realistischem Zeitverhalten überprüfen.<br />
Hochpräzise Prüfstände<br />
garantieren damit geringe Reaktionszeiten,<br />
um genaueste Testresultate<br />
zu erzielen.<br />
Grundsätzliche<br />
Datenübertragung<br />
Im Bereich der allgemeinen Industriekommunikation<br />
sind Echtzeittreiber<br />
für die gängigsten Schnittstellen<br />
wie Ethernet oder USB vorhanden,<br />
auf denen moderne Automatisierungs-<br />
und Bildverarbeitungssysteme<br />
aufgebaut sind. So wird<br />
Echtzeit auch für die grundsätzliche<br />
Daten übertragung bereitgestellt.<br />
Wer noch tiefer in die Hardware eingreifen<br />
will, kann darüber hinaus über<br />
Zugriffe auf I/O-Register, den physischen<br />
Speicher und die Behandlung<br />
von Interrupts sogar komplett<br />
eigene Echtzeit-Treiber für beliebige<br />
Hardware-Baugruppen und<br />
Steckkarten erstellen.<br />
• Kithara Software GmbH<br />
info@kithara.de<br />
www.kithara.de<br />
im Fallen erfassen, auswerten<br />
und punktgenau aussortieren.<br />
Ohne ein Echtzeitsystem würde<br />
auch der leistungsfähigste PC<br />
zwar die Verarbeitungsleistung<br />
erhöhen, der kritische Aspekt<br />
bliebe jedoch die fehlende<br />
garantierte Reaktionszeit. Die<br />
modulare Echtzeiterweiterung<br />
»RealTime Suite« von Kithara<br />
stellt die hierfür benötigten<br />
Mechanismen zur Verfügung, um<br />
fortschrittliche Industrielösungen<br />
zu ermöglichen.<br />
Einkaufsführer Produktionsautomatisierung <strong>2016</strong> 145