10 Technologien für eine leistungsstarke Motorsteuerung

Überblick

Motorsteuerungseinheiten haben im Laufe der Jahre Schlüsseltechnologien übernommen, um wachsende Anforderungen leistungsstarker Anwendungen, wie etwa das Schneiden von Profilen und die Wafer-Kontrolle, zu erfüllen. In diesem Dokument werden die zehn wichtigsten Technologien für die Entwicklung von Motorsteuerungsanwendungen behandelt.

Inhalt

1. Konturfahrten für das Hochgeschwindigkeitsschneiden von Profilen

Eine Bahnbewegung wird als eine Reihe von Punkten dargestellt, die die Motorsteuerungseinheit zur Extrapolation einer glatten Kurve nutzt. Diese Punkte werden mithilfe eines CAD/CAM oder eines Grafikprogramms erzeugt und gewöhnlich in Tabellen- oder Textform gespeichert. Die Bewegungsparameter, die gewöhnlich bei Punkt-zu-Punkt-Fahrten zur Dynamikbegrenzung genutzt werden, wie beispielsweise Obergrenzen für Geschwindigkeit, Beschleunigung, Verzögerung und Anfahrtsruck, haben keinen Einfluss auf Konturbewegungen. Da diese Obergrenzen bei Konturfahrten nicht greifen, kann eine Bahnbewegung die Schneidemaschine beschädigen. Dank Smart Contouring können solche Bewegungsparameter auf Konturfahrten angewandt werden, so dass schnellere Bewegungen und eine längere Maschinenlebensdauer möglich werden.

Smart Contouring ist ein zum Patent angemeldeter Algorithmus im NI Motion Assistant, mit dem Anwender eine benutzerdefinierte Trajektorie basierend auf festgelegten Bewegungsparametern neu abbilden können, wobei Bewegungscharakteristika und -geometrie beibehalten werden. Mithilfe von Smart Contouring können komplexe Geometrien definiert werden und es lassen sich dennoch Trapez- oder S-förmige Geschwindigkeitsprofile für die Bewegung erzielen. Diese Funktion verringert die Belastung der Mechanik und erhöht so die Lebensdauer von Maschinen. Smart Contouring eignet sich für die Metallverarbeitung und CNC-Anwendungen, bei denen die Maschine bei jeder Bewegung neue Konturen nachzeichnen muss.

Abb. 1: Mit Smart Contouring lassen sich im NI Motion Assistant Bewegungsparameter wie Zielgeschwindigkeit, Beschleunigung und Sanftanlauf auf Konturfahrten anwenden.

Der NI Motion Assistant realisiert Smart Contouring durch Neuabbildung der Punkte auf der Bahn basierend auf den festgelegten Geschwindigkeits-, Beschleunigungs- und Sanftanlaufparametern, behält aber gleichzeitig die Kurvengeometrie bei. Der Anwender kann LabVIEW-, C- und Microsoft-Visual-Basic-Code erzeugen, der die im NI Motion Assistant verfügbaren Smart-Contouring-Funktionen einschließt.

Weiterführende Links:
Evaluierungsversion von NI Motion Assistant

2. Steuerung über Handbediengerät oder Joystick


Bei den meisten Roboteranwendungen, wie etwa Lackierung oder Montage, müssen dem Roboter eine Sequenz von Positionen sowie weitere prozessbezogene Ereignisse beigebracht werden. Dieser Lernprozess wird häufig mithilfe eines Handbediengeräts oder eines Joysticks umgesetzt, die das Roboterwerkzeug nacheinander an die festgelegten Positionen und Punkte bewegen, um diese aufzuzeichnen.

Die Funktion „Teach Mode“ im NI Motion Assistant dient dazu, das Muster vorzugeben, dem der Motor folgen soll. Dazu werden die Motoren manuell bewegt und ihre Position aufgezeichnet. Jeder Motor muss beim Teach Mode mit Encodern ausgestattet sein, um die Positionen der Motoren zu lesen. Sind keine Encoder vorhanden, kann die Funktion „Jog Axis“ verwendet werden, um die Motoren nicht manuell, sondern mithilfe von Software zu bewegen. Die Oberfläche von Jog Axis ähnelt einem Joystick auf einem Bildschirm. Die Funktion „Motion Assistant Teach Mode“ nutzt Smart Contouring und weist die aufgezeichneten Funktionen neu zu, um die spezifizierten Geschwindigkeits- und Beschleunigungsprofile zu erreichen und gleichzeitig die Geometrie beizubehalten.

