CH704584A2 - Method for manufacturing code carrier with code element series, involves determining division number of code divisions corresponding to desired solution - Google Patents

Method for manufacturing code carrier with code element series, involves determining division number of code divisions corresponding to desired solution Download PDF

Info

Publication number
CH704584A2
CH704584A2 CH3702011A CH3702011A CH704584A2 CH 704584 A2 CH704584 A2 CH 704584A2 CH 3702011 A CH3702011 A CH 3702011A CH 3702011 A CH3702011 A CH 3702011A CH 704584 A2 CH704584 A2 CH 704584A2
Authority
CH
Switzerland
Prior art keywords
code
sequence
memory
length
values
Prior art date
Application number
CH3702011A
Other languages
German (de)
Other versions
CH704584B1 (en
Inventor
Robert Fritsch
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

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)

Abstract

The method involves determining a division number of code divisions corresponding to the desired solution. A digit of points of a sequence is determined with a length for representing the divisions. The sequence of the length is produced by a switch arrangement with memories containing a stored value and with test points from the memories to an allocation table, which is arranged such that a feedback signal following a definite composition is produced at an input of the switch arrangement for change of memory values corresponding to the definite composition. Independent claims are also included for the following: (1) a code carrier for position, linear and angle encoder with an absolutely encoded code with divisions corresponding to a desired resolution; (2) a switching arrangement with a memory value comprising storing value and an association table; and (3) a method for control error of a code carrier manufacturing method.

Description

[0001] Die Erfindung betrifft ein Herstellungsverfahren für einen Codeträger mit einer absolutcodierten Codespur aus einer Codeelementfolge zur Ablesung von r aufeinander folgenden Codeelementen der Codespur durch eine Abtasteinrichtung mit einer vorgegebenen Auflösung A der absolutcodierten Codespur. The invention relates to a method for producing 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 absolute coded code track.

[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 according to the given resolution <A = 1/m>, prepared with the inventive method, as well as a position, linear or angle encoder with the inventive code carrier.

[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 each memory-containing memories, an allocation table and <q ≤ r> taps from the memories to the allocation table, wherein the circuit 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 encoders for the determination of directions, angles and lengths as layers find in many areas, such as in geodetic and industrial surveying, application. Developments in angle measuring technology lead via mechanical readings 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 having a code track of code elements and a scanning device as a detection element for the code. In angle measuring devices, the code carrier is usually designed to be rotatable about an axis relative to the scanning device, wherein an angular position of the code carrier with the code track then represents the variable to be measured. The code track can be applied, for example, on 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 automatic detection of the position of the movable relative to the scanning code carrier is scanned by different techniques. Known scanning methods are electronic-magnetic, electronic and optical-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 of 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 by the scanning device used to read the coding. Thus, for example, by applying a code in multiple tracks or by a finer pitch, the angular resolution is increased, the achievable resolution is limited for manufacturing and cost reasons. For reading the code, e.g. Arrangements of one or more detectors 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. The coding must be suitable for machine readability. The code elements are also to be regarded 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 auslesbarer Zustände haben. The code elements may have various physically distinguishable states, for example, transparent and absorbent, whereby they are 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 terms, a code element of a code may have a number p of distinguishably readable states.

[0010] Dabei darf sich aufgrund der für eine Absolutcodierung notwendigen Eindeutigkeit eines Ergebnisses der Ablesung von r aufeinander folgenden Codeelementen der Codespur durch eine Abtasteinrichtung eine Aufeinanderfolge von r Codeelementen entlang der gesamten Codespur nicht wiederholen. [0010] In this case, due to the uniqueness of a result of the reading of r consecutive code elements of the code track by a scanning device, a sequence of r code elements along the entire code track may not be repeated due to the unambiguousness of a result.

[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 können, 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) is known that code tracks that meet these requirements, for example, according to the theory of primitive polynomials from a sequence of numbers using feedback shift registers with a memory number r of Store which p different memory values according to the physically distinguishable. States of the code elements may have generated. This will be explained in more detail below with reference to examples. The uniqueness of each succession of r code elements along the code track is, as the 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, aus welcher der Code abgebildet werden kann. For the production of a code with the required uniqueness of each succession of r code elements along the code track so a suitable sequence must be determined, from 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(pr) 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 consequences, which are generated from calculations in the extended Galois field Gf (pr). Where p is a prime number and r is a natural number. Such maximal sequences are well known in the literature.

[0014] Maximalfolgen haben die Eigenschaft, dass sich r aufeinander folgende 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). Maximum sequences have the property that r consecutive positions in the sequence do not repeat. Excluding the zero element, such a maximum sequence has the length p <r> -1, where all combinations of the r positions except for the 0 sequence occur (see, for example, for p = 2: S. Müller: "Digitale Signalverarbeitung for Loudspeakers »Dissertation, p. 140, University of Bonn 1999).

[0015] Üblicherweise werden Maximalfolgen mit Hilfe der vorgenannten «primitiven Polynome» bestimmt. 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. A primitive polynomial is a polynomial that generates all elements of an extension field from a base field. Primitive polynomials are also non-reducible polynomials. This means that they are divisible only by themselves or by one.

[0017] Für p = 3 und p = 5 sind mit einem Grad r = 2 des Polynoms beispielsweise die in Fig. 1dargestellten Polynome und Folgen bekannt. For p = 3 and p = 5, for example, the polynomials and sequences shown in FIG. 1 are known with a degree r = 2 of the polynomial.

[0018] 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). State of the 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).

