DE2737872A1 - Vorrichtung zur erkennung der relativen position oder veraenderung zwischen zwei beweglichen koerpern - Google Patents

Vorrichtung zur erkennung der relativen position oder veraenderung zwischen zwei beweglichen koerpern

Info

Publication number
DE2737872A1
DE2737872A1 DE19772737872 DE2737872A DE2737872A1 DE 2737872 A1 DE2737872 A1 DE 2737872A1 DE 19772737872 DE19772737872 DE 19772737872 DE 2737872 A DE2737872 A DE 2737872A DE 2737872 A1 DE2737872 A1 DE 2737872A1
Authority
DE
Germany
Prior art keywords
binary
code
digit
decimal
digits
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.)
Granted
Application number
DE19772737872
Other languages
English (en)
Other versions
DE2737872B2 (de
DE2737872C3 (de
Inventor
Ichizo Tagami
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
IHI Corp
Original Assignee
IHI Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by IHI Corp filed Critical IHI Corp
Publication of DE2737872A1 publication Critical patent/DE2737872A1/de
Publication of DE2737872B2 publication Critical patent/DE2737872B2/de
Application granted granted Critical
Publication of DE2737872C3 publication Critical patent/DE2737872C3/de
Expired legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M1/00Analogue/digital conversion; Digital/analogue conversion
    • H03M1/12Analogue/digital converters
    • H03M1/22Analogue/digital converters pattern-reading type
    • H03M1/24Analogue/digital converters pattern-reading type using relatively movable reader and disc or strip
    • H03M1/26Analogue/digital converters pattern-reading type using relatively movable reader and disc or strip with weighted coding, i.e. the weight given to a digit depends on the position of the digit within the block or code word, e.g. there is a given radix and the weights are powers of this radix

Description

Ishikavajima-Harima Jukogyo 17 977 60/ko
Kabushiki Kaisha, Tokio/Japan
Vorrichtung zur Erkennung der relativen Position oder Veränderung zwischen zwei beweglichen Körpern
Die Erfindung betrifft eine Vorrichtung zur Erkennung der relativen Position oder Veränderung zwischen zwei beweglichen Körpern gemäß dem Oberbegriff des Anspruchs 1.
Im allgemeinen weisen Potentiometer und Synchronisationsmotoren oder Drehtransformatoren die weiteste Verbreitung zur elektrischen Erkennung der relativen Position eines Körpers gegenüber einem anderen Körper oder der Verschiebung eines Körpers gegenüber einer Bezugsposition auf. Da diese Bauteile für analoge Abtastungen der relativen Position oder Verschiebung geeignet sind, werden sie bevorzugt in analogen Rückkopplungssystemen verwendet.
Wegen der geringen Genauigkeit wird die analoge Steuerung von Werkzeugmaschinen als untragbar erachtet, aber mit der großen Entwicklungsgeschwindigkeit digitaler Rechner in den vergangenen Jahren ist die numerische Steuerung mit einem höheren Genauigkeitsgrad möglich geworden, so daß ein erhöhtes Bedürfnis für einen digitalen Detektor besteht, d.h., nach einem Analog-Digitalwandler (im weiteren als "AD-Wandler" bezeichnet) zur Umsetzung einer analogen Mengenangabe einer Verschiebung in einen digitalen Code.
809809/0871
-A-
Es gibt zwei Typen von AD-Wandlern von denen der eine ein Differentialtyp und der andere ein Absoluttyp ist, wobei die Verwendung vom Verwendungszweck abhängt. In Fig. 1 ist schematisch ein AD-Wandler vom Absoluttyp dargestellt, welcher auch als "Absolut-Typ-Codierer" bezeichnet wird. Gemäß Fig. 1 sind zwei Körper X und Y relativ zueinander beweglich und eine Seite des Körpers X, welchem dem Körper Y gegenüberliegt, ist mit einem binären Code Z in Richtung der Bewegung markiert. Ein Leser oder Sensor W ist an dem Körper Y befestigt und liest den binären Code Z auf dem Körper X entsprechend dem gegenüberliegenden Verhältnis mit dem Leser W, so daß die relative Position zwischen dem Körper X und Y erkannt werden kann. Genauer gesagt werden die Körper X und Y durch angepaßte Verbindungseinrichtungen i und ii über Körper X1 bzw. Y1 verbunden, um so die relative Position oder Verschiebung zwischen den Körpern X1 und Y1 zu erkennen. Dies bedeutet, daß die relative Position oder Verschiebung zwischen den Körpern X1 und Y1 in Begriffen der relativen Position oder Verschiebung der Körper X und Y gemessen wird.
In der Praxis besteht der Körper X aus einer längsgestreckten Codiermaske oder Codierscheibe und die binäre eins "1w und Null 11O" des binären Codes Z durch die An- oder Abwesenheit von Löchern dargestellt, in^demlichtdurchlässige oder undurchlässige Bereiche, elektrisch leitende und nichtleitende Bereiche, magnetisierte und nichtmagnetisierte Bereiche usw. vorgesehen sind. Der Leser W kann ein fotoelektrischer Leser, Bürsten, Mikroschalter, Magnetköpfe oder dgl. aufweisen. Der Körper γ dient zur Unterstützung des Lesers ¥.
Das wichtigste Merkmal des Absolut-Typ-Codierers besteht darin, daß der Ausgang des Lesers W immer die absolute Adresse darstellt, welche ihrerseits den binären Code Z auf dem Körper X in einem gegenüberliegenden Verhältnis mit dem Leser W darstellt. Deshalb ist sogar dann, wenn die Energieversorgung
809809/0871
nach einem Energieausfall zurückkehrt der Ausgang vom Leser W der gleiche »ie'derAusgang unmittelbar vor dem Energieausfall. Venn eine relative Geschvindigkeit zwischen den Körpern X und Y eine kritische Geschwindigkeit überschreitet, kann eine korrekte Lesung nicht mehr aufrechterhalten werden und wenn die relative Geschwindigkeit unter eine bestimmte kritische Geschwindigkeit absinkt, kann die genaue absolute Adresse noch ein einmal gelesen werden.
Ein weiteres Merkmal bei dem Absolut-Typ-Codierer besteht darin, daß bei mechanischen Erschütterungen und Vibrationen und bei elektrischem Rauschen von Schaltern od. dgl. die Wirkungsweise erheblich vermindert ist.
Der Absolut-Typ-Codierer hat jedoch seine inhärenten Nachteile in seiner fundamentalen Anordnung oder Konstruktion, vas sich genauer aus der Beschreibung von Fig. 2 ergibt. In Fig. 2 ist eine Codiermaske oder Platte P mit drei-bit-Binärziffern oder Codierungen "110", "010" und "101" markiert. Ein schraffiertes Feld stellt dabei eine binäre "1" während ein weißes Feld eine binäre Null "0" darstellt. Ein Leser ist mit drei Lesköpfen iii, iv und V versehen, so daß die binär codierten Marken auf der Codiermaske P von links nach rechts abgetastet werden können. Venn die frei Lesköpfe iii, iv und V genau vertikal ausgerichtet sind, dann werden die binären Codierungen oder Ziffern "110", "010" und "101" genau ausgelesen, wie die Reihenfolge gemäß Fig. 2a zeigt. Wenn jedoch der Lesekopf iv gegenüber dem unteren Lesekopf ν und dem oberen Lesekopf iii nicht genau ausgerichtet ist und beispielsweise um den Abstand 1 gemäß Fig. 2b verschoben ist, wobei der Abstand 1 der horizontale Abstand zwischen der vertikalen Linie durch das Zentrum des nicht genau ausgerichteten Lesekopfes iv und der vertikalen Linie durch die Zentren der Leseköpfe iii und ν ist, dann würden die Ausgänge "110", "010", "111" und "101" sein. Das bedeutet, daß der falsche Ausgang "111" zwischen "010" und "101" erzeugt
809809/0871
wird. Wenn ein mit dem Leser verbundener Digitalrechner so programmiert ist, daß eine Anweisung in Antwort auf den Ausgang H111W abgegeben wird, dann wäre ein ernster Vorfall das Ergebnis.
Diese Fehlfunktion ist jedem Absolut-Typ-Codierer inhärent unabhängig vom jeweiligen Typ, wie z.B. dem Bürstentyp, dem optischen Typ, dem Magnettyp usw. Wenn die Breite der binären Codierungen zur Vergrößerung der Genauigkeit in der Positionserkennung vermindert wird und daraus eine sehr geringe Fehlausrichtung zwischen den Leseköpfen folgt, ergeben sich sogar erhöhte Pehlerausgänge.
Um die Fehl funkt ionen oder irrtümlichen Ausgänge zu vermeiden» ist ein in Fig. 3 dargestellter Binärcode entwickelt worden. Die Codiermaske ist dabei mit vier-bit-binär-Ziffern oder — Codierungen markiert, wobei ein schraffiertes Feld eine binäre eins "1" darstellt, während ein weißes Feld eine binäre Null "0" darstellt und die geringskennzeichnende, die nächstgeringstkennzeichnende, die übernächstgeringstkennzeichnende und die am meisten kennzeichnende Ziffer in dieser Reihenfolge mit C0, C1, C2 und C3 jeweils bezeichnet ist. Die Dezimalziffern 0, 1, 2, 3 usw. werden durch die binären Ziffern oder Codierungen in entsprechenden Spalten dargestellt. Dies ist ein Positions-Binär-Einheitsabstand-Code-System für aufeinanderfolgende Zahlen, deren Ziffern die gleichen außer an einer Stelle sind und wobei sich diese Ziffernstelle durch eine Einheit unterscheidet. Wird beispielsweise die binäre Zahl, welche die dezimale Zahl "0M darstellt, mit der binären Zahl, welche gleich der dezimalen Zahl W1 n ist verglichen, so sind sie darin verschieden, daß die Ziffern lediglich bei der letzten kennzeichnenden Ziffer CQ von·!· einander verschieden sind. In gleicher Weise sind die binären Zahlen, welche die Dezimalzahlen "9" und "10" darstellen oder die Adressen 9 und 10 bilden, darin verschieden, daß die Ziffern bei C1. um eine ziffer verschieden sind. Diese Codesystem wird
809809/0871
als sogenannter Gray-Code bezeichnet und ist vorteilhaft, da der Gray-Code leicht in einen normalen Binärcode umgesetzt verden kann. Mit dem Gray-Code gemäß Fig. 3 wird kein falscher Ausgang erzeugt, und zwar auch dann nicht, wenn die Leseköpfe beispielsweise der Lesekopf ν nicht korrekt ausgerichtet sind gegenüber anderen Leseköpfen vi, vii und viii wie dies mit dem Abstand 1 in Fig. 3 dargestellt ist. Wenn daher die Adressen 0, 1, 2 und 3 usw. durch den Gray-Code oder einen anderen Einheitsabstands code dargestellt werden, dann ist eine korrekte Erkennung möglich.
Im allgemeinen wird der Ausgang von Absolut-Codierem der oben beschriebenen Art in einen Rechner mit hoher Kapazität gespeist oder in einen Kleinstcomputer oder Mikrorechner, so daß der Ausgang des Codierers in dezimal, duodezimal oder sexagesimal Ziffern umgesetzt werden muß. Obwohl durch den Gray-Code eine falsche Lesung verhindert wird, sind dennoch aufwendige logische Schaltkreise für die Umsetzung der Binärzahlen in Dezimalzahlen, Doudezimalζahlen und Sexagesimalzahlen erforderlich, so daß die Kosten dafür ansteigen, während die Betriebssicherheit abnimmt.
Zur Lösung dieser Probleme sind Binärcodesysteme entwickelt worden, wie sie in den Fig. 4 und 5 dargestellt sind. In dea Positions-Binär-Code-System gemäß Fig. 4 ist die Codiermaske oder Platte P in 60 Spalten und θ Reihen unterteilt, wobei wiederum ein weißes Feld eine binäre Zahl M0M darstellt, während ein schraffiertes Feld die binäre Zahl M1" darstellt. Vier Bits Crt, Cn, C0 und C«, stellen eine am wenigsten kenn-
o
zeichnende Ziffer 10 der dezimalen Zahl dar, während die Bits C., C_, C6 und C„ die nächst unwichtigste oder zweitwichtigste Ziffer der Dezimalzahl darstellen. Dies bedeutet, daß die DezjL-malziffern von 11O" bis M60M im Gray-Code dargestellt werden.
809809/0871
Da jede Ziffer einer Dezimalzahl durch einen Einheitsabstandscode mit einem Signalabstand von "1" dargestellt wird, wird eine fehlerhafte Lesung vermieden und die Umsetzung in eine Dezimalzahl kann leicht durchgeführt werden. Dieses Codesystem beinhaltet jedoch eine Übertragungszweideutigkeit. Das heißt wenn beispielsweise die binäre Zahl, welche "9* oder "19" oder "59" darstellt, zu der binären Zahl, welche "10" oder "20" oder "60" darstellt, wechselt, dann wechseln die Bits auf vier Stellen, so daß der Einheitabstand nicht aufrechterhalten werden kann und konsequenterweise Fehlausgänge erzeugt werden zwischen den Adressen 9 und 10, 19 und 20 sowie 59 und 60.
Bei dem Codesystem, das in Fig. 5 dargestellt ist, werden die Dezimalzahlen von 0 bis 9 ebenfalls durch einen Einheitsabstands code dargestellt mit einem Signalabstand von "1" und die binären Ziffern, welche die Dezimalzahlen "0" und "9" darstellen, werden so ausgewählt, daß sie sich durch eins voneinander unterscheiden, so daß der Einheitsabstand bei jeder Ziffer der Dezimalzahlen beibehalten werden kann. Das in Fig. 5 dargestellte Codesystem ist jedoch kein Einheitsabstands code im ganzen. Wenn beispielsweise die Binärziffern, welche die Dezimalzahl "9" oder "19" darstellen, zu der Binärzahl, welche die Dezimalzahl oder Adressen "10" oder "20" wechseln, dann wechseln zwei Ziffern. Als Ergebnis daraus ist zur Vermeidung fehlerhafter Ausgänge erforderlich, daß zusätzliche komplizierte Baumaßnahmen ergriffen werden müssen.
Zur Lösung der oben aufgezeigten Probleme, die bei bekannten Positions-Binär-Code-Systemen zur Erkennung relativer Positionen oder Verschiebungen auftreten, wurden ausführlichste Studien und Versuche durchgeführt, um zu einer Lösung zu kommen, welche diese Nachteile vermeidet.
Es ist daher Aufgabe der Erfindung, eine Vorrichtung dem Ober-
809809/0871
begriff des Anspruchs 1 genannten Art derart zu schaffen, daß fehlerhafte Ausgangssignale vermieden und eine genaue Erkennung der relativen Position oder Verschiebung zwischen zvei Körpern bei einer leichten Umsetzung der Ausgangssignale in eine entsprechend binär codierte Zahl ermöglicht vird.
Diese Aufgabe vird durch die kennzeichnenden Merkmale des Anspruchs 1 gelöst. Vorteilhafte Weiterbildungen ergeben sich aus den Unteransprüchen.
Ein besonderer vorteil der Erfindung ist darin zu sehen, daß die Ausgangssignale leicht in eine angepaßte, binär codierte Zahl umgesetzt werden können, so daß eine codierte Platte oder Scheibe bei einem AD-Wandler verwendet verden kann, velche am besten als Interface für eine Vielzahl von Rechnern verwendet verden kann. Ein weiterer Vorteil der Erfindung besteht darin, daß ein Körper aus einem Viedergabemedium bestehen kann, vie z.B. einem Magnetband od. dgl., so daß eine automatische Adressierungsvorrichtung od. dgl. zur korrekten, schnellen und automatisch wiederholenden Datenwiedergabe auf dem Viedergabemedium vervendet verden kann.
Nachfolgend sind Ausführungsbeispiele der Erfindung anhand der Zeichnung näher beschrieben. Darin zeigt:
Fig. 1 eine schematische Übersicht zur Erklärung eines Absolut-Typ-Codierers;
Fig. 2a und 2b Darstellungen zur Erklärung der Erzeugung fehlerhafter Ausgänge bei einem Codierer gemäß Fig. 1;
Fig. 3 eine Codiermaske oder Platte velche mit einem Gray-Code markiert ist;
Fig. 4 eine Darstellung einer Codiermaske oder Platte bei velcher jede Ziffer eines Dezimalsystems durch einen Graycode dargestellt ist;
809809/0871
Fig. 5 eine Darstellung ähnlich der gemäß Fig. 4» bei welcher jedoch die binäre Zahl, welche die dezimale Zahl "0" darstellt und die binäre Zahl, welche die dezimale Zahl "9" darstellt, voneinander durch einen Signalabstand verschieden sind;
Fig. 6 ein Positions-Code-System gemäß der vorliegenden Erfindung, bei welchem zwei Einheits-Abstands-Code zur Darstellung einer Dezimalzahl verwendet werden;
Fig. 7 die Schaltung eines logischen Schaltkreises zur Umsetzung des Codes welcher von dem Codesystem gemäß Fig. 6 abgeleitet in ein binär codiertes Dezimalsystem umgesetzt wird;
Fig. 8 eine Modifikation des ersten Codes gemäß dem Codesystem nach Fig. 6;
Fig. 9 eine Schaltung eines Schaltkreises zur Verarbeitung der Binärziffern welche von dem modifizierten Code gemäß Fig. 8 abgeleitet werden;
Fig. 10 eine Modifizierung des ersten Codes des Codesystems gemäß Fig. 6, wobei dieser modifizierte Code zur zyklischen Zählung geeignet ist;
Fig. 11 eine Schaltung eines logischen Schaltkreises welcher in Verbindung mit dem modifizierten Code gemäß Fig. verwendet wird;
Fig. 12 eine Modifikation des Codesystems gemäß Fig. 6, wobei dieses modifizierte Codesystem vorteilhaft ist, wenn ein Maximum an relativer Verschiebung eine Zufallszahl ist, außer jener, deren letzte kennzeichnende Ziffer "0" ist, so daß das Einheitsabstandsverhältnis nicht zwischen M0H und der maximalen Verschiebung oder Position "359·· beibehalten werden kann;
Fig. 13 eine Schaltung eines logischen Schaltkreises welche im Zusammenhang mit dem modifizierten Codesystem gemäß
809809/0871
Fig. 12 verwendet wird;
Fig. 14, 15 und 16 Wertetabellen, welche ein EXKLUSIVES ODER, UND und ODER-GATTER zusammen mit einer dazugehörigen Welle darstellen; und
Fig. 17, 18 und 19 schematische Ansichten einer ersten, zweiten und dritten Ausführungsform eines optischen Absolut-Typ-Codierers gemäß der vorliegenden Erfindung.
Gemäß Fig. 6 ist das binäre Codesystem entsprechend der vor» liegenden Erfindung beschrieben. Für dieses Codesystem muß zuerst ein binär codierter Basis-n-Code (vobei η größer 8 2 ist) bestimmt werden, zur Darstellung der relativen Position oder Verschiebung zwischen zwei Körpern. Als nächstes werden erste, zweite, dritte, ·.., und n-te Einheits-Abstands-Code bestimmt', wobei η vorzugsweise der kleinste Bruchteil oder der in einer Zahl ohne Rest aufgehende Teiler von η außer 1 ist, um so die Basis-n-Zahlen 0, 1, 2, ..., und n-1 darzustellen. Die Binärzahl in dem ersten Code stellt die Basis-n-Zahl n0n dar und muß die gleiche sein wie die Binärziffer in dem m-ten Code, welcher die Basis-n-Zahl "n-1" darstellt und die Binärzahl in dem ersten Code, welche die Basis-n-Zahl "n-1" darstellt, muß die gleiche sein wie die Binärzahl in dem nächsten oder zweiten Code, welche die Basis-n-Zahl "0" darstellt. Dasselbe gilt für das Verhältnis zwischen dem zweiten und dritten Code, dem dritten und vierten Code, ... und zwischen dem m-1-ten und dem m-ten Code.
In Fig. 6 ist die Basis 10 und die relative Position oder Verschiebung zwischen zwei Körpern wird durch ein binär codiertes Dezimal dargestellt. Bruchteile oder der in einer Zahl ohne Rest aufgehende Teiler von "10" sind 1, 2, 5 und 10 und der kleinste Bruchteil der in einer Zahl ohne Rest aufgeht ist außer 1 die Zahl 2. Daher ist ns 2 und erste und zweite Codierungen 3 und 4 werden bestimmt zur Darstellung der dezimalen
809809/0871
Zahl von "Ο·1 bis M9W. Die binäre Ziffer 6 in dem ersten Code stellt die dezimale Zahl "O" in gleicher Weise dar wie die binäre Ziffer 7- in dem zveiten Code 4 stellt die dezimale Ziffer M9M dar und die binäre Ziffer 8 in dem ersten Code 3 stellt die dezimale Ziffer n-1 oder "9" dar, vas gleich der binären Ziffer 9 in dem zveiten Code 4 entspricht, velcher die dezimale Ziffer "0" darstellt. Die binären Ziffern bestehen aus sechs Bits, A, B, C, D, E und P, veshalb dezimale Zahlen von M0" bis M23" dargestellt werden können. Sowohl der erste als auch der zweite Code sind Vier-Bit-Einheitsabstand— Code. Hierbei sollte angemerkt werden, daß die Bitmuster bei der zveiten Ziffer B sowohl bei dem ersten als auch bei dem zveiten Code gleich sind, während die Bitmuster bei den ersten, zweiten und vierten Ziffern A, C und D entgegengesetzt den ersten und zweiten Code sind und wobei ein weißes Feld die binäre Zahl M0" darstellt, während ein schraffiertes Feld die binäre Zahl "1" darstellt. Beispielsweise weist das Bitmuster in der Reihe D in dem ersten Code eine Gruppe von acht aufeinanderfolgenden weißen Feldern oder 11O11 dar und eine Gruppe von zwei aufeinanderfolgenden schraffierten Feldern oder "1M vährend das entsprechende Bitmuster bei dem zveiten Code eine Gruppe von acht aufeinanderfolgenden schraffierten Feldern oder "1" und eine Gruppe von zwei aufeinanderfolgenden weißen Feldern oder "0" darstellt.
Der in Fig. 7 dargestellte Schaltkreis wird zur Umsetzung der dezimalen Zahlen von 0 nach 999 in einem binär codierten Dezimalsystem verwendet. Die Bits A bis L (G bis L sind in Fig. nicht dargestellt), werden an ihren entsprechenden Eingängen angelegt und die dezimalen Ziffern an den Ausgängen 11 werden gewichtet. Jeder der logischen Schaltkreise 12, 13 und 14 setzt den ersten Gray-Code 3 in eine direkte Binärziffer um, welche jeweils eine Dezimalziffer einer Zahl darstellen und die logischen Schaltkreise 15 und 16 setzen den ersten und zweiten Gray-Code 3 und 4 in den ersten Gray-Code 3 um. Ein
809809/0871
Signal wird über eine Leitung 17 zu einem logischen Schaltkreis 15 übertragen, um damit eine Steuerung zu erreichen, welche davon abhängt, ob die Dezimalziffer bei der Ziffer der Hunderter verschieden oder gleich ist. In gleicher Weise vird durch eine Leitung 18 ein Signal zu dem Einheitslogikschaltkreis 16 übertragen, um damit die Steuerung davon abhängig zu machen, ob die Dezimalziffer der Zehner gleich oder ungleich ist. Die Wertetabelle eines EXKLUSIV-ODER-Gaters 19 velches in dem Schaltkreis gemäß Fig. 7 verwendet wird, ist in Fig. 14 dargestellt.
In Fig. 8 ist eine Modifikation des ersten Codes 3 gemäß Fig. 6 dargestellt. Der modifizierte Code 22 verwendet nur vier Bits M, N, 0 und P um elf Dezimalzahlen von "0" bis "10" darzustellen, wobei die Bits entlang der Ordinate 21 aufgetragen sind, während die Dezimalzahlen entlang der Abszisse 20 aufgetragen sind. Wenn dieser modifizierte Code 22 verwendet wird, um die am meisten kennzeichnende Ziffer einer Dezimalzahl darzustellen, dann wird ein* Anwachsen der Bitzahl entsprechend einem Träger (carry) vermieden. Genauer gesagt, wird mit dem Codesystem gemäß Fig. 6 eine Zählung von "0" bis "999" durchgeführt, aber wenn die am wenigsten kennzeichnende Ziffer und die am nächstwenigsten kennzeichnende Ziffer (die Ziffer von den Zehnern) durch das Codesystem gemäß Fig. 6 dargestellt werden, während die am meisten kennzeichnende Ziffer (die Ziffer der Hunderter) durch das modifizierte Codesystem gemäß Fig. 8 dargestellt werden, ist eine Zählung von "0" bis "1000" möglich.
Fig. 9 zeigt einen Schaltkreis der in Verbindung mit dem modifizierten Code gemäß Fig. 8 verwendet werden kann. Die Bits N, N, 0 und P werden an ihren entsprechenden Eingängen 23 angelegt und in entsprechende direkt binäre Bits 25 und einen Träger 24 bzw. eine Basis umgesetzt. Die Wertetabelle des EXKLUSIV-ODER Gatters 19 und des UND-Gatters 26 ist in Fig. 14
809809/0871
bzw. 15 dargestellt.
Fig. 10 zeigt eine weitere Modifikation des ersten Codes gemäß Fig. 6 und dieser modifizierte Code 29 kann vorteilhaft verwendet werden bei zyklischer Zählung. Wird beispielsweise angenommen, daß nach einer Zählung von 11O" nach M999M die Zählung wiederholt werden soll, um erneut von "0M ab zu zählen, dann müssen die Ziffern der binären Ziffern "0" und "999·· an jeder Stelle die gleichen sein, außer an einer und auf dieser Stelle müssen sich die Ziffern um eins unterscheiden· Mit dem Codesystem gemäß Fig. 6 ist die binäre Ziffer, welche die Dezimalziffer "9" mit der am meisten kennzeichnenden Ziffer der Dezimalzahl "999·· darstellt, gleich M1O11M während die binäre Ziffer welche die Dezimalzahl M0H darstellt, gleich "0000" ist. Als ein Ergebnis daraus, müssen die Ziffern an drei Stellen wechseln. Bei dem Codesystem gemäß Fig. 6 veist die binäre Ziffer, welche die Dezimalziffer an der am meist kennzeichnenden Ziffer einer Dezimalzahl von irgendeiner Länge von Ziffern darstellt, immer drei "1"-Bits auf. Bei dem modifizierten Code 29 gemäß Fig. 10 sind die Bits Q, R, S, und T entlang der Ordinate aufgetragen, während die zehn Dizimalziffern von 11O" bis "9" entlang der Abszisse aufgetragen sind.
Unter der Annahme, daß beispielsweise die Zählung von "0" bis W999·· durchgeführt wird, wird das Codesystem gemäß Fig. 6 zur Darstellung der am wenigst bedeutsamen und der am nächstwenigsten bedeutsamen Dezimalziffer von einer Zahl verwendet und der modifizierte Code 29 gemäß Fig. 10 wird zur Darstellung der am bedeutsamsten Ziffer oder der Ziffer von Hundertern verwendet. Die binäre Ziffer 30, die die dezimale Ziffer bei der am bedeutsamsten Ziffer oder der Ziffer der Hunderter von der Dezimalzahl »»999·« darstellt, ist dann 11OOOI". Mit anderen Worten, ist nur das Bit T der Binärziffer 30 auf " einem hohen Spannungspegel oder in dem Zustand "I". Die Binär-
809809/0871
Ziffer, welche die Dezimalzahl 11O11 darstellt, ist 11OOOO". Wenn daher die Dezimalzahl "999·· zu der Dezimalzahl "0" wechselt, dann wechselt nur ein Bit.
In Fig. 11 ist ein Schaltkreis dargestellt, welcher in Verbindung mit den modifizierten Code 29 gemäß Fig. 10 verwendet wird. Vier Bits Q, R, S und T werden an ihren entsprechenden Eingangsanschlussen 31 angelegt und in entsprechende Bits A, B, C und D des ersten Gray-Cotes gemäß dem Cotesystem in Fig. an den Ausgangsanschlussen 32 umgesetzt. Dies bedeutet, daß der Schaltkreis den modifizierten Code 29 in einen ersten Code 3 des Codesystems gemäß Fig. 6 umsetzt. Die Wertetabelle der EXKLUSIV-ODER- und ODEK-Gatter 19 und 33 gemäß Fig. 11 ist jeweils in den Fig. 14 und 16 dargestellt.
In Fig. 12 ist ein weiteres, modifiziertes Codesystem dargestellt, das zur zyklischen Zählung der Dezimalzahl 11O" zu einer Dezimalzahl mit mehreren Bits in dem Zustand von "1" geeignet ist. Dies bedeutet, daß mit diesem modifizierten Code das Diskontinuitätsproblem zwischen der Dezimalzahl "0" und der maximalen Dezimalzahl mit mehreren Bits im Zustand von "1M gelöst werden kann. Bei dem Code gemäß Fig. 12 wird eine zyklische Zählung von der Dezimalzahl "0" zu der Dezimalzahl "359" durchgeführt. Die Dezimalzahlen sind entlang der Abszisse 34 aufgetragen, während die Bits a bis k der Binärziffern entlang der Ordinate 35 aufgetragen sind. Die Dezimalziffern bei der am geringst kennzeichnenden Ziffer oder der Ziffer der Einheiten und bei den nächstwenigst kennzeichnenden Ziffer oder der Ziffer mit den Zehnern werden durch Vier-Bit—Binärziffern dargestellt, während die Dezimalziffer bei der am meisten kennzeichnenden Ziffer oder der Ziffer der Hunderter durch eine Zwei-Bit-Binärzahl dargestellt wird. Dieses modifizierte Codesystem ist im wesentlichen ähnlich dem Codesystem gemäß Fig. 6, außer daß 10 Bits (a-k) verwendet werden. Ein Synchronisationsbit 37 wechselt nach "0" oder
809809/0871
einem niedrigem Spannungspegel nur und nur dann, wenn die Dezimalzahl "O" ist und verbleibt in dem Zustand "1" wenn die Zehn-Bit-Binärziffern eine Dezimalzahl außer "0" darstellen. Wenn die Maximumdezimalzahl W359H nach 11O" wechselt, wechseln die Bits in den Stellen j 38, h 39 und f 40 von M1" nach "0".
In Fig. 13 ist ein Schaltkreis dargestellt, welcher in Verbindung mit dem Codesystem gemäß Fig. 12 verwendet werden kann. Eine Übertragungszeitabstimmung der Bits j 38, h 39, f 40 und a 41, von denen alle mit dem Synchronisationsbit k verbunden sind, wird gemäß der Darstellung in Fig. 12 so verzögert, daß eine korrekte Synchronisation aufrechterhalten werden kann.
In den Fig. 17, 18 und 19 sind drei bevorzugte Ausführungsformen eines Absolut-Typ-Codierers entsprechend der vorliegenden Erfindung beschrieben. Wie nachfolgend noch genauer beschrieben, sind alle Ausführungsformen von dem Typ, bei welchem Lichtstrahlen durch eine Codierungsmaske oder einen Codierungsmaßstab hindurch übertragen oder von der Codierungsmaske oder dem Codierungsmaßstab reflektiert werden und von optischen Sensoren aufgenommen werden. Bei den Ausführungsformen gemäß den Fig. 17 und 18 werden die Lichtstrahlen durch die Codierungsmaske oder dem Codierungsmaßstab hindurch übertragen, während bei der Ausführungsform gemäß Fig. 19 die Lichtstrahlen von der Codierungsmaske oder dem Maßstab reflektiert werden. Bei der Ausführungsform gemäß Fig. 17 ist das Code im Muster in Polarkoordinaten aufgetragen.
Gemäß Fig. 17 sind zwischen einer Anordnung von Lichtquellen und einer Anordnung von optischen Sensoren 45 eine Schirmmaske 47 mit einer Vielzahl von Schlitzen 46 und eine Codierungsscheibe 49 aus einer Glasplatte zwischengelagert, wobei die Glasplatte mit einem lichtstrahlabschirmenden Codiermuster
809809/0871
eines Einheitsabstandscodes versehen sind, wie zuvor beschrieben. Venn das Codiermuster 48 die Schlitze 46 der Schirmmaske 47 überlappt, dann werden die Lichtstrahlen von der Lichtquellenanordnung 44 unterbrochen, so daß das die Schlitze 46 überlappende Codemuster durch die optische Sensorenanordnung aus gelesen verden kann. Dies bedeutet, daß bei Rotation der Achse 50 in der durch den Pfeil 51 angedeuteten Richtung die Binärziffern eines Binheits-Abstands-Codes aus gelesen werden können.
Bei der Ausführungsform gemäß Fig. 18 sind zwischen einer Lichtquellenanordnung 51 und einer optischen Sensorenanordnung oder Reihe 52 eine Schirmmaske 54, welche mit einer Anzahl von Schlitzen 53 versehen ist und eine Codiermaske 56 aus einer Glasplatte zwischengelagert, wobei die Codiermaske ein Codiermuster 55 eines Einheits-Abstands-Codes des oben beschriebenen Typs trägt. Venn das Codiermuster 56 die Schlitze 53 überlappt, werden die Lichtstrahlen von der Lichtquellenanordnung 51 unterbrochen, so daß die optische Sensorenanordnung 52 das die Schlitze 53 überlappende Codemuster 55 aus lesen kann. Vexai die Codiermaske 56 von links nach rechts oder von rechts nach links verschoben wird, dann können die Binärziffern in einem Einheits-Abstands-Code aus gelesen werden.
Bei der Ausführungsform gemäß Fig. 19 wird das Licht von einer Lichtquelle 57 durch einen Halbspiegel 58 zurückgeworfen, zu einer Codiermaske 59» welche aus einer lichtreflektierenden Metallplatte hergestellt ist und auf welcher ein Codemuster mit einem nichtreflektierenden Material aufgetragen ist. Das von der Codiermaske 59 zurückreflektierte Licht wird durch eine Projektionslinse 62 im Hohlraum der Schlitze 63 einer Schirmmase 64 so fokussiert, daß eine optische Sensoranordnung 60 das Codemuster 61 erkennen kann. Venn die Codiermaske 49 von links nach rechts oder von rechts nach links ver-
809809/0871
schoben wird, dann können binärische Ziffern eines Einheits-Abs tands -Codes abgeleitet werden.
Es ist verständlich, daß die Anmeldung der vorliegenden Erfindung nicht auf den oben in Bezug auf Fig. 17, 18 und 19 beschriebenen Absoluten-Typ-Codierer beschränkt und daß die . vorliegende Erfindung in einem weiteren Anwendungsgebiet verwendet werden kann. Beispielsweise kann der Einheits-Abstands-Code der vorliegenden Erfindung auf die Adressenspeicherspur eines Magnetbandes aufgezeichnet und der Transport dieses Magnetaufzeichnungsbandes kann gestoppt werden, wenn ein Magnetkopf einen vorbestimmten Code oder eine Binärziffer ausliest. Auf diese Weise können Informationen oder Daten die bei einer spezifischen Adresse auf einem magnetischen Aufzeichnungsband gespeichert sind, automatisch ausgewiesen werden. Ferner ist die vorliegende Erfindung im Zusammenhang mit einem Codesystem zur Erzeugung binär codierter Dezimalzahlen beschrieben worden, aber dennoch versteht sich, daß die vorliegende Erfindung ebenso bei einem Code zur Erzeugung einer binär codierten Basisn-Zahl verwendet werden kann.
Zusammenfassend wird somit mit der vorliegenden Erfindung ein Codemuster auf einer Oberflächenseite von einem von zwei beweglichen Körpern in Bewegungsrichtung aufgebracht und ein Leser wird auf dem anderen Körper zum Lesen des Codemusters auf dem einen Körper befestigt, so daß die relative Position oder Verschiebung zwischen zwei Körpern gemessen werden kann. Ein vollständiger Einheits-Abstands-Code mit einem Signalabstand von M1n wird auf dem einen Körper so markiert, daß fehlerhafte Ausgänge vermieden und konsequenterweise die Zuverlässigkeit erheblich vergrößert werden kann. Da fehlerhafte Ausgänge vermieden werden, kann die Breite der transparenten oder opakten Bereiche des Codemusters vermindert werden, so daß die Genauigkeit im Meßbereich merklich verbessert wird.
809809/0871
Des weiteren wird im Gegensatz zum Stand der Technik, bei welchem kein vollständiges Einheits-Abstands-Codesystem mit einem Signalabstand von "1" verwendet wird, bei der Vorrichtung gemäß der vorliegenden Erfindung ein Synchronisationsbit zur Vermeidung fehlerhafter Ausgänge verwendet. Als ein Ergebnis davon, wird die Anordnung gemäß der vorliegenden Erfindung einfach im Aufbau und billig in der Herstellung, obwohl eine hohe Zuverlässigkeit in der Funktion erreicht wird.
Sogar dann, wenn die Ausgänge von dem Codierer, der bei der vorliegenden Erfindung verwendet wird, parallel übertragen werden und sogar wenn die Ausgangsimpulse so sind, daß ihre Übertragungszeit nicht klar ist, dann werden fehlerhalfte Ausgänge minimissiert, weil ein Einheits-Abstands-Code entsprechend der vorliegenden Erfindung verwendet wird.
Im Falle der Serienübertragung kann ein Übertragungsfehler leicht erkannt werden, da ein Vergleich zwischen vorhergehenden und nachfolgenden Impulsen erfolgt.
Venn die Vorrichtung gemäß der vorliegenden Erfindung in einen Absolut-Typ-Codierer wie oben mit Bezug auf Fig. 17, 18 und beschrieben, eingebaut wird, dann kann der Codierer an alle Rechner angeschlossen werden, welche sehr zuverlässig und schnell in der Funktion sind und welche jegliche Art von Codeeingängen verwenden können, ohne daß ein komplizierter Codeumsetzer erforderlich ist. Des weiteren kann, wie oben beschrieben, der Code entsprechend der vorliegenden Erfindung auf ein Datenwiedergabemedium, wie z.B. ein Magnetband aufgezeichnet zur Erleichterung der automatischen Adressierung verwendet werden.
809809/0871
, 9ο
Leerseite

Claims (7)

  1. Dr .... ,·. I. . ι Viii. I - · y 15
    r ,- , - ■: , - ; Λι/
    Ishikawajima-Harima Jukogyo Kabushiki Kaisha, Tokio / Japan
    Ansprüche
    Vorrichtung zur Erkennung der relativen Position oder Veränderung zwischen zwei beweglichen Körpern derart, daß ein Codesystem, das die relative Position oder Verschiebung zwischen zwei beweglichen Körpern darstellt, auf einem der beiden beweglichen Körper in Richtung der Bewegung oder Veränderung aufmarkiert ist und wobei eine zum Lesen des Codesystems auf dem beweglichen Körper geeignete Lesevorrichtung auf dem anderen beweglichen Körper aufmontiert ist, dadurch gekennzeichnet, daß
    (A)
    (a) das auf den beweglichen Körper vorgesehene Codesystem eine binär codierte Basis-n-Zahl (wobei η größer » 2) darstellt, bei welcher jede Stelle der Basis-n-Zahl durch binäre Ziffern dargestellt ist,
    (b) das Codesystem aus ersten, zweiten, dritten .·. und n-ten Codierungen besteht (wobei η gleich ist der kleinste Bruchteil oder der in einer Zahl ohne Rest aufgehende Teiler außer eins der Basis-n-Zahl), welche aufeinanderfolgend und zyklisch zur Darstellung jeder Stelle 0, 1, 2, ... und n-1 der Basisn-Zahl angeordnet sind, wobei jeder der ersten, zweiten, dritten·· und n—ten Codierungen aus einem Einheitsabstand -Code besteht, bei welchem der Signalabstand zwischen aufeinanderfolgenden binären Ziffern eins ist,
    (c) zwischen aufeinanderfolgenden Codierungen die binäre Ziffer, welche die Basis-η Mn-1n in der vorhergehenden Codierung darstellt, gleich ist mit der binären Ziffer, welche die Basisn n0" in der nachfolgenden Codierung darstellt, und
    (B) die Lesevorrichtung einen Codeumsetzerkreis aufweist, welcher die ersten, zweiten, dritten,... und η-ten Codierungen in einem gemeinsamen Binärcode umsetzt, wobei die relative
    809809/0871
    ORIGINAL INSPECTED
    Position oder Verschiebung zwischen den beiden beweglichen Körpern durch die binär codierte Basis-n-Zahl dargestellt wird.
  2. 2. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß das Codesystem aus 11 Vier-Bit-Binärziffern besteht, welche die Zahlen M0» bis 1MO11 darstellen.
  3. 3. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß das Codesystem aus 10 Vier-Bit-Binärziffern besteht, welche die Zahlen 11O" bis "911 darstellen.
  4. 4. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß das Codesystem eine Dezimalzahl darstellt und die meist kennzeichnende (-höchstwertige) Stelle der Dezimalzahl durch eine wenigerals-drei-Bit-Binärzahl ausgedrückt ist, während die übrigen Stellen durch Vier-Bit-Binärzahlen dargestellt werden.
  5. 5. Vorrichtung nach Anspruch 4, dadurch gekennzeichnet, daß das Codesystem ein weiteres Synchronisationsbit enthält.
  6. 6. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß das Codesystem eine Dezimalzahl darstellt und die am wenigsten kennzeichnende Ziffer der Dezimalzahl durch weniger-als-drei-Bit-Binär-Ziffern ausgedrückt ist, während die verbleibenden Dezimalziffern durch Vier-Bit-Binär-Ziffem dargestellt werden.
  7. 7. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, daß diejenige Binärziffer, die die Basis-η M0" in dem ersten Code darstellt, die gleiche ist wie die Binärziffer, welche die Basisn "n-iw in dem m-ten-Code darstellt.
    809009/0871
DE2737872A 1976-08-23 1977-08-23 Vorrichtung zur Erkennung der relativen Position oder Veränderung zwischen zwei beweglichen Körpern Expired DE2737872C3 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10036776A JPS5326149A (en) 1976-08-23 1976-08-23 Relative position detector

Publications (3)

Publication Number Publication Date
DE2737872A1 true DE2737872A1 (de) 1978-03-02
DE2737872B2 DE2737872B2 (de) 1980-03-20
DE2737872C3 DE2737872C3 (de) 1980-11-27

Family

ID=14272079

Family Applications (1)

Application Number Title Priority Date Filing Date
DE2737872A Expired DE2737872C3 (de) 1976-08-23 1977-08-23 Vorrichtung zur Erkennung der relativen Position oder Veränderung zwischen zwei beweglichen Körpern

Country Status (4)

Country Link
US (1) US4315252A (de)
JP (1) JPS5326149A (de)
DE (1) DE2737872C3 (de)
GB (1) GB1590922A (de)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5586298U (de) * 1978-12-11 1980-06-14
JPS57200541U (de) * 1981-06-16 1982-12-20
US4572952A (en) * 1982-07-28 1986-02-25 Adrian March Research Ltd. Position sensor with moire interpolation
JPS5971598A (ja) * 1982-10-18 1984-04-23 フアナツク株式会社 光学式アブソリユ−トエンコ−ダ
JPS59108193A (ja) * 1982-12-13 1984-06-22 株式会社日立製作所 磁気的に位置を検出する装置
JPS6113109A (ja) * 1984-06-28 1986-01-21 Omron Tateisi Electronics Co アブソリユ−トエンコ−ダ
US4720631A (en) * 1985-12-12 1988-01-19 The Laitram Corporation Electro-optical compass card wherein transmissive member has random patterns that repeat for particular rotational positions
US5257053A (en) * 1988-06-30 1993-10-26 Asahi Kogaku Kogyo Kabushiki Kaisha Position detecting device
FR2636145B1 (fr) * 1988-06-30 1994-03-18 Asahi Kogaku Kogyo Kk Dispositif de detection de position, notamment de tirage d'un objectif photographique zoom
US5665974A (en) * 1995-11-16 1997-09-09 The Boeing Company Self-monitoring optical encoder for wavelength division multiplexing optical sensors
EP2258425B1 (de) * 2001-05-16 2013-01-30 Eli Lilly and Company Spritzvorrichtung
WO2013098421A1 (en) * 2011-12-30 2013-07-04 Novo Nordisk A/S A medical injection device incorporating a dose sensing device and a method of providing such dose sensor
CA3018732C (en) 2016-03-25 2021-04-20 Eli Lilly And Company Determination of a dose set and delivered in a medication delivery device
WO2017184401A1 (en) 2016-04-19 2017-10-26 Eli Lilly And Company Determination of a dose in a medication delivery device using two moving arrays with teeth and a sensor
AU2017308724B2 (en) 2016-08-12 2020-04-09 Eli Lilly And Company Dose sensing mechanism in a medication delivery device
US11452819B2 (en) 2016-12-15 2022-09-27 Eli Lilly And Company Medication delivery device with sensing system

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US1942106A (en) * 1934-01-02 kottmann
US3165731A (en) * 1954-03-09 1965-01-12 Datex Corp Digital coding and translating system
US3594764A (en) * 1968-06-27 1971-07-20 Nus Corp Analog converter and translator network therefor
US3862407A (en) * 1970-12-23 1975-01-21 Us Navy Decimal to binary converter
NL7206062A (de) * 1972-05-04 1973-11-06

Also Published As

Publication number Publication date
DE2737872B2 (de) 1980-03-20
JPS6148088B2 (de) 1986-10-22
DE2737872C3 (de) 1980-11-27
GB1590922A (en) 1981-06-10
JPS5326149A (en) 1978-03-10
US4315252A (en) 1982-02-09

Similar Documents

Publication Publication Date Title
DE2737872A1 (de) Vorrichtung zur erkennung der relativen position oder veraenderung zwischen zwei beweglichen koerpern
DE19545949A1 (de) Digitales Absolutpositions-Codiergerät und Codierverfahren
DE2639856A1 (de) Ueberlagerungs-aufzeichnungsvorrichtung
DE3221982A1 (de) Optisches inkrementalcodiersystem mit adressierbarem index
DE2335711C2 (de) Handgeführter Abtaster
DE3542514C2 (de)
DE2263619C3 (de) Einrichtung zur fehlererkennenden und irrungsfreien Ablesung von eich- und Überwachungspflichtigen Vorrichtungen, insbesondere von Waagen
DE2827013C3 (de) Einrichtung zur Eingabe einer alphanumerischen und topologisch abgebildeten graphischen Information in eine elektronische Datenverarbeitungsanlage
DE2318276A1 (de) Verfahren und vorrichtung zum auswerten von kodierten aufzeichnungen
DE2313858A1 (de) Photoelektrischer interpolator fuer anzeigeabweichungen auf kalibrierten skalen
DE2917777A1 (de) Servosystem mit einem aufzeichnungstraeger mit mitteln zur kennzeichnung und nachlaufsteuerung fuer datenspuren
DE1207440B (de) Kodierer
DE1274363B (de) Einrichtung zum absolut-digitalen Messen
DE1448881A1 (de) Digitaler Verschluessler mit Nonius
DE3046720A1 (de) Positions-kodierer
DE2333698B1 (de) Digitaler Positionsgeber
DE3624874A1 (de) Winkelgeber
DE2335942A1 (de) Optischer digital-encoder
EP0310764B1 (de) Auswerteschaltung für Rechtecksignale
DE2165243B2 (en) A=D converter with encoding tracked disc - has multiple sensors, on inner and outer tracks, coupled to logic circuit, forming binary coded analogue of shaft angular position
DE1449388B2 (de) Schaltungsanordnung zur korrektur von faelschlich versetzt auftretenden impulsen einer auf mehreren parallelen kanaelen dargestellten informationen
DE1449388C (de) Schaltungsanordnung zur Korrektur von fälschlich versetzt auftretenden Impul sen einer auf mehreren parallelen Kanälen dargestellten Information
DE1548725C (de) Anordnung zum Ablesen digitaler Skalen
DE1548702C (de) Digitaler Meßwertgeber mit einem aus mehreren Spuren bestehenden, im zyklischen Kode verschlüsselten Rastermaßstab
DE1773999C (de) Anordnung zum Codieren vorgegebener Weglängen in ausgehende elektrische Signale

Legal Events

Date Code Title Description
OAP Request for examination filed
OD Request for examination
C3 Grant after two publication steps (3rd publication)
8339 Ceased/non-payment of the annual fee