Abb. 2: Die Achsen können im NI Motion Assistant für das Teach-in interaktiv bewegt werden.

Der Anwender kann den Roboter oder die Achsenmechanik auch direkt über Joystick-Signale steuern, indem er diese an Peripherie-I/Os oder universelle Digital-I/O-Leitungen der Motorsteuerungseinheit anschließt.

Weiterführende Links (engl.):
Controlling an X-Y stage with a Joystick
Evaluierungsversion von NI Motion Assistant
Teach Pendant

3. Hochgeschwindigkeits-I/O-Synchronisation mit getriggerter Positionsaufzeichnung, positionsbezogener Triggergenerierung und RTSI


NI-Motorsteuerungseinheiten können mit Geräten für die Daten- und Bilderfassung mittels getriggerter Positionsaufzeichnung und positionsbezogener Triggergenerierung synchronisiert werden. Bei diesen Motorsteuerungseinheiten beziehen sich Timing und Triggerung entweder auf die Position oder die Geschwindigkeit. Positions- und Geschwindigkeitsinformationen müssen häufig mit der Peripherie synchronisiert werden, damit die Messungen mit den Bewegungen koordiniert werden können. Die Motorsteuerungseinheit kann so programmiert werden, dass sie ein anderes Gerät an den spezifischen Positionen mithilfe von RTSI oder einem Pin am Motion-I/O-Anschluss triggert. Bei dieser positionsbezogenen Triggergenerierung spricht man von so genanten Breakpoints. Breakpoints können als absolute Breakpoints, relative Breakpoints und periodische Breakpoints angelegt werden.

In einigen Fällen müssen Positionsdaten synchron zu externen Messungen aufgezeichnet werden. Als Beispiel soll die Ausrichtung zweier Glasfaserkabel dienen. In diesem Fall müssen die Fasern so aufeinander ausgerichtet werden, dass sie das Licht mit möglichst geringer Dämpfung übertragen. Um dies zu gewährleisten, müssen die Messwerte des externen Geräts zur Messung der Strahlungsleistung mit den Positionsdaten der Motorsteuerungseinheit korreliert und analysiert werden. Diese Funktionalität ist als positionsgetriggerte Positionsaufzeichnung (High-Speed Capture) bekannt. In diesem Modus speichert die Motorsteuerungseinheit die aktuelle Encoder-Position bei Eingang eines Triggerevents und stellt sie dem PC-System zur Weiterverarbeitung zur Verfügung.

Beim RTSI-Bus (RTSI = Real-Time System Integration) handelt es sich um einen dedizierten Hochgeschwindigkeitsbus, der die Systemintegration durch systemnahe, echtzeitfähige Hochgeschwindigkeitskommunikation zwischen den Geräten von NI vereinfacht. Verwendet man RTSI, kann die NI-Motorsteuerungseinheit digitale Hochgeschwindigkeitssignale mit Datenerfassungs-, Bilderfassungs-, digitalen I/O-Produkten oder anderen NI-Motorsteuerungsgeräten teilen, ohne dass dafür externe Verkabelung nötig wäre oder Bandbreite auf dem Host-Bus verbraucht würde. Der RTSI-Bus verfügt außerdem über eingebaute Schaltfunktionen, so dass Signale während des laufenden Betriebs mithilfe von Software vom und zum Bus geleitet werden können. Neben Breakpoint- und Triggersignalen können auch Encoder-Impulse über die RTSI-Leitungen geleitet werden. Auf diese Weise lassen sich externe Geräte positionssynchron triggern. Phase A, Phase B und der Encoder-Indeximpuls können über den RTSI-Bus geleitet werden. Zudem können Triggersignale auf den RTSI-Leitungen auch direkt per Software generiert werden. Breakpoint-Signale und Encoder-Impulse lassen sich mithilfe des RTSI-Busses an andere Geräte leiten. Überdies können Daten- und Bilderfassungsgeräte ihrerseits Funktionen auf der Motion-Control-Karte über den RTSI-Bus triggern.

Weiterführende Links (engl.):
NI 73xx Motion Controllers that Offer Breakpoints Capture and RTSI

4. Fortschrittliche Schritterzeugung für Geschwindigkeitsprofile ohne Jitter