[0019] 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.

[0020] 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. On the basis of a section of the sequence with length n≥r the position within the sequence can be determined uniquely. Therefore, such sequences are used for position determination.

[0021] 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, ...

[0022] 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 de: Folge. Mit Berechnungen im Galois-Feld ist das jedoch nicht möglich. It is known from mathematics that every polynomial in the 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's obvious that the episode could actually be an element longer, namely the length p <r> <> could have. Then the zero element would be part de: consequence. However, this is not possible with calculations in the Galois field.

[0023] 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ächstliegend «Maximalfolge mit r = 9 Stellen und einer Länge von 51» gewählt. Die Bestimmung der Position in Form einer 1°- Grad Auflösung wird daraus rechnerisch beispielsweise durch Interpolation ermittelt. In some applications, however, other sequence lengths are desirable in order to realize an optimal solution under the given physical boundary conditions. Depending on the application, for example, a sequence length of 360 is optimal for a 1 ° graduation of a circle. According to the state of the art, however, the closest "maximum sequence with r = 9 digits and a length of 51" is selected for this purpose. The determination of the position in the form of a 1 ° -degree resolution is calculated from this, for example by interpolation.

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

[0025] 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. It should be optimized as a special task, the division number m of the code for each application for divisions of any number m = 1 / A.

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

[0027] 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. This is a method of manufacturing a code carrier having a code element sequence as an absolute code with a predetermined resolution A. The code is 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.

[0028] 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 pr - 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 production process according to the invention comprises: The determination of a division number m = 1 / A of divisions of the code to reach the given resolution. Determining a sequence of length n to represent the divisions m of the code. The sequence has the general form pr - b, where p, r and b are natural numbers, and p corresponds to the number of physically distinguishable states of the code elements. P does not have to be a prime number. At the same time, the exponent of the sequence is determined as its required number of digits r, which corresponds to the r successive digits of the code that can be read for a detection element.

[0029] Erfindungsgemäss wird die Folge der Länge n aus einem Polynom des Grads r mithilfe einer erfindungsgemässen 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 by means of a circuit arrangement according to the invention with r memories each containing a memory value and q <r taps from the memories to an assignment table. The allocation table is designed in such a way that, following a defined link, a feedback signal is generated to an input of the circuit arrangement for changing stored values in accordance with the specified link.

[0030] 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 a single memory correspond to the possible distinguishably readable states of a code element.

