DE4233881A1 - Schrittmotor und Verfahren zur Erzielung hoher Positioniergenauigkeit - Google Patents
Schrittmotor und Verfahren zur Erzielung hoher PositioniergenauigkeitInfo
- Publication number
- DE4233881A1 DE4233881A1 DE19924233881 DE4233881A DE4233881A1 DE 4233881 A1 DE4233881 A1 DE 4233881A1 DE 19924233881 DE19924233881 DE 19924233881 DE 4233881 A DE4233881 A DE 4233881A DE 4233881 A1 DE4233881 A1 DE 4233881A1
- Authority
- DE
- Germany
- Prior art keywords
- new
- sin
- function
- parameter set
- drive function
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
- 238000000034 method Methods 0.000 title claims description 77
- 230000008569 process Effects 0.000 title claims description 17
- 238000012937 correction Methods 0.000 title description 14
- 238000013459 approach Methods 0.000 claims description 24
- 238000006073 displacement reaction Methods 0.000 claims description 12
- 238000011156 evaluation Methods 0.000 claims description 11
- 238000005259 measurement Methods 0.000 claims description 8
- 238000005457 optimization Methods 0.000 claims description 7
- 230000006872 improvement Effects 0.000 claims description 6
- 230000007423 decrease Effects 0.000 claims description 3
- 230000007704 transition Effects 0.000 claims 3
- XEEYBQQBJWHFJM-UHFFFAOYSA-N Iron Chemical group [Fe] XEEYBQQBJWHFJM-UHFFFAOYSA-N 0.000 abstract description 6
- 230000033001 locomotion Effects 0.000 abstract description 4
- 230000008859 change Effects 0.000 description 5
- 238000004804 winding Methods 0.000 description 5
- 230000000737 periodic effect Effects 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000010429 evolutionary process Effects 0.000 description 2
- 239000000945 filler Substances 0.000 description 2
- 230000005021 gait Effects 0.000 description 2
- 230000035772 mutation Effects 0.000 description 2
- 238000003786 synthesis reaction Methods 0.000 description 2
- 240000006829 Ficus sundaica Species 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 229910052742 iron Inorganic materials 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000005309 stochastic process Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P8/00—Arrangements for controlling dynamo-electric motors rotating step by step
- H02P8/32—Reducing overshoot or oscillation, e.g. damping
-
- H—ELECTRICITY
- H02—GENERATION; CONVERSION OR DISTRIBUTION OF ELECTRIC POWER
- H02P—CONTROL OR REGULATION OF ELECTRIC MOTORS, ELECTRIC GENERATORS OR DYNAMO-ELECTRIC CONVERTERS; CONTROLLING TRANSFORMERS, REACTORS OR CHOKE COILS
- H02P8/00—Arrangements for controlling dynamo-electric motors rotating step by step
- H02P8/36—Protection against faults, e.g. against overheating or step-out; Indicating faults
Landscapes
- Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Exposure And Positioning Against Photoresist Photosensitive Materials (AREA)
- Control Of Position Or Direction (AREA)
Description
Die Erfindung betrifft einen Schrittmotor nach dem
Sawyer-Prinzip und ein Verfahren zur Erzielung hoher
Positioniergenauigkeit wie es insbesondere für Planardirektantriebe
zur genauen Positionierung von Objekten
Anwendung findet.
Es sind lineare und planare Schrittmotore mit Punkt-zu-
Punkt-Steuerung zum Anfahren bestimmter Positionen bekannt,
deren Genauigkeit bei der Positionierung in einem
Bereich zwischen ±30 Mikrometer liegt.
Dabei ergibt sich aber der Effekt, daß der zurückgelegte
Weg des Motors innerhalb einer Rasterperiode nicht proportional
zum eingestellten Phasenwinkel der Antriebsströme
verläuft, sondern periodisch um den Sollwert
schwankt, d. h., daß bei gleichmäßiger Erhöhung des Phasenwinkels
die Geschwindigkeit des Motors nicht konstant ist,
sondern periodisch schwankt. Das hat zweierlei Konsequenzen:
einerseits kann keine gleichförmige Geschwindigkeit erreicht
werden, und andererseits ist es nicht möglich, eine
genaue Positionierung innerhalb einer Rasterperiode zu
realisieren. Die "klassische" Ansteuerung eines solchen
Motors erfolgt mit einem sinus- und einem cosinusförmigen
oder einem fest modifizierten Stromverlauf, wobei Fehlertoleranzen
keine Berücksichtigung finden.
Messungen zeigten aber, daß besagte periodische Abweichung
zur linearen Bewegung existiert und daß auch die Kraft in
Bewegungsrichtung nicht konstant ist, nämlich bei maximalem
Wegfehler ist sie am geringsten und bei den Fehler-Null-
Durchgängen am größten.
Diesem Mangel wird nach dem Stand der Technik durch Regeleinrichtungen
begegnet.
Nachteilbehaftet sind solche technischen Lösungen dadurch,
daß sie einen zusätzlichen Aufwand an Regeleinrichtungen
benötigen.
Ein mitgeführter Sensorkopf auf dem Läufer führt zu einer
Erhöhung der Massenträgheit, verschlechtert die Zuverlässigkeit,
insbesondere im Falle von Verschmutzung, und erhöht
die Anzahl der mitgeführten Kabel.
Die Erfindung verfolgt das Ziel, einen Schrittmotor insbesondere
für Planarantriebe zu schaffen, der die Mängel
des Standes der Technik mindert und beseitigt.
Insbesondere soll dabei der im Stand der Technik bekannte
Aufwand für einen Regelmechanismus eingespart werden.
Der Erfindung liegt die Aufgabe zugrunde, einen Schrittmotor
und ein Verfahren zur Erzielung einer hohen Positioniergenauigkeit
für Planarantriebe zu schaffen, der
einen einfachen Aufbau aufweist und ohne Regeleinrichtung
eine genaue Positionierung ermöglicht.
Um mit einem solchen Motor ohne Lage- und Geschwindigkeitsregelung
eine hohe Positioniergenauigkeit zu erreichen,
müssen diese Abweichungen kompensiert werden. Das kann
durch 2 unterschiedliche Verfahren realisiert werden:
Ziel dabei ist es, eine Antriebsfunktion abweichend von
einer Sinus- und Cosinusfunktion zu finden, so daß ein
linearer Zusammenhang zwischen Phasenwinkel und zurückgelegtem
Weg entsteht und Geometrietoleranzen in Stator
und Läufer keine Minderung der Genauigkeit zur Folge
haben.
(s = Weg, p = mech. Rasterperiode, ϕ = Phasenwinkel)
Da es schwierig ist, dieses Problem analytisch zu lösen,
wurde ein Optimierungsansatz versucht. Zunächst wurde
meßtechnisch ermittelt, wie der Motor reagiert, wenn
sich beide Antriebsströme so ändern, daß ihr Verhältnis
zueinander gleich bleibt:
I₁ = n · I₂
n = const.
n = const.
Wie zu erwarten, änderte sich die Lage des Motors nicht.
Bleibt das Verhältnis der Antriebsströme konstant, so
ändert sich auch das Verhältnis der Kräfte, die die
Spulen ausüben, nicht, folglich stellt sich immer die
gleiche Lage ein. Damit wird sichergestellt, daß die
Position des Motors lediglich vom Verhältnis der Antriebsströme
zueinander bestimmt wird.
Als zweiter Schritt wird eine der meßtechnisch ermittelten
Tabellen über den Zusammenhang Phasenlage-Ort des Motors
bei sinus-/cosinusförmiger Ansteuerung hergenommen und auf
den Zusammenhang Verhältnis der Antriebsströme/Ort des
Motors umgerechnent:
Durch die so erhaltene Tabelle bestand nun die Möglichkeit,
durch Interpolation zu jedem Antriebsstromverhältnis den
entsprechenden Ort des Motors und umgekehrt zu jedem Ort
das Antriebsstromverhältnis zu ermitteln.
Das Ziel der sich anschließenden Optimierung bestand nun
darin, eine Antriebsfunktion zu finden, bei der sich Stromverhältnisse
einstellen, die zu einem linearen Zusammenhang
zwischen Argument und Ort führen. Um letztlich einen analytischen
Ausdruck für eine solche Funktion zu erhalten,
wurde ein Ansatz nach der Fouriersynthese gewählt, deren
Koeffizienten optimiert werden sollten. Ein weiterer Grund
für diesen Ansatz bestand darin, daß in jedem Fall eine
periodische Funktion gesucht ist, für die sich die Fouriersynthese
besonders gut eignet.
f(ϕ) = a · sin ϕ + b · sin (3ϕ) + c · sin (5ϕ)
Wie man sieht, wurden nur ungeradzahlige Harmonische gewählt,
aus dem Grund, weil die Funktion quadrantensymmetrisch
bleiben sollte, da sie ja jeweils als Original (entspricht
Sinus) und 90° phasenverschoben (entspricht Cosinus) zum
Einsatz kommen sollte.
Als Optimierungsverfahren wurde ein stochastisches Verfahren
gewählt, welches auch Evolutionsverfahren genannt wird. Ein
solches Verfahren bewährt sich besonders dann, wenn Größen
verarbeitet werden sollen, die nicht analytisch formulierbar
sind (in diesem Falle o. g. meßtechnisch erfaßte Tabelle).
Das Evolutionsverfahren ist eine aus der Entwicklung der
Natur entlehnte Vorgehensweise: Aus einem zu optimierenden
Parametersatz ("Eltern") werden durch Behandlung mit einer
meist Gaussförmigen Zufallsfunktion "Mutanten" ("Nachkommen")
gebildet. Diese werden mittels einer Bewertungsfunktion auf
ihre "Tauglichkeit" überprüft, was durch Orientierung an
einer Zielfunktion geschieht. Der "Nachkomme", der dabei am
besten abschneidet (am dichtesten am Optimum liegt), wird
im nächsten Zyklus "Elter".
Das Optimum ist erreicht, wenn s(pakt) gegen 0 geht, deshalb
die Zielfunktion:
s(pakt) → 0
Mit Hilfe dieses Verfahrens wurde folgende Antriebsfunktion
ermittelt:
f(ϕ) = sin (ϕ) + 0,1 sin (3ϕ)
Diese Funktion realisiert einen Linearitätsfehler von
weniger als 10 µm. Es zeigten sich aber bei der Evolution
Schwierigkeiten, das Optimum zu erreichen. Deshalb wurde
zusätzlich ein anderes Verfahren zur Korrektur angewendet.
Dieses Verfahren besteht in der Umrechnung des (sich linear
ändernden) logischen Phasenwinkels in einen neuen physischen
Phasenwinkel, der als Argument in die Antriebsfunktion eingeht,
so daß sich ein linearer Zusammenhang zwischen dem
logischen Phasenwinkel und dem Weg ergibt:
ϕphys = f (ϕlog)
Um dieses Verfahren zu realisieren, bedarf es einer wesentlich
höheren Auflösung innerhalb der Rasterperiode, damit
genügend Stützstellen zur Verfügung stehen, aus denen diejenigen
ausgewählt werden können, die linear verteilt sind.
Zur Lösung des Problems wurde ein Weg beschritten, der eine
Kombination beider genannten Verfahren darstellt.
Zunächst wurde eine verbesserte Antriebsfunktion konstruiert,
die aus der Geradenapproximation der im ersten Verfahren ermittelten
Antriebsfunktion hervorgeht. Mit ihr ist es
möglich, in jeder Lage des Läufers die maximal mögliche
Kraft zu erzeugen und gleichzeitig eine verbesserte Auflösung
bei gleicher Stützstellenzahl (im Beispiel durch
8-Bit-DA-Wandler vorgegeben mit 256) zu erreichen. Grundlage
ist, immer nur einen Antriebsstrom zu verändern,
während der andere konstant auf seinem Maximal- (oder Minimal-)Wert
gehalten wird. Erreicht ersterer seine obere
(oder untere) Grenze, wird er festgehalten und der andere
Antriebsstrom verändert, bis dieser seine entgegengesetzte
Grenze erreicht usw. Es ergibt sich eine periodische,
trapezförmige Antriebsfunktion.
Der Anstieg der Funktionen in den einzelnen Abschnitten
ist 0,1 oder -1. Er wurde so gewählt, damit sich bei
einem Schritt eine Stromänderung um ein Digit ergibt. Da
die Aussteuerung symmetrisch erfolgen muß, können im Beispiel
nur 255 der 256 möglichen Stromwerte genutzt werden
(von -127 bis +127). Damit ergibt sich für die Auflösung
eine maximale Anzahl von verschiedenen Zuständen, von
8×127 = 1016, was einer durchschnittlichen mechanischen
Schrittweite von ca. 0,62 µm entspricht.
Durch die Veränderung von jeweils nur einem Strom bewegt
sich der Läufer nur halb so schnell, wie er das bei gleichzeitiger
Veränderung beider Ströme tun würde, d. h. die Auflösung
steigt auf das Doppelte der sin/cos-Ansteuerung.
Gleichzeitig stellt sich immer die maximal mögliche Kraft
ein, da ein Strom immer seinen maximalen Betrag hat.
Als zweites wurde eine Indexfunktion in Form einer Tabelle
erstellt, die aus den möglichen 1016 Positionen innerhalb
der mech. Rasterperiode solche 256 Positionen aussucht, die
möglichst genau linear über die Periode verteilt sind. Läßt
man also einen Index von 0 bis 255 laufen, liest die entsprechenden
Werte aus der Tabelle und setzt sie in die
Trapez-Antriebsfunktion um, so bewegt sich der Läufer in
einem linearen Raster mit der Auflösung von 1/256 pro mech.
Rasterperiode, was einer Schrittweite von 2,5 µm entspricht.
Die Breite der gaussverteilten Zufallsfunktion bestimmt
dabei die Mutationsstärke und wird auch als mittlere Schrittweite
bezeichnet. Sie hat entscheidenden Einfluß auf den
Verlauf der Evolution, nur ein schmaler Bereich für diesen
Wert führt zu einer Konvergenz (Evolutionsfenster). Deshalb
ist es angebracht, die mittlere Schrittweite als
weiteren Parameter mit zu evolutionieren (dynamische
Schrittweitensteuerung).
Im vorliegenden Fall wurde ein Verfahren gewählt, was aus
einem Parametersatz (Koeffizienten des Fouriere-Ansatzes)
6 Nachkommen erzeugt: 2 mit der aktuellen mittleren
Schrittweite, 2 mit der doppelten und 2 mit der halben
aktuellen mittleren Schrittweite. Nach Bewertung wurde die
mittlere Schrittweite, mit der der beste Nachkomme erzeugt
wurde, als neue aktuelle Schrittweite übernommen. Auf diese
Weise wird gewährleistet, daß die mittlere Schrittweite
während der gesamten Evolution optimal bleibt.
Der beschriebene Algorithmus wurde in Form einer Turbo-
Pascal-Unit als universell verwendbares Modul implementiert.
Der Nutzer muß lediglich Bewertungs-, Ziel- und Abbruchfunktion
definieren.
Die Bewertungsfunktion bestand darin, den jeweils aktuellen
Parametersatz in den Ansatz einzusetzen, über eine Periode
mit der "Motortabelle" zu bewerten und die Linearitätsfehler
quadratisch zu addieren:
pakt = aktueller Parametersatz
s(pakt) = Bewertung des aktuellen Parametersatzes
Tabfkt = durch Interpolation aus der Tabelle gewonnener Ort des Motors in Abhängigkeit vom Verhältnis der Antriebsströme
f(x,pakt) = Fourier-Reihe mit aktuellen Parametern
s(pakt) = Bewertung des aktuellen Parametersatzes
Tabfkt = durch Interpolation aus der Tabelle gewonnener Ort des Motors in Abhängigkeit vom Verhältnis der Antriebsströme
f(x,pakt) = Fourier-Reihe mit aktuellen Parametern
Zur Generierung der Index-Tabelle ist ein Turbo-Pascal-
Programm erstellt worden, was diesen Vorgang automatisiert.
Dazu wurde neben dem Steuerrechner ein Laser-Wegmeßsystem
eingesetzt, das mit dem Rechner gekoppelt wurde und die
aktuelle Läuferposition mißt. Das Programm arbeitet nach
einem Itterationsverfahren und optimiert zunächst eine
geringere Anzahl von Stützstellen (32 oder 64, einstellbar).
Die Optimierung erfolgt jeweils in zwei Schritten:
Mit Hilfe des Programmes werden durch den Läufer nacheinander
alle zu optimierenden Positionen angefahren und
korrigiert, so daß keine negativen Fehler mehr auftreten.
Danach wird der Läufer in die Ausgangsposition zurückgeführt,
und der Vorgang wiederholt sich. Jetzt werden jedoch
alle Positionen so korrigiert, daß keine positiven
Abweichungen mehr entstehen.
Beide Schritte werden so lange wiederholt, bis der maximale
Fehler unter einem Schwellwert (im Beispiel bei ca. 1 µm
Abweichung) liegt. Diese Vorgehensweise verhindert ein
Pendeln um eine Position und damit ein "Hängen" des Programms.
Nach Abschluß dieses Prozesses existiert eine bereits erwähnte
Indextabelle mit 32 oder 64 Stützstellen. Um die
volle Auflösung von 256 Stützstellen zu erreichen, werden
die fehlenden Zwischenwerte linear interpoliert. Die Genauigkeit
dieser Interpolation ist ausreichend, da eine
höhere Genauigkeit sowieso im Digitalisierungsfehler untergehen
würde.
Man könnte leicht annehmen, daß das Programm, wenn es 64
Werte optimieren kann, auch gleich die gesamte Tabelle
generieren könnte. Aber das hat zwei Nachteile:
- 1. Die Arbeitsdauer des Programmes würde sich stark verlängern.
- 2. Die Genauigkeit wäre schlechter, da beim Anfahren derart eng benachbarter Positionen Schleifeffekte durch Reibung der Leitungs- und Luftzuführung auftreten.
Mit dem beschriebenen Verfahren konnte im Beispiel eine
Positioniergenauigkeit von ±5 µm gegenüber ±30 µm
ohne Korrektur bzw. ±10 µm mit Korrektur nach dem
1. Verfahren erreicht werden, was bei den gegebenen Bedingungen
(8-Bit-DA-Wandler, Art der Führung der Versorgungsleistungen
. . .) dem Maximum an prinzipiell erreichbarer
Genauigkeit ohne Verwendung zusätzlicher
Sensoren entspricht.
Die Erfindung soll anhand des nachfolgenden Ausführungsbeispieles
und der nachfolgenden Zeichnungen näher beschrieben werden.
Die Figuren zeigen im einzelnen:
Fig. 1 eine prinzipielle Darstellung der erfindungsgemäßen
Gesamtanordnung, bei der ein Laser-Wegmeßsystem
zum Einsatz gebracht wird. Das Laser-Wegmeßsystem
wird jedoch nur für den Ablauf der erfindungsgemäßen
Verfahrensschritte benötigt,
Fig. 2 eine prinzipielle Darstellung des erfindungsgemäßen
Motors als Ausschnitt und Teilschnitt,
Fig. 3 ein prinzipielles Bild zur Durchführung der Verfahrensschritte.
Dabei ist gezeigt, daß aus dem
Eltern-Parametersatz über den Evolutionsprozeß
als Sohn N der beste Nachkomme ermittelt wird
und dieser beste Sohn wieder "Elter" wird,
Fig. 4 einen prinzipiellen Verlauf der Trapezfunktionen
aus I₁ und I₂,
Fig. 5 eine Sinus-/Cosinusansteuerung ohne Korrektur,
Fig. 6 der Kurvenverlauf der Ansteuerung des Motors mit
Korrekturtabelle. Dabei sind die Abweichungen auf
etwa ¹/₁₀ der Größe aus Fig. 5 gesenkt worden,
Fig. 7 prinzipiell eine Variante einer Läufer-Stator-
Kombination.
Auch eine solche Variante kann mit dem erfindungsgemäßen Verfahren soweit in seiner Positionierqualität gesteigert werden, daß eine Abweichung nach Fig. 6 möglich ist.
Auch eine solche Variante kann mit dem erfindungsgemäßen Verfahren soweit in seiner Positionierqualität gesteigert werden, daß eine Abweichung nach Fig. 6 möglich ist.
Zur weiteren Erläuterung der erfindungsgemäßen Verfahrensweise
wird folgende Beschreibung gegeben:
- - Personalcomputer mit eingesetzten DA-Wandler-Karten und Auswertekarte für Laser-Wegmeßsystem,
- - an den DA-Ausgängen werden Leistungsverstärker zur Motoransteuerung angeschlossen,
- - Motorspulen werden an die Ausgänge der Leistungsverstärker angeschlossen,
- - auf dem Motor ist ein Tripelspiegel montiert,
- - Laserinterferometer (feststehend) beleuchtet diesen Tripelspiegel und kann damit den Abstand zu ihm messen,
- - Ausgang des Interferometers ist wiederum mit der im PC befindlichen Auswertekarte verbunden.
Bei den hier verwendeten Schrittmotoren handelt es sich um
Zweiphasen-Systeme. Sie benötigen zur Erzeugung einer Vorwärtsbewegung
zwei verschieden gesteuerte Ströme. Herkömmlicherweise
werden dazu eine Sinus- und eine Cosinusfunktion
verwendet (auch interpretierbar als Sinusfunktion und eine
weitere um 90° verschobene Sinusfunktion). Diese Funktionen
werden im PC generiert, über die DA-Wandler in der Form von
Spannungen an die Leistungsverstärker weitergegeben und
dann als entsprechende Ströme an die Motorspulen weitergeleitet.
Durchläuft das Argument der Sinus- (und der Cosinus-)Funktion
einmal die Werte von 0° bis 360°, so bewegt sich der
Motor um eine mechanische Rasterperiode vorwärts. Soll
eine größere Strecke zurückgelegt werden, so wird der Vorgang
zyklisch wiederholt.
Dabei ist jedoch der Zusammenhang zwischen eingestelltem
Argument und erreichter Motorposition nicht linear, was
zu Positionierfehlern führt.
Suchen einer verbesserten Antriebsfunktion abweichend von
der Sinus/Cosinusfunktion, die diese Nichtlinearität verringert.
- 1. Aufstellen eines Ansatzes nach Fourier für die neue Antriebsfunktion der Art: f(x) = a₁ · sin x + a₂ · sin 3x + a₃ · sin 5x + . . .
- 2. Belegung der Parameter a₁, a₂, . . . mit Anfangswerten, z. B. a₁ = 1, der Rest = 0.
- 3. "Mutieren" dieses Parametersatzes nach der Evolutionsstrategie s. Abb., und damit werden sechs neue Parametersätze geschaffen.
- 4. Einsetzen der gewonnenen Parametersätze in den Ansatz.
- 5. Test auf Tauglichkeit des jeweiligen Parametersatzes:
- - Motor mit der sich aus dem Ansatz und dem eingesetzten aktuellen Parametersatz ergebenden Antriebsfunktion über eine mechanische Rasterperiode fahren lassen (Argument x von 0° bis 360° in z. B. 256 Schritten laufen lassen und f(x) auf DA-Wandler ausgeben).
- - Messung der Positionierfehler mittels Laser-Wegmeßsystem bei jedem Schritt.
- - Quadratisches Aufsummieren aller Positionierfehler.
- - Diese Fehlersumme ist Maß für die Güte des verwendeten Parametersatzes, derjenige mit der kleineren Fehlersumme ist der bessere.
- - Anwendung dieser Bewertung auf jeden der 6 Parametersätze und Ermittlung des "Gewinners".
- 6. Mit dem besten dere 6 Parametersätze zu Schritt 3.
- 7. Wiederholung der beschriebenen Abfolge, bis die Fehlersumme hinreichend klein ist oder sich nicht mehr nennenswert verbessert.
- 8. Die gesuchte Antriebsfunktion erhält man durch Einsetzen des letzten (besten) Parametersatzes unmittelbar vor dem Abbruch in den Ansatz.
Die einzelnen Schritte werden durch den PC gesteuert.
Es ist eine Verbesserung der Positioniergenauigkeit auf
ca. ±10 µm erreichbar.
Suchen einer Tabelle, deren Einträge Argumente der bei III.
ermittelten Antriebsfunktion zur Ansteuerung des Schrittmotors
sind. Diese müssen so beschaffen sein, daß der Motor beim
Einsetzen dieser Einträge ihrer Reihenfolge nach in die ermittelte
Antriebsfunktion und Ausgabe der Funktionswerte
auf die DA-Wandler gleich große Schritte macht, d. h. sich
linear bewegt. Diese Tabelle bezieht sich auf eine mechanische
Rasterperiode. Sollen größere Strecken zurückgelegt
werden, so wird sie zyklisch ausgelesen.
- 1. Vorgabe der Sollposition entsprechend der Nummer des
Tabelleneintrages.
- - Jeder Tabelleneintrag korrespondiert mit einer bestimmten Position des Motors innerhalb einer mechanischen Rasterposition,
- - hat die Tabelle z. B. 256 Einträge, so berechnet sich
diese Positon aus:
Länge der mech. Rasterperiode/256 · Eintrags-Nummer
- 2. Variieren des Arguments x so lange, bis nach Einsetzen in Antriebsfunktion und Ausgabe des Funktionswertes auf die DA-Wandler der Motor die berechnete Sollposition tatsächlich erreicht. Die Kontrolle dieser Position erfolgt mit einem Laser-Wegmeßsystem.
- 3. Wurde das Argument x gefunden, mit dem die Sollposition erreicht wird, so wird dieses auf den aktuellen Eintrag in der Tabelle geschrieben.
- 4. Mit der Nummer des nächsten Tabelleneintrages zu Punkt 2.
- 5. Vorgang läuft so lange, bis alle Tabelleneinträge gültige Daten erhalten haben.
- 6. Gesamtvorgang mehrmals wiederholen, dabei alle Tabelleneinträge
immer wieder überprüfen und korrigieren.
Dabei
- - zunächst alle negativen Fehler der Einträge korrigieren, und im nächsten Lauf
- - alle positiven Fehler der Einträge korrigieren.
- 7. Nutzung dieser Tabelle: Soll eine bestimmte Position angefahren werden, so wird das Argument des korrespondierenden Eintrages der Tabelle in die Antriebsfunktion eingesetzt und der sich ergebende Funktionswert über die DA-Wandler ausgegeben.
Auch dieser Vorgang wird durch den PC gesteuert. Er wird
einmalig für jeden Motor durchgeführt.
Für den Motoranwender entsteht dadurch kein höherer Aufwand.
Mit diesem Verfahren ist eine Verbesserung der Positioniergenauigkeit
auf ca. ±3 µm möglich.
Nachfolgend sollen noch einmal die Fig. 1 bis 7 näher
erläutert werden:
In Fig. 1, in der eine prinzipielle Darstellung der erfindungsgemäßen
Gesamtanordnung gezeigt ist, wird ein
Laser-Wegmeßsystem zum Einsatz gebracht.
Dabei besteht die Gesamtanordnung 1 aus einem Personalcomputer
2, einen Leistungsverstärker 3, DA-Wandler-Karten
4, einen Motor 5 mit Stator 6 und Läufer 7 sowie
einer daran angelenkten Preßluftzuführung 8 zur Ausbildung
eines Luftkissens 9 zwischen dem Stator 6 und dem Läufer 7.
Für den Läufer 7 ist eine Stromversorgung 12 vom Leistungsverstärker
aus vorgesehen. Auf dem Läufer 7 ist ein Spiegel
10 angeordnet, der auf das Laser-Wegmeßsystem 11 rückgekoppelt
ist. Das ist der prinzipielle Aufbau mit dem das
erfindungsgemäße Verfahren zur Erzielung hoher Positioniergenauigkeit
durchgeführt wird.
Der Spiegel 10 und das Laser-Wegmeßsystem 11 werden nur zur
Durchführung des Verfahrens benötigt. Beim Anwender werden
beide nicht mehr benötigt, da durch die Zuordnungstabellen
erfindungsgemäß die gewünschte hohe Genauigkeit erzielt
wird.
In Bild 2 ist prinzipiell ein erfindungsgemäß verwandter
planarer Schrittmotor gezeigt.
Im Schnitt ist zu erkennen, der Läufer 7 und der Stator 6,
zwischen dem sich ein Luftkissen 9 befindet.
In den Lücken des aus Weicheisen bestehenden Stator 6 ist
ein in bekannter Weise eingebrachter Füllstoff 29 vorgesehen.
Der Läufer 7 weist links eine Anordnung für den
Strom I₁ als eine Funktion = I = fp(ω · t) auf.
Dieser linke Bereich besteht aus einem Weicheisenkern 30,
einen Magneten 31 sowie einer Spule 32, die über den Strom
I₁ angesteuert ist. Hierzu befindet sich in bekannter Weise
im Versatz von ¼-Periode das zweite Spulensegment, das
ebenfalls aus Weicheisenkern 30, einen Magnet 31 und einen
Spulenkörper 32 besteht.
Dieser zweite Spulenkörper 32 wird vom Strom I₂ angesteuert,
wobei der Strom I₂ nach der Funktion
angesteuert ist, das heißt, der Strom I₂ ist um
versetzt.
In Fig. 3 ist prinzipiell ein Bild zur Durchführung
der Verfahrensschritte nach der Erfindung dargestellt.
Dabei ist gezeigt, daß aus dem "Eltern"-Parametersatz
über den Evolutionsprozeß als Sohn n der beste Nachkomme
ermittelt wird, und dieser beste Sohn n wieder Elter
wird.
Die Sollwerte 22 werden zum Elter-Parametersatz geführt.
Daraus werden nach den Verfahrensschritten 6 Nachkommen
23 erzeugt, das heißt, Sohn 1 bis Sohn 6.
Diese 6 Nachkommen werden über eine Bewertungsfunktion
24 bewertet. Dabei wird der beste Nachkomme 25 ermittelt.
Ein Abbruch 26 erfolgt, wenn Sohn gesuchter Parametersatz
ist, d. h. wenn sich keine weiteren Verbesserungen einstellen,
ansonsten wird Sohn bester Elter 28.
In Bild 4 ist prinzipiell der Verlauf der erfindungsgemäß
vorgesehenen Trapezfunktion aus I₁ und I₂ gezeigt.
Wie in Verfahrensanspruch 2 beschrieben, wird die Trapezfunktion
nach dem erfindungsgemäßen Kurvenverlauf 17 begradigt.
Dem beigefügt ist der erfindungsgemäße Kurvenverlauf
nach Trapezfunktion für den Strom I₂ für die Kurve
18. Die Kurve 18 ist in bekannter Weise gegenüber der
Kurve 17 um versetzt.
In Fig. 5 ist ein Kurvenverlauf nach einer Sinus/Cosinusansteuerung
ohne Korrekturtabelle gezeigt, wie er im Stand
der Technik vorkommt.
Die Kurve 19 stellt dabei einen qualitativen Kurvenverlauf
nach der Sinus/Cosinusansteuerung ohne Korrekturtabelle
dar.
In Fig. 6 ist der Kurvenverlauf 20 für den Gangfehler
des Schrittmotors innerhalb einer Rasterperiode bei Anwendung
einer Korrekturtabelle nach der Erfindung ge
zeigt.
Die Kurve 20 zeigt, daß sie wesentlich unter den Aus
schlägen der Kurve 19 liegt, d. h. es werden Ausschläge
von 3 µm erzielt.
In Fig. 7 ist noch einmal prinzipiell eine Variante
einer Läufer-Stator-Kombination gezeigt, die mit dem
erfindungsgemäßen Verfahren in seiner Genauigkeit er
höht werden kann. Dabei ist prinzipiell der Läufer 7
und der Stator 6 gezeigt.
Der Läufer 7 weist Wicklungen 14 auf, wobei ein Magnet
13 mit einem Nordpol 15 und einem Südpol 16 vorgesehen
ist. Die Wicklung 14 ist dabei horizontal eingebracht,
während die Wicklung nach Fig. 2 vertikal eingebracht
ist.
Für die Anwendung des erfindungsgemäßen Verfahrens ist
die Anordnung der Wicklungen 14 unerheblich.
1 Gesamtanordnung
2 Personalcomputer
3 Leistungsverstärker
4 DA-Wandler-Karten
5 Motor
6 Stator
7 Läufer
8 Preßluftzuführung
9 Luftkissen
10 Spiegel
11 Laser-Wegmeßsystem
12 Stromversorgung für Läufer
13 Magnet
14 Wicklung
15 Nordpol
16 Südpol
17 erfindungsgemäßer Kurvenverlauf nach der Trapezfunktion für den Strom I₁
18 erfindungsgemäßer Kurvenverlauf nach der Trapezfunktion für den Strom I₂
19 qualitativer Kurvenverlauf nach der Sinus-/Cosinus- Ansteuerung ohne Korrekturtabelle
20 Kurvenverlauf für den Gangfehler des Schrittmotors inner halb einer Rasterperiode durch Korrekturtabelle
21 Elter-Parametersatz
22 Sollwerte
23 Nachkommen
24 Bewertungsfunktion
25 Bester Nachkomme
26 Abbruch
27 Sohn ist gesuchter Parametersatz
28 Sohn wird bester Elter
29 Füllstoff
30 Weicheisenkern
31 Magnet
32 Spule
2 Personalcomputer
3 Leistungsverstärker
4 DA-Wandler-Karten
5 Motor
6 Stator
7 Läufer
8 Preßluftzuführung
9 Luftkissen
10 Spiegel
11 Laser-Wegmeßsystem
12 Stromversorgung für Läufer
13 Magnet
14 Wicklung
15 Nordpol
16 Südpol
17 erfindungsgemäßer Kurvenverlauf nach der Trapezfunktion für den Strom I₁
18 erfindungsgemäßer Kurvenverlauf nach der Trapezfunktion für den Strom I₂
19 qualitativer Kurvenverlauf nach der Sinus-/Cosinus- Ansteuerung ohne Korrekturtabelle
20 Kurvenverlauf für den Gangfehler des Schrittmotors inner halb einer Rasterperiode durch Korrekturtabelle
21 Elter-Parametersatz
22 Sollwerte
23 Nachkommen
24 Bewertungsfunktion
25 Bester Nachkomme
26 Abbruch
27 Sohn ist gesuchter Parametersatz
28 Sohn wird bester Elter
29 Füllstoff
30 Weicheisenkern
31 Magnet
32 Spule
Claims (7)
1. Schrittmotor und Verfahren zur Erzeugung einer hohen
Positioniergenauigkeit, dadurch gekennzeichnet, daß
eine Gesamtanordnung (1) aus einem personalcomputer
(2) mit zwei DA-Wandler-Karten (4) und Steuerprogramm,
einem Motor (5) mit Stator (6) und Läufer (7), einer
Zuordnungstabelle in x-Richtung und einer Zuordnungs
tabelle in y-Richtung gebildet ist, und daß folgende
Verfahrensschritte zur Erzeugung einer hohen Posi
tioniergenauigkeit realisiert werden.
- - Ermittlung einer verbesserten Antriebsfunktion durch Fourieransatz und Optimierung der Parameter,
- - Erzeugung einer Zuordnungs-(Index)Tabelle für eine
mechanische Rasterperiode, deren Einträge Phasen
winkel darstellen, die so beschaffen sind, daß bei
Ausgabe der Reihe nach äquidistante Schritte ent
stehen:
- 1. Vorgabe Sollposition entspr. Nr. des Tabellenein trages,
- 2. Variieren des Phasenwinkels, bis Sollposition erreicht ist,
- 3. Eintrag in Tabelle,
- 4. Punkt 1 mit nächstem Tabelleneintrag,
- - Solange wiederholen, bis Gesamt-Maximal-Abweichung einen Schwellwert unterschreitet.
2. Verfahren zur Erzielung hoher Positioniergenauigkeit
für einen Schrittmotor nach Anspruch 1, gekennzeichnet
durch folgende Verfahrensschritte:
- 1. Verfahrensschritt:
Erzeugung einer verbesserten Antriebsfunktion für den Schrittmotor, abweichend von der Sinus-/Cosinusfunktion, so daß Nichtlinearitäten verringert werden.- - Aufstellen eines Ansatzes nach Fourier für die An triebsfunktion mit ungeradzahligen Harmonischen zur Wahrung der Quadrantensymmetrie in der Art: f(x) = a₁ · sin x + a₂ · sin 3x + a₃ · sin 5x + . . . + an · sin (2n-1)x
- - Belegung der Parammeter a₁, a₂, . . ., an mit Anfangswerten.
- 1. Unterabschnitt: a₁ = 1, a₂ . . . an = 0Dadurch erhält man die reine Sinusfunktion.
- 2. Unterabschnitt:
Anwendung der Evolutionsstrategie.
In die Funktion f = a₁ · sin x + a₂ · sin 3x + a₃ · sin 5x + . . . + an · sin (2n-1)xwerden sechs neue Parametersätze von a₁ bis an einge setzt. Die Parametersätze werden für die beanspruchte Genauigkeit auf a₁ bis a₃ begrenzt.
Der erste neue Parametersatz lautet füra₁ = a1alt + ϕ,wobei ϕ nach der Gaußschen Normalverteilung zwischen -1 und +1 liegen kann, füra₂ = a2alt + ϕ.Da nach obiger Festlegung a2alt=0 ist, wird a2neu=ϕ, wobei wieder nach der Gaußschen Normalverteilung zwischen -1 und +1 liegen kann. Füra3neu = a3alt + ϕwird a3neu=ϕ, da nach dieser Festlegung a3alt=0 ist, wobei ϕ wieder nach der Gaußschen Normalverteilung zwischen -1 und +1 liegen kann.
Damit liegt der erste neue Parametersatz vor, der durch eine zufällige Bestimmung von ϕ erzeugt wurde. Zur Bestimmung des zweiten, dritten, vierten, fünften und sechsten neuen Parametersatz wird in gleicher Weise vorgegangen wie zur Bestimmung des ersten neuen Pa rametersatzes. Damit liegen 6 verschiedene Parameter sätze vor, von vorzugsweise a₁ bis a₃, die nacheinander in den Ansatz der oben genannten Antriebsfunktion einge setzt werden. - 3. Unterabschnitt:
Hier wird zu jeder der sechs neuen Antriebsfunktionen nunmehr der Schrittmotor über eine mechanische Raster periode gefahren. Dabei läuft der Schrittmotor über die Rasterperiode, vorzugsweise über 256=2⁸ Schritte. Für jeden dieser 256 Schritte gibt es linear verteilt eine Sollposition, die von dem jeweils gemessenen Posi tionswert abweicht. Diese Abweichungen werden mit einem Laserwegmeßsystem gemessen und quadratisch aufsummiert, so daß man ein Maß für die Tauglichkeit des jeweiligen Parametersatzes erhält. Derjenige Parametersatz, bei dem diese Summe am kleinsten ist, ist der geeignetste. Mit diesem am besten geeignetsten Parametersatz geht man zum zweiten Unterabschnitt zurück. Hierbei wendet man wieder die Evolutionsstrategie an. In die neue Funktion f(neu) = a₁ · sin x + a₂ · sin 3x + a₃ · sin 5x,bei der a₁ ungleich 1, a₂ ungleich 0 und a₃ ungleich 0 ge worden ist, legt man erneut über eine zufällige Auswahl sechs neue Parametersätze für a₁, a₂ und a₃ fest, wobei
das a1neu wieder aus a1alt + ϕ,
das a2neu wieder aus a2alt + ϕ und
das a3neu wieder aus a3alt + ϕ
bestimmt wird.
Für die nunmehr wieder 6 verschiedenen zufallbestimmten Parametersätze erfolgt ein Einsatz in die oben genannte Antriebsfunktion.
Der Schrittmotor bewegt sich jeweils wieder über eine mechanische Rasterperiode mit 256=2⁸ Schritten. Für diese 256 Schritte gibt es wieder linear verteilt jeweils eine Sollposition, die von jeweils gemessenem Positionswert abweicht. Die Abweichungen werden wieder quadratisch aufsummiert, so daß wieder ein Maß für die Tauglichkeit des jeweiligen Parametersatzes gewonnen wird. Dieser Kreislauf über Unterschritt 2 und 3 wird solange durchgeführt, bis keine Verbesserung mehr eintritt, das heißt, die Summe der quadratischen Fehler nicht mehr kleiner wird.
Vom letzten Durchlauf der beste Parametersatz wird in den Ansatz der oben genannten Antriebsfunktion eingesetzt, und damit ergibt sich die beste gewünschte An triebsfunktion mit dem geringsten Linearitätsfehler.
- 2. Verfahrensschritt:
In Auswertung der Optimierung nach Verfahrensschritt 1 ergab sich für den Parameter a₁=1 und für den Para meter a₂=0,07 und für den Parameter a₁=0 die damit erzeugte Antriebsfunktion als aproximierte Trapezfunktion (siehe Abbildung), dabei werden die an sich vor liegenden Kurvenstücke begradigt. - 3. Verfahrensschritt:
Diese nach Verfahrensschritt 2 aproximierte Trapezfunktion wird im folgenden generell als Antriebsfunktion verwendet. Für jeden zu erreichenden Sollpunkt der vor gesehenen 256=2⁸ Einzelsollpunkte wird ein Wert für den Einsatz in die Antriebsfunktion ermittelt, der dazu führt, daß der Motor den jeweiligen Sollpunkt tatsächlich erreicht. Dadurch ergibt sich für alle 256 Einzelsoll punkte eine Zuordnungstabelle, für die die einzelnen x-Werte zur Erreichung der gewollten Sollpunkte enthält.
Diese Zuordnungstabelle ermöglicht eine Verbesserung des Linearitätsverhaltens sowie eine Senkung des Positionier fehlers um eine Größenordnung.
Die Zuordnungstabelle wird wie folgt erzeugt:- 1. Der x-Wert der in die oben genannte Antriebsfunktion nach Verfahrensschritt 2 eingesetzt wird, wird solange variiert, bis der Motor die zugehörige Sollposition erreicht hat. Die Überprüfung erfolgt mittels Messung über ein Laser-Wegmeßsystem.
- 2. Danach erfolgt der Übergang zum nächsten Tabellenein trag, wobei der hierzu gehörige x-Wert in gleicher Weise variiert wird. Diese beiden Schritte erfolgen für alle Tabelleneinträge, so beispielsweise für die 256 Einzel sollpunkte.
- 3. Beim beschriebenen Ablauf werden die x-Werte so variiert, daß alle negativen Positionsfehler beseitigt werden. Zur Beseitigung der noch verbliebenen positiven Fehler wird der gleiche Ablauf wiederholt, wobei die x-Werte so variiert werden, daß alle positiven Fehler korrigiert werden.
- Dieser zuletzt genannte 1. und 2. Ablauf wird solange wieder holt, bis sich der maximale Fehler nicht mehr verkleinert. Mit der somit vorliegenden Zuordnungstabelle ist es möglich, die in der Sollspalte enthaltenen Positionen genau anzu fahren, indem der zugehörige x-Wert in der X-Wertspalte in die Antriebsfunktion nach Verfahrensschritt 2 eingesetzt wird. Dadurch ist es möglich, daß beim Anwender aufwendige Meßein richtungen und zugehörige Regeleinrichtungen nicht erforderlich sind. Der Anwender kann seinen Schrittmotor über das aufgezeigte Verfahren ohne Mittel mit einer genauen Positionierung betreiben.
3. Verfahren zur Erzielung hoher Positioniergenauigkeit
für einen Schrittmotor nach Anspruch 1, gekennzeichnet
durch folgende Verfahrensschritte:
- 1. Verfahrensschritt:
Erzeugung einer verbesserten Antriebsfunktion für den Schrittmotor, abweichend von der Sinus-Cosinusfunktion, so daß Nichtlinearitäten verringert werden.- - Aufstellen eines Ansatzes nach Fourier für die An triebsfunktion mit ungeradzahligen Harmonischen zur Wahrung der Quadrantensymmetrie in der Art: f(x) = a₁ · sin x + a₂ · sin 3x + a₃ · sin 5x + . . . + an · sin (2n-1)x
- - Belegung der Parameter a₁, a₂, . . ., an mit Anfangswerten.
- 1. Unterabschnitt: a₁ = 1, a₂ . . . an = 0Dadurch erhält man die reine Sinusfunktion fürf(x) = a₁ · sin x + a₂ · sin 3x + a₃ · sin 5x + . . . + an · sin (2n-1)x
- 2. Unterabschnitt:
Anwendung der Evolutionsstrategie.
In die Funktion f(x) = a₁ · sin x + a₂ · sin 3x + a₃ · sin 5x + . . . + an · sin (2n-1)xwerden sechs neue Parametersätze von a₁ bis an einge setzt. Die Parametersätze werden für die beanspruchte Genauigkeit auf a₁ bis a₃ begrenzt.
Der erste neue Parametersatz lautet füra₁ = a1alt + ϕwobei nach der Gaußschen Normalverteilung zwischen -1 und +1 liegen kann, füra₂ = a2alt + ϕDa nach obiger Feststellung a2alt=0 ist, wird a2neu=ϕ wobei ϕ wieder nach der Gaußschen Normalverteilung zwischen -1 und +1 liegen kann. Füra3neu = a3alt + ϕwird a3neu=ϕ, da nach dieser Festlegung a3alt=0 ist, wobei ϕ wieder nach der Gaußschen Normalverteilung zwischen -1 und +1 liegen kann.
Damit liegt der erste neue Parametersatz vor, der durch eine zufällige Bestimmung von ϕ erzeugt wurde. Zur Bestimmung des zweiten, dritten, vierten, fünften und sechsten neuen Parametersatz wird in gleicher Weise vorgegangen wie zur Bestimmung des ersten neuen Pa rametersatzes. Damit liegen 6 verschiedene Parameter sätze vor, den vorzugsweise a₁ bis a₃, die nacheinander in den Ansatz der oben genannten Antriebsfunktion einge setzt werden. - 3. Unterabschnitt:
Hier wird zu jeder der sechs neuen Antriebsfunktionen nunmehr der Schrittmacher über eine mechanische Raster periode gefahren. Dabei läuft der Schrittmotor über die Rasterperiode, vorzugsweise über 256=2⁸ Schritte. Für jeden dieser 256 Schritte gibt es linear verteilt eine Sollposition, die von dem jeweils gemessenen Posi tionswert abweicht. Diese Abweichungen werden mit einem Laserwegmeßsystem gemessen und quadratisch aufsummiert, so daß man ein Maß für die Tauglichkeit des jeweiligen Parametersatzes erhält. Derjenige Parametersatz, bei dem diese Summe am kleinsten ist, ist der geeignetste. Mit diesem am besten geeignetsten Parametersatz geht man zum zweiten Unterabschnitt zurück. Hierbei wendet man wieder die Evolutionsstrategie an. In diese neue Funktion f(neu) = a₁ · sin x + a₂ · sin 3x + a₃ · sin 5x,bei der a₁ ungleich 1, a₂ ungleich 0 und a₃ ungleich 0 ge worden sind, legt man erneut über eine zufällige Auswahl sechs neue Parametersätze für a₁, a₂ und a₃ fest, wobei
das a1neu wieder aus a1alt + ϕ,
das a2neu wieder aus a2alt + ϕ und
das a3neu wieder aus a3alt + ϕ
bestimmt wird.
Für die nunmehr wieder 6 verschiedenen zufallbestimmten Parametersätze erfolgt ein Einsatz in die oben genannte Antriebsfunktion.
Der Schrittmotor bewegt sich jeweils wieder über eine mechanische Rasterperiode mit 256=2⁸ Schritten. Für diese 256 Schritte gibt es wieder linear verteilt jeweils eine Sollposition, die von jeweils gemessenen Positionswert abweicht. Die Abweichungen werden wieder quadratisch aufsummiert, so daß man wieder ein Maß für die Tauglichkeit des jeweiligen Parametersatzes erhält. Dieser Kreislauf über Unterschritt 2 und 3 wird solange durchgeführt, bis keine Verbesserung mehr eintritt, das heißt, die Summe der quadratischen Fehler nicht mehr kleiner wird.
Vom letzten Durchlauf der besten Parametersatz wird in den Ansatz der oben genannten Antriebsfunktion einge setzt, und damit ergibt sich die beste gewünschte An triebsfunktion mit dem geringsten Linearitätsfehler.
- 2. Verfahrensschritt:
Diese nach Verfahrensschritt 1 aproximierte Trapez funktion wird im folgenden generell als Antriebsfunk tion verwendet.
Für jeden zu erreichenden Sollpunkt der vorgesehenen 256=2⁸ Einzelsollpunkte wird ein Wert für den Einsatz in die Antriebsfunktion ermittelt, der dazu führt, daß der Motor den jeweiligen Sollpunkt tatsächlich erreicht. Dadurch ergibt sich für alle 256 Einzelsollpunkte eine Zuordnungstabelle, die die einzelnen X-Werte für das Er reichen der gewollten Sollpunkte enthält.
Diese Zuordnungstabelle ermöglicht eine Verbesserung des Linearitätsverhaltens sowie eine Senkung des Positionier fehlers um eine Größenordnung. Die Zuordnungstabelle wird wie folgt erzeugt:- 1. Der X-Wert, der in die oben genannte Antriebsfunktion nach Verfahrensschritt 1 eingesetzt wird, wird solange variiert, bis der Motor die zugehörige Soll position erreicht hat. Die Überprüfung erfolgt mittels Messung, beispielsweise über ein Laser-Wegmeß system.
- 2. Danach erfolgt der Übergang zum nächsten Tabellen eintrag, wobei der hierzu gehörige X-Wert in gleicher Weise variiert wird. Diese beiden Schritte erfolgen für alle Tabelleneinträge, so beispielsweise für die 256 Einzelsollpunkte.
- 3. Beim beschriebenen Ablauf werden die X-Werte so variiert, daß alle negativen Positionsfehler be seitigt werden. Zur Beseitigung der noch verbliebenen positiven Fehler wird der gleiche Ablauf wiederholt, wobei die X-Werte so variiert werden, daß alle positiven Fehler korrigiert werden.
- Dieser zuletzt genannte 1. und 2. Ablauf wird solange
wiederholt, bis sich der maximale Fehler nicht mehr ver
kleinert.
Mit der somit vorliegenden Zuordnungstabelle ist es möglich, die in der Sollspalte enthaltenen Positionen genau anzufahren, indem der zugehörige X-Wert in der X-Wert spalte in die Antriebsfunktion nach Verfahrensschritt 2 eingesetzt wird. Dadurch ist es möglich, daß beim Anwender aufwendige Meßeinrichtungen und zugehörige Regelein richtungen nicht erforderlich sind. Der Anwender kann seinen Schrittmotor über das aufgezeigte Verfahren ohne zusätzliche Mittel mit einer genauen Positionierung be treiben.
4. Verfahren zur Erzielung hoher Positioniergenauigkeit
für einen Schrittmotor nach Anspruch 1, gekennzeichnet
durch folgende Verfahrensschritte:
- 1. Verfahrensschritt:
Erzeugung einer verbesserten Antriebsfunktion für den Schrittmotor, abweichend von der Sinus-/Cosinusfunktion, so daß Nichtlinearitäten verringert werden.- - Aufstellen eines Ansatzes nach Fourier für die An triebsfunktion mit ungeradzahligen Harmonischen zur Wahrung der Quadrantensymmetrie in der Art: f(x) = a₁ · sin x + a₂ · sin 3x + a₃ · sin 5x + . . . + an · sin (2n-1)x
- - Belegung der Parameter a₁, a₂ . . . an mit Anfangswerten.
- 1. Unterabschnitt: a₁ = 1, a₂ . . . an = 0Dadurch erhält man die reine Sinusfunktion.
- 2. Unterabschnitt:
Anwendung der Evolutionsstrategie.
In die Funktion f = a₁ · sin x + a₂ · sin 3x + a₃ · sin 5x + . . . + an · sin (2n-1)xwerden sechs neue Parametersätze von a₁ bis an einge setzt. Die Parametersätze werden für die beanspruchte Genauigkeit auf a₁ bis a₃ begrenzt.
Der erste neue Parametersatz lautet füra₁ = a1alt + ϕwobei ϕ nach der Gaußschen Normalverteilung zwischen -1 und +1 liegen kann, füra₂ = a2alt = ϕDa nach obiger Festlegung a2alt=0 ist, wird a2neu=ϕ wobei wieder nach der Gaußschen Normalverteilung zwischen -1 und +1 liegen kann. Füra3neu = a3alt + ϕwird a3neu=ϕ, da nach dieser Festlegung a3alt=0 ist, wobei ϕ wieder nach der Gaußschen Normalverteilung zwischen -1 und +1 liegen kann.
Damit liegt der erste neue Parametersatz vor, der durch eine zufällige Bestimmung von erzeugt wurde. Zur Bestimmung des zweiten, dritten, vierten, fünften und sechsten neuen Parametersatz wird in gleicher Weise vorgegangen wie zur Bestimmung des ersten neuen Pa rametersatzes. Damit liegen 6 verschiedene Parameter sätze vor, den vorzugsweise a₁ bis a₃, die nacheinander in den Ansatz der oben genannten Antriebsfunktion einge setzt werden. - 3. Unterabschnitt:
Hier wird zu jeder der sechs neuen Antriebsfunktionen nunmehr der Schrittmotor über eine mechanische Raster periode gefahren. Dabei läuft der Schrittmotor über die Rasterperiode, vorzugsweise über 256=2⁸ Schritte. Für jeden dieser 256 Schritte gibt es linear verteilt eine Sollposition, die von dem jeweils gemessenen Posi tionswert abweicht. Diese Abweichungen werden mit einem Laserwegmeßsystem gemessen und quadratisch aufsummiert, so daß man ein Maß für die Tauglichkeit des jeweiligen Parametersatzes erhält. Derjenige Parametersatz, bei dem diese Summe am kleinsten ist, ist der geeignetste. Mit diesem am besten geeignetsten Parametersatz geht man zum zweiten Unterabschnitt zurück. Hierbei wendet man wieder die Evolutionsstrategie an. In die neue Funktion f(neu) = a₁ · sin x + a₂ · sin 3x + a₃ · sin 5x,bei der a₁ ungleich 1, a₂ ungleich 0 und a₃ ungleich 0 ge worden sind, legt man erneut über eine zufällige Auswahl sechs neue Parametersätze für a₁, a₂ und a₃ fest, wobei
das a1neu wieder aus a1alt + ϕ,
das a2neu wieder aus a2alt + ϕ und
das a3neu wieder aus a3alt + ϕ
bestimmt wird.
Für die nunmehr wieder 6 verschiedenen zufallbestimmten Parametersätze erfolgt ein Einsatz in die oben genannte Antriebsfunktion.
Der Schrittmotor bewegt sich jeweils wieder über eine mechanische Rasterperiode mit 256=2⁸ Schritten. Für diese 256 Schritte gibt es wieder linear verteilt jeweils eine Sollposition, die von jeweils gemessenen Positionswert abweicht. Die Abweichungen werden wieder quadratisch aufsummiert, so daß man wieder ein Maß für die Tauglichkeit des jeweiligen Parametersatzes erhält. Dieser Kreislauf über Unterschritt 2 und 3 wird solange durchgeführt, bis keine Verbesserung mehr eintritt, das heißt, die Summe der quadratischen Fehler nicht mehr kleiner wird.
Vom letzten Durchlauf der beste Parametersatz wird in den Ansatz der oben genannten Antriebsfunktion eingesetzt und damit ergibt sich die beste gewünschte Antriebsfunktion mit dem geringsten Linearitätsfehler.
- 2. Verfahrensschritt:
In Auswertung der Optimierung nach Verfahrensschrit 1 ergibt sich für den Parameter a₁=1 und für den Parameter a₂=0,07 und für den Parameter a₃=0, wobei die damit erzeugte Antriebsfunktion an seinen Kurvenstücken durch Geradenstücke ersetzt werden. - 3. Verfahrensschritt:
Diese nach Verfahrensschritt 2 aproximierte Trapezfunktion wird im folgenden generell als Antriebsfunktion verwendet. Für jeden zu erreichenden Sollpunkt der vorgesehenen 256=2⁸ Schritte/Einzelsollpunkte wird ein Wert für den Einsatz in die Antriebsfunktion ermittelt, der dazu führt, daß der Motor den jeweiligen Sollpunkt tatsächlich erreicht. Dadurch ergibt sich für alle 256 Einzelsollpunkte eine Zu ordnungstabelle für die die einzelnen X-Werte zur Erreichung der gewollten Sollpunkte enthält.
Diese Zuordnungstabelle ermöglicht eine Verbesserung des Linearitätsverhaltens sowie eine Senkung des Positionier fehlers um eine Größenordnung.
Die Zuordnungstabelle wird wie folgt erzeugt:- 1. Der x-Wert der in die oben genannte Antriebsfunktion nach Verfahrensschritt 2 eingesetzt wird, wird solange variiert, bis der Motor die zugehörige Sollposition er reicht hat. Die Überprüfung erfolgt mittels Messung über ein Laser-Wegmeßsystem.
- 2. Danach erfolgt der Übergang zum nächsten Tabelleneintrag, wobei der hierzu gehörige x-Wert in gleicher Weise variiert wird. Diese beiden Schritte erfolgen für alle Tabelleneinträge, so beispielsweise für die 256 Einzel sollpunkte.
- 3. Beim beschriebenen Ablauf werden die x-Werte so variiert, daß alle negativen Positionsfehler beseitigt werden. Zur Beseitigung der noch verbliebenen positiven Fehler wird der gleiche Ablauf wiederholt, wobei die x-Werte so variiert werden, daß alle positiven Fehler korrigiert werden.
- Dieser zuletzt genannte 1. und 2. Ablauf wird solange wiederholt, bis sich der maximale Fehler nicht mehr verkleinert. Mit der somit vorliegenden Zuordnungstabelle ist es möglich, die in der Sollspalte enthaltenen Positionen genau anzu fahren, indem der zugehörige x-Wert in der X-Wertspalte in die Antriebsfunktion nach Verfahrensschritt 2 eingesetzt wird. Dadurch ist es möglich, daß beim Anwender aufwendige Meßein richtungen und zugehörige Regeleinrichtungen nicht erforderlich sind. Der Anwender kann seinen Schrittmotor über das aufgezeigte Verfahren ohne Mittel mit einer genauen Positionierung betreiben.
5. Verfahren zur Erzielung hoher Positioniergenauigkeit
für einen planaren Schrittmotor nach Anspruch 1 und 2,
dadurch gekennzeichnet, daß die Verfahrensschritte 1
bis 3 des 2. Anspruches für die Ermittlung einer Zu
ordnungstabelle in Y-Richtung verwendet werden.
6. Verfahren zur Erzielung hoher Positioniergenauigkeit
für einen planaren Schrittmotor nach Anspruch 1 und 3,
dadurch gekennzeichnet, daß die Verfahrensschritte 1
und 2 des 3. Anspruches für die Ermittlung einer zu
ordnungstabelle in Y-Richtung verwendet werden.
7. Verfahren zur Erzielung hoher Positioniergenauigkeit
für einen planaren Schrittmotor nach Anspruch 1 und 4,
dadurch gekennzeichnet, daß die Verfahrensschritte 1
bis 3 des 4. Anspruches für die Ermittlung einer Zu
ordnungstabelle in Y-Richtung verwendet werden.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19924233881 DE4233881A1 (de) | 1992-10-08 | 1992-10-08 | Schrittmotor und Verfahren zur Erzielung hoher Positioniergenauigkeit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19924233881 DE4233881A1 (de) | 1992-10-08 | 1992-10-08 | Schrittmotor und Verfahren zur Erzielung hoher Positioniergenauigkeit |
Publications (1)
Publication Number | Publication Date |
---|---|
DE4233881A1 true DE4233881A1 (de) | 1994-04-14 |
Family
ID=6469953
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19924233881 Ceased DE4233881A1 (de) | 1992-10-08 | 1992-10-08 | Schrittmotor und Verfahren zur Erzielung hoher Positioniergenauigkeit |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE4233881A1 (de) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0641068A2 (de) * | 1993-08-28 | 1995-03-01 | DRE-Dr. RISS ELLIPSOMETERBAU GmbH | Fehlerkorrekturverfahren für Schrittmotoren |
WO1998037624A2 (de) * | 1997-02-20 | 1998-08-27 | Lars Dreifke | Direktantrieb mit internen sensoren und regeleinrichtung |
WO2002007301A1 (de) * | 2000-07-13 | 2002-01-24 | Saia-Burgess Gmbh | Schrittverlusterkennung mittels frequenzspektrum analyse |
-
1992
- 1992-10-08 DE DE19924233881 patent/DE4233881A1/de not_active Ceased
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0641068A2 (de) * | 1993-08-28 | 1995-03-01 | DRE-Dr. RISS ELLIPSOMETERBAU GmbH | Fehlerkorrekturverfahren für Schrittmotoren |
EP0641068A3 (de) * | 1993-08-28 | 1995-08-02 | Dre Dr Riss Ellipsometerbau Gm | Fehlerkorrekturverfahren für Schrittmotoren. |
WO1998037624A2 (de) * | 1997-02-20 | 1998-08-27 | Lars Dreifke | Direktantrieb mit internen sensoren und regeleinrichtung |
WO1998037624A3 (de) * | 1997-02-20 | 1998-11-26 | Lars Dreifke | Direktantrieb mit internen sensoren und regeleinrichtung |
DE19807085B4 (de) * | 1997-02-20 | 2005-06-23 | Dreifke, Lars, Dr.-Ing. | Direktantrieb mit internen Sensoren und Regeleinrichtung |
WO2002007301A1 (de) * | 2000-07-13 | 2002-01-24 | Saia-Burgess Gmbh | Schrittverlusterkennung mittels frequenzspektrum analyse |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0151296B1 (de) | Steuerschaltung für einen Schrittmotor | |
DE68909080T2 (de) | Linearmotor und diesen Linearmotor benutzende Linearantriebsvorrichtung. | |
DE69413379T2 (de) | Unterdrückung der Schwingungen eines Schrittmotors durch Modulation des Vektorwinkels und der Vektorgrösse | |
DE2265245C2 (de) | Anordnung zur Steuerung einer Relativbewegung zwischen dem feststehenden und dem beweglichen Glied eines zweiphasigen, synchronen Antriebssystems | |
DE69108645T2 (de) | Schrittmotor und Verfahren zum Betrieb eines solchen Motors. | |
DE10248200A1 (de) | Drehwinkelerfassungsvorrichtung | |
DE102010002949A1 (de) | Absoluttyp-Linearkodierer und Verfahren zur Einstellung seiner Position | |
DE2758423A1 (de) | Elektrischer antrieb | |
DE2011491C3 (de) | Magnetischer Spektrograph für geladene Teilchen | |
DE3218612C2 (de) | Werkzeugmaschine mit Verschiebefehlerkompensation | |
EP0102472A1 (de) | Längen- oder Winkelmesseinrichtung | |
DE2436900A1 (de) | Zweiachsige elektromagnetische positionierungseinrichtung | |
DE2416508B2 (de) | Anordnung zum Bestimmen einer Relatiwerschiebung | |
EP0313999A2 (de) | Vorrichtung zur Messung des Drehmomentes einer Arbeitswelle | |
DE2825877A1 (de) | Magnetisches lagersystem | |
DE3417868C2 (de) | Verfahren zum Steuern von Roboterbewegungen | |
DE4133723A1 (de) | Drehfeldmotor | |
DE3928592A1 (de) | Linearcodierer | |
WO1990007229A1 (de) | Verfahren und anordnung zur ansteuerung elektromechanischer wandler | |
EP1524503A1 (de) | Optische Positionsmesseinrichtung | |
DE4233881A1 (de) | Schrittmotor und Verfahren zur Erzielung hoher Positioniergenauigkeit | |
EP0417337B1 (de) | Verfahren zum Betrieb einer numerisch gesteuerten Werkzeugmaschine oder eines Roboters | |
DE2418706A1 (de) | Mehrstufennetzwerk, insbesondere verzoegerungsleitung | |
DE2818105A1 (de) | Gyroskop | |
DE19540844C2 (de) | Anzeigevorrichtung für Binärinformation und Verfahren zur Erzeugung eines Musters von Vorspüngen und Vertiefungen auf einem linearen Nocken |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8131 | Rejection |