Schrittmotoren-Controller arbeiten gewöhnlich in zwei Modi. Der gängigste Modus ist der Schritt-Richtungs-Modus, wobei ein Ausgang die Schrittimpulse und der andere Ausgang ein Richtungssignal erzeugt. Im CW-CCW-Modus (clockwise, counterclockwise) erzeugt der erste Ausgang beim der Vorwärtsbewegung (CW, rechtsdrehend) und der zweite Ausgang bei der Rückwärtsbewegung (CCW, linksdrehend) Impulse. Diese Impulse werden mit dem System- oder mit dem Onboard-Takt synchronisiert.

Das Erzeugen von Impulsen auf einem Schrittmotor-Controller kann komplex sein, wenn die Frequenzen der zu erzeugenden Impulse kein exakter Multiplikator der Taktfrequenz sind. Die meisten Schrittmotor-Controller erzeugen Impulse mit verschiedenen Frequenzen in Zeitanteilen. Das hat zwar keinen Einfluss auf die Position des Motors oder der Achsenmechanik, aber auf das Geschwindigkeitsprofil für die Bewegung, wodurch es zu Sprüngen und Schrittverlusten bis hin zum Motorstillstand kommen kann.

Abb. 3: Der patentierte NI-Schritterzeugungsalgorithmus bietet Geschwindigkeitsprofile ohne Jitter (links) im Vergleich zu typischen Schritterzeugungsalgorithmen (rechts).

NI-Motorsteuerungseinheiten implementieren einen zum Patent angemeldeten Schrittmotoralgorithmus und nutzen dazu eine Time-Borrowing-Technologie. Mithilfe dieses Algorithmus wird die Impulsfrequenz über mehrere Zeitabschnitte gemittelt, so dass ein glattes Geschwindigkeitsprofil entsteht.

Weiterführende Links (engl.):
NI-733x-Schrittmotor-Controller mit fortschrittlicher Schritterzeugung

5. Bildverarbeitungsgeleitete Bewegungssteuerung

In Anwendungen wie beispielsweise flexible Materialzuführung, Montage, Ausrichtung oder Nachverfolgung müssen die Funktionen für die Motorsteuerung und die Bildverarbeitung in einem einzigen Programm zusammengeführt werden. Dabei muss sichergestellt werden, dass die Software Bildverzerrungen eliminiert, die Motorsteuerungs- und Bildverarbeitungseinheiten aufeinander abgestimmt sind und die Koordinatensysteme für sowohl die Motorsteuerung als auch die industrielle Bildverarbeitung übereinstimmen.


Abb. 4: LabVIEW bietet eine komplette Entwicklungsumgebung für bildverarbeitungsgestützte Motorsteuerungsanwendungen wie etwa Koordinatenausrichtung.

LabVIEW ist eine einheitliche, einfach bedienbare grafische Programmierumgebung für bildverarbeitungsgestützte Motorsteuerungsanwendungen. Zu den Bildverarbeitungs- und Motorsteuerungsfunktionen in LabVIEW gehört die räumliche Kalibrierung. Dabei wird eine Pixelkoordinate durch Skalierung in X- und Y-Richtung in eine reale Koordinate umgewandelt. Kalibrierfunktionen können auch perspektivische Verzerrungen und Verzeichnungsfehler in erfassten Bildern ausgleichen. Derartige verzerrte Bilder können entstehen, wenn z. B. der Bildsensor nicht 100%ig parallel zum Prüfobjekt ausgerichtet ist oder wenn ein Objektiv Verzeichnungen aufweist. LabVIEW kann zudem bei Fehlausrichtungen von Koordinaten eingesetzt werden.

Weiterführende Links (engl.):
Tutorium: Creating Vision Guided Motion Systems with LabVIEW

7. FPGA-basierte Motorsteuerung mit Regelfrequenzen von bis zu 200 kHz


Während aktuelle Motorsteuerungen mit DSPs für viele Anwendungen ausreichend sind, entwerfen Maschinenbauer üblicherweise ihre eigenen Motorsteuerungseinheiten als benutzerspezifische Schaltungen mit Regelfrequenzen von bis zu 200 kHz. Diese Vorgehensweise bei der Entwicklung ist nicht nur zeit- und kostenaufwändig, Maschinenbauer müssen auch in Betracht ziehen, ob das System aufgrund der festgelegten Charakteristik der Motorsteuerung sich nur schwer an zukünftige Änderungen oder an Variationen der Motorsteuerungsalgorithmen während der Ausführung anpassen lässt.  Anwendungen, die einen so hohen Grad an Präzision und Flexibilität benötigen, sind beispielweise Anlagen für die Wafer-Verarbeitung in der Halbleiterindustrie oder ein während des Betriebs rekonfigurierbares Fließband für die Montage von Fahrzeugteilen in Abhängigkeit von Bestellanforderungen. National Instruments’ Technologie für rekonfigurierbare I/O (RIO) sowie das NI SoftMotion Development Module für LabVIEW stellen die passenden Werkzeuge für Maschinenbauer bereit, die eine äußerst präzise, benutzerspezifische Motorsteuerung mit der kompletten Flexibilität eines FPGA-Chips wünschen.