[0031] 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 may be based on any storage medium, e.g. mechanically for a mechanical readout (e.g., punched card, punched tape) or optical readout (e.g., laser disk, CD-ROM, DVD-ROM, etc.), electronically in integrated circuits in the form of volatile memories (eg DRAM or SRAM, circuits in the form of flip-flops) or permanent memories (eg ROM or PROM) or semi-permanent memories (eg EPROM, EEPROM) magnetic on non-rotating media (eg magnetic tape, magnetic card or compact cassette) or rotating storage media (eg floppy disk) optically (e.g., CD, DVD).

[0032] 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 assignment table or lookup table (LUT) is a data structure that contains precalculated data from a link. Using such a table, it is possible to simplify complex calculations to the generally much faster value search within a data field. By using lookup tables, computational effort is replaced by memory overhead.

[0033] 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 memory as a table. Thus, the LUT method is similar to the use of a table such as e.g. a interest rate table or a blackboard. In digital circuit technology when implemented on e.g. FPGAs (Field Programmable Gate Arrays) are also very simple function like logical equations (AND, OR, XOR) replaced by a LUT.

[0034] Das erfindungsgemässe Verfahren umfasst des Weiteren: Die Bestimmung des absoluten Codes, bei welchem sich r aufeinander folgende Codeelemente über die gesamte Codeelementfolge nicht wiederholen, unter Verwendung des Polynoms r-ten Grades. Dabei ist die Folgenlänge n < pr. Aufbringen der Codeelementfolge als absolutem Code auf den Codeträger.The inventive method further comprises: The determination of the absolute code in which r consecutive code elements do not repeat over the entire code element sequence, using the r-th degree polynomial. The sequence length n <pr. Applying the code element sequence as absolute code to the code carrier.

[0035] 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 the divisions of the code.

[0036] 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 method according to the invention 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 arbitrary and not limited by powers of 2 divisions, corresponding to any desired Resolution, can be generated. As a result, equipped with such code carriers devices such as angle encoders can be simplified and improved in their accuracy. This improvement is based on the provision of sequences for representing the code, which have an optimal, any length adapted to the application-specific optimal resolution. This is made possible by the interaction of an optimized for the inventive method circuit with r each have a memory value corresponding to a state of the bodies or code elements containing memories with an assignment table over q taps, where q is less than or equal to the number r of the memory. An essential aspect is furthermore, in connection with the allocation table, a corresponding choice of initial values of the memory contents.

[0037] 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 will be explained in more detail with reference to the following examples.

[0038] 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.

[0039] Bevorzugte Ausgestaltungen des erfindungsgemässen Verfahrens sind in den abhängigen Ansprüchen angegeben. Preferred embodiments of the inventive method are specified in the dependent claims.

[0040] 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 according to a predetermined resolution A = 1 / m and prepared with the inventive method and a position, linear or angle encoder with an inventive code carrier.

[0041] Ausserdem umfasst die Erfindung eine Schaltungsanordnung 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 erfindungsgemässe 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. Erfindungsgemäss werden dabei 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, the invention comprises a circuit arrangement with r memories each containing a memory value, an allocation table and q ≤ r taps from the memories to an allocation table. In this case, the circuit arrangement for generating a sequence p <-r> -b with a length n = m from an rth-order polynomial for producing a code carrier having an absolutely-coded code with m pitches is determined in the production method according to the invention. The circuit arrangement according to the invention is characterized in that the allocation table is designed in such a way that, following a defined link, a feedback signal is generated to an input of the circuit arrangement for changing memory values in accordance with the specified link. According to the invention, the assignment 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 the divisions of the code.

[0042] 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. Further, it is possible to reverse the education law of the series. Instead of coupling the feedback signal to the input, it is coupled in at the output with the reverse education law. As a result, the state on the left and the state on the right can be determined on the basis of a state. This is similar to incrementing and decrementing a counter.

[0043] Die Erfindung umfasst 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 ersetzen, 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 Einzel- 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. The invention also includes a method for error control, in particular for quality assurance of a code carrier produced by the method according to the invention, i. E. an error control of the applied code track consisting of the code elements. Such error control, both for quality control and over the time of use, is required; because a worn code can replace over time, for example, by mechanical damage or contaminants such as settled dust. Optionally, even in the presence of defects (such as missing code elements), measurements such as single or length measurements can still be made with the code carrier; however, such flaws must at least be known, since they have at least a diminishing 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, may no longer be used.

