-
Die Erfindung betrifft eine Gebervorrichtung und ein Verfahren zur Bestimmung einer Absolutposition nach dem Oberbegriff von Anspruch 1 beziehungsweise 12.
-
Bei Gebervorrichtungen werden lineare und rotatorische Systeme unterschieden. Ein Lineargeber bestimmt eine Verschiebung auf einer Achse. Ein Drehgeber, Drehwinkelsensor oder Encoder dient dagegen der Erfassung eines Drehwinkels oder einer Winkelstellung beispielsweise einer Welle eines Antriebselements. Ein wichtiges Anwendungsfeld sind sogenannte Motor-Feedback-Systeme, wo der Drehgeber in einem Servomotor die Ist-Drehzahl an die Regelung rückmeldet.
-
Für die zugrundeliegenden Sensorprinzipien werden verschiedene Technologien eingesetzt. Für Durchlicht bei Transmissionsanordnung eines Lichtsenders und eines Abtastsensors sind optisch transparente und nichttransparente Bereiche beziehungsweise für Auflicht bei Reflexionsanordnung von Lichtsender und Abtastsensor reflektierende und absorbierende Bereiche vorgesehen. Diese Bereiche oder Codeelemente können Öffnungen, reflexive und diffraktive Strukturen, Prismen, in Durchlässigkeit, Reflexivität, Grauton oder Farbe variierende Strukturen und sonstige optisch unterscheidbare Elemente sein. Zusammen ergeben die Codeelemente eine Codespur oder Maßspur. Magnetische Gebervorrichtungen detektieren beispielsweise mit einem Hall-Sensor entsprechende magnetische Strukturen beziehungsweise codierende Permanentmagneten. Es sind weitere physikalische Wirkprinzipien für Positionsmessungen geeignet, beispielhaft genannt seien noch kapazitive und induktive Gebervorrichtungen.
-
Für die Bestimmung von Absolutpositionen gibt es eine Reihe von geeigneten Codierungen, wie Gray-Codes, nach dem Prinzip des Nonius' gegeneinander versetzte Codespuren oder Pseudozufallscodes. Insbesondere Pseudozufallscodes ermöglichen es, eine Absolutposition aus einer einzigen Maßspur zu erzeugen. Im Folgenden wird das Beispiel einer optischen Abtastung herangezogen, ohne damit die bereits erwähnten alternativen Technologien auszuschließen. Um das von dem Code erzeugte Licht- und Schattenmuster zu erfassen, sind Photodioden in Messrichtung in einer Reihe angeordnet, so dass sie jeweils mindestens ein Bit des Codes erfassen. Der Abstand entspricht damit einem Bit oder Codeelement. Die Binarisierungsschwelle, mit der das Abtastsignal einer jeweiligen Photodiode in einen der beiden binären Zustände Null oder Eins gewandelt wird, liegt dabei mittig oder auf dem halben Maximalpegel, um die hellen und dunklen Bereiche möglichst robust zu unterscheiden.
-
Es wird grundsätzlich eine Anzahl Photodioden benötigt, die der Anzahl der Bits des zu lesenden Codeworts entspricht. Das allerdings führt zu Problemen, da die Photodioden im Betrieb nicht auf ein Codeelement ausgerichtet sind und es je nach Relativposition zwischen Code und Photodioden zu einer teilweisen, beispielsweise hälftigen Beleuchtung und damit undefinierten erfassten Bitzuständen kommt. Das führt im Gegensatz zum Anspruch einer Absolutpositionsbestimmung, das Codewort jederzeit eindeutig bestimmen zu können, zu mehrdeutigen Decodierungen.
-
Ein herkömmlicher Ausweg besteht darin, die doppelte Anzahl Photodioden in zwei in Messrichtung um beispielsweise eine halbe Bitlänge zueinander versetzten Reihen als Kanal A und B zu verwenden. In jeder Relativposition gibt es dann einen Kanal, der von der ungünstigen teilweisen Beleuchtung nicht oder kaum betroffen ist und damit eindeutige Bits des Codes erfasst. Es wird im Takt einer Relativbewegung einer halben Bitlänge zwischen den beiden Kanälen A und B hin und her geschaltet, wobei die Schaltzeitpunkte aus einer zusätzlichen Inkrementalspur gewonnen werden.
-
Abgesehen von dem zusätzlichen Aufwand für eine Inkrementalspur und deren Abtastung ist dieses Vorgehen auf hinreichend präzise Umschaltzeitpunkte zwischen den Kanälen angewiesen. Bei ungenauem Umschaltpunkt wird unter Umständen der falsche Kanal aktiviert und damit der Absolutcode nicht immer eindeutig und folglich bisweilen falsch gelesen. Bei einem Zufallscode ergeben sich daraus undefinierte Sprünge zu einem im schlechtesten Fall weit entfernten Codewort und somit ein potentiell sehr großer Fehler der Absolutposition.
-
Entsprechend dem obigen Takt einer halben Bitlänge darf sich das Umschalten deshalb keinesfalls aufgrund von Toleranzen über dieses Maß hinaus verschieben. Dabei stimmen Bitlänge und Länge eines Inkrements der Inkrementalspur vorzugsweise überein. Es gibt somit eine sogenannte Phasenreserve von ± 90° oder ± π/2, bezogen auf die Periode eines Inkrements. Mindestens so genau muss also die Phasenmessung auf der Inkrementalspur und somit die Vorgabe der Umschaltzeitpunkte unter Berücksichtigung aller mechanischer Toleranzen und sonstiger Einflussfaktoren sein. In der realen Anwendung kann die Phasenreserve zudem nicht voll ausgeschöpft werden, da Schwankungen bei Änderung der Umgebungs- und Betriebsbedingungen des Systems berücksichtigt werden müssen. Ein herkömmliches umschaltendes System ist damit in seiner Bauform, Baugröße und Auflösung begrenzt, beziehungsweise es bedarf aufwändiger und kostspieliger Justageprozesse, um diese Begrenzungen zu umgehen. Dynamische Effekte im Betrieb werden jedoch durch Justierung nicht verhindert.
-
Die
DE 199 39 643 A1 offenbart eine Einrichtung und ein Verfahren zur Positionsbestimmung zwischen zwei relativ zueinander beweglichen Teilen. Deren Codeteilung ist in 250 Abschnitte mit einem jeweiligen 8-Bit-Code unterteilt, wobei zur Synchronisation zwischen jeweils zwei 8-Bit-Codes eine bestimmte Referenzmarke mit dem Beispielwert 254 eingestreut ist. Dabei wird jedes Codeelement mit einer so großen Anzahl Pixel überabgetastet, dass sich das Problem der teilweisen Beleuchtung kaum noch stellt. Dafür ist ein sehr hoher Aufwand für die Pixelzeile, deren Auslesen und Auswertung zu betreiben.
-
In der
DE 20 2019 101 115 U1 wird eine Vorrichtung zur Positions-, Längen- oder Winkelbestimmung vorgestellt, die für jedes Codeelement mehr als zwei Auslesebereiche oder Photodioden vorsieht. Die Überabtastung bleibt hier im Gegensatz zur
DE 199 39 643 A1 minimal. Dennoch sind mehr als zwei Photodioden je Codeelement erforderlich, wodurch sich die Komplexität der Vorrichtung erhöht.
-
Es ist daher Aufgabe der Erfindung, die Bestimmung einer Absolutposition zu verbessern.
-
Diese Aufgabe wird durch eine Gebervorrichtung und ein Verfahren zur Bestimmung einer Absolutposition eines ersten Objekts relativ zu einem zweiten Objekt nach Anspruch 1 beziehungsweise 12 gelöst. Die beiden Objekte sind gegeneinander in einer Längs- oder Drehrichtung beweglich, und die entsprechende Position oder Winkelstellung soll gemessen werden. Die Gebervorrichtung wird im Falle einer Linearbewegung auch als Lineargeber, im Falle einer Rotationsbewegung als Drehgeber, Drehwinkelsensor oder Encoder, bei Einsatz in einem Servomotor insbesondere als Motorfeedback-System bezeichnet, und das erste Objekt ist dann vorzugsweise eine Welle und das zweite Objekt ein stationärer Teil oder Gehäuse des Drehgebers. Aus der Position oder Winkelposition können abgeleitete Größen erzeugt werden, wie eine Geschwindigkeit oder Winkelgeschwindigkeit.
-
Mit dem ersten Objekt ist eine Maßverkörperung mit einer langgestreckten oder kreisförmigen Maßspur oder Codespur mit einer Absolutcodierung verbunden. Die Absolutcodierung ist beispielsweise ein Pseudozufallscode, in dem jeweils ein Codewort aus einer mit m bezeichneten ersten Vielzahl Codeelementen oder Bits einer Bitlänge eine jeweilige Absolutposition codiert. Jedes der m Codeelemente steht für einen binären Zustand Null oder Eins, etwa hell und dunkel bei einer optischen Gebervorrichtung. Mit dem zweiten Objekt ist eine Abtasteinrichtung mit einer zweiten Vielzahl von Abtastelementen verbunden und damit relativ zu der Maßverkörperung beweglich. Dabei sind erstes Objekt und zweites Objekt untereinander austauschbare Begriffe. Auf jedes Codeelement entfallen n≥2 Abtastelemente, so dass jedes Codeelement mit n-facher Redundanz allerdings unter einem Versatz eines Bruchteils der Bitlänge erfasst wird. Vorzugsweise gilt n=2, womit jeweils ein Abtastelement den vorderen und ein Abtastelement den hinteren Teil eines Codeelements erfasst. Die Alternative n>2 ist auch denkbar, insbesondere in Kombination mit dem Vorgehen gemäß der einleitend genannten
DE 20 2019 101 115 U1 , wobei dies zusätzlichen Aufwand erfordert und die Erfindung bereits mit n=2 auskommt.
-
Aus den jeweiligen Abtastsignalen der Abtastelemente erzeugt eine Binarisierungseinheit jeweils eine binäre Null oder Eins. Eine Steuer- und Auswertungseinheit rekonstruiert aus der Abfolge dieser binären Nullen und Einsen das Codewort und bestimmt damit die gesuchte Absolutposition. Die Steuer- und Auswertungseinheit umfasst beispielsweise eine oder mehrere Schaltungen beziehungsweise einen oder mehrere digitale Rechenbausteine, wie mindestens einen Mikroprozessor, FPGA (Field Programmable Gate Array) oder ASIC (Application-Specific Integrated Circuit).
-
Die Erfindung geht von dem Grundgedanken einer unbalancierten Binarisierung der Abtastsignale zu einer jeweiligen binären Null oder Eins aus. Unbalanciert bedeutet, dass von der herkömmlich bei 50% des Maximalpegels gesetzten Binarisierungsschwelle gezielt abgewichen wird. Vorzugsweise wird eine speziell darauf angepasste, noch zu erläuternde Decodiervorschrift verwendet, um dann das Codewort zu rekonstruieren. Damit wird gezielt eher eine binäre Null erzeugt als eine binäre Eins, oder in einer alternativen inversen Ausführungsform eher eine binäre Eins als eine binäre Null, statt dies wie herkömmlich auszubalancieren.
-
Hierbei bedürfen mehrere Begriffe einer gewissen Aufmerksamkeit. Zunächst bezieht sich das Bevorzugen einer binären Null oder Eins auf das einzelne Codeelement. Es geht nicht um ein Codewort, das mehr Nullen als Einsen enthält oder umgekehrt, in dieser Hinsicht macht die Erfindung keinerlei Annahmen. Weiterhin wird eine effektive Binarisierungsschwelle verschoben. Dies kann eine tatsächliche Binarisierungsschwelle der Binarisierungseinheit sein, aber das ist nur eine bevorzugte Ausführungsform. Alternativ oder zusätzlich können bereits von den Codeelementen beziehungsweise von der Abtasteinrichtung Abtastsignale erzeugt werden, die auch mit einer 50%-Binarisierungsschwelle der Binarisierungseinheit eher binäre Einsen oder eher binäre Nullen erzeugen würden. Dies wird weiter unten noch näher erläutert. Schließlich ist eine Art Richtungswechsel hinsichtlich des Verschiebens der effektiven Binarisierungsschwelle zu beachten. Wenn die effektive Binarisierungsschwelle Richtung 100%=1 verschoben wird, begünstigt das gerade umgekehrt die binären Nullen, denn nur die nun relativ selteneren überschwelligen Abtastungen liefern noch eine binäre Eins. Umgekehrt begünstigt eine Richtung 0 verschobene effektive Binarisierungsschwelle die binäre Eins. Die unabhängigen Ansprüche formulieren es aus Sicht der begünstigten Zustände, nicht der effektiven Binarisierungsschwelle selbst, was alternativ genauso möglich wäre.
-
Die Erfindung hat den Vorteil, dass im Gegensatz zum einleitend beschriebenen Stand der Technik keine Umschaltung zwischen zwei Kanälen mehr erforderlich ist. Die Absolutposition wird unmittelbar und eindeutig aus der absolutcodierten Spur ausgelesen. Damit entfällt die Notwendigkeit einer Inkrementalspur, obwohl natürlich ein zusätzliches Inkrementalsystem beispielsweise zur Auflösungserhöhung weiterhin vorgesehen sein kann. Die erfindungsgemäße Absolutpositionsbestimmung jedoch ist autark und auf das Inkrementalsystem nicht angewiesen. Fehler durch ungünstige Umschaltzeitpunkte sind nicht länger möglich. Die Erfindung ist robust gegen undefinierte oder mehrdeutige Zustände in Übergangslagen, wenn also ein Abtastelement Anteile von zwei benachbarten Codeelementen erfasst. Dabei genügt mit n=2 eine gleiche Anzahl von Abtastelementen wie bei dem schaltenden Verfahren.
-
Vorzugsweise ist eine Schwelle der Binarisierungseinheit aus einer Mittellage zwischen Minimalpegel des Abtastsignals und Maximalpegel des Abtastsignals verschoben. Der Minimalpegel ist typischerweise Null, so dass die Mittellage vereinfachend bei 50% angenommen wird. In dieser Ausführungsform wird die effektive Binarisierungsschwelle verschoben, indem die Binarisierungseinheit unbalanciert binarisiert, also ihre Unterscheidung in binäre Eins und Null unbalanciert oder nicht mittig mit einer Schwelle ungleich 50% trifft. Die Schaltung der Binarisierungseinheit ist mit der unbalancierten Schwelle aufgebaut oder parametriert. Das schließt vorzugsweise den Fall ein, dass die Binarisierungsschwelle auf 50% eines ursprünglichen Abtastsignals eingestellt ist, das Abtastsignal aber dann vor der Binarisierung noch verstärkt oder gedämpft wird. Die Schwelle der Binarisierungseinheit entspricht vorzugsweise der effektiven Binarisierungsschwelle. Es ist aber auch denkbar, dass mehrere Effekte kumuliert werden, die sogleich erläutert werden, wobei dann die Schwelle der Binarisierungseinheit von der effektiven Binarisierungsschwelle abweichen kann.
-
Die effektive Binarisierungsschwelle ist bevorzugt durch einen Pegel der Abtastsignale verschoben, wobei der Pegel durch Ausgestaltung zumindest einiger Codeelemente, zumindest einiger Abtastelemente und/oder eines Signalgebers der Abtasteinrichtung eingestellt ist. Dies ist eine Alternative oder Ergänzung zu einem Verschieben einer Schwelle der Binarisierungseinheit. Zur Manipulation des Abtastsignals und Veränderung von dessen Pegel sind eine oder mehrere der folgenden Maßnahmen denkbar: Veränderung der Codeelemente in deren Breite quer zur Messrichtung, Veränderung der Abtastelemente, beispielsweise von deren Fläche oder Geometrie, oder Veränderung eines Signalgebers der Abtasteinrichtung. Das ist beispielsweise eine Lichtquelle, die im Zusammenspiel mit der Codespur das zu erfassende Hell-Dunkel-Muster erzeugt und deren Signalstärke oder Beleuchtungscharakteristik verändert werden kann.
-
Die Steuer- und Auswertungseinheit ist bevorzugt dafür ausgebildet, jeweils Nullergruppen aufeinanderfolgender binärer Nullen und Einsergruppen aufeinanderfolgender binärer Einsen zu bilden und das Codewort aus den Gruppen wie folgt zu rekonstruieren:
- - Bestimme jeweils eine der Gruppe entsprechende Bitzahl durch Division der Länge der Gruppe durch die Anzahl gemeinsam ein Codeelement abtastender Abtastelemente,
- - Falls die effektive Binarisierungsschwelle zugunsten der binären Null verschoben ist, runde die Bitzahl für Einsergruppen auf und für Nullergruppen ab, und falls umgekehrt die effektive Binarisierungsschwelle zugunsten der binären Eins verschoben ist, runde die Bitzahl für Nullergruppen auf und für Einsergruppen ab, und
- - setze in dem Codewort unter Einhaltung der ursprünglichen Reihenfolge der Gruppen für jede Nullergruppe eine der gerundeten Bitzahl entsprechende Anzahl Codeelemente auf Null und für jede Einsergruppe eine der gerundeten Bitzahl entsprechende Anzahl Codeelemente auf Eins.
-
Das ist ein Beispiel einer an die erfindungsgemäße unbalancierte effektive Binarisierungsschwelle angepassten Decodiervorschrift. Zunächst werden die aus der Erfassung des Codeworts erzeugten und binarisierten Abtastsignale in Blöcke aufeinanderfolgender binärer Nullen beziehungsweise Einsen aufgeteilt, die als Nullergruppen und Einsergruppen bezeichnet werden. Für jede Gruppe wird gezählt, wie viele Nullen beziehungsweise Einsen sie enthalten, und das wird als Bitzahl bezeichnet. Diese Bitzahl wird noch korrigiert, um Codeelemente im Übergang zweier Gruppen richtig zu berücksichtigen, wo ein Abtastelement in zahlreichen Relativstellungen der beiden Objekte zwei unterschiedliche Codeelemente zugleich abtastet. Dabei wird zunächst eine Ausführungsform betrachtet, in der die effektive Binarisierungsschwelle die binäre Null begünstigt. Dann wird in den Einsergruppen aufgerundet, Bitzahl:= ceil(Bitzahl), und in den Nullergruppen abgerundet, Bitzahl:=floor(Bitzahl). Zu beachten ist, dass die Rundung vorzugsweise wie angegeben nicht die alltägliche Rundung ist, sondern mit ceil unabhängig vom Wert der ersten Nachkommastelle einmal herauf- und mit floor einmal herabgezählt wird und dann alle Nachkommastellen weggelassen werden. In einer inversen Ausführungsform, in der die effektive Binarisierungsschwelle die binäre Eins begünstigt, wird die Rundung umgekehrt. Somit wird in den Einsergruppen abgerundet, Bitzahl:= floor(Bitzahl), und in den Nullergruppen aufgerundet, Bitzahl:=ceil(Bitzahl). Das rekonstruierte Codewort entsteht in beiden Ausführungsformen, unabhängig von der Begünstigung binärer Nullen oder Einsen, indem für jede Nullergruppe Bitzahl binäre Nullen und für jede Einsergruppe Bitzahl binäre Nullen entsprechend der ursprünglichen Anordnung der Gruppen zu dem rekonstruierten Codewort zusammengefügt werden.
-
Bevorzugt tasten alle Abtastelemente die Maßverkörperung gemeinsam ab und/oder die Steuer- und Auswertungseinheit rekonstruiert ein Codewort jeweils aus den binären Nullen und Einsen der Abtastsignale aller Abtastelemente. Es gibt folglich keine unterschiedlichen Kanäle wie in der einleitend beschriebenen herkömmlichen Lösung und folglich keine Umschaltung dazwischen. Es sind alle Abtastelemente aktiv, und die Rekonstruktion bezieht sich auf alle Abtastsignale. Insbesondere wird nach der im vorigen Absatz vorgestellten vorteilhaften Decodiervorschrift über alle Abtastelemente beziehungsweise deren Abtastsignale gezählt, wie viele binäre Nullen oder binäre Einsen jeweils aufeinanderfolgen. Es bleibt denkbar, zusätzliche Abtastelemente vorzusehen, die nicht an der Rekonstruktion beteiligt sind, beispielsweise als Referenzelemente.
-
Die effektive Binarisierungsschwelle liegt bevorzugt in dem Intervall [51%, 99%], [55%, 95%], [60%, 90%], [1%, 49%], [5%, 45%] oder [10%, 40%], bezogen auf einen Maximalpegel der Abtastsignale. Eine effektive Binarisierungsschwelle oberhalb von 50% begünstigt die binäre Null, eine effektive Binarisierungsschwelle unterhalb von 50% einer inversen Ausführungsform begünstigt die binäre Eins. Weiterhin ist Bezugspunkt ein Maximalpegel beziehungsweise eine mittige effektive Binarisierungsschwelle bei 50%, aus der verschoben wird. Mit einer effektiven Binarisierungsschwelle von 50% würde bereits bei dem geringsten und in der Praxis völlig unvermeidlichen Rauscheffekt ein Abtastelement im Ergebnis zufällig eine binäre Null oder Eins liefern, wenn es in einer Übergangslage zwei unterschiedliche Codeelemente erfasst. Je größer der Abstand zu 50% ist, desto größer wird demgegenüber die Robustheit. Eine effektive Binarisierungsschwelle von 0% oder 100% wiederum würde die Messung ignorieren, so dass auch hierzu ein Abstand einzuhalten ist. Die effektive Binarisierungsschwelle kann im Prinzip für die einzelnen Abtastsignale beziehungsweise Abtastelemente unterschiedlich sein, ist aber bevorzugt für alle gleich, da sich ansonsten eine unterschiedliche Robustheit je Codesegment ergibt.
-
Die effektive Binarisierungsschwelle liegt bevorzugt in dem Intervall [70%, 80%] oder dem Intervall [20%, 30%] oder beträgt im Wesentlichen 75 % oder 25%. Damit wird der soeben erläuterte Abstand zu einem mittigen Wert von 50% und zu den Extremwerten 0%, 100% maximiert. Ein Optimum einer maximalen Rausch- oder Toleranzreserve liegt bei 75% beziehungsweise in einer alternativen inversen Ausführungsform bei 25%. Dieses Optimum wird besonders bevorzugt im Wesentlichen realisiert, was bedeutet, dass dies so angestrebt und eingestellt ist, aber noch Toleranzen von einigen Prozentpunkten, einem Prozentpunkt oder weniger als einem Prozentpunkt vorstellbar sind. Unter diesem Verständnis von Toleranzen kann die Formulierung im Wesentlichen weglassen werden.
-
Die Abtasteinrichtung weist bevorzugt eine zweite Vielzahl von Abtastelementen auf, die mindestens das Zweifache der ersten Vielzahl beträgt. Bei m Codeelementen gibt es demnach mindestens m*n Abtastelemente, noch bevorzugter genau m*n Codeelemente, wobei oben schon erwähnt wurde, dass vorzugsweise n=2 gilt, mit gerade doppelt so vielen Abtastelementen wie Codeelementen oder 2m Abtastelementen. Damit kann ein vollständiges Codewort aus m Codeelementen mit n Abtastungen je Codeelement gelesen werden.
-
Die Abtastelemente bilden bevorzugt eine Reihenanordnung, insbesondere mit gleichmäßigem gegenseitigem Abstand. Die Reihenanordnung ist in Messrichtung, also entlang der Maßspur der Absolutcodierung ausgerichtet. Vorzugsweise handelt es sich um eine einzige Reihe. Mehrere Reihen mit Versatz quer zur Messrichtung sind alternativ denkbar, sofern trotzdem weiterhin alle Abtastelemente das Codewort erfassen können. Die Abtastelemente sind bevorzugt innerhalb der Reihe oder innerhalb der Reihen gleichmäßig zueinander beabstandet. Es gibt dann diesbezüglich keine Unterschiede in der Erfassung verschiedener Codeelemente.
-
Die Abtastelemente erfassen bevorzugt jeweils einen gleich langen Anteil eines Codeelements. Sie sind dazu vorzugsweise in Messrichtung gleich lang, d.h. je nach Typ der Gebervorrichtung in Längsrichtung oder in Umfangsrichtung. Noch bevorzugter teilen jeweils n Abtastelemente ein Codewort untereinander gleichmäßig auf, so dass der erfasste Anteil dem Quotienten aus Bitlänge und Anzahl n der Abtastelemente entspricht, die mit gegenseitigem Versatz ein Codeelement abtasten. Alternativ können auch längere Anteile eines Codeelements erfasst werden, beispielsweise mit einer Art Reißverschlussanordnung mehrerer versetzter Reihen nebeneinander.
-
Die erläuterten regelmäßigen Anordnungen sind bevorzugt, aber die Erfindung ist zunächst nicht darauf beschränkt. Es können also Abtastelemente unterschiedlich lange Anteile von Codeabschnitten erfassen und/oder einen unterschiedlichen gegenseitigen Abstand aufweisen. Im Ergebnis führt das zu unterschiedlichen effektiven Binarisierungsschwellen je Abtastsignal, was oben bereits als möglich, aber nicht unbedingt vorteilhaft erwähnt wurde.
-
Die Abtasteinrichtung erfasst bevorzugt dieselbe einzige Codespur aus Codeelementen der Absolutcodierung. Damit soll nochmals betont werden, dass die Erfindung autark mit einer Absolutcodierung auskommt und diese Absolutcodierung wiederum beispielsweise als Pseudozufallscodierung mit nur einer einzigen Spur ausgebildet sein kann. Es gibt vorzugsweise gar keine weiteren Spuren auf der Maßverkörperung, insbesondere keine Inkrementalspur zum Festlegen von Umschaltpunkten zwischen zwei Kanälen von Abtastelementen, denn die Erfindung benötigt solche Kanäle nicht. Sofern auf der Maßverkörperung doch weitere Codespuren für andere Zwecke vorgesehen sind, beispielsweise ein Inkrementalsystem zur Auflösungserhöhung, interessiert sich die Abtasteinrichtung dafür nicht, sie erzeugt daraus keine Abtastsignale und benötigt die Information etwaiger weiterer Codespuren nicht, weil sie die Absolutposition autark aus der Codespur mit Codeelementen der Absolutcodierung bestimmt.
-
Das erfindungsgemäße Verfahren kann auf ähnliche Weise weitergebildet werden und zeigt dabei ähnliche Vorteile. Derartige vorteilhafte Merkmale sind beispielhaft, aber nicht abschließend in den sich an die unabhängigen Ansprüche anschließenden Unteransprüchen beschrieben.
-
Die Erfindung wird nachstehend auch hinsichtlich weiterer Merkmale und Vorteile beispielhaft anhand von Ausführungsformen und unter Bezug auf die beigefügte Zeichnung näher erläutert. Die Abbildungen der Zeichnung zeigen in:
- 1 eine schematische Darstellung eines Drehgebers;
- 2 eine erläuternde Darstellung der Abtastung eines Absolutcodes in einer idealen Relativposition zwischen Abtastelementen und Codeelementen;
- 3 eine Darstellung ähnlich 2, in der die Abtastelemente zu den Codeelementen um ihre halbe Breite verschoben sind; und
- 4 eine Darstellung ähnlich 2, in der die Abtastelemente zu den Codeelementen um drei Viertel ihrer Breite verschoben sind.
-
1 zeigt eine schematische Darstellung einer Gebervorrichtung 10 in einer Ausführungsform als Encoder oder Drehgeber. Die Gebervorrichtung 10 weist eine mit einer Welle 12 rotierende Codescheibe oder Maßverkörperung 14 auf, und auf der Maßverkörperung 14 befindet sich eine Codespur oder Maßspur 16 mit einer Absolutcodierung. In der Absolutcodierung wechseln nicht gezeigte Codeelemente mit zwei unterschiedlichen Zuständen einander ab. Ein Beispiel ist ein Pseudozufallscode, aber die Erfindung ist darauf nicht beschränkt, es sind beliebige binäre Codes möglich. Jeweils m gemeinsam erfasste Codeelemente ergeben ein Codewort, aus dem auf eine eindeutige Absolutposition geschlossen werden kann. Die Maßverkörperung 14 ist vorzugsweise kreisförmig und weist nur die eine Maßspur 16 auf.
-
Am Umfang der Maßverkörperung 14 beziehungsweise der Maßspur 16 ist eine Abtasteinrichtungen 18 mit einer Vielzahl von Abtastelementen 20 angeordnet, die in der beispielhaft gezeigten optischen Ausführungsform einer Gebervorrichtung 10 beispielsweise als Fotodioden ausgebildet und die vorzugsweise in einer Reihe angeordnet sind. Die Abtastelemente 20 sind vorzugsweise auf einem Opto-ASIC (Application-Specific Integrated Circuit) integriert und empfangen das Licht eines der Abtasteinrichtung 18 zugeordneten Lichtsenders 22, das durch die Maßspur 16 dringt. Die Abtastelemente 20 erzeugen jeweils ein Abtastsignal, dessen Amplitude oder Pegel von dem Zustand des jeweiligen erfassten Codeelements abhängt.
-
Eine Binarisierungseinheit 24 wandelt die Abtastsignale durch Bewertung mit einer Binarisierungsschwelle in binäre Nullen und Einsen. Die Binarisierungseinheit 24 weist vorzugsweise analoge Schaltungselemente auf, wie einen Schwellenkomparator. Alternativ können die Abtastsignale mit höherer Auflösung digitalisiert und anschließend rechnerisch mit der Binarisierungsschwelle bewertet werden.
-
Eine Steuer- und Auswertungseinheit 26 erzeugt aus den binären Nullen und Einsen zunächst das momentan von der Abtasteinrichtung 18 erfasste Codewort und daraus dann die Absolutposition der Maßverkörperung 14. Diese Absolutposition oder daraus ermittelte Größen, etwa eine Geschwindigkeitsinformation nach Differenzierung, können an einem Ausgang bereitgestellt werden. Die klare Trennung von Abtasteinrichtung, Binarisierungseinheit 24 und Steuer- und Auswertungseinheit 26 in 1 dient nur der Erläuterung, die Funktionalität kann über gemeinsame oder zusätzliche Bausteine verteilt sein.
-
Die Darstellung der Gebervorrichtung 10 in 1 ist sehr schematisch. Daher ist die gezeigte Ausgestaltung der Abtasteinrichtung 18 mit ihren Abtastelementen 20 und dem zugehörigen Lichtsender 22 sehr einfach gehalten. Insbesondere in Bezug auf die Dimensionierungen und konkreten Positionen der Bauelemente kann die Gebervorrichtung 10 in der Praxis stark von 1 abweichen. Alternativ zu einem transmissiven Aufbau ist auch ein reflexiver Aufbau denkbar, bei dem sich Abtasteinrichtung 18 und Lichtsender 22 auf derselben Seite der Maßverkörperung 14 befinden und die Maßspur 16 reflektierende Eigenschaften hat. Auch die Ausführung als optoelektronische Gebervorrichtung 10 ist beispielhaft, alternativ kann erfindungsgemäß eine magnetische, induktive oder kapazitive Gebervorrichtung 10 vorgesehen sein oder ein sonstiges geeignetes physikalisches Wirkprinzip zur Erfassung von Abtastsignalen eingesetzt werden. Bei einem magnetischen System beispielsweise wechseln einander statt transparenter und nicht transparenter Bereiche der Maßspur 16 Nordpole und Südpole ab, die von Hall-Sensoren oder dergleichen als Abtastelemente 20 der Abtasteinrichtung 18 erfasst werden.
-
Die Gebervorrichtung 10 kann ferner statt als Drehgeber als Lineargeber oder Längsmesssystem ausgebildet sein. Die Maßverkörperung 14 ist dann nicht kreisförmig, sondern langgestreckt, die Maßspur entsprechend auf einer Gerade statt einem Kreis angeordnet, und statt einer Rotation erfolgt die Bewegung in Längsrichtung.
-
2 zeigt eine erläuternde Darstellung der Abtastung einer in einem Codewort der Absolutcodierung der Maßspur 16, wobei die Absolutcodierung beispielhaft als binärer Pseudozufallscode ausgeführt ist. Die Codeelemente des Codeworts sind in Anlehnung an ein optisches Erfassungsprinzip schwarz oder weiß dargestellt und repräsentieren damit ebenfalls zwei binäre Zustände einer Absolutcodierung für ein beliebiges Sensorprinzip. Wie oberhalb des Codeworts mit geschweiften Klammern gezeigt, folgen jeweils einzelne oder mehrere helle und dunkle Codeelemente oder Bits aufeinander.
-
Zur Abtastung des Codeworts sind pro darin codiertem Bit oder Codeelement n=2 Abtastelemente 20 der Abtasteinrichtung 18 vorgesehen. Prinzipiell sind mehr Abtastelemente 20 pro Codeelement denkbar, also n>2, insbesondere in Kombination mit dem Vorgehen gemäß der einleitend genannten
DE 20 2019 101 115 U1 , aber erfindungsgemäß reichen zwei Abtastelemente 20 pro Codeelement aus. Umfasst das Codewort insgesamt m Bits oder Codeelemente, so werden n*m Abtastelemente 20 benötigt.
-
Jedes Abtastelement 20 erzeugt ein Abtastsignal, das in der Binarisierungseinheit 24 in eine binären Null oder binäre Eins gewandelt wird, die in 2 in das jeweilige Abtastelement hineingeschrieben ist. Dann werden die benachbart zusammenhängenden binären Nullen und binären Einsen in Segmenten zusammengefasst und gezählt, wie durch geschweifte Klammern unterhalb der Abtastelemente 20 gezeigt. Eine Aufteilung in zwei Kanäle A und B wie im einleitend beschriebenen Stand der Technik und eine Umschaltung dazwischen gibt es nicht, es werden die Abtastsignale und daraus bestimmten binären Zustände aller Abtastelemente 20 berücksichtigt.
-
In 2 befinden sich das Codewort der Maßspur 16 und die Abtastelemente 20 in einer idealen Relativposition. Die Hell-Dunkel-Übergänge des Codeworts liegen genau am Übergang zwischen zwei Abtastelementen 20. Jedes Abtastelement 20 erfasst damit vollständig entweder ein helles oder ein dunkles Codeelement, und die binären Zustände sind eindeutig. In dieser 100%-Überdeckung der Codeelemente ist die Decodierung sehr einfach. Die Länge der Segmente oder zusammenhängenden Folgen von binären Nullen und binären Einsen wird durch die Anzahl n derjenigen Abtastelemente 20 geteilt, die gemeinsam ein Codeelement erfassen, hier n=2. Daraus ergibt sich der unten gezeigte decodierte Code 28. Für das erste Segment des Codeworts mit zwei dunklen Codeelementen beispielsweise wurden vier aufeinanderfolgende binäre Nullen erfasst. Dies ergibt vier geteilt durch n=2 und damit zwei binäre Nullen zu Anfang des decodierten Codes 28. Diese Decodierung setzt sich für die weiteren Segmente analog fort.
-
3 zeigt eine ähnliche Darstellung wie 2, nur sind nun die Abtastelemente 20 relativ zu den Codeelementen der Maßspur 16 um eine halbe Breite der Abtastelemente 20 verschoben. Das ergibt nun an den Hell-Dunkel-Übergängen des Codeworts eine 50%-Überdeckung. Mit der herkömmlichen mittigen Binarisierungsschwelle wäre der binäre Zustand eines Abtastelements 20a an einem Hell-Dunkel-Übergang undefiniert. Der Pegel des Abtastsignals läge gerade auf der Schwelle, und der binäre Zustand würde durch minimale Toleranzen zufällig in die eine oder andere Richtung kippen. Somit wäre die Anzahl zusammenhängender binärer Nullen und Einsen variabel. Beispielsweise könnten für ein Codeelement eine, zwei oder drei zusammenhängende binäre Nullen beziehungsweise Einsen und für zwei Codeelemente drei, vier oder fünf zusammenhängende binäre Nullen beziehungsweise Einsen erfasst werden. Damit würde die Decodierung mehrdeutig, und je nach Codierung, beispielsweise in einem Pseudozufallscode, kann der Unterschied in einem Bit beliebig große Fehler der ermittelten Absolutposition bewirken.
-
Deshalb wird erfindungsgemäß die herkömmliche Binarisierungsschwelle aus ihrer mittigen Lage bei 50% verschoben. Ein Optimum ergibt sich bei einer Binarisierungsschwelle von 75%, da dies für n=2 Abtastelemente je Codewort die größte symmetrische Toleranz lässt. Mit dieser Binarisierungsschwelle von 75% wird der binäre Zustand Eins erst erzeugt, wenn der Pegel des Abtastsignals der Abtastelemente 3/4 des Maximalpegels erreicht. In einer optischen Ausführungsform muss folglich ein Abtastelement zu 3/4 beleuchtet sein. Das ist bei der 50%-Überdeckung gemäß 3 nicht der Fall. Somit erzeugt ein Abtastelement 20a an einem Hell-Dunkel-Übergang des Codeworts eindeutig eine binäre Null. Toleranzen sind in dieser Überlegung vernachlässigt, würden aber von der 75%-Schwelle verkraftet.
-
Die Binarisierungsschwelle bei 75% begünstigt die binäre Null, da eine binäre Eins nur noch erzeugt wird, wenn das Abtastsignal den hohen Anteil 3/4 des Maximalpegels erreicht. In einer inversen Ausführungsform liegt das Optimum für die Binarisierungsschwelle bei 25%, die dann die binäre Eins begünstigt, aber ansonsten ganz analog funktioniert. Es ist auch nicht zwingend erforderlich, die Binarisierungsschwelle auf das Optimum zu legen. Vielmehr genügt es, eine Binarisierungsschwelle >50% beziehungsweise <50% zu wählen. Außerhalb des Optimums ist dann die Toleranzreserve gegenüber 50% beziehungsweise die Extremwerte 0% und 100% geringer.
-
Die Binarisierungsschwelle ist am anschaulichsten als tatsächliche Binarisierungsschwelle der Binarisierungseinheit 24 verständlich. Es genüg aber, eine effektive Binarisierungsschwelle aus der herkömmlichen mittigen Lage zu verschieben. Dies lässt sich auch mittels zahlreicher weiterer Parameter erreichen, die am Ende der Beschreibung vorgestellt werden.
-
Wie der 3 zu entnehmen ist, ergeben sich im Falle einer Relativposition der Abtastelemente 20 zu den Codeelementen mit 50%-Überdeckung bei einer Binarisierungsschwelle von 75% keine uneindeutigen Zustände. In einem dunklen Segment ist zwar die Anzahl der binären Nullen größer als die Anzahl der binären Einsen in einem gleich langen hellen Segment. Das ist eine direkte Folge dessen, dass die auf 75% verschobene Binarisierungsschwelle die binäre Null begünstigt. Es stehen aber eindeutig eine zusammenhängende binäre Eins für eine Eins in dem decodierten Code 28, drei zusammenhängende binäre Nullen für eine Null, drei zusammenhängende binäre Einsen für zwei Einsen, fünf zusammenhängende binäre Nullen für zwei Nullen und so fort.
-
4 zeigt nochmals eine ähnliche Darstellung wie 2, wobei nun die Abtastelemente 20 relativ zu den Codeelementen der Maßspur 16 um drei Viertel ihrer Breite verschoben sind. Es ergibt sich damit eine Überdeckung von 75% beziehungsweise 25%. Auch bei der weiterhin beispielhaft auf 75% verschobenen Binarisierungsschwelle ergeben sich nun uneindeutige Zustände. Bei einem Übergang von dunkel auf hell bleibt es für ein zugeordnetes Abtastelement 20a bei einem binären Zustand Null, denn es wird sogar ein noch kleinerer Anteil des hellen Codeelements erfasst. Bei einem Übergang von hell auf dunkel hingegen erfasst ein zugehöriges Abtastelement 20b gerade 3/4 des hellen Codeelements. Der Pegel des Abtastsignals liegt somit genau auf der Binarisierungsschwelle, die hier weiterhin beispielhaft im Optimum von 75% eingestellt ist, und der binäre Zustand wird rauschbedingt unvorhersagbar in die eine oder andere Richtung kippen, was durch ein Fragezeichen markiert ist.
-
Infolgedessen ist auch die Länge der Segmente nicht mehr eindeutig. Im Gegensatz zu dem herkömmlichen Vorgehen mit einer 50%-Schwelle ist das aber durch eine passende Decodiervorschrift ausgleichbar, d.h. die Eindeutigkeit doch wiederherstellbar. Das lässt sich in 4 anhand der jeweils eingetragenen beiden möglichen Längen der Segmente nachvollziehen. Es gibt in jedem Segment nur ein einziges Fragezeichen für das jeweilige Abtastelement 20b an dem Hell-Dunkel-Übergang, und dadurch wird die Überschneidung vermieden, die eine Uneindeutigkeit der Decodierung bewirken würde.
-
Denn für ein Segment aus binären Nullen steht fest, dass es mindestens so viele binäre Nullen gibt wie im Falle einer 50%-Schwelle. Das zugehörige Abtastelement 20a an dem Dunkel-Hell-Übergang wird wegen der Binarisierungsschwelle von 75% stets eine binäre Null erzeugen. Die Anzahl binärer Nullen kann sich durch das Fragezeichen des zugehörigen Abtastelements 20b an dem Hell-Dunkelübergang nur um eins erhöhen, niemals aber um zwei erhöhen oder geringer werden als im Falle der 50%-Schwelle. Es gibt folglich zwei oder drei binäre Nullen für eine einzelne Null im Codewort, vier oder fünf binäre Nullen für zwei aufeinanderfolgende Nullen und so fort, so dass jede Anzahl binärer Nullen eines Segments eindeutig einer Anzahl Nullen in dem decodierten Code 28 zugeordnet werden kann.
-
Ganz analog gibt es höchstens so viele binäre Einsen wie im Falle einer 50%-Schwelle. Für das zugehörige Abtastelement 20a an dem Dunkel-Hell-Übergang wird weiterhin stets eine binäre Null erzeugt. Die Anzahl binärer Einsen kann sich durch das Fragezeichen des Abtastelements 20b an dem Hell-Dunkel-Übergang nur um eins erniedrigen, niemals aber um zwei erniedrigen oder höher werden als im Falle der 50%-Schwelle. Es gibt folglich eine oder zwei binäre Einsen für eine einzelne Eins im Codewort, zwei oder drei binäre Einsen für zwei aufeinanderfolgende Einsen und so fort, so dass auch jede Anzahl binärer Einsen eines Segments eindeutig einer Anzahl Einsen in dem decodierten Code 28 zugeordnet werden kann.
-
Ein Sonderfall ergibt sich noch, wenn das erste beziehungsweise das letzte der Abtastelemente 20 ein Segment mit einer einzelnen binären Null bildet. Betrifft dies das erste der Abtastelemente 20, wird dieses 1er-Segment ausnahmsweise in eine einzelne Null am Anfang des decodierten Codes 28 übersetzt, und alles Übrige verschiebt sich um ein Abtastelement 20 beziehungsweise ein halbes Codeelement. Betrifft es das letzte der Abtastelemente 20, so kann dies entsprechend ausnahmsweise in eine einzelne Null am Ende des decodierten Codes 28 übersetzt werden, sofern der decodierte Code 28 die vorgesehene Bitlänge andernfalls noch nicht erreicht hat. Letzterer Fall ist im Beispiel der 4 eingetreten: Das letzte Segment kann je nach Zustand des Fragezeichens eine oder zwei binäre Nullen umfassen, und auch bei nur einer binären Null, falls das Fragezeichen den binären Zustand Eins annimmt, wird im decodierten Code 28 noch eine Null angehängt.
-
Zur Wiederherstellung der Eindeutigkeit unterscheidet sich die Decodiervorschrift für Segmente mit binären Nullen von der Decodiervorschrift mit binären Einsen. Noch gemeinsam wird gezählt, wie viele binäre Nullen beziehungsweise Einsen in dem Segment aufeinanderfolgen, und diese Bitzahl wird durch die Zahl n=2 der Abtastelemente pro Codeelement geteilt, Bitzahl:=[Länge Segment]/n. Dann wird aber unterschieden. Für ein Segment mit binären Nullen wird die Bitzahl korrigiert, indem etwaige Nachkommasteilen weggerundet werden, Bitzahl:=floor(Bitzahl). Für ein Segment mit binären Einsen hingegen wird aufgerundet, und zwar bei beliebigem Wert der ersten Nachkommastelle, nicht erst bei größer gleich fünf: Bitzahl:=ceil(Bitzahl). Schließlich ist noch der Sonderfall einer einzelnen binären Null am Anfang oder Ende zu beachten. Für das Beispiel n=2 und eine Binarisierungsschwelle von 75% ergibt sich insgesamt die folgende Decodiervorschrift:
Länge Segment mit aufeinanderfolgenden binären Nullen | Länge Segment mit aufeinanderfolgenden binären Einsen | Decodiert in Anzahl Nullen/Einsen |
2 oder 3 (Sonderfall 1 am Anfang / am Ende) | 1 oder 2 | 1 |
4 oder 5 | 3 oder 4 | 2 |
6 oder 7 | 5 oder 6 | 3 |
8 oder 9 | 7 oder 8 | 4 |
-
Die Binarisierungsschwelle von 75% sorgt für optimalen symmetrischen Toleranzabstand zu 50% und zum Randwert 100%. Es genügt aber bei gleicher Decodiervorschrift bereits die schwächere Bedingung >50% und <100%, wobei vorzugsweise ein gewisser Abstand eingehalten werden sollte, um nicht zu rauschempfindlich zu werden, etwa eine Binarisierungsschwelle im Intervall [55%, 95%], [60%, 80%] oder [70%, 80%].
-
In anderen Ausführungsformen wird die Situation invertiert und eine Binarisierungsschwelle <50% gewählt. Das führt dann zu einer Bevorzugung von binären Einsen, und damit sind Anpassungen für den analogen invertierten Fall vorzunehmen: Die obigen Rundungsvorschriften und damit die Werte in den beiden ersten Spalten der Tabelle sind zu vertauschen, und die Randfälle am Anfang und Ende des Codewortes betreffen nun helle Segmente mit einer binären Eins statt dunkle Segmente mit einer binären Null. Das Optimum liegt im invertierten Fall bei 25%, allgemein genügt die Bedingung <50% und >0%, bei weiteren beispielhaft geeigneten Binarisierungsschwellen im Intervall [5%, 45%], [10%, 40%] oder [20%, 30%]. Grundsätzlich können je Abtastelement 20 unterschiedliche Binarisierungsschwellen gewählt werden, wodurch dann eine individuelle Toleranzreserve entsteht und möglicherweise lokal, je nach Abtastelement 20, die Decodiervorschrift anzupassen ist.
-
Es wurde bereits mehrfach darauf hingewiesen, dass die Binarisierungsschwelle der Binarisierungseinheit 24 nicht die einzige Möglichkeit ist, die Zuordnung von Abtastsignalen zu binären Zuständen zu verschieben und die binären Nullen oder binären Einsen zu begünstigen. Das wird als effektive Binarisierungsschwelle bezeichnet, die durch eine nicht mittige Binarisierungsschwelle der Binarisierungseinheit 24 beeinflusst sein kann, aber nicht muss. Es gibt eine Reihe weiterer Möglichkeiten, die effektive Binarisierungsschwelle zu verschieben, die untereinander und/oder mit einer Verschiebung der Binarisierungsschwelle der Binarisierungseinheit 24 kombiniert werden können. Dazu zählt die Ausgestaltung der Abtastelemente 20, insbesondere deren Geometrie, beispielsweise durch dreieckige Fotodioden. Weiterhin kann die Geometrie, insbesondere die Breite, Transmissivität oder Reflexivität der Codeelemente der Maßspur 16 manipuliert werden.
-
Je nach Sensorprinzip gibt es auch noch einen Signalgeber, im Falle der optischen Detektion die Lichtquelle 22. Deren Signalstärke oder speziell Beleuchtungscharakteristik kann ebenfalls verändert werden.
-
ZITATE ENTHALTEN IN DER BESCHREIBUNG
-
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
-
Zitierte Patentliteratur
-
- DE 19939643 A1 [0009, 0010]
- DE 202019101115 U1 [0010, 0013, 0039]