CH704584B1 - Manufacturing process for a code carrier with an absolutely coded code track with an optimized number of divisions. - Google Patents

Manufacturing process for a code carrier with an absolutely coded code track with an optimized number of divisions. Download PDF

Info

Publication number
CH704584B1
CH704584B1 CH00370/11A CH3702011A CH704584B1 CH 704584 B1 CH704584 B1 CH 704584B1 CH 00370/11 A CH00370/11 A CH 00370/11A CH 3702011 A CH3702011 A CH 3702011A CH 704584 B1 CH704584 B1 CH 704584B1
Authority
CH
Switzerland
Prior art keywords
code
sequence
length
carrier
divisions
Prior art date
Application number
CH00370/11A
Other languages
German (de)
Other versions
CH704584A2 (en
Inventor
Fritsch Robert
Original Assignee
Hexagon Technology Ct Gmbh
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 Hexagon Technology Ct Gmbh filed Critical Hexagon Technology Ct Gmbh
Priority to CH00370/11A priority Critical patent/CH704584B1/en
Publication of CH704584A2 publication Critical patent/CH704584A2/en
Publication of CH704584B1 publication Critical patent/CH704584B1/en

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01DMEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
    • G01D5/00Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable
    • G01D5/12Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means
    • G01D5/244Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means influencing characteristics of pulses or pulse trains; generating pulses or pulse trains
    • G01D5/249Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable using electric or magnetic means influencing characteristics of pulses or pulse trains; generating pulses or pulse trains using pulse code
    • G01D5/2497Absolute encoders
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01DMEASURING NOT SPECIALLY ADAPTED FOR A SPECIFIC VARIABLE; ARRANGEMENTS FOR MEASURING TWO OR MORE VARIABLES NOT COVERED IN A SINGLE OTHER SUBCLASS; TARIFF METERING APPARATUS; MEASURING OR TESTING NOT OTHERWISE PROVIDED FOR
    • G01D5/00Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable
    • G01D5/26Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable characterised by optical transfer means, i.e. using infrared, visible, or ultraviolet light
    • G01D5/32Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable characterised by optical transfer means, i.e. using infrared, visible, or ultraviolet light with attenuation or whole or partial obturation of beams of light
    • G01D5/34Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable characterised by optical transfer means, i.e. using infrared, visible, or ultraviolet light with attenuation or whole or partial obturation of beams of light the beams of light being detected by photocells
    • G01D5/347Mechanical means for transferring the output of a sensing member; Means for converting the output of a sensing member to another variable where the form or nature of the sensing member does not constrain the means for converting; Transducers not specially adapted for a specific variable characterised by optical transfer means, i.e. using infrared, visible, or ultraviolet light with attenuation or whole or partial obturation of beams of light the beams of light being detected by photocells using displacement encoding scales
    • G01D5/34776Absolute encoders with analogue or digital scales
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code

Abstract

Die Erfindung betrifft ein Herstellungsverfahren für einen Codeträger mit einer absolutcodierten Codespur aus einer Codeelementfolge zur Ablesung von r aufeinanderfolgenden Codeelementen der Codespur durch eine Abtasteinrichtung mit einer vorgegebenen Auflösung A der absolutcodierten Codespur. Eingesetzt wird hierzu eine Schaltungsanordnung mit r jeweils einen Speicherwert beinhaltenden Speichern, einer Zuordnungstabelle und <q ≤ r> Abgriffen von den Speichern zu der Zuordnungstabelle, wobei die Schaltungsanordnung für Erzeugung einer Folge <p r – b> mit einer Länge <n = m> zur Herstellung des Codeträgers mit dem erfindungsgemässen Herstellungsverfahren dient. Die Erfindung betrifft auch einen Codeträger mit einer absolutcodierten Codespur mit m Teilungen entsprechend der Auflösung A = 1/m, hergestellt mit dem / erfindungsgemässen Verfahren, sowie einen Positions-, Linear- oder Winkelgeber mit dem erfindungsgemässen Codeträger.The invention relates to a production method for a code carrier with an absolutely coded code track from a code element sequence for reading r consecutive code elements of the code track by a scanning device with a predetermined resolution A of the absolutely coded code track. For this purpose, a circuit arrangement is used with r memories each containing a memory value, an allocation table and <q ≦ r> taps from the memories to the allocation table, the circuit arrangement for generating a sequence <pr-b> with a length <n = m> Production of the code carrier with the inventive production method is used. The invention also relates to a code carrier having an absolutely coded code track with m graduations corresponding to the resolution A = 1 / m, produced by the / inventive method, as well as a position, linear or angle encoder with the inventive code carrier.

Description

[0001] Die Erfindung betrifft ein Herstellungsverfahren für einen Codeträger mit einer absolutcodierten Codespur aus einer Codeelementfolge zur Ablesung von r aufeinanderfolgenden Codeelementen der Codespur durch eine Abtasteinrichtung, wobei die absolutcodierte Codespur eine vorgegebene Auflösung A aufweist. The invention relates to a manufacturing method for a code carrier with an absolutely coded code track from a code element sequence for reading r successive code elements of the code track by a scanning device, the absolutely coded code track having a predetermined resolution A.

[0002] Die Erfindung betrifft auch einen Codeträger mit einer absolutcodierten Codespur mit m Teilungen entsprechend der vorgegebenen Auflösung <A = 1/m>, hergestellt mit dem erfindungsgemässen Verfahren, sowie einen Positions-, Linear- oder Winkelgeber mit dem erfindungsgemässen Codeträger. The invention also relates to a code carrier with an absolutely coded code track with m divisions corresponding to the specified resolution <A = 1/m>, produced with the method according to the invention, and a position, linear or angle encoder with the code carrier according to the invention.

[0003] Ausserdem betrifft die Erfindung eine Schaltungsanordnung mit r jeweils einen Speicherwert beinhaltenden Speichern, einer Zuordnungstabelle und <q ≤ r> Abgriffen von den Speichern zu der Zuordnungstabelle, wobei die Schaltungsanordnung für Erzeugung einer Folge <p<r>– b> mit einer Länge <n = m> zur Herstellung eines Codeträgers mit einem absolutcodierten Code mit m Teilungen in dem erfindungsgemässen Herstellungsverfahren dient. In addition, the invention relates to a circuit arrangement with r memories containing a storage value, an allocation table and <q ≤ r> taps from the memories to the allocation table, the circuit arrangement for generating a sequence <p <r> - b> with a Length <n = m> is used to produce a code carrier with an absolutely coded code with m divisions in the production method according to the invention.

[0004] Positions-, Linear- und Winkelgeber zur Bestimmung von Richtungen, Winkeln und Längen als Lagen finden in vielen Bereichen, wie beispielsweise in der geodätischen und industriellen Vermessung, Anwendung. Entwicklungen in der Winkelmesstechnik führen über mechanische Ablesevorgänge bis zur vollautomatisierten Winkelmessung nach dem heutigen Stand der Technik. Position, linear and angle sensors for determining directions, angles and lengths as positions are used in many areas, such as in geodetic and industrial surveying. Developments in angle measurement technology lead from mechanical reading processes to fully automated angle measurement according to the current state of the art.

[0005] Bekannte automatisierte Lagemessvorrichtungen umfassen im Allgemeinen einen Codeträger mit einer Codespur aus Codeelementen und eine Abtasteinrichtung als Erfassungselement für den Code. Bei Winkelmesseinrichtungen ist der Codeträger üblicherweise relativ zur Abtasteinrichtung um eine Achse drehbar ausgebildet, wobei dann eine Winkellage des Codeträgers mit der Codespur die zu messende Grösse darstellt. Die Codespur kann zum Beispiel auf einer Oberfläche oder Mantelfläche des Codeträgers aufgebracht sein. Known automated position measuring devices generally comprise a code carrier with a code track of code elements and a scanning device as a detection element for the code. In the case of angle measuring devices, the code carrier is usually designed to be rotatable about an axis relative to the scanning device, an angular position of the code carrier with the code track then representing the variable to be measured. The code track can be applied, for example, to a surface or lateral surface of the code carrier.

[0006] Zur automatischen Erfassung der Lage wird der relativ zur Abtasteinrichtung bewegbare Codeträger mittels unterschiedlicher Techniken abgetastet. Bekannte Abtastverfahren sind elektronisch-magnetische, elektronische und optisch-elektronische Verfahren. For the automatic detection of the position, the code carrier movable relative to the scanning device is scanned using different techniques. Known scanning methods are electronic-magnetic, electronic and opto-electronic methods.

[0007] Zur Bestimmung beispielsweise von Winkelstellungen von 0° bis 360° ist die Codierung üblicherweise in einem Vollkreis angeordnet. Die Winkelauflösung des Vollkreises bestimmt sich nach Art der Codierung und nach der zum Lesen der Codierung eingesetzten Abtasteinrichtung. So wird beispielsweise durch Aufbringen eines Codes in mehreren Spuren oder durch eine feinere Teilung die Winkelauflösung gesteigert, wobei die erreichbare Auflösung aus fertigungs-und kostentechnischen Gründen beschränkt ist. Zum Lesen des Codes sind z.B. Anordnungen von einem oder mehreren Detektoren bekannt. CCD-Zeilen-Arrays oder CCD-Flächen-Arrays sind als solche Detektoren geeignet. To determine, for example, angular positions from 0 ° to 360 °, the coding is usually arranged in a full circle. The angular resolution of the full circle is determined by the type of coding and the scanning device used to read the coding. For example, by applying a code in several tracks or by a finer division, the angular resolution is increased, the achievable resolution being limited for manufacturing and cost-related reasons. To read the code, e.g. Arrangements of one or more detectors are known. CCD line arrays or CCD area arrays are suitable as such detectors.

[0008] Die Codierung muss geeignet für Maschinenlesbarkeit sein. Die Codeelemente sind auch als Stellen des Codes anzusehen, vergleichbar mit den Stellen einer Zahl im Dezimalsystem. [0008] The coding must be suitable for machine readability. The code elements are also to be seen as digits of the code, comparable to the digits of a number in the decimal system.

[0009] Die Codeelemente können verschiedene physikalisch unterscheidbare Zustände haben, beispielsweise transparent und absorbierend, wodurch sie für eine technisch einfache automatische Ablesung geeignet sind. In dem Fall von zwei physikalisch unterscheidbaren Zuständen liegt ein Binärcode vor, im Fall von drei unterscheidbaren Zuständen ein Ternärcode etc. In allgemeiner Form kann ein Codeelement bzw. eine Stelle eines Codes eine Anzahl p unterscheidbar ablesbarer Zustände haben. The code elements can have different physically distinguishable states, for example transparent and absorbent, which makes them suitable for a technically simple automatic reading. In the case of two physically distinguishable states, there is a binary code, in the case of three distinguishable states, a ternary code, etc. In general, a code element or a position of a code can have a number p of distinguishable readable states.

[0010] Dabei darf sich aufgrund der für eine Absolutcodierung notwendigen Eindeutigkeit eines Ergebnisses der Ablesung von r aufeinanderfolgenden Codeelementen der Codespur durch eine Abtasteinrichtung eine Aufeinanderfolge von r Codeelementen entlang der gesamten Codespur nicht wiederholen. Due to the uniqueness of a result of reading r successive code elements of the code track by a scanning device, a sequence of r code elements along the entire code track must not be repeated, which is necessary for absolute coding.

[0011] Aus dem Stand der Technik (z.B. EP-A-0 352 565) ist bekannt, dass sich Codespuren, die diesen Anforderungen genügen, beispielsweise nach der Theorie der Primitivpolynome aus einer Zahlenfolge mit Hilfe von rückgekoppelten Schieberegistern mit einer Speicheranzahl r von Speichern, welche p unterschiedliche Speicherwerte entsprechend den physikalisch unterscheidbaren Zuständen der Codeelemente haben, erzeugen lassen. Dieses wird nachfolgend anhand von Beispielen noch genauer erklärt. Die Einmaligkeit jeder Aufeinanderfolge von r Codeelementen entlang der Codespur ist, wie die Zahlentheorie beweist, auf diese Weise gewährleistet. From the prior art (eg EP-A-0 352 565) it is known that code tracks that meet these requirements, for example according to the theory of primitive polynomials from a sequence of numbers with the help of feedback shift registers with a memory number r of memories which have p different storage values corresponding to the physically distinguishable states of the code elements, can be generated. This is explained in more detail below using examples. The uniqueness of every sequence of r code elements along the code track is, as number theory proves, guaranteed in this way.

[0012] Für die Herstellung eines Codes mit der erforderlichen Einmaligkeit jeder Aufeinanderfolge von r Codeelementen entlang der Codespur muss also eine geeignete Folge bestimmt werden, mit welcher der Code abgebildet werden kann. For the production of a code with the required uniqueness of each sequence of r code elements along the code track, a suitable sequence must be determined with which the code can be mapped.

[0013] Aus dem Stand der Technik für die Herstellung maschinenlesbarer Codes sind als geeignete Folgen Maximalfolgen bekannt, welche aus Berechnungen im erweiterten Galois-Feld Gf(p<r>) erzeugt werden. Dabei sind p eine Primzahl und r eine natürliche Zahl. Derartige Maximalfolgen sind in der Literatur wohlbekannt. From the prior art for the production of machine-readable codes, maximum sequences are known as suitable sequences, which are generated from calculations in the extended Galois field Gf (p <r>). Here p is a prime number and r a natural number. Such maximum sequences are well known in the literature.

[0014] Maximalfolgen haben die Eigenschaft, dass sich r aufeinanderfolgende Stellen in der Folge nicht wiederholen. Unter Ausschluss des Null-Elements hat eine solche Maximalfolge die Länge p<r>– 1, wobei alle Kombinationen der r Stellen bis auf die 0-Folge vorkommen (siehe z.B. für p = 2: S. Müller: «Digitale Signalverarbeitung für Lautsprecher» Dissertation, S. 140, Universität Bonn 1999). [0014] Maximum sequences have the property that r successive positions are not repeated in the sequence. Excluding the zero element, such a maximum sequence has the length p <r> - 1, whereby all combinations of the r digits except for the 0 sequence occur (see e.g. for p = 2: S. Müller: "Digital signal processing for loudspeakers" Dissertation, p. 140, University of Bonn 1999).

[0015] Üblicherweise werden Maximalfolgen mit Hilfe der vorgenannten «primitiven Polynome» bestimmt. [0015] Usually, maximum sequences are determined with the aid of the aforementioned “primitive polynomials”.

[0016] Ein primitives Polynom ist ein Polynom, das alle Elemente eines Erweiterungsfelds («extension field») aus einem Basisfeld («base field») erzeugt. Primitive Polynome sind zugleich nicht reduzierbare Polynome. Das bedeutet, dass sie nur durch sich selbst oder durch eins teilbar sind. Für p = 3 und p = 5 sind mit einem Grad r = 2 des Polynoms beispielsweise die in Fig. 1 dargestellten Polynome und Folgen bekannt. A primitive polynomial is a polynomial that generates all elements of an extension field ("extension field") from a base field ("base field"). Primitive polynomials are also irreducible polynomials. This means that they are only divisible by themselves or by one. For p = 3 and p = 5, the polynomials and sequences shown in FIG. 1 are known, for example, with a degree r = 2 of the polynomial.

[0017] Stand der Technik ist die Verwendung von Maximalfolgen für p = 2 zur Positionsbestimmung (WO 1990/005 414; DE 19 532 903 A1; DE 3 739 664 C3; DE 3 942 625 A1). The prior art is the use of maximum sequences for p = 2 for position determination (WO 1990/005 414; DE 19 532 903 A1; DE 3 739 664 C3; DE 3 942 625 A1).

[0018] Für den Grad r <= 4 sind dafür beispielsweise die in Fig. 2 dargestellten Polynome und Folgen bekannt. For the degree r <= 4, for example, the polynomials and sequences shown in FIG. 2 are known.

[0019] Anhand eines Ausschnitts der Folge mit Länge n ≥ r kann eindeutig die Position innerhalb der Folge bestimmt werden. Deshalb werden solche Folgen zur Positionsbestimmung verwendet. Using a section of the sequence with length n Länge r, the position within the sequence can be clearly determined. That is why such sequences are used to determine the position.

[0020] Maximalfolgen im Galois-Feld Gf(2<r>) haben mögliche (fixe, diskrete) Längen von: 2<r><>– 1 = 1, 3, 7, 15, 31, 63, 127, 255, 511, 1023, 2047, 4095, 8181, ... Maximum sequences in the Galois field Gf (2 <r>) have possible (fixed, discrete) lengths of: 2 <r> <> - 1 = 1, 3, 7, 15, 31, 63, 127, 255, 511, 1023, 2047, 4095, 8181, ...

[0021] Aus der Mathematik ist bekannt, dass jedes Polynom im Gf(p<r>) eine Folge erzeugt. Primitive Polynome erzeugen Folgen maximaler Länge, andere Polynome erzeugen kürzere Folgen. Der Begriff «maximale Länge» bezieht sich dabei auf die Rechnung im erweiterten Galois-Feld. Es ist offensichtlich, dass die Folge eigentlich auch ein Element länger sein könnte, nämlich die Länge p<r> haben könnte. Dann wäre das Null-Element Bestandteil der Folge. Mit Berechnungen im Galois-Feld ist das jedoch nicht möglich. It is known from mathematics that every polynomial in Gf (p <r>) generates a sequence. Primitive polynomials produce sequences of maximum length, other polynomials produce shorter sequences. The term «maximum length» refers to the calculation in the extended Galois field. It is obvious that the sequence could actually be one element longer, namely the length p <r> could have. Then the zero element would be part of the sequence. However, this is not possible with calculations in the Galois field.

[0022] In manchen Anwendungen sind aber andere Folgenlängen wünschenswert, um eine optimale Lösung unter den gegebenen physikalischen Randbedingungen realisieren zu können. Anwendungsbedingt ist beispielsweise für eine 1°-Einteilung eines Kreises eine Folgenlänge von 360 optimal. Nach Stand der Technik wird hierzu jedoch die nächstliegende Maximalfolge mit r = 9 Stellen und einer Länge von 511 gewählt. Die Bestimmung der Position in Form einer 1°-Auflösung wird daraus rechnerisch beispielsweise durch Interpolation ermittelt. In some applications, however, other sequence lengths are desirable in order to be able to implement an optimal solution under the given physical boundary conditions. Depending on the application, a sequence length of 360 is optimal for a 1 ° division of a circle, for example. According to the prior art, however, the closest maximum sequence with r = 9 digits and a length of 511 is selected for this purpose. The determination of the position in the form of a 1 ° resolution is calculated therefrom, for example by interpolation.

[0023] Eine Aufgabe der Erfindung ist die Bereitstellung eines Herstellungsverfahrens für einen verbesserten Codeträger mit einer Codeelementfolge als absolutem Code mit einer vorgegebenen Auflösung A. One object of the invention is to provide a manufacturing method for an improved code carrier with a code element sequence as an absolute code with a predetermined resolution A.

[0024] Dabei soll als spezielle Aufgabenstellung die Teilungsanzahl m des Codes für die jeweilige Anwendung für Teilungen beliebiger Anzahl m = 1/A optimiert werden können. As a special task, it should be possible to optimize the number of divisions m of the code for the respective application for divisions of any number m = 1 / A.

[0025] Diese Aufgaben werden erfindungsgemäss durch die Merkmale des ersten unabhängigen Anspruchs gelöst. According to the invention, these objects are achieved by the features of the first independent claim.

[0026] Dabei handelt es sich um ein Herstellungsverfahren für einen Codeträger mit einer Codeelementfolge als absolutem Code mit einer vorgegebenen Auflösung A. Der Code ist geeignet für die Ablesung von r aufeinanderfolgenden Codeelementen als Stellen des Codes durch ein Erfassungselement, wobei sich die r aufeinanderfolgenden Codeelemente über die gesamte Codeelementfolge nicht wiederholen. It is a manufacturing method for a code carrier with a code element sequence as an absolute code with a predetermined resolution A. The code is suitable for reading r successive code elements as digits of the code by a detection element, the r successive code elements Do not repeat over the entire code element sequence.

[0027] Das erfindungsgemässe Herstellungsverfahren umfasst: Die Bestimmung einer Teilungsanzahl m = 1/A von Teilungen des Codes, um die vorgegebene Auflösung zu erreichen. Bestimmung einer Folge der Länge n zur Darstellung der Teilungen m des Codes. Dabei hat die Folge die allgemeine Form p<r>– b, wobei p, r und b natürliche Zahlen sind, und p der Anzahl physikalisch unterscheidbarer Zustände der Codeelemente entspricht. P muss also keine Primzahl sein. Zugleich wird der Exponent der Folge als deren benötigte Stellenanzahl r ermittelt, die den für ein Erfassungselement ablesbaren r aufeinanderfolgenden Stellen des Codes entspricht.The manufacturing method according to the invention comprises: The determination of a number of divisions m = 1 / A of divisions of the code in order to achieve the specified resolution. Determination of a sequence of length n to represent the divisions m of the code. The sequence has the general form p <r> - b, where p, r and b are natural numbers, and p corresponds to the number of physically distinguishable states of the code elements. So P does not have to be a prime number. At the same time, the exponent of the sequence is determined as the required number of digits r, which corresponds to the r successive digits of the code that can be read off for a detection element.

[0028] Erfindungsgemäss wird die Folge der Länge n aus einem Polynom des Grads r mithilfe einer Schaltungsanordnung mit r jeweils einen Speicherwert beinhaltenden Speichern und q ≤ r Abgriffen von den Speichern zu einer Zuordnungstabelle erzeugt. Die Zuordnungstabelle ist derart gestaltet, dass einer festgelegten Verknüpfung folgend ein Feedback-Signal an einen Eingang der Schaltungsanordnung zur Veränderung von Speicherwerten entsprechend der festgelegten Verknüpfung erzeugt wird. According to the invention, the sequence of length n is generated from a polynomial of degree r with the aid of a circuit arrangement with r memories each containing a memory value and q r taps from the memories to an assignment table. The assignment table is designed in such a way that, following a specified link, a feedback signal is generated at an input of the circuit arrangement for changing memory values in accordance with the specified link.

[0029] Dabei wird der Begriff «Speicher» synonym zu der Bezeichnung «Register» verwendet. Ausserdem ist ein «Speicherwert» als synonym zu einem «Registerinhalt» anzusehen. Die möglichen Werte eines einzelnen Speichers entsprechen den möglichen unterscheidbar auslesbaren Zuständen eines Codeelements. The term “memory” is used synonymously with the term “register”. In addition, a "memory value" is to be regarded as synonymous with a "register content". The possible values of an individual memory correspond to the possible distinguishable readable states of a code element.

[0030] Die vorgenannten Speicher können auf einem beliebigen Speichermedium beruhen, z.B. mechanisch für einen mechanischen Auslesevorgang (z.B. Lochkarte, Lochstreifen) oder einen optischen Auslesevorgang (z.B. Laserdisk, CD-ROM, DVD-ROM etc.), elektronisch in integrierten Schaltkreisen in Form von flüchtigen Speichern (z.B. DRAM oder SRAM; Schaltungen in Form von Flipflops) oder permanenten Speichern (z.B. ROM oder PROM) oder semipermanenten Speichern (z.B. EPROM, EEPROM) magnetisch auf nicht rotierenden Medien (z.B. Magnetband, Magnetkarte oder Compact Cassette) oder rotierenden Speichermedien (z.B. Diskette) optisch (z.B. CD, DVD).The aforementioned memories can be based on any storage medium, e.g. mechanical for a mechanical readout process (e.g. punch card, punched tape) or an optical readout process (e.g. laser disk, CD-ROM, DVD-ROM etc.), electronically in integrated circuits in the form of volatile memories (e.g. DRAM or SRAM; circuits in the form of flip-flops) or permanent memories (e.g. ROM or PROM) or semi-permanent memories (e.g. EPROM, EEPROM) Magnetically on non-rotating media (e.g. magnetic tape, magnetic card or compact cassette) or rotating storage media (e.g. floppy disk) optical (e.g. CD, DVD).

[0031] Eine Zuordnungstabelle oder Lookup-Tabelle (LUT) ist eine Datenstruktur, die vorberechnete Daten aus einer Verknüpfung enthält. Mithilfe einer solchen Tabelle ist es möglich, komplexe Berechnungen auf die in der Regel erheblich schnellere Wertsuche innerhalb eines Datenfeldes zu vereinfachen. Durch die Verwendung von Lookup-Tabellen wird Berechnungsaufwand durch Speicheraufwand ersetzt. An allocation table or lookup table (LUT) is a data structure that contains precalculated data from a link. With the help of such a table, it is possible to simplify complex calculations to the usually much faster value search within a data field. The use of lookup tables replaces computation overhead with memory overhead.

[0032] Die Werte einer Funktion werden vorab ermittelt und im Speicher als Tabelle abgelegt. Damit gleicht das LUT-Verfahren der Benutzung einer Tabelle wie z.B. einer Zinstabelle oder eines Tafelwerks. In der digitalen Schaltungstechnik bei Implementation auf z.B. FPGAs (Field Programmable Gate Arrays) werden auch sehr einfache Funktion wie logische Gleichungen (AND, OR, XOR) durch eine LUT ersetzt. The values of a function are determined in advance and stored in the memory as a table. The LUT method is thus similar to using a table such as an interest table or a table. In digital circuit technology when implemented on e.g. FPGAs (Field Programmable Gate Arrays) are also replacing very simple functions such as logical equations (AND, OR, XOR) with a LUT.

[0033] Das erfindungsgemässe Verfahren umfasst des Weiteren: Die Bestimmung des absoluten Codes, bei welchem sich r aufeinanderfolgende Codeelemente über die gesamte Codeelementfolge nicht wiederholen, unter Verwendung des Polynoms r-ten Grades. Dabei ist die Folgenlänge n ≤ p<r>. Aufbringen der Codeelementfolge als absolutem Code auf den Codeträger.The method according to the invention further comprises: The determination of the absolute code in which r successive code elements are not repeated over the entire code element sequence, using the polynomial r-th degree. The sequence length is n ≤ p <r>. Application of the code element sequence as an absolute code on the code carrier.

[0034] Ein wichtiges Kennzeichen des erfindungsgemässen Verfahrens ist, dass die Länge n der Folge gleich der Anzahl m der Teilungen des Codes ist. An important characteristic of the method according to the invention is that the length n of the sequence is equal to the number m of code divisions.

[0035] Das erfindungsgemässe Verfahren zeichnet sich dadurch vorteilhaft aus, dass – im Gegensatz zu Verfahren, die auf der Verwendung von klassischen Maximalfolgen im Galois-Feld beruhen – Codeträger mit Codespuren mit beliebigen und nicht durch Potenzen von 2 limitierten Teilungen, entsprechend einer beliebigen gewünschten Auflösung, erzeugt werden können. Dadurch können mit solchen Codeträgern ausgestattete Geräte wie beispielsweise Winkelgeber vereinfacht und in ihrer Genauigkeit verbessert werden. Diese Verbesserung beruht auf der Bereitstellung von Folgen zur Darstellung des Codes, welche eine an die anwendungsspezifisch optimale Auflösung angepasste optimale, beliebige Länge haben. Dieses wird ermöglicht durch das Zusammenwirken einer für das erfindungsgemässe Verfahren optimierten Schaltungsanordnung mit r jeweils einen Speicherwert entsprechend einem Zustand der Stellen bzw. Codeelementen beinhaltenden Speichern mit einer Zuordnungstabelle über q Abgriffe, wobei q kleiner als oder gleich der Anzahl r der Speicher ist. Ein wesentlicher Aspekt ist des Weiteren, in Zusammenhang mit der Zuordnungstabelle, eine entsprechende Wahl von Initialwerten der Speicherinhalte. The inventive method is advantageously characterized in that - in contrast to methods based on the use of classical maximum sequences in the Galois field - code carriers with code tracks with any and not limited by powers of 2 divisions, corresponding to any desired Resolution, can be generated. As a result, devices equipped with such code carriers, such as angle encoders, can be simplified and their accuracy improved. This improvement is based on the provision of sequences for the representation of the code which have an optimal, arbitrary length adapted to the application-specific optimal resolution. This is made possible by the interaction of a circuit arrangement optimized for the method according to the invention with r each having a memory value corresponding to a state of the locations or code elements containing memories with an allocation table over q taps, where q is less than or equal to the number r of memories. A further essential aspect, in connection with the assignment table, is a corresponding selection of initial values for the memory contents.

[0036] Das Zusammenwirken von Schaltungsanordnung, Zuordnungstabelle und Auswahl geeigneter Initialwerte der Speicherinhalte wird anhand der nachfolgenden Beispiele genauer erläutert. The interaction of the circuit arrangement, assignment table and selection of suitable initial values of the memory contents is explained in more detail with the aid of the following examples.

[0037] Das erfindungsgemässe Verfahren eignet sich insbesondere zur Erzeugung einer Codespur auf einem Codeträger für einen Positions-, Linear- oder Drehgeber. The inventive method is particularly suitable for generating a code track on a code carrier for a position, linear or rotary encoder.

[0038] Gegenstand der Erfindung sind auch ein Codeträger mit einem absolutcodierten Code mit m Teilungen entsprechend einer vorgegebenen Auflösung A = 1/m und hergestellt mit dem erfindungsgemässen Verfahren sowie ein Positions-, Linear- oder Winkelgeber mit einem erfindungsgemässen Codeträger. The invention also relates to a code carrier with an absolutely coded code with m divisions corresponding to a predetermined resolution A = 1 / m and produced with the method according to the invention and a position, linear or angle encoder with a code carrier according to the invention.

[0039] Ausserdem wird eine Schaltungsanordnung dargestellt mit r jeweils einen Speicherwert beinhaltenden Speichern, einer Zuordnungstabelle und q ≤ r Abgriffen von den Speichern zu einer Zuordnungstabelle. Dabei ist die Schaltungsanordnung für Erzeugung einer Folge p<r>– b mit einer Länge n = m aus einem Polynom r-ten Grades zur Herstellung eines Codeträgers mit einem absolutcodierten Code mit m Teilungen in dem erfindungsgemässen Herstellungsverfahren bestimmt. Die Schaltungsanordnung zeichnet sich dadurch aus, dass die Zuordnungstabelle derart gestaltet ist, dass einer festgelegten Verknüpfung folgend ein Feedback-Signal an einen Eingang der Schaltungsanordnung zur Veränderung von Speicherwerten entsprechend der festgelegten Verknüpfung erzeugt wird. Dabei werden die Zuordnungstabelle, die Abgriffe und Initialwerte der Speicherelemente derart gewählt, dass die Länge n der Folge gleich der Anzahl m der Teilungen des Codes ist. In addition, a circuit arrangement is shown with r memories each containing a memory value, an assignment table and q r r taps from the memories to an assignment table. The circuit arrangement for generating a sequence p <r> - b with a length n = m from a polynomial r-th degree is intended for the production of a code carrier with an absolutely coded code with m divisions in the production method according to the invention. The circuit arrangement is characterized in that the assignment table is designed in such a way that, following a specified link, a feedback signal is generated at an input of the circuit arrangement for changing memory values in accordance with the specified link. The allocation table, the taps and initial values of the memory elements are selected such that the length n of the sequence is equal to the number m of code divisions.

[0040] Ferner ist es möglich, das Bildungsgesetz der Folge umzukehren. Anstelle das Feedback-Signal am Eingang einzukoppeln, wird es beim umgekehrten Bildungsgesetz am Ausgang eingekoppelt. Dadurch kann ausgehend von einem Zustand der Zustand links und der Zustand rechts davon ermittelt werden. Das ist vergleichbar mit einem «Incrementing» und «Decrementing» eines Zählers. It is also possible to reverse the formation law of the sequence. Instead of coupling the feedback signal at the input, it is coupled at the output with the reverse law of formation. In this way, starting from a state, the state on the left and the state on the right can be determined. This is comparable to “incrementing” and “decrementing” a counter.

[0041] Vorgestellt wird ausserdem ein Verfahren zur Fehlerkontrolle, insbesondere zur Qualitätssicherung eines nach dem erfindungsgemässen Verfahren hergestellten Codeträgers, d.h. eine Fehlerkontrolle der aufgetragenen, aus den Codeelementen bestehenden Codespur. Eine solche Fehlerkontrolle, sowohl zur Qualitätskontrolle als auch im Laufe der Verwendungszeit ist erforderlich; denn ein auf getragener Code kann sich im Laufe der Zeit zersetzen, beispielsweise durch mechanische Beschädigung oder Verunreinigungen wie abgesetztem Staub. Eventuell können auch bei Vorhandensein von Fehlerstellen (wie z.B. fehlenden Codeelementen) noch Messungen wie Winkel- oder Längenmessungen mit dem Codeträger durchgeführt werden; jedoch müssen solche Fehlerstellen zumindest bekannt sein, da sie sich zumindest mindernd auf die Genauigkeit auswirken, so dass festlegbar sein muss, wann ein Codeträger nicht mehr brauchbar ist und, zumindest ohne entsprechende Fehlerbehebung, nicht mehr eingesetzt werden darf. A method for error control, in particular for quality assurance of a code carrier manufactured according to the method according to the invention, i.e. an error control of the applied code track consisting of the code elements. Such an error control, both for quality control and in the course of the period of use, is necessary; This is because an applied code can decompose over time, for example through mechanical damage or contamination such as deposited dust. Measurements such as angle or length measurements can possibly be carried out with the code carrier even if there are faults (such as missing code elements); however, such fault locations must at least be known, since they have at least a reducing effect on the accuracy, so that it must be possible to determine when a code carrier is no longer usable and, at least without appropriate troubleshooting, can no longer be used.

[0042] Gemäss dem Verfahren zur Fehlerkontrolle wird eine auf dem Codeträger aufgebrachte Sequenz von Codeelementen mit einem Erfassungselement abgelesen, und Fehler in dieser auf dem Codeträger aufgebrachten Sequenz von Codeelementen werden durch einen Vergleich mit dem im erfindungsgemässen Herstellungsverfahren bestimmten absoluten Code ermittelt. Dazu wird beispielsweise eine bestimmte Anzahl von aufeinanderfolgenden Codeelementen, wie etwa 10, abgelesen, welche mit einer vorbestimmten Codeelementfolge entsprechen. Dann werden die nachfolgenden Elemente der Codeelementfolge mit dem Bildungsgesetz des Codes bestimmt und verglichen mit den entsprechenden tatsächlich auf dem Codeträger vorhandenen Codeelementen der Codespur und bei fehlender Übereinstimmung entsprechend Fehler festgestellt. According to the method for error checking, a sequence of code elements applied to the code carrier is read with a detection element, and errors in this sequence of code elements applied to the code carrier are determined by a comparison with the absolute code determined in the production method according to the invention. For this purpose, for example, a certain number of successive code elements, such as 10, are read, which correspond to a predetermined code element sequence. Then the following elements of the code element sequence are determined with the law of formation of the code and compared with the corresponding code elements of the code track actually present on the code carrier and, if they do not match, corresponding errors are determined.

[0043] Das erfindungsgemässe Herstellungsverfahren wird nachfolgend anhand von in den Zeichnungen schematisch dargestellten konkreten Ausführungsbeispielen rein beispielhaft näher beschrieben, wobei auch auf weitere Vorteile der Erfindung eingegangen wird. Fig. 1 zeigt einige primitive Polynome des Grades r = 2 und ihre Folgen für p > 2. Fig. 2 zeigt einige primitive Polynome und ihre Folgen im Galois-Feld Gf(2<r>). Fig. 3 zeigt eine Schaltungsanordnung gemäss dem Stand der Technik zur Berechnung von Folgen im Galois-Feld. Fig. 4 zeigt eine Schaltungsanordnung zur Berechnung von verallgemeinerten Folgen. Fig. 5 zeigt beispielhaft eine Schaltungsanordnung mit drei Speichern zur Berechnung einer Folge der Länge 6. Fig. 6 zeigt beispielhaft eine Schaltungsanordnung mit vier Speichern zur Berechnung einer Folge der Länge 9. Fig. 7 zeigt in Tabellenform Vorschriften zur erfindungsgemässen Herstellung von Codeträgern mit bis zu 1030 Teilungen.The manufacturing method according to the invention is described in more detail below, purely by way of example, with reference to specific exemplary embodiments shown schematically in the drawings, further advantages of the invention being discussed. Fig. 1 shows some primitive polynomials of degree r = 2 and their sequences for p> 2. Fig. 2 shows some primitive polynomials and their sequences in the Galois field Gf (2 <r>). 3 shows a circuit arrangement according to the prior art for calculating sequences in the Galois field. 4 shows a circuit arrangement for calculating generalized sequences. 5 shows an example of a circuit arrangement with three memories for calculating a sequence of length 6. FIG. 6 shows an example of a circuit arrangement with four memories for calculating a sequence of length 9. FIG. 7 shows, in tabular form, regulations for the production of code carriers according to the invention with up to to 1030 divisions.

[0044] Die Erfindung beruht auf einer Erweiterung, ausgehend vom Bildungsgesetz einer Folge eines Polynoms im erweiterten Galois-Feld. Fig. 3 zeigt eine Schaltungsanordnung gemäss dem Stand der Technik zur Berechnung der von binären Folgen im Galois-Feld (Gf(2<r>)) in Fig. 2 . The invention is based on an extension, starting from the law of formation of a sequence of a polynomial in the extended Galois field. FIG. 3 shows a circuit arrangement according to the prior art for calculating the binary sequences in the Galois field (Gf (2 <r>)) in FIG.

[0045] In Fig. 3 steht links das zugehörige Polynom. In diesem Fall handelt es sich dabei um primitive Polynome, die nur durch sich selbst oder 1 teilbar sind. Rechts daneben ist die Schaltungsanordnung dargestellt, mit der die zugehörige Folge berechnet wird. Die Kästchen mit dem Buchstaben «T» sind Speicher. Sie verzögern das Eingangssignal um einen Takt. Die Kreise mit Plus-Zeichen stellen Exklusiv-Oder-Operatoren (XOR) dar. Über den Speichern steht der jeweilige Initialzustand. Für den jeweils ersten Speicher ist er «1», für alle anderen «0». The associated polynomial is shown on the left in FIG. In this case, these are primitive polynomials that are only divisible by themselves or 1. To the right of this, the circuit arrangement is shown with which the associated sequence is calculated. The boxes with the letter "T" are memories. They delay the input signal by one clock. The circles with plus signs represent exclusive-or operators (XOR). The respective initial state is shown above the memories. It is “1” for the first memory in each case and “0” for all others.

[0046] Jeweils alle Speicher zusammen genommen ergeben die zur Position gehörige binäre Zahl. Diese wird in jedem Takt um eine Stelle nach rechts verschoben, und das hinzukommende höchstwertige Bit entsteht aus einer Exklusiv-Oder-Verknüpfung einiger Bits der vorherigen Zahl. Bei einer anderen Ausgestaltung wird nach links geschoben und das niederwertigste Bit kommt hinzu. All memories taken together result in the binary number associated with the position. This is shifted by one place to the right in each cycle, and the additional most significant bit is created from an exclusive-or operation of some bits of the previous number. In another embodiment, it is shifted to the left and the least significant bit is added.

[0047] Fig. 4 zeigt eine Schaltungsanordnung zur Berechnung von verallgemeinerten Folgen. 4 shows a circuit arrangement for calculating generalized sequences.

[0048] Das grosse Rechteck mit den Buchstaben «LUT» symbolisiert eine Zuordnungstabelle («Look Up Table») für eine Abbildung der Eingänge auf den Ausgang. Dieses bedeutet, dass mithilfe der LUT einer festgelegten Verknüpfung folgend ein Feedback-Signal an einen Eingang der Schaltungsanordnung zur Veränderung von Speicherwerten entsprechend der festgelegten Verknüpfung erzeugt wird. The large rectangle with the letters “LUT” symbolizes an assignment table (“Look Up Table”) for mapping the inputs to the output. This means that with the aid of the LUT, following a specified link, a feedback signal is generated at an input of the circuit arrangement for changing memory values in accordance with the specified link.

[0049] Mit dieser Schaltungsanordnung lassen sich Folgen mit beliebiger Periodizität berechnen. Dabei müssen nicht alle Stellen der vorherigen Zahl verwendet werden. Bei einer vorteilhaften Ausgestaltung werden beispielsweise möglichst wenig Stellen verwendet. Vorteilhaft ist, wenn die Zuordnungstabelle derart gestaltet ist, dass die Folge der Länge n mit einer geringstmöglichen Zahl von Abgriffen generiert wird. Dadurch wird die Komplexität der «LUT» minimal. Mit Hilfe der Schaltungsanordnung können die gleichen Folgen wie bei den Berechnungen mit Hilfe von Polynomen im erweiterten Galois-Feld berechnet werden. In diesem Fall entspricht die LUT im Fall von p = 2 gerade den Exklusiv-Oder-Verknüpfungen, wie sie beispielsweise in Fig. 3 dargestellt sind. Für p > 2 entspricht die LUT gerade der entsprechenden Restklassenrechnung entsprechend einer Modulo-Funktion. Die Modulo-Funktion bzw. Restklassenrechnung ist aus der Fachliteratur bekannt. Darüber hinaus können aber auch andere Verknüpfungen gemacht werden. Beispielsweise im binären Fall (p = 2) «Und», «Oder» oder «Nicht». With this circuit arrangement, sequences with any periodicity can be calculated. Not all digits of the previous number have to be used. In an advantageous embodiment, for example, as few places as possible are used. It is advantageous if the assignment table is designed in such a way that the sequence of length n is generated with the smallest possible number of taps. This minimizes the complexity of the «LUT». With the help of the circuit arrangement, the same sequences can be calculated as in the calculations with the help of polynomials in the extended Galois field. In this case, in the case of p = 2, the LUT corresponds precisely to the exclusive-or operations, as shown in FIG. 3, for example. For p> 2 the LUT corresponds exactly to the corresponding remainder class calculation according to a modulo function. The modulo function or residual class calculation is known from the specialist literature. In addition, other links can also be made. For example, in the binary case (p = 2) “And”, “Or” or “Not”.

[0050] Ausserdem ist die Folge nun nicht mehr darauf beschränkt, dass «p» eine Primzahl ist. Erweiterte Folgen haben eine maximale Länge von p<r> wobei «p» eine natürliche Zahl ist und «r» die Zahl der Speicher angibt. In addition, the sequence is no longer restricted to the fact that “p” is a prime number. Extended sequences have a maximum length of p <r> where «p» is a natural number and «r» indicates the number of memories.

[0051] Abgesehen von der Folgenlänge kann bei Längen kleiner als p<r>auch das Verhältnis der Elemente geändert werden. Aside from the sequence length, the ratio of the elements can also be changed for lengths smaller than p <r>.

[0052] Für p = 2 entspricht das dem Verhältnis der Anzahl Nullen und Einsen. Berücksichtigt man diesen Freiheitsgrad, kann je nach physikalischen Randbedingungen des Systems, unter denen die Folge verwendet wird, eine bessere Lösung der Systemoptimierung erzielt werden. For p = 2 this corresponds to the ratio of the number of zeros and ones. If this degree of freedom is taken into account, a better solution of the system optimization can be achieved depending on the physical boundary conditions of the system under which the sequence is used.

[0053] Mit Hilfe einer Folge gemäss dieser Erfindung kann die Position auf einer Geraden oder irgendwie anders geformten Linie, insbesondere einem Kreis bestimmt werden. Das kann zum Beispiel zur Längen- oder Winkelmessung und damit natürlich auch deren gegebenenfalls mehrfachen Ableitungen nach der Zeit benutzt werden. Alternativ kann auch die Position in der Zeit gemessen werden. Das kann ebenfalls für eine Längen- oder Winkelmessung verwendet werden. With the aid of a sequence according to this invention, the position can be determined on a straight line or line of any other shape, in particular a circle. This can be used, for example, for length or angle measurement and thus of course also their possibly multiple derivatives with respect to time. Alternatively, the position in time can also be measured. This can also be used for a length or angle measurement.

[0054] Erfindungsgemäss können daher für den zuvor beschriebenen Fall gewünschten Auflösung mit einer 1°-Einteilung eines Kreises Folgen beliebiger Länge, also beispielsweise 360 generiert werden. Die Folge hat somit eine Länge, welche der anwendungsspezifisch optimalen Auflösung entspricht, wodurch die Auswertung vereinfacht und die Genauigkeit gesteigert wird. According to the invention, sequences of any length, for example 360, can therefore be generated for the desired resolution with a 1 ° division of a circle. The sequence thus has a length which corresponds to the application-specific optimal resolution, which simplifies the evaluation and increases the accuracy.

[0055] Vorteilhaft sind auch die Eigenschaften solcher Folgen gemäss der vorliegenden Erfindung. Manche können deaktiviert werden, bei binären Folgen beispielsweise, indem ihr Zustand auf «0...0» oder «1...1» gesetzt wird. Andere haben mehrere Zyklen, zwischen denen umgeschaltet werden kann. Wieder andere schwingen von einem beliebigen Zustand der Initialwerte in die Folge ein und sind daher tolerant gegenüber Fehlern. The properties of such sequences according to the present invention are also advantageous. Some can be deactivated, for example in the case of binary sequences, by setting their status to "0 ... 0" or "1 ... 1". Others have several cycles that can be switched between. Still others swing into the sequence from any state of the initial values and are therefore tolerant of errors.

[0056] Fig. 7 zeigt in Tabellenform für p = 2 Vorschriften zur erfindungsgemässen Herstellung von Codeträgern mit bis zu 1030 Teilungen. Dabei ist in der ersten Spalte die gewünschte Länge n der Folge, welche gleich der gewünschten Anzahl m von Teilungen des Codes entspricht (n = m), angegeben. In der zweiten Spalte ist der Grad r des Polynoms entsprechend der Anzahl der Speicher angegeben. In der dritten Spalte ist die Verknüpfungsvorschrift der Zuordnungstabelle LUT dargestellt. Die vierte Spalte zeigt, von welchen Speichern zu der Zuordnungstabelle abgegriffen wird. In der fünften Spalte sind die jeweils zu setzenden Initialwerte der Speicher angegeben. Dabei ist als Wert «init» die Gesamtsumme der Speicher in dezimaler Form angegeben, also z.B. init = 3 = 2<1>+ 2<0>. 7 shows, in tabular form for p = 2, rules for the production of code carriers according to the invention with up to 1030 pitches. The desired length n of the sequence, which corresponds to the desired number m of code divisions (n = m), is specified in the first column. The second column shows the degree r of the polynomial corresponding to the number of memories. The linking rule of the LUT assignment table is shown in the third column. The fourth column shows the memories from which the allocation table is tapped. The fifth column shows the initial values to be set for the memory. The total amount of the memory is given in decimal form as the value «init», e.g. init = 3 = 2 <1> + 2 <0>.

[0057] Im Zusammenhang mit Fig. 5 und Fig. 6 wird nachfolgend erläutert, wie die Vorschriften gemäss der Tabelle Fig. 7 sowie den jeweils in der Zuordnungstabelle LUT angegebenen Verknüpfungen und gesetzten Initialwerten der Speicher zur Erzeugung einer Folge gewünschter Länge umzusetzen sind. In connection with FIG. 5 and FIG. 6, it is explained below how the regulations according to the table in FIG. 7 and the links and initial values set for the memories specified in the assignment table LUT are to be implemented in order to generate a sequence of the desired length.

[0058] Dabei zeigt Fig. 5 beispielhaft eine Schaltungsanordnung mit drei Speichern zur Berechnung einer Folge der Länge 6, entsprechend folgender Zeile der Tabelle aus Fig. 5 : Länge = 6 r = 3 LUT =01 Abgriffe = 0 init = 0 5 shows an example of a circuit arrangement with three memories for calculating a sequence of length 6, corresponding to the following line of the table from FIG. 5: Length = 6 r = 3 LUT = 01 Taps = 0 init = 0

[0059] Die Schaltungsanordnung, welche man auch als «Generator» der zugehörigen Folge bezeichnen kann, besteht aus 3 Speichern, wovon der 0-te abgegriffen wird und einer Zuordnungstabelle LUT mit 2<1>Einträgen zugeführt wird. Zu Beginn werden die Speicher bzw. Register mit dem Wert 0 = 0002initialisiert. Der Index 2 kennzeichnet die Zahl im 2er-System. The circuit arrangement, which can also be referred to as a “generator” of the associated sequence, consists of 3 memories, of which the 0th is tapped and an assignment table LUT with 2 <1> entries is fed. At the beginning, the memories or registers are initialized with the value 0 = 0002. The index 2 denotes the number in the system of 2.

[0060] Die Zuordnungstabelle ordnet dem Eingang folgende Werte zu: The assignment table assigns the following values to the input:

[0061] Das entspricht einem Inverter. Dieses Bildungsgesetz entspricht dem wohlbekannten «Johnson-Counter». Beginnend beim Initialwert erhält man folgende Registerinhalte: 000 100 110 111 011 001 This corresponds to an inverter. This education law corresponds to the well-known "Johnson Counter". Starting with the initial value, the following register contents are obtained: 000 100 110 111 011 001

[0062] Nach weiteren Schritten würden sich die Registerinhalte wiederholen. Die Folge hat also die Länge 6. After further steps, the register contents would repeat. So the sequence has the length 6.

[0063] Das zweite Beispiel gemäss Fig. 6 illustriert beispielhaft eine Schaltungsanordnung mit vier Speichern bzw. Registern zur Berechnung einer Folge der Länge 9 und erläutert folgende Zeile der Tabelle aus Fig. 7 : Länge = 9 r = 4 LUT = 01101010 Abgriffe = 2, 1, 0 init = 3 The second example according to FIG. 6 exemplifies a circuit arrangement with four memories or registers for calculating a sequence of length 9 and explains the following line of the table from FIG. 7: Length = 9 r = 4 LUT = 01101010 Taps = 2, 1, 0 init = 3

[0064] Dieses ist die Vorschrift zur Bildung einer Folge der Länge 9. Die Schaltungsanordnung zu dieser Folge besteht aus 4 Speichern bzw. Registern, wovon das 0te, 1te und 2te abgegriffen und der Zuordnungstabelle mit 2<3>Einträgen zugeführt werden. Zu Beginn werden die Register mit dem Wert 3 = 00112initialisiert This is the rule for forming a sequence of length 9. The circuit arrangement for this sequence consists of 4 memories or registers, of which the 0th, 1st and 2nd are tapped and fed to the assignment table with 2 <3> entries. At the beginning the registers are initialized with the value 3 = 00112

[0065] Die Zuordnungstabelle ordnet dem Eingang folgende Werte zu: The assignment table assigns the following values to the input:

[0066] Beginnend beim Initialwert erhält man folgende Registerinhalte: 0011 1001 1100 0110 1011 1101 1110 1111 0111 Starting with the initial value, the following register contents are obtained: 0011 1001 1100 0110 1011 1101 1110 1111 0111

[0067] Nach weiteren Schritten würden sich die Registerinhalte wiederholen. Die Folge hat also die Länge 9. After further steps, the register contents would repeat. So the sequence has the length 9.

[0068] Zur Erzeugung einer Folge der Länge 360, beispielsweise für eine 1°-Aufteilung eines Kreises, sind folgende Vorschriften geeignet: Länge = 360 r = 9 LUT = 0101011010011010 Abgriffe = 4, 3, 1, 0 init = 3 und Länge = 360 r = 9 LUT = 1001101001100101 Abgriffe = 4, 3, 1, 0 init = 0 The following rules are suitable for generating a sequence of length 360, for example for a 1 ° division of a circle: Length = 360 r = 9 LUT = 0101011010011010 Taps = 4, 3, 1, 0 init = 3 and Length = 360 r = 9 LUT = 1001101001100101 Taps = 4, 3, 1, 0 init = 0

[0069] Es versteht sich, dass die dargestellten Figuren nur Beispiele möglicher Ausführungsformen der Erfindung sind. It goes without saying that the figures shown are only examples of possible embodiments of the invention.

Claims (3)

1. Herstellungsverfahren für einen Codeträger mit einer Codeelementfolge als absolutem Code mit einer vorgegebenen Auflösung A, wobei der Code geeignet ist zur Ablesung von r aufeinanderfolgenden Codeelementen als Stellen des Codes durch ein Erfassungselement, wobei sich die r aufeinanderfolgenden Codeelemente über die gesamte Codeelementfolge nicht wiederholen, aufweisend: – Bestimmen einer Teilungsanzahl m = 1/A von Teilungen des Codes, entsprechend der Auflösung A, – Ermitteln einer Stellenanzahl r von Stellen einer Codeelementfolge mit einer Länge n zur Darstellung der Teilungen m, wobei die Codeelementfolge die allgemeine Form p<r>– b hat, p, r und b natürliche Zahlen sind, und p der Anzahl physikalisch unterscheidbarer Zustände der Codeelemente entspricht, – Bestimmen des absoluten Codes, wobei n ≤ p<r>ist, – Aufbringen der Codeelementfolge als absolutem Code auf den Codeträger, dadurch gekennzeichnet, – dass die Codeelementfolge der Länge n mithilfe einer Schaltungsanordnung mit r jeweils einen Speicherwert beinhaltenden Speichern und q ≤ r Abgriffen von den Speichern zu einer Zuordnungstabelle erzeugt wird, welche Zuordnungstabelle derart gestaltet ist, dass einer festgelegten Verknüpfung folgend ein Feedback-Signal an einen Eingang der Schaltungsanordnung zur Veränderung von Speicherwerten entsprechend der festgelegten Verknüpfung erzeugt wird, und – dass die Zuordnungstabelle, die Abgriffe und Initialwerte der Speicherelemente derart gewählt werden, dass die Länge n der Codeelementfolge gleich der Anzahl m der Teilungen des Codes ist.Method for producing a code carrier having a code element sequence as absolute code with a predetermined resolution A, the code being suitable for reading r consecutive code elements as locations of the code by a detection element, wherein the r consecutive code elements do not repeat over the entire code element sequence, comprising: Determining a division number m = 1 / A of divisions of the code, corresponding to the resolution A, Determining a digit number r of locations of a code element sequence with a length n representing the divisions m, the code element sequence having the general form p <r> -b, p, r and b being natural numbers, and p the number of physically distinguishable states Corresponds to code elements, Determining the absolute code, where n ≦ p <r>, Applying the code element sequence as absolute code to the code carrier, characterized, That the code element sequence of length n is generated by means of a circuit arrangement with r memories each containing a memory value and q ≤ r taps from the memories to an allocation table, which allocation table is designed such that following a specified link, a feedback signal to an input of the Circuit arrangement for changing memory values according to the specified link is generated, and - That the allocation table, the taps and initial values of the memory elements are chosen such that the length n of the code element sequence is equal to the number m of the divisions of the code. 2. Codeträger mit einem absolutcodierten Code mit m Teilungen entsprechend einer gewünschten Auflösung A = 1/m und hergestellt mit einem Verfahren nach Anspruch 1.2. Code carrier with an absolutely coded code with m pitches corresponding to a desired resolution A = 1 / m and produced by a method according to claim 1. 3. Positions-, Linear- oder Winkelgeber mit einem Codeträger nach Anspruch 2.3. position, linear or angle encoder with a code carrier according to claim 2.
CH00370/11A 2011-03-02 2011-03-02 Manufacturing process for a code carrier with an absolutely coded code track with an optimized number of divisions. CH704584B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CH00370/11A CH704584B1 (en) 2011-03-02 2011-03-02 Manufacturing process for a code carrier with an absolutely coded code track with an optimized number of divisions.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CH00370/11A CH704584B1 (en) 2011-03-02 2011-03-02 Manufacturing process for a code carrier with an absolutely coded code track with an optimized number of divisions.

Publications (2)

Publication Number Publication Date
CH704584A2 CH704584A2 (en) 2012-09-14
CH704584B1 true CH704584B1 (en) 2017-03-15

Family

ID=46799353

Family Applications (1)

Application Number Title Priority Date Filing Date
CH00370/11A CH704584B1 (en) 2011-03-02 2011-03-02 Manufacturing process for a code carrier with an absolutely coded code track with an optimized number of divisions.

Country Status (1)

Country Link
CH (1) CH704584B1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3064902B1 (en) 2015-03-06 2017-11-01 Hexagon Technology Center GmbH System for determining positions
EP3121565B1 (en) 2015-07-24 2018-09-12 Hexagon Technology Center GmbH Absolute position determination
EP3139132B1 (en) 2015-09-03 2020-02-19 Hexagon Technology Center GmbH Surface absolute encoding

Also Published As

Publication number Publication date
CH704584A2 (en) 2012-09-14

Similar Documents

Publication Publication Date Title
EP1821073B1 (en) Position measuring device
EP1795870B1 (en) Circuitry for and method of identifying counting errors in a position detection device
EP0391058A1 (en) Position measuring device for crane and electric telpher lines
DE19545949A1 (en) Digital absolute position encoder and coding method
DE102007018748A1 (en) Position measuring device
EP0408799B1 (en) Method of interpolating position measurement signals
DE3221982A1 (en) OPTICAL INCREMENTAL CODING SYSTEM WITH ADDRESSABLE INDEX
EP0203934B1 (en) Circuit arrangement for measuring torque
DE1538513B2 (en) ARRANGEMENT FOR NUMERICAL CONTROL OF ADJUSTMENT OF MOVABLE ELEMENTS, IN PARTICULAR FOR ADJUSTMENT OF THE WORKPIECE OR TOOL CARRIER OF A MACHINE TOOL
CH704584B1 (en) Manufacturing process for a code carrier with an absolutely coded code track with an optimized number of divisions.
EP0581932B1 (en) Angle of rotation sensor for the absolute measurement of the angle of rotation over several revolutions
DE4443898C2 (en) Position measuring method and position measuring device
WO1995014236A1 (en) Phase-measurement device
DE102013222197A1 (en) Position measuring device
DE4231197C2 (en) Position detector
EP0526730B1 (en) Linear or angular position measuring device
DE4309881C1 (en) Absolute position measuring device - uses sensor with strip sensor elements scanning successive codes in adjacent measuring track segments
DE1773034B2 (en) MEASURING DEVICE FOR SENSOR PRODUCTS
DE2111670A1 (en) Arrangement for displaying the mean rate of occurrence of a signal indicative of an event
DE2333698B1 (en) Digital position encoder
DE102017205267A1 (en) Position measuring device and method for operating a position measuring device
DD269269A5 (en) DEVICE FOR DISPLAYING THE VALUE OF A CHANGING SIZE
DE102008053977A1 (en) Absolute position coding and position measuring device
DE10025160C2 (en) Method for evaluating position or rotation angle sensors and device for carrying out the method
DE2735325A1 (en) Interpretation of phase encoded angular displacement signals - uses coarse pitch counter which squares sinusoidal input and fine phase detection network connected in parallel