[0044] Gemäss dem erfindungsgemässen 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 aufeinander folgenden 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 of error control according to the invention, 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 comparison with the absolute code determined in the inventive production method. 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 succeeding elements of the code element sequence are determined by the code of formation of the code, and compared with the corresponding code line code elements actually present on the code carrier, and failing according to errors.

[0045] 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. <tb>Fig. 1<sep>zeigt einige primitive Polynome des Grades r=2 und ihre Folgen für p>2.zeigt einige primitive Polynome und ihre Folgen im Galois-Feld Gf (2<r> <tb>Fig. 2<sep>). <tb>Fig. 3<sep>zeigt eine Schaltungsanordnung gemäss dem Stand der Technik zur Berechnung von Folgen im Galois-Feld. <tb>Fig. 4<sep>zeigt eine erfindungsgemässe Schaltungsanordnung zur Berechnung von verallgemeinerten Folgen. <tb>Fig. 5<sep>zeigt beispielhaft eine erfindungsgemässe Schaltungsanordnung mit drei Speichern zur Berechnung einer Folge der Länge 6. <tb>Fig. 6<sep>zeigt beispielhaft eine erfindungsgemässe Schaltungsanordnung mit vier Speichern zur Berechnung einer Folge der Länge 9. <tb>Fig. 7<sep>zeigt in Tabellenform Vorschriften zur erfindungsgemässen Herstellung von Codeträgern mit bis zu 1030 Teilungen.The production method according to the invention is described in more detail below purely by way of example with reference to concrete exemplary embodiments shown schematically in the drawings, with further advantages of the invention also being discussed. <Tb> FIG. 1 <sep> shows some primitive polynomials of degree r = 2 and their consequences for p> 2. shows some primitive polynomials and their sequences in the Galois field Gf (2 <r> <Tb> FIG. 2 <sep>). <Tb> FIG. FIG. 3 shows a circuit arrangement according to the prior art for calculating sequences in the Galois field. <Tb> FIG. 4 <sep> shows a circuit arrangement according to the invention for calculating generalized sequences. <Tb> FIG. FIG. 5 shows, by way of example, a circuit arrangement according to the invention with three memories for calculating a sequence of length 6. <Tb> FIG. 6 shows, by way of example, an inventive circuit arrangement with four memories for calculating a sequence of length 9. <Tb> FIG. 7 <sep> shows in tabular form provisions for the inventive production of code carriers with up to 1030 divisions.

[0046] Die Erfindung beruht auf einer Erweiterung, ausgehend vom Bildungsgesetz einer Folge eines Polynoms im erweiterten Galois-Feld. Figur 3 zeigt eine Schaltungsanordnung gemäss dem Stand der Technik zur Berechnung der von binären Folgen im Galois-Feld (Gf(2r)) in Fig. 2. The invention is based on an extension, based on the law of formation of a sequence of 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 (2r)) in FIG. 2.

[0047] 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» In Fig. 3, the associated polynomial is on the left. In this case, these are primitive polynomials that are divisible only by themselves or by 1. Right next to it, the circuit arrangement is shown, with which the associated sequence is calculated. The boxes with the letter, "T" are memory. They delay the input signal by one clock. The circles with plus signs represent exclusive-or-operators (XOR). Above the memories is the respective initial state. For each first memory it is «1», for all others «0»

[0048] 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. Each memory taken together give the binary number associated with the position. This is shifted one place to the right in each measure, and the added most significant bit is an exclusive OR of some bits of the previous number. In another embodiment is pushed to the left and the least significant bit is added.

[0049] Fig. 4 zeigt eine erfindungsgemässe Schaltungsanordnung zur Berechnung von verallgemeinerten Folgen. FIG. 4 shows a circuit arrangement according to the invention for calculating generalized sequences.

[0050] 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 a look-up table for mapping the inputs to the output. This means that using the LUT of a fixed link, a feedback signal is generated to an input of the memory change memory arrangement according to the specified link.