Abb. 5: CompactRIO mit der NI-SoftMotion-Technologie bietet bis zu sechs Achsen koordinierter Bewegung mit individuellen Schleifenfrequenzen von 200 kHz.

Das NI SoftMotion Development Module lässt sich zusammen mit dem NI LabVIEW Real-Time Module und dem LabVIEW FPGA Module einsetzen. Es bietet alle Funktionen, die ein DSP einer Motorsteuerungseinheit gewöhnlich bietet. Dieses Produkt ermöglicht Pfadplanung, Trajektoriengenerierung sowie Positions- und Geschwindigkeitsregelung in der LabVIEW-Umgebung und den Einsatz von Programmcode auf LabVIEW-FPGA-basierter Zielhardware, wie z. B. Datenerfassungsmodulen der R-Serie oder CompactRIO. CompactRIO- und Hardware der R-Serie bieten in Verbindung mit dem NI SoftMotion Development Module das höchste Potenzial an individueller Anpassungsmöglichkeit und Leistung. Dazu stehen bis zu sechs Servoregelkreise zur Verfügung, die bei 200 kHz simultan auf einer CompactRIO-Backplane mit 3 Mio. Gattern ausgeführt werden.

Weiterführende Links (engl.):
Whitepaper: NI SoftMotion Technology
CompactRIO Produktseite

8. Interaktive Prototypenerstellung und Konvertierung in LabVIEW-VIs oder C-Code


Mithilfe des Motion Assistant können Anwender eine Motorsteuerungsanwendung in einer interaktiven Umgebung erstellen und sie durch Umwandlung des Projekts in C-Code für jeden beliebigen C-Compiler oder in LabVIEW-VIs einsetzen. Der Motion Assistant nutzt auch die zum Patent angemeldete Smart-Contouring-Funktionalität mit einer API, die aus C, Visual Basic oder LabVIEW zum Einsatz auf Maschinen zum Schneiden von Profilen aufgerufen werden kann.

Abb. 6: Der NI Motion Assistant unterstützt die Prototypenerstellung und den Einsatz von Motorsteuerungsanwendungen, indem er Projekte in LabVIEW oder C-Code umwandelt.

Weiterführende Links (engl.):
Try Creating LabVIEW or C Code with NI Motion Assistant

9. Leistungsstarke Ein- und Ausgänge


Motorsteuerungseinheiten von NI bieten Digitalein- und -ausgänge (Digital-I/O) mit bis zu 64 bit, die sich etwa für das Schalten von Ventilen oder Halbleiterrelais mit dem SSR-Adapter eignen. Die Digital-I/Os der Motorsteuerungseinheit können auch über ein NI Universal Motion Interface (UMI-777x) genutzt werden, das optisch isolierte Digital-I/O mit 24-V-Logik bietet. Die Motorsteuerungseinheiten von NI verfügen über acht Kanäle Analog-I/O mit 16 bit, die für anspruchsvolle Analogmessungen geeignet sind.

Abb. 7: Ein typisches Motorsteuerungssystem benötigt leistungsstarke Digital-, Analog- und Steuerungs-I/O.

Encoder, D/A- und A/D-Wandler sowie Motorsteuerungs-I/O-Ressourcen, die von keiner Achse verwendet werden, stehen für andere Anwendungen zur Verfügung, die nicht für die Achs- oder Motorsteuerung genutzt werden. Ein freier D/A-Wandler kann direkt als universeller Analogausgang (±10 V) gesteuert werden. Ganz ähnlich kann jeder beliebige A/D-Wandlerkanal eingesetzt werden, um Potentiometer oder andere Analogsensoren zu messen. Wird für die Achsensteuerung keine Encoder-Ressource benötigt, kann sie für andere Funktionen genutzt werden, darunter Positionsüberwachung, oder als Eingang für einen Digitalpotentiometer-Encoder oder einen Master-Encoder für Master-Slave-Anwendungen (elektronisches Getriebe). Jede Achse verfügt überdies über Eingänge für zwei Endlagenschalter, einen Referenzschalter, einen Trigger-Eingang für die Hochgeschwindigkeitserfassung, einen Ausgang für Positionstrigger (Breakpoint) und einen Sperrausgang. Diese Signale können für universelle Digital-I/O genutzt werden, wenn sie nicht für den vorgesehenen Zweck zur Motorsteuerung eingesetzt werden.

