-
Die vorliegende Erfindung betrifft
einen Drehkodierer, der einen Drehwinkel eines sich drehenden Abschnitts
relativ zu einem feststehenden Abschnitt detektiert.
-
Ein Drehkodierer dieses Typs, d.
h. ein Drehkodierer mit einer Skalenscheibe (Drehabschnitt), einem
Licht emittierenden Abschnitt zum Bestrahlen der Skalenscheibe mit
Licht und einem Licht empfangenden Abschnitt (feststehender Abschnitt)
zum Empfangen von von dem Licht emittierenden Abschnitt emittiertem
und durch die Skalenscheibe durchgelassenem Lichts ist bekannt.
Der Drehkodierer detektiert einen Drehwinkel der Skalenscheibe anhand
eines Ausgangssignals in Abhängigkeit
von dem von dem Licht empfangenden Abschnitt empfangenden Licht.
Wenn bei dem Drehkodierer die Mitte der Skalenscheibe exzentrisch
zu der tatsächlichen
Drehmitte ist oder wenn die Skalenscheibe nicht orthogonal zu der
Drehachse verläuft,
wird ein Winkelfehler erzeugt. Ein Winkelfehler wird auch aufgrund
der Größe des Skalierabstands
oder aufgrund von Skalenfehlern, wie z. B. einer systematischen Verzerrung
des Umfangs der Skalenscheibe, erzeugt. Hinsichtlich dieser Fehler
ist beim Stand der Technik ein Verfahren beschrieben, bei dem mehrere Kombinationen
aus Codemustern und Licht empfangenden Elementen in ungefähr gleichen
Abständen am
Umfang angeordnet sind, um diese Fehler zu eliminieren.
-
Bei dem herkömmlichen Drehkodierer müssen zum
Reduzieren eines aufgrund einer Exzentrizität, einer Neigung der Skalenscheibe
etc. aufgetretenen Winkelfehlers etc. die Mittenposition der Skalenscheibe
und die Neigung justiert werden, und dies ist sehr zeitaufwändig und
teuer. Der negative Effekt dieses Skalenfehlers kann nicht einfach
durch eine Hardware-Justierung reduziert werden. Wenn der Drehkodierer
an einem Vermessungsinstrument etc. angebracht ist, muss folgendes
Verfahren angewandt werden. Ein Winkel wird mehrmals gemessen, die
bei den jeweiligen Winkelmessungen abgelesenen Skalenpositionen
werden voneinander fortbewegt, und die Messwerte werden Bemittelt
(von jeweils zwei Erfassungen), so dass der nachteilige Effekt des Skalenfehlers
reduziert wird. Ein Verfahren, bei dem mehrere Kombinationen aus
Codemustern und Licht empfangenden Elementen zum Eliminieren dieser
Fehler in ungefähr
gleichen Abständen
am Umfang angeordnet sind, ist teuer. Die Anzahl von am Umfang angeordneten
Kombinationen ist begrenzt, und das Einstellen dieser Kombinationen
ist sehr zeitaufwändig
und somit nachteilig.
-
Der vorliegenden Erfindung liegt
die Aufgabe zugrunde, einen Drehkodierer (einschließlich eines Inkrementalkodierers
und eines Absolutkodierers) bereitzustellen, mit dem ein durch eine
Exzentrizität relativ
zu einem gemessenen Winkel verursachter Winkelfehler ohne hochgenaue
Hardware-Justierung reduziert werden kann und mit dem ferner ein
Teilungsfehler durch Skalierung reduziert werden kann.
-
Die Lösung dieser Aufgabe erfolgt
erfindungsgemäß mit einem
Drehkodierer mit einem feststehenden Abschnitt; einem Drehabschnitt,
der relativ zu dem feststehenden Abschnitt drehbar ist; einer Winkeldetektiereinrichtung
zum Detektieren eines Drehwinkels des Drehabschnitts relativ zu
einer vorbestimmten Referenzposition des Drehabschnitts; und einer
Ausgabeeinrichtung zum Ausgeben des detektierten Winkels, wobei
die Winkeldetektiereinrichtung einen Winkel θn = n × θs (n = 1, 2,..., N (wobei N × θs = 360° ist) detektiert,
welcher ein ganzzahliges Vielfaches eines vorbestimmten Winkels θs (θs ≥ Ausgabeauflösung) ist,
so dass beim Drehen des Drehabschnitts ein in dem detektierten Winkel θn enthaltener
Winkelfehler E(θn)
gemessen wird, Funktionen zwischen den detektierten Winkeln θn und den Fehlern
E(θn) durch
folgende Gleichung für
sämtliche
n definiert werden:
eine Amplitude A
i und
eine Anfangsphase φ
i (i = 1, 2, ..., N/2 oder (N – 1)/2)
berechnet werden, so dass sämtliche
definierten Gleichungen erfüllt
werden, eine Speichereinrichtung zum Speichern einer Fehlerfunktion
vorgesehen ist, welche durch folgende Gleichung ausgedrückt wird:
und welche eine periodische
Funktion eines detektierten Winkels θa mit der berechneten Amplitude
A; und der berechneten Anfangsphase φ
i als
Koeffizienten ist, der von der Winkeldetektiereinrichtung detektierte
Winkel θa
an die Stelle der Variablen θ in
die Gleichung der in der Speichereinrichtung gespeicherten Fehlerfunktion
E(θ) eingesetzt
wird und ein durch Subtrahieren des durch das Ersetzen erhaltenen
Werts E(θa)
von dem detektierten Winkel θa
erhaltener Wert von der Ausgabeeinrichtung ausgegeben wird.
-
Diese Operation erfolgt unter Berücksichtigung
der Periodizität
des in dem von dem Drehkodierer detektierten Winkel enthaltenen
Fehlers. Entsprechend wird eine Fehlerfunktion anhand des in dem von
dem Drehkodierer detektierten Winkel enthaltenen Fehler berechnet,
welcher im voraus berechnet worden ist, und der detektierte Winkel
wird anhand der berechneten Fehlerfunktion korrigiert. Aus diesem
Grund werden selbst dann, wenn die Justierung der Hardware zum Reduzieren
der Exzentrizität
und der Neigung der Skalenscheibe nicht besonders genau durchgeführt wird,
ein durch Exzentrizität
etc. verursachter Winkelfehler und ein Skalenfehler durch Korrigieren
unter Anwendung der Fehlerfunktion im wesentlichen eliminiert und
kann ein akkurater Winkel erhalten werden.
-
Selbst wenn der Grund für einen
Fehler bei bekannter Tendenz der Fehlerperiode nicht bekannt ist,
können
der nachteilige Effekt des Fehlers auf effiziente Weise eliminiert
und eine akkurate Winkelmessung durchgeführt werden. Ferner werden die Fehlerfunktionen
E(θ) unter
Anwendung der Amplituden Ai und der Anfangsphasen φi für
sämtliche
Ordnungen i (= 1, 2, ..., N/2 oder (N-1)/2) nicht in der Speichereinrichtung
gespeichert und kann eine Fehlerfunkti on E(θ) unter Anwendung mindestens
einer Amplitude Ak1, Ak2,
... Akm und mindestens einer Anfangsphase φki, φkr, ..., φkn, (wobei k1, k2,..., km mindestens eine
der natürlichen
Zahlen von 1 bis N/2 oder (N – 1)/2
ist) in der Speichereinrichtung gespeichert werden. Auf diese Weise
kann, wenn die Ordnung der Fehlerfunktion korrekt ausgewählt ist,
nur die Komponente eines Zyklus mit einer großen Fehleramplitude ausgewählt werden
und können
eine Winkelfehlermessung und -korrektur entsprechend der Genauigkeit
jeweiliger Zielwerte auf effiziente Weise durchgeführt werden.
-
Im folgenden werden bevorzugte Ausführungsformen
der Erfindung anhand der Zeichnungen genauer erläutert.
-
Es zeigen:
-
1 eine
perspektivische Ansicht eines herkömmlichen Inkrementalkodie-
rers;
-
2 eine
Draufsicht eines Prüfsystems
mit einem polygonalen Spiegel und einem Autokollimator; und
-
3 eine
Draufsicht eines Winkelfehler-Prüfsystems.
-
1 zeigt
unter Bezugszeichen 1 einen Inkremental-Drehkodierer. Der Drehkodierer
1 weist auf: eine Hauptskala (Drehabschnitt) 2, die an einer Drehwelle
A befestigt ist, einen Licht emittierenden Abschnitt 3, der an einem
(nicht gezeigten) Lager der Drehwelle befestigt ist, zum Bestrahlen
der Hauptskala 2 mit Licht, eine Teilskala 4, die in der Position befestigt
ist, in der von dem Licht emittierenden Abschnitt 3 emittiertes
Licht durch die Hauptska-la
2 durchgelassen wird, und einen Licht empfangenden Abschnitt (feststehenden
Abschnitt) 5 zum Empfangen von von dem Licht emittierenden Abschnitt
3 emittiertem und durch die Hauptskala 2 und die Teilskala 4 durchgelassenem
Licht.
-
Der Drehkodierer 1 weist eine CPU
6 auf. Die CPU 6 ist über
einen Zähler
11, einen Wellenformgestalter 12 und einen A/D-Konverter 7 mit dem
Licht empfangenden Abschnitt 5 verbunden. Eine Anzeigeeinheit (Anzeigeeinrichtung)
8 zum Anzeigen eines Rechenergebnisses der CPU 6, eines Winkels des
Drehkodierers 1 etc. und ein ROM (eine Speichereinrichtung) 9 zum
Speichern eines Steuerprogramms der CPU 6, verschiedener Daten u.
dgl. sind mit der CPU 6 verbunden.
-
Bei der Hauptskala 2 sind Skalenschlitze,
die gleiche Breiten aufweisen und in gleichen Abständen angeordnet
sind, um den gesamten Umfang angeordnet. Bei der Teilskala 4 sind
Skalenschlitze, die die gleichen Breiten und Abstände aufweisen
wie die Hauptskala 2, zumindest in einem Teil des Umfangs ausgebildet.
Der Licht emittierende Abschnitt 3 weist eine Licht emittierende
Diode 31 und eine Kollimationslinse 32 auf. Licht von der Licht
emittierenden Diode 31 wird von der Kollimationslinse 32 in parallele Strahlen
umgewandelt, und die parallelen Strahlen bestrahlen die Hauptskala
2. Der Licht empfangende Abschnitt 5 weist ein (nicht gezeigtes)
fotoelektrisches Konvertierelement auf. Der Licht empfangende Abschnitt
5 gibt elektrische Signale in Abhängigkeit von Licht-und-Schatten-Mustern
aus, die gebildet werden, wenn das Licht von dem Licht emittierenden
Abschnitt 3 durch die Skalenschlitze der Hauptskala 2 und der Teilskala
4 durchgelassen wird. Bei dieser Ausführungsform sind der Licht empfangende Abschnitt
5, die Teilskala 4 und der Licht emittierende Abschnitt 3 an dem
Hauptkörper
befestigt und wird die Hauptskala 2 gedreht. Es kann jedoch auch
die Hauptskala 2 feststehend ausgebildet sein, und es können der
Licht empfangende Abschnitt 5, die Teilskala 4 und der Licht emittierende
Abschnitt 3 gedreht werden.
-
Bei der Hauptskala 2 und der Teilskala
4 sind die Skalenpunkte 0 einer oder mehrerer Ausgangspositionen
jeweils in Positionen ausgebildet, die einander entsprechen und
die nahe den Schlitzen vorgesehen sind. Eine Position, in der die
beiden Skalenpunkte 0 der Ausgangspositionen der Hauptskala 2 und
der Teilskala 4 einander zugewandt sind, ist als Ausgangsposition
der Hauptskala 2 definiert. Wenn das Licht von dem Licht emittierenden
Abschnitt 3 durch die beiden Skalenpunkte 0 der Ausgangspositionen
der Hauptskala 2 und der Teilskala 4 durchgelassen wird und dann
von dem Licht empfangenden Abschnitt 5 empfangen wird, gibt der
Licht empfangende Abschnitt 5 ein Ausgangspositions-Signal an die,
CPU 6 aus. Der Drehwinkel der Hauptskala 2 wird anhand der Ausgangsposition
detektiert.
-
Der detektierte Drehwinkel des Drehkodierers
gemäß dieser
Ausführungsform
enthält
einen Fehler. Daher kann bei Durchführung einer Fehlerkorrektur
ein genauer arbeitender Kodieren erhalten werden. Fehlerursachen
können
Exzentrizität,
Neigung einer Skalenscheibe u. dgl. sein. Diese Fehler können durch
mechanische Justierung reduziert werden. Ein Skalenfehler kann jedoch
nicht durch mechanische Justierung reduziert werden, so dass eine genaue
Skalenscheibe hergestellt werden muss.
-
Der ROM 9 speichert nicht nur das
Steuerprogramm der CPU 6, sondern auch eine allgemeine Formel:
(wobei A, eine Amplitude
und φ
i eine Anfangsphase ist), wodurch eine Korrelation
zwischen dem von der CPU 6 anhand eines von dem Licht empfangenden Abschnitt
5 kommenden elektrischen Signals detektierten Winkel θ
a und dem Ausgangspositions-Signal und dem
in dem detektierten Winkel θ
a enthaltenen Fehler E(θa) repräsentiert wird. Die Fehlerfunktion E(θ) ist eine
periodische Funktion des detektierten Winkels Θ, und die Amplitude A
i sowie die Anfangsphase φ
i werden
durch Anwendung des nachstehend beschriebenen Verfahrens berechnet.
Die Fehlerfunktion E(θ)
kann einen konstanten Term A
0 einer Fourier-Reihe
enthalten. Die Korrektur eines Winkelfehlers, der beim Einbau des
Drehkodierers 1 zwecks Messung eines Horizontalwinkels einer Gesamtvorrichtung
T auftritt, wird nachstehend beschrieben.
-
Gemäß 2 sind die Vertikalachse Ta der Gesamtvorrichtung
T und die Dreh-Mittenachse
Pa eines polygonalen Spiegels P miteinander
verbunden, so dass die Vertikalachse Ta nahezu
mit der Dreh-Mittenachse Pa zusammenpasst,
und ein Autokollimator AC ist zum Messen einer Reflexionsfläche Pn (n = 1, 2,..., 8) des polygonalen Spiegels
P vorgesehen. Der Einfachheit halber sei angenommen, dass, wenn
die Gesamtvorrichtung T ein in der Vertikalachse enthaltenes Ausgangspositionssignal θo des Drehkodierers E ausgibt, die Drehwinkel
der Gesamtvorrichtung T und des polygonalen Spiegels P zusammenpassen,
so dass eine erste Fläche
P1 der Reflexionsfläche P des polygonalen Spiegels
dem Autokollimator AC korrekt zugewandt ist.
-
Die Vertikalachse der Gesamtvorrichtung
T wird derart gedreht, dass die Reflexionsflächen P1 bis P8 des polygonalen Spiegels P dem Autokollimator AC
korrekt zugewandt sind. Messwinkel θn der
Gesamtvorrichtung T (Drehkodierer 1) bzw. Ausgangswerte δn des
Autokollimators werden gemessen.
-
Dabei kann ein in dem Drehkodierer
E enthaltener Winkelfehler E(θ)
wie folgt ausgedrückt
werden:
-
Eine Erweiterung der Fourier-Reihen
wird durch Verwendung des wie oben beschrieben erhaltenen Winkelfehlers
E(θ
n) durchgeführt, um die nachstehende Fehlerfunktion
zu erhalten:
-
In diesem Fall wird, wenn ein Winkel
von 360° × (n – 1)/N zwischen
der ersten Fläche
P1 und der Reflexionsfläche Pn des
polygonalen Spiegels P einen Fehler σn enthält, der
polygonale Spiegel P im voraus korrigiert und der Win kel zwischen
der Reflexionsfläche
Pn und der ersten Fläche P1 des
polygonalen Spiegels mit 360° × (n – 1)/N + σn angegeben. Auf
diese Weise kann der Winkelfehler E(θn)
des Drehkodierers E mit großer
Genauigkeit ermittelt werden.
-
Selbst wenn der polygonale Spiegel
P nicht im voraus korrigiert werden kann, wenn der Drehkodierer
E ein Ausgangspositions-Signal θn ausgibt, werden die Reflexionsflächen Pn des polygonalen Spiegels P, die dem Autokollimator
AC korrekt zugewandt sind, sequentiell umgeschaltet, um N Funktionen
E(θn) zu messen. Ein Mittelwert der N gemessenen
Funktionen E (θn) wird berechnet, so dass der nachteilige
Effekt des Fehlers σn in den Reflexionsflächen Pn des
polygonalen Spiegels P unterdrückt
werden kann.
-
Ein in dem Drehkodierer 1 ablaufendes
Winkelmessverfahren wird nachstehend beschrieben.
-
Wenn eine Winkelmessung von der Gesamtvorrichtung
durchgeführt
wird, wird eine bei einer Feldmessung in den ROM 9 geschriebene
Fehlerfunktion berechnet, nachdem ein Teleskops um bis zu 360° gedreht
worden ist, um eine Ausgangsposition in dem Inkrementalkodierer
zu prüfen.
Wenn die Hauptskala 2 des Drehkodierers 1 gedreht wird, wird Licht
von dem Licht emittierenden Abschnitt 3 durch die Schlitze der Hauptskala
2 durchgelassen und von dem Licht empfangenden Abschnitt 5 empfangen. Der
Licht empfangende Abschnitt 5 gibt in Abhängigkeit von einem Licht-und-Schatten-Muster,
das gebildet wird, wenn Licht durch die Hauptskala 2 und die Teilskala
4 durchgelassen wird, ein elektrisches Signal an den Zähler oder
den A/D-Konverter 7 aus. Der A/D-Konverter 7 konvertiert das elektrische
Signal von einem analogen Signal in ein digitales Signal und gibt
das digitale Signal an die CPU 6 aus. Die CPU 6 detektiert einen
detektierten Winkel θa der Skalenscheibe 2 anhand des digitalen
Signals und setzt den detektierten Winkel θa an
die Stelle der Variablen in der im ROM 9 gespeicherten Fehlerfunktion
E(θ), um einen
in dem detektierten Winkel θa enthaltenen Fehler E(θa) (E(θa) ist ein positiver oder ein
negativer Wert) zu berechnen. Ein durch Subtrahieren des Fehlers
E(θa) von
dem detektieren Winkel θa
erhaltener Winkel θa – E(θa) wird
als genauer Winkel auf der Anzeigeeinheit 8 angezeigt.
-
Bei dieser Ausführungsform ist ein Inkremental-Drehkodierer
beschrieben worden. Die vorliegende Endung ist jedoch nicht nur
auf einen Inkremental-Drehkodierer,
sondern auch auf einen Absolut-Drehkodierer anwendbar. Insbesondere
da der Absolut-Dekodierer immer einen absoluten Winkel aus einer
vorbestimmten Referenzposition heraus detektiert, ist diese Detektierung
ein Äquivalent
zu der Detektierung einer Ausgangsposition O in dem Inkrementalkodierer.
-
Wenn durch Anwendung eines Kollimators etc.
in 3 (in diesem Fall
sind Kollimatoren C1 bis C4 in vier Richtungen angeordnet) zwei
Messungen (beispielsweise relativ zu diesen Kollimatoren dreimal
zwei Messungen) durchgeführt
werden, kann eine Ordnung i einer zu messenden Fehlerfunktion durch
Einstellen der Anzahl von zu installierenden Kollimatoren ausgewählt werden.
Es kann ein Kodieren hergestellt werden, der sich an die Genauigkeit der
jeweiligen Ziele anpasst. Wenn Fehler verursachende Ordnungsterme
miteinander kombiniert werden, kann ein Kodierer hergestellt werden,
der sich an die Genauigkeit der jeweiligen Ziele anpasst.
-
Zum Bestimmen einer Konstanten eines Winkelfehlers
durch den Kodierer selbst kann als weiteres Prüfverfahren das folgende Verfahren
angewandt werden. Ein Referenzkodierer mit einem bekannten Winkelfehler
wird mit dem oben genannten Kodierer verglichen, um einen Fehler
zu messen, und es können
Konstante einer aus diesem Fehler erhaltenen Fehlerfunktion bestimmt
werden.
-
Bei dieser Ausführungsform der vorliegenden
Erfindung wird der Kodierer als ein an einem Vermessungsinstrument
angebrachter Kodierer beschrieben. Wenn jedoch der Teleskopabschnitt
des Vermessungsinstruments abnehmbar an dem Kodierer angeordnet
ist, kann ein als Einheit ausgeführter Kodierer
mit einer gewünschten
Genauigkeit erhalten werden.
-
Wie aus der vorstehenden Beschreibung hervorgeht,
wird erfindungsgemäß eine Fehlerfunktion
E(θ) anhand
eines von einem Drehkodierer detektieren Fehlers in einem detektierten
Winkel, der im voraus berechnet worden ist, berechnet, und der detektierte
Winkel wird anhand der berechneten Fehlerfunktion korrigiert. Aus
diesem Grund werden ein durch Exzentrizität etc. verursachter Winkelfehler und
ein Skalenfehler durch Korrigieren anhand der Fehlerfunktion eliminiert,
ohne dass eine besonders genaue Justierung der Hardware zum Reduzieren
einer Exzentrizität
und einer Neigung einer Skalenscheibe erfolgt, und es kann ein genauer
Winkel erhalten werden.
-
Selbst wenn der Grund für einen
Fehler bei bekannter Tendenz der Fehlerperiode nicht bekannt ist,
können
der nachteilige Effekt des Fehlers auf effiziente Weise eliminiert
und eine akkurate Winkelmessung durchgeführt werden.
-
Bei Auswahl einer Ordnung einer Fehlerfunktion
können
Messung und Korrektur eines Winkelfehlers, die entsprechend der
Genauigkeit der jeweiligen Ziele durchgeführt worden sind, auf effiziente
Weise durchgeführt
werden. Vorteilhafterweise braucht die Firmware keine Aufstellung
mit einem großen
Winkelfehler aufzuweisen.