[0051] 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 erfindungsgemässen 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. 3dargestellt 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 of 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 are used. It is advantageous if the allocation table is designed in such a way that the sequence of the length n is generated with the least possible number of taps. This minimizes the complexity of the 'LUT'. With the aid of the circuit arrangement according to the invention, the same consequences as in the calculations can be calculated with the aid of polynomials in the extended Galois field. In this case, in the case of p = 2, the LUT just corresponds to the exclusive-OR operations as shown in Fig. 3d, for example. For p> 2, the LUT just corresponds to the corresponding residual class calculation according to a modulo function. The modulo function or residual class calculation is known from the specialist literature. In addition, however, other links can be made. For example, in the binary case (p = 2) «And», «Or» or «Not».

[0052] 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 limited to the fact that "p" is a prime number. Extended episodes have a maximum length of p <r> <> where "p" is a natural number and "r" is the number of memories.

[0053] Abgesehen von der Folgenlänge kann bei Längen kleiner als pr auch das Verhältnis der Elemente geändert werden. In anderen Worten bedeutet dieses, dass die Speicherwerte Elemente einer Basis der Folge angeben und ein Verhältnis von Häufigkeiten verschiedener Speicherwerte durch Auswahl der Verknüpfung durch die Zuordnungstabelle LUT und Setzung von Initialwerten der Speicherwerte festlegbar ist. Apart from the sequence length, the ratio of the elements can be changed at lengths smaller than pr. In other words, this means that the storage values indicate elements of a base of the sequence and a ratio of frequencies of different storage values can be determined by selecting the link by the allocation table LUT and setting initial values of the storage values.

[0054] 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. Considering this degree of freedom, a better system optimization solution can be achieved, depending on the physical constraints of the system under which the sequence is used.

[0055] 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. By means of a sequence according to this invention, the position can be determined on a straight line or any other shaped line, in particular a circle. This can be used, for example, for length or angle measurement and, of course, their possibly multiple derivatives over time. Alternatively, the position can also be measured in time. This can also be used for a length or angle measurement.

[0056] 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 desired length, that is, for example, 360, can therefore be generated for the desired resolution described above with a 1 ° division of a circle. The sequence thus has a length which corresponds to the application-specific optimum resolution, whereby the evaluation is simplified and the accuracy is increased.

[0057] 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. Also advantageous are the properties of such sequences according to the present invention. Some can be disabled, for binary sequences, for example, by setting their state to "0 ... 0" or "1 ... 1". Others have several cycles to switch between. Still others oscillate from any state of the initial values into the sequence and are therefore tolerant to errors.

[0058] 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 angeben, also z.B. init = 3 = 2<1> + 2<0>. Fig. 7 shows in tabular form for p = 2 regulations for the inventive production of code carriers with up to 1030 divisions. In the first column, the desired length n of the sequence, which equals the desired number m of divisions of the code (n = m), is indicated. In the second column, the degree r of the polynomial is given according to the number of memories. In the third column, the linking rule of the assignment table LUT is shown. The fourth column shows which stores are being tapped to the allocation table. In the fifth column, the initial values of the memories to be set are indicated. The value "init" is the total of the memories in decimal form, eg. init = 3 = 2 <1> + 2 <0>.

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

[0060] Dabei zeigt Fig. 5 beispielhaft eine erfindungsgemässe 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 by way of example a circuit arrangement according to the invention 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

[0061] 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 21 Einträgen zugeführt wird. Zu Beginn werden die Speicher bzw. Register mit dem Wert 0 = 0002 initialisiert. 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 0-th is tapped and an assignment table LUT with 21 entries is supplied. Initially, the memories or registers are initialized with the value 0 = 0002. The index 2 identifies the number in the 2-system.

[0062] Die Zuordnungstabelle ordnet dem Eingang folgende Werte zu: <tb>In0<sep>LUT <tb>0<sep>1 <tb>1<sep>0The assignment table assigns the following values to the input: <Tb> In0 <sep> LUT <Tb> 0 <sep> 1 <Tb> 1 <sep> 0

[0063] 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 at the initial value, the following register contents are obtained: 000 100 110 111 011 001