Weiterführende Links (engl.):
NI Motion Produktseite
Learn About the Industrial Universal Machine Interface (UMI) with 24 V I/O

10. Erweiterte Feedback-Techniken

Anspruchsvolle Motorsteuerungsanwendungen müssen in der Lage sein, nicht nur Gegenkopplungen von den Encodern, sondern auch von Analogsensoren zu synchronisieren. Häufig werden für einzelne Achsen analoge und digitale Rückführungsgrößen entweder abwechselnd oder kombiniert genutzt. Die NI-Motorsteuerungseinheiten bieten verschiedene Optionen selbst für anspruchvollste Gegenkopplungsaufgaben.

Einfache Kraftregelung

Im analogen Rückkopplungsmodus ist der Drehmoment- bzw. Kraftsensor mit einem der Analogeingänge an der NI-Motorsteuerungseinheit verbunden. Dieser Analogeingangskanal wird für die Gegenkopplung im Regelkreis genutzt.

Kraft- und Positionsregelung

Ein zweiter Kraftregelungsmodus wird eingesetzt, wenn zusätzlich zum Drehmomentsensor ein Positionssensor am Motor vorhanden ist. Die Regelschleife der Motorsteuerungseinheit schließt die Positions- und Geschwindigkeitsschleifen.


Abb. 8: Neben der Positionsregelung kann ein sekundärer Kraftüberwachungsmodus eingesetzt werden.


Einfache Geschwindigkeitsregelung

Beispielsweise soll bei einem System die Geschwindigkeit einer Transportrolle proportional zu einer Eingangsspannung gehalten werden. Der Algorithmus für die Beibehaltung der Geschwindigkeit besteht zum einen aus dem Lesen der Analogspannung, die an einem der Analogkanäle der Motorsteuerungseinheit anliegt, und zum anderen aus der Aktualisierung der Geschwindigkeit der Achse ausgehend vom Wert der Spannungsmessung. Bei diesem System wird die Geschwindigkeitsmessung über einen normalen Positionssensor wie z. B. einen Encoder realisiert.

Positionsrückführung

 Systeme zur Motorsteuerung nutzen häufig Getriebe, um den Ausgangsdrehmoment zu steigern, die Auflösung zu erhöhen oder eine Drehbewegung in eine lineare Bewegung umzuwandeln. Der größte Nachteil beim Einsatz von Getrieben ist das zwischen Motor und Last auftretende Spiel. Ist Getriebespiel zwischen dem Motor und dem Positionssensor vorhanden, sind die Positionen von Motor und Sensor nicht mehr dieselben. Dieser Unterschied macht die abgeleitete Geschwindigkeit für eine Dämpfung des Regelverhaltens wirkungslos, was Ungenauigkeit bei der Position und Systeminstabilität zur Folge hat. Der Einsatz von zwei Positionssensoren für eine Achse mit dualer Positionsrückführung kann helfen, die durch Getriebespiel verursachten Probleme zu beheben.

Fliegende Feedback-Umschaltung

Beispielsweise wird bei einer Anwendung für eine Kühlblechmontage die Ausgangspositionierung entlang der Z-Achse mithilfe eines Positionssensors geregelt. Wird das Kühlblech auf die Leiterplatte gepresst, muss dieser Teil des Prozesses in Form einer Kraftregelung realisiert werden. Mithilfe von NI-Motorsteuerungseinheiten können Feedback-Signale im laufenden Betrieb umgeschaltet werden. Dazu muss die Steuerungseinheit nicht neu initialisiert werden. Das neue Feedback-Signal erfordert eventuell einen neuen Satz von PID-Parametern, die dem System direkt nach der Rekonfigurierung der Achse übermittelt werden müssen. Damit die Verzögerung möglichst gering ist, kann ein zusätzlicher Satz von PID-Parametern für die Motorsteuerungseinheiten konfiguriert werden.

Weiterführende Links (engl.):
Learn More About High Performance NI Motion Controllers