CANopen für Kleinantriebe

Durch die anhaltende Miniaturisierung der Elektronik, aber auch durch die Steigerung der Leistungsdichte von elektrischen Antrieben können viele Maschinen und Apparate heute kompakter gebaut werden als noch vor einigen Jahren. Und durch den Einsatz von Feldbussen, z.B. dem CAN-Bus, bleibt der Verkabelungsaufwand gering, selbst bei zunehmender Anzahl von Sensoren und Aktuatoren. Auch bei hohem Preisdruck für Maschinen kann sich der Einsatz eines Feldbusses lohnen. Der CAN-Bus gilt als kostengünstiger Bus, u.a. aufgrund zahlreicher verfügbarer Mikrocontroller und Prozessoren mit integrierten CAN-Kontrollern. Die Verwendung des standardisierten ­CAN­open-Protokolls nach CiA 301 und der gerätespezifischen Profile wie CiA 402 verringert den Entwicklungsaufwand für die Steuerungssoftware. Für die Entwickler erhöht sich die Flexibilität, da einzelne Komponenten ohne größere Änderungen ausgetauscht werden können. Wird z.B. ein Schrittmotor mit zugehöriger Steuerung durch einen DC-Motor mit einer Steuerung eines anderen Herstellers ersetzt, ändert sich die Steuerungssoftware der Maschine kaum, weil bei der Verwendung von CANopen-Profilen beide Antriebssysteme auf dem CAN-Bus fast gleich erscheinen. So wie die Größe von elektrischen Antriebssystemen und die Kosten sinken, so steigen die Anforderungen an die Leistungsfähigkeit und den Funktionsumfang. Selbst bei kleinen Geräten wird es immer wichtiger, die einzelnen Antriebe miteinander zu synchronisieren, um so komplexere Bewegungsabläufe realisieren zu können. Steuerungen für Kleinantriebe mit hoher Performance Für DC- und EC-Motoren mit 1 bis 700W Nennleistung bietet maxon motor mit Epos2 eine Familie von universellen Positioniersteuerungen an. Für den Einsatz in kompakten Maschinen wurden die Steuerungen Epos2 24/2 mit bis zu 48W Nennleistung und für OEMs die Epos2 Module 36/2 mit 72W Nennleistung entwickelt (Bild 1). Der Funktionsumfang dieser Steuerungen ist weitgehend identisch mit demjenigen der größeren Antriebssteuerungen der Serie. EC-Motoren können mit bis 100.000U/min betrieben werden, und aufgrund der maximalen Encoder-Strichzahl von 2.500.000Impulsen können hochauflösende Encoder eingesetzt werden. Dabei kann die Encoder-Eingangsfrequenz bis 5MHz betragen. Als Kommunikationsschnittstellen bieten diese Steuerungen neben ­CAN­open nach CiA 402 auch USB und RS232, sowie Gateway-Funktionen von USB oder RS232 zu CAN. Auch diese Kleinsteuerungen unterstützen eine Vielzahl von Betriebsmodi, so z.B. Position, Velocity oder Current Mode. Weiter finden sich Funktionen wie der \’Step/Direction Mode\‘ zur schrittweise geregelten Bewegung der Motorachse, oder der \’Master Encoder Mode\‘ zur Anwendung des Antriebs als elektronisches Getriebe. Mit der grafischen Benutzeroberfläche Epos Studio lassen sich die Steuerungen parametrisieren und die Regler einstellen. Synchronisation von mehreren Antrieben mit CANopen Für viele mehrachsige Anwendungen reicht es aus, wenn deren Antriebe unabhängig voneinander bewegt werden. Die Antriebssteuerungen werden dabei typischerweise im \’Profile Position Mode\‘ oder im \’Profile Velocity Mode\‘ betrieben. Um mehrere Antriebe synchron zu bewegen, wie dies für viele mehrachsige Positioniersysteme gefordert wird, spezifiziert CANopen mehrere Möglichkeiten. Eine bevorzugte Variante ist die Verwendung des \’Interpolated Position Mode\‘ (PVT, Position and Velocity versus Time). Die Maschinensteuerung berechnet dabei die Bewegung aller Antriebe, generiert periodisch aus Position und Geschwindigkeit bestehende Stützpunkte und schreibt diese in den Zwischenspeicher der Positioniersteuerung. Diese wiederum berechnet anschließend durch lineare oder kubische Interpolation Sollwerte für die Positionsregelung. Die lokalen Timer der Positioniersteuerungen können dabei mit Sync-Meldungen auf dem CAN-Bus synchronisiert werden (Bild 2). Die Perioden zwischen den Stützpunkten des \’Interpolated Position Mode\‘ sind typischerweise 10 bis 100ms, womit die Buslast und die Echtzeitanforderungen an den Bus-Master gering sind. Ein Nachteil dieses Betriebsmodus ist hingegen, dass sich die Bewegung nicht innerhalb sehr kurzer Zeit ändern lässt. Sollte die Bewegung z.B. zusätzlich mit externen Sensoren (Vision, Encoder von Förderband) synchronisiert werden, ist diese Art der Bewegungsplanung und Regelung zu langsam. Mögliche Anwendungen, bei denen der Interpolated Position Mode sinnvoll ist, sind das automatische Nachführen von Teleskop- und Solarspiegeln, oder das Steuern von Werkzeugmaschinen, bei denen die Bewegungen der Achsen fest vorgegeben sind. Eine höhere Dynamik in der Bewegungsplanung lässt sich erreichen, wenn die Bewegungsplanung und ein Teil der Antriebsregelung vollständig im CANopen Master vorgenommen wird, z.B. mit einem Positionsregler im Master und unterlagertem Geschwindigkeitsregler in den Antriebssteuerungen (Bild 3). Die Steuerungen werden dann im \’Profile Velocity Mode\‘ betrieben, wobei darauf geachtet werden muss, dass Sollwerte sofort übernommen werden, da andernfalls der Positions-Regelkreis nicht geschlossen werden kann. Die Positioniersteuerungen bieten zusätzlich einen reinen \’Velocity Mode\‘, bei dem die Geschwindigkeits-Sollwerte direkt der Regelung zugeführt werden, was zu einer hohen Regeldynamik führt. Die Buslast und die Anforderungen an die Echtzeitfähigkeit des Masters sind bei dieser Steuerungs-Architektur höher, die Zykluszeiten liegen hier typischerweise bei 2 bis 5ms. Eine weitere Möglichkeit besteht darin, den Positions- und Geschwindigkeitsregler im Master zu realisieren und den Antriebssteuerungen via CAN-Bus lediglich das Drehmoment, das heißt Stromsollwerte vorzugeben. CANopen spezifiziert dazu den \’Profile Torque Mode\‘ für Motion-Control-Produkte. Die Epos2-Steuerungen bieten alternativ den \’Current Mode\‘, bei dem Stromsollwerte via CAN-Bus direkt dem Stromregler der Steuerung zugeführt werden (Bild 4). Damit wird die hohe Dynamik, die bei eisenlosen Motoren nötig ist, erreicht. Die direkte Kommandierung des Stromsollwertes ermöglicht es, im Master auch komplexere Regelungsalgorithmen zu implementieren, wie dies z.B. für Robotersysteme mit nichtlinearer Dynamik erforderlich ist. Allerdings erfordert diese Architektur neben ausreichender Rechenleistung auf dem Master auch eine harte Echtzeitfähigkeit, da die Zykluszeiten im Bereich = 1ms liegen sollten. Solch kurze Zykluszeiten führen zu einer hohen Auslastung des CAN-Busses. Ein Beispiel: Das Senden einer CAN-Meldung mit einer Stromvorgabe und das Empfangen einer Meldung mit der aktuellen Position dauert bei einer Übertragungsrate von 1Mb/s knapp 200µs pro Antrieb (vgl. Tabelle 1). Schon eine gewünschte Zykluszeit von 0,5ms bei nur zwei Antrieben auf einem CAN-Bus führt bereits zur CAN-Bus-Auslastung von ca. 80%. Anwendungsbeispiel PocketDelta-Roboter Für Anwendungen in der Mikrotechnik hat die Firma asyril S.A. aus Villaz-St-Pierre (Schweiz) einen Kleinstroboter mit einer Delta-Kinematik entwickelt. Bei dieser Roboterkinematik wird eine kleine Plattform mit dem Greifwerkzeug durch Parallelogramme im 3D-Raum geführt. Die Parallelogramme werden dabei von drei Motoren angetrieben, die alle an einer Basis montiert sind (Bild 5). Die bewegte Masse des Roboters ist damit gering, womit hohe Beschleunigungen und Geschwindigkeiten realisierbar sind. Als Antriebe werden maxon EC-i-Motoren mit 40mm Durchmesser und 50W Nennleistung eingesetzt. Diese Motoren haben aufgrund ihres innenliegenden, mehrpoligen Rotors kleine Zeitkons-tanten und damit eine hohe Dynamik sowie eine hohe Drehmomentdichte. Betrieben werden diese Motoren von Positioniersteuerungen des Typs Epos2 Module 36/2. Die modularen, kompakten Steuerungen sind in die Kartensteckplätze einer Trägerplatine gesteckt, die für kleine Roboter mit bis zu vier Antrieben entwickelt wurde (Bild 6). Als Master-Steuerung wird ein ARM11 Prozessor mit integrierten CAN-Kontrollern eingesetzt. Dieser Prozessor sitzt ebenfalls auf der Trägerplatine und kommuniziert mit den Steuerungen via CAN-Bus. Weitere Epos2-Steuerungen, z.B. für Zuführsysteme oder Transfer-Achsen, oder auch andere CANopen-Geräte könnten über Steckverbinder an den Master angeschlossen werden. Hochdynamische Roboter wie der PocketDelta, der Beschleunigungen von 5g und Geschwindigkeiten von 2m/s erreichen kann, stellen hohe Anforderungen an die Regelung der Antriebe. Die Bewegungsgleichungen solcher Systeme sind normalerweise nichtlinear und zwischen den einzelnen Antrieben auch gekoppelt. Um auch bei hohen Beschleunigungen und Geschwindigkeiten die Bahnfehler auf wenige Mik-rometer reduzieren zu können, wird neben einer speziell ausgelegten Regelung auch eine Vorsteuerung mit der Berechnung der Bewegungsgleichungen des gesamten Roboters eingesetzt. Die Epos2 Module 36/2-Steuerungen werden im \’Current Mode\‘ betrieben. Der Master berechnet neben der Bewegungsplanung, die für alle Antriebe synchron erfolgen muss, auch die Regelungsalgorithmen und die Vorsteuerung des Roboters. Die resultierenden Stromsollwerte übergibt der Master dann via CAN-Bus an die Steuerungen. Die aktuellen Motorpositionen werden mit hochauflösenden Encodern erfasst und von den Steuerungen via CAN-Bus an den Master gesandt. Somit ist die Positions- und Geschwindigkeitsregelung über den CAN-Bus geschlossen (Bild 4). Mit einer optimierten Definition von PDOs mit möglichst kleiner Datenlänge, sowie einer Aufteilung der verschiedenen Antriebssteuerungen auf zwei CAN-Busse können Zykluszeiten fur die Regelung von deutlich unter einer Millisekunde erreicht werden. Fazit Der CAN-Bus wird nicht zuletzt aufgrund seiner geringen Kosten auch bei kompakten Maschinen und Apparaten eingesetzt. Mit den Positioniersteuerungen Epos2 24/2 und Epos2 Module 36/2 bietet maxon motor ­CAN­open-fähige Antriebslösungen für enge Platzverhältnisse. Da die Steuerungen verschiedene Betriebsmodi ermöglichen, einschließlich dem \’Interpolated Position Mode\‘, lassen sich mehrere Antriebe via CAN-Bus synchronisieren. Wie das Beispiel der Steuerung für den PocketDelta-Roboter zeigt, ist es also möglich, anspruchsvolle Motion Control-Anwendungen mittels CAN-Bus zu realisieren.