[0064] 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. The sequence therefore has the length 6.

[0065] Das zweite Beispiel gemäss Fig. 6illustriert beispielhaft eine erfindungsgemässe 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 illustrates by way of example a circuit arrangement according to the invention 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

[0066] 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 = 00112 initialisiert. 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 tapped and the assignment table with 2 <3> Entries are supplied. At the beginning, the registers are initialized with the value 3 = 00112.

[0067] Die Zuordnungstabelle ordnet dem Eingang folgende Werte zu: <tb>In210<sep>LUT <tb>000<sep>0 <tb>001<sep>1 <tb>010<sep>0 <tb>011<sep>1 <tb>100<sep>0 <tb>101<sep>1 <tb>110<sep>1 <tb>111<sep>0The assignment table assigns the following values to the input: <Tb> In210 <sep> LUT <Tb> 000 <sep> 0 <Tb> 001 <sep> 1 <Tb> 010 <sep> 0 <Tb> 011 <sep> 1 <Tb> 100 <sep> 0 <Tb> 101 <sep> 1 <Tb> 110 <sep> 1 <Tb> 111 <sep> 0

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

[0069] 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 result is 9.

[0070] Zur Erzeugung einer Folge der Länge 36°, 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 To produce a sequence of length 36 °, for example, for a 1 ° division of a circle, the following rules are suitable: 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

[0071] Es versteht sich, dass die dargestellten Figuren nur Beispiele möglicher Ausführungsformen der Erfindung sind. It is understood that the illustrated figures are only examples of possible embodiments of the invention.

Claims (11)

1. Herstellungsverfahren für einen Codeträger mit einer Codeelementfolge als absolutem Code mit einer vorgegebenen Auflösung A, geeignet zur Ablesung von r aufeinanderfolgenden Codeelementen durch ein Erfassungselement, wobei sich die r aufeinander folgenden Codeelemente über die gesamte Codeelementfolge nicht wiederholen, aufweisend: - Bestimmen einer Teilungsanzahl <m = 1/A> von Teilungen des Codes, entsprechend der gewünschten Auflösung A, - Ermitteln einer Stellenanzahl r von Stellen einer Folge <p<r> - b> mit einer Länge n zur Darstellung der Teilungen m, wobei p, r und b natürliche Zahlen sind, - Bestimmen des absoluten Codes wobei <n < p<r>> ist, - Aufbringen der Codeelementfolge als absolutem Code auf den Codeträger, dadurch gekennzeichnet, - dass die Folge 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 Folge gleich der Anzahl m der Teilungen des Codes ist.Method for producing a code carrier having a code element sequence as an absolute code with a predetermined resolution A, suitable for reading r consecutive code elements 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 desired resolution A, Determining a digit number r of locations of a string <p <r> -b> of length n representing the pitches m, where p, r and b are natural numbers, Determining the absolute code where <n <p <r >>, Applying the code element sequence as absolute code to the code carrier, characterized, that the sequence of length n is generated by means of a circuit arrangement with r stores each containing a memory value and <q ≤ r> taps from the memories to a mapping table, which mapping table is designed such that following a specified link a feedback signal to a Input of the circuit arrangement for changing memory values is generated according to the specified link, and - That the allocation table, the taps and initial values of the memory elements are chosen such that the length n of the sequence is equal to the number m of the divisions of the code. 2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass die Verknüpfung ausgewählt ist aus der Gruppe, die von den Verknüpfungen <Exklusiv-Oder> XOR, <UND>, <ODER>, <NICHT> gebildet wird.2. The method according to claim 1, characterized in that the link is selected from the group formed by the links <Exclusive-Or> XOR, <AND>, <OR>, <NOT>. 3. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, - dass der Code ein Nullelement enthält, - dass die Folge anhand eines primitiven Polynoms bestimmt wird, - dass die möglichen Werte eines einzelnen Speichers den möglichen unterscheidbar auslesbaren Zuständen eines Codeelements bzw. einer Stelle des Codes entsprechen, - dass in jedem der r Speicher ein Initialwert gesetzt wird, und/oder - dass die Zuordnungstabelle derart gestaltet ist, dass die Folge der Länge n mit einer geringstmöglichen Zahl von Abgriffen generiert wird.3. Method according to one of the preceding claims, characterized in that - that the code contains a null element, that the sequence is determined on the basis of a primitive polynomial, that the possible values of a single memory correspond to the possible distinguishably readable states of a code element or a position of the code, - That in each of the r memory an initial value is set, and / or - That the allocation table is designed such that the sequence of length n is generated with a minimum number of taps. 4. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass p gleich der Anzahl der unterscheidbar auslesbaren Zustände eines Codeelements bzw. einer Stelle des Codes ist, insbesondere wobei p eine Primzahl ist, im Speziellen wobei p = 2 ist.4. The method according to any one of the preceding claims, characterized in that p is equal to the number of distinguishable readable states of a code element or a position of the code, in particular where p is a prime number, in particular where p = 2. 5. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass die Speicherwerte Elemente einer Basis der Folge angeben und ein Verhältnis von Häufigkeiten verschiedener Speicherwerte durch Auswahl der Verknüpfung durch die Zuordnungstabelle und Setzung von Initialwerten der Speicherwerte festlegbar ist.5. The method according to any one of the preceding claims, characterized in that the memory values indicate elements of a base of the sequence and a ratio of frequencies of different memory values by selecting the link through the allocation table and setting initial values of the memory values can be determined. 6. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass die Zuordnungstabelle und die Initialwerte der Speicherwerte derart gewählt werden, dass die Folge zwischen mehreren Zyklen umschaltbar ist.6. The method according to any one of the preceding claims, characterized in that the allocation table and the initial values of the memory values are selected such that the sequence is switchable between a plurality of cycles. 7. Verfahren nach einem der vorangehenden Ansprüche, dadurch gekennzeichnet, dass die Zuordnungstabelle so gestaltet ist, dass von einem beliebigen Zustand der Initialwerte die Folge in einen Zyklus einschwingt.7. The method according to any one of the preceding claims, characterized in that the allocation table is designed so that of an arbitrary state of the initial values, the sequence settles into a cycle. 8. Codeträger mit einem absolutcodierten Code mit m Teilungen entsprechend einer gewünschten Auflösung <A = 1/m> und hergestellt mit einem Verfahren nach einem der Ansprüche 1 bis 7.8. code carrier with an absolutely coded code with m divisions corresponding to a desired resolution <A = 1/m> and produced by a method according to one of claims 1 to 7. 9. Positions-, Linear- oder Winkelgeber mit einem Codeträger nach Anspruch 8.9. position, linear or angle encoders with a code carrier according to claim 8. 10. Schaltungsanordnung mit r jeweils einen Speicherwert beinhaltenden Speichern, einer Zuordnungstabelle und <q ≤ r> Abgriffen von den Speichern zu einer Zuordnungstabelle, wobei 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 einem Herstellungsverfahren nach einem der Ansprüche 1 bis 7 bestimmt ist, dadurch gekennzeichnet, 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, und dass die Zuordnungstabelle, die Abgriffe und Initialwerte der Speicherelemente derart gewählt werden, dass die Länge n der Folge gleich der Anzahl m der Teilungen des Codes ist.10. Circuit arrangement with r stores each containing a memory value, an allocation table and <q ≤ r> taps from the memories to an allocation table, the circuit arrangement for generating a sequence <p <r> -b> with a length <n = m> is determined from an r-th degree polynomial for producing a code carrier having an absolute-coded code with m pitches in a manufacturing method according to one of claims 1 to 7, characterized in that the assignment table is designed such that following a predetermined link a feedback signal is generated to an input of the circuit arrangement for changing memory values according to the fixed link, and that 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 the divisions of the code. 11. Verfahren zur Fehlerkontrolle eines mit einem Verfahren nach einem der Ansprüche 1 bis 7 hergestellten Codeträgers, dadurch gekennzeichnet, dass eine auf dem Codeträger aufgebrachte Sequenz von Codeelementen mit dem Erfassungselement abgelesen und Fehler in dieser auf dem Codeträger aufgebrachten Sequenz von Codeelementen durch einen Vergleich mit dem in einem Herstellungsverfahren nach einem der Ansprüche 1 bis 7 bestimmten absoluten Code ermittelt werden.11. A method for error control of a code carrier produced by a method according to any one of claims 1 to 7, characterized in that a code applied to the code sequence of code elements read with the detection element and errors in this applied to the code carrier sequence of code elements by comparison with the determined in a manufacturing method according to one of claims 1 to 7 determined absolute code.
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 true CH704584A2 (en) 2012-09-14
CH704584B1 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)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3064902A1 (en) 2015-03-06 2016-09-07 Hexagon Technology Center GmbH System for determining positions
EP3121565A1 (en) 2015-07-24 2017-01-25 Hexagon Technology Center GmbH Absolute position determination
EP3139132A1 (en) 2015-09-03 2017-03-08 Hexagon Technology Center GmbH Surface absolute encoding

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3064902A1 (en) 2015-03-06 2016-09-07 Hexagon Technology Center GmbH System for determining positions
US10184809B2 (en) 2015-03-06 2019-01-22 Hexagon Technology Center Gmbh System for determining positions with a sensor using a 2D-code pattern for determination of a discrepancy from an ideal situation
EP3121565A1 (en) 2015-07-24 2017-01-25 Hexagon Technology Center GmbH Absolute position determination
US10082409B2 (en) 2015-07-24 2018-09-25 Hexagon Technology Center Gmbh Absolute position determination
EP3139132A1 (en) 2015-09-03 2017-03-08 Hexagon Technology Center GmbH Surface absolute encoding
US10115045B2 (en) 2015-09-03 2018-10-30 Hexagon Technology Center Gmbh Absolute surface coding/encoding an area in absolute terms

Also Published As

Publication number Publication date
CH704584B1 (en) 2017-03-15

Similar Documents

Publication Publication Date Title
EP3387387B1 (en) Magnetic revolution counter for self-detecting error states when determining numbers of revolutions which can be determined by said revolution counter
EP1821073B1 (en) Position measuring device
EP1983308B1 (en) Position measuring device
DE10296644T5 (en) Absolute position measurement
DE2806660A1 (en) ELECTROMECHANICAL DEVICE, IN PARTICULAR POSITION INDICATORS
DE3942625A1 (en) ABSOLUTELY ENCODER
DE19545949A1 (en) Digital absolute position encoder and coding method
DE102007045362A1 (en) Position measuring device
DE3221982A1 (en) OPTICAL INCREMENTAL CODING SYSTEM WITH ADDRESSABLE INDEX
CH704584A2 (en) Method for manufacturing code carrier with code element series, involves determining division number of code divisions corresponding to desired solution
EP3179216A1 (en) Absolute measurement length measuring system and method of operating the same
EP1557646A1 (en) Rotary encoder and method for scanning the code disk of a rotary encoder
EP1206684B1 (en) Position-measuring device
DE3001794A1 (en) METHOD FOR READING DISPLAYS OF MULTI-SCALE CODING DEVICES AND MULTI-TOURED ABSOLUTE ANGLE CODE CONVERTER
DE4443898C2 (en) Position measuring method and position measuring device
DE4303235C2 (en) Rotation angle sensor for absolute rotation angle measurement over several revolutions
DE4137092A1 (en) Measurement of angles by encoder with concentric tracks - using optically scanned glass disc and geared-down potentiometer for digital evaluation of rotation of shaft
DE102013222197A1 (en) Position measuring device
DE102014103514B4 (en) Method for detecting the angle of rotation
DE3788329T2 (en) Device for displaying the value of a variable.
DE4309881C1 (en) Absolute position measuring device - uses sensor with strip sensor elements scanning successive codes in adjacent measuring track segments
EP2342539B1 (en) Absolute position measuring device
DE2333698B1 (en) Digital position encoder
DE9116791U1 (en) Length or angle measuring device
DE2111670A1 (en) Arrangement for displaying the mean rate of occurrence of a signal indicative of an event