JPH0257846B2 - - Google Patents
Info
- Publication number
- JPH0257846B2 JPH0257846B2 JP58023650A JP2365083A JPH0257846B2 JP H0257846 B2 JPH0257846 B2 JP H0257846B2 JP 58023650 A JP58023650 A JP 58023650A JP 2365083 A JP2365083 A JP 2365083A JP H0257846 B2 JPH0257846 B2 JP H0257846B2
- Authority
- JP
- Japan
- Prior art keywords
- code
- codes
- divisions
- gray
- relationship
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Landscapes
- Length Measuring Devices By Optical Means (AREA)
- Transmission And Conversion Of Sensor Element Output (AREA)
- Optical Transform (AREA)
Description
この発明はいわゆるアブソリユートロータリエ
ンコーダと呼ばれる絶対番地形回転式位置検出装
置に関する。
絶対番地形回転式位置検出装置は第1図に示す
ように、入力軸5に取付けられた回転子(符号
板)1に各座標位置を符号化して明暗パターンと
して書き込み、この符号板1および固定スリツト
板(検出精度を高めるためのもの)4を挾んで、
発光ダイオード3とフオトダイオード2を対向さ
せることにより、位置検出対象物の移動による符
号板1の回転に伴つてフオトダイオード2から各
座標位置に対応した位置情報が得られるようにし
たものである。
符号板1に書き込まれる符号は、従来から単一
距離符号(ユニツト・デイスタンス・コード)が
使用されている。これは隣り合う2組の符号間
で、常に1つのビツトのみが異なるものである。
このような符号を用いるのは、2つ以上のビツト
が同時に変化するコードを用いると、符号検出の
際、1つのビツトの反転を検出したが、他のビツ
トがまだ反転していないという状態が必ず発生
し、誤つたコードが出力されるためである。
この単一距離符号のうち最もよく知られている
ものはグレイコードである。グレイコードは純2
進符号と1対1に対応しており、相互変換が容易
なため、よく用いられている。しかし、回転形の
符号板1において、最初のコードと最後のコード
の関係を単一距離符号とするためには、符号板1
の分割数を2n(nは整数)にしなければならない
という制約がある(2nとすれば、最初のコードを
「000…0」とすると、2n番目のコードは「100…
1」となる)。したがつて、従来から市販されて
いる回転形エンコーダでは、1024分割、2048分
割、4096分割等分割数が2のべき乗になつている
ものが多い。しかし、使用者にとつては、このよ
うな半端な分割数は望ましいものではなく、1000
分割、3600分割というように、端数のないものが
好まれる傾向がある。このような分割数のものを
製作するために用いられる方法として、従来は、
(1) 同期信号を用いる方法
(2) 特殊なコードを用いる方法
の2種類があつた。このうち(1)の方法は次のとお
りである。
第2図は1000分割の符号板のうち、0番地のコ
ードと999番地のコードの境目を示している(斜
線の部分が“1”を表わすものとする)。0番地
から999番地までは隣り合うコードはすべて1ビ
ツトのみ異なるが、999番地から0番地に戻る際
には、この図に示すように3個のビツトが“1”
→“0”に変化する。これらの変化が完全に同時
に起こるようにすることは事実上不可能であるた
め、20〜29のビツトの他に同期信号Zを用いて、
この信号Zが“1”になつているとき、他のビツ
トに無関係に0番地と等しいコードが出力される
ようにしている。この検出回路を示せば、第3図
のようになる。
第3図において、光源(発光ダイオード)3か
ら発せられた光は符号板1および固定スリツト板
4を通つて、光電素子(フオトダイオード)2に
おける符号板1のパターンに対応した位置に照射
され、アンプ6、アンド回路7を介して、コード
変換器8で10進数に変換され、出力バツフア9を
介して出力される。符号板1は同期信号Z専用の
トラツク1zを具え、このトラツク1zを通して
得られる光を光電素子2zで受光して、アンプ6
zで増幅し、インバータ10で反転して、アンド
回路7に加えるようにしている。したがつて、同
期信号Zが得られたときは、他のビツトに無関係
に出力は0(すなわち0番地の出力)となる。し
たがつて、各ビツト信号20〜29が“1”→“0”
に変化する位置を、第2図に示すように、真の境
目P0よりわずかに右へずらして、P0′の位置にし
て、同期信号Zとオーバーラツプさせれば、各ビ
ツト信号20〜29が“1”→“0”に変化する位置
P0′にばらつきがあつても、同期信号Zが立上る
位置の右側にある限り問題にならない。また、同
期信号Zが立下る位置では、すでに各ビツト信号
20〜29はすべて0に立下つているので、同期信号
Zが位置Pzで立下つた後も出力は引続き0のま
まである。
以上のようにして、読み取りのあいまいさをな
くすことができる。しかし、同期信号Zを得るた
めに余分なトラツク1zと検出系を必要とする問
題がある。つまり、この例のように1000分割であ
れば、最低限必要なビツト数は10ビツトである
が、同期信号Zを得るため実質的に11ビツト必要
としている。したがつて、符号板の製作の困難
さ、検出系の数という点では2048分割の場合と同
等になつてしまう。
また、上記(2)の特殊なコードを用いる方法につ
いては、詳しい説明は省略するが、余分なビツト
を必要とする点で、同期信号を用いう方法と同じ
問題点がある。
この発明は上述の点に鑑みてなされたもので、
同期信号や特殊なコードを用いることなく、必要
最小限のビツト数で任意の分割数が得られる位置
検出装置を提供しようとするものである。
この発明の基本的な考えは、グレイコード等の
単一距離符号列では、隣り合うもの以外にも単一
距離符号の関係にある符号が存在することに着目
し、それらの符号で挾まれる区間を適宜除去し
て、任意の符号数の循環する(すなわちすべての
部分で単一距離符号となる)単一距離符号列を形
成し、それを回転子(符号板)にパターン化する
ことにより、任意の分割数を得ようというもので
ある。
すなわち、例えば10進数で0〜24−1の24個の
数字をグレイコード化すると下記第1表に示すよ
うになるが、これを見ると、単一距離符号の関係
にあるものは、隣り合うもの以外にも存在するこ
とがわかる。
The present invention relates to an absolute rotary position detection device called an absolute rotary encoder. As shown in Fig. 1, the absolute address type rotary position detection device encodes each coordinate position and writes it as a bright and dark pattern on a rotor (code plate) 1 attached to an input shaft 5. Holding the slit plate (to improve detection accuracy) 4,
By arranging the light emitting diode 3 and the photodiode 2 to face each other, position information corresponding to each coordinate position can be obtained from the photodiode 2 as the code plate 1 rotates due to the movement of the object to be detected. As the code written on the code plate 1, a single distance code (unit distance code) has conventionally been used. This means that only one bit always differs between two sets of adjacent codes.
The reason for using such a code is that if you use a code in which two or more bits change at the same time, there is a possibility that when detecting the code, an inversion of one bit is detected, but other bits have not yet been inverted. This is because it always occurs and incorrect code is output. The most well-known of these single metric codes is the Gray code. Gray code is pure 2
It is often used because it has a one-to-one correspondence with the decimal code and mutual conversion is easy. However, in the rotating code plate 1, in order to make the relationship between the first code and the last code a single distance code, the code plate 1
There is a constraint that the number of divisions must be 2 n (n is an integer) (If 2 n , the first code is "000...0", the 2 nth code is "100...
1). Therefore, in many conventional rotary encoders commercially available, the number of equal divisions, such as 1024 divisions, 2048 divisions, and 4096 divisions, is a power of 2. However, for users, such an odd number of divisions is not desirable, and 1000
There is a tendency to prefer numbers without fractions, such as divisions or 3600 divisions. Conventionally, there have been two methods used to manufacture devices with such a divided number: (1) a method using a synchronizing signal, and (2) a method using a special code. Among these methods, method (1) is as follows. FIG. 2 shows the boundary between the code at address 0 and the code at address 999 of a code board divided into 1000 (the diagonally shaded part represents "1"). Adjacent codes from address 0 to address 999 all differ by only one bit, but when returning from address 999 to address 0, three bits become "1" as shown in this figure.
→Changes to “0”. Since it is virtually impossible to make these changes occur completely simultaneously, a synchronization signal Z is used in addition to bits 20 to 29 .
When this signal Z is "1", a code equal to address 0 is output regardless of other bits. This detection circuit is shown in FIG. 3. In FIG. 3, light emitted from a light source (light emitting diode) 3 passes through a code plate 1 and a fixed slit plate 4, and is irradiated onto a photoelectric element (photodiode) 2 at a position corresponding to the pattern of the code plate 1. The signal is passed through an amplifier 6 and an AND circuit 7, converted into a decimal number by a code converter 8, and outputted via an output buffer 9. The code plate 1 includes a track 1z dedicated to the synchronization signal Z, and the light obtained through this track 1z is received by a photoelectric element 2z and sent to an amplifier 6.
The signal is amplified by z, inverted by an inverter 10, and applied to an AND circuit 7. Therefore, when the synchronizing signal Z is obtained, the output becomes 0 (ie, the output at address 0) regardless of other bits. Therefore, each bit signal 20 to 29 changes from “1” to “0”.
As shown in Figure 2, if the position at which the bit signal changes is slightly shifted to the right from the true boundary P 0 to the position P 0 ' and overlapped with the synchronizing signal Z, each bit signal 2 0 to 2 Position where 9 changes from “1” to “0”
Even if there is a variation in P 0 ', it is not a problem as long as it is on the right side of the position where the synchronizing signal Z rises. Furthermore, at the position where the synchronization signal Z falls, each bit signal has already been
Since 20 to 29 have all fallen to 0, the output continues to be 0 even after the synchronization signal Z falls at position Pz. In the manner described above, ambiguity in reading can be eliminated. However, there is a problem in that an extra track 1z and a detection system are required to obtain the synchronization signal Z. In other words, when dividing by 1000 as in this example, the minimum required number of bits is 10 bits, but in reality 11 bits are required to obtain the synchronization signal Z. Therefore, in terms of the difficulty in manufacturing the code plate and the number of detection systems, it becomes equivalent to the case of 2048 divisions. Furthermore, although a detailed explanation of the above method (2) using a special code will be omitted, it has the same problem as the method using a synchronization signal in that it requires extra bits. This invention was made in view of the above points,
The present invention aims to provide a position detection device that can obtain an arbitrary division number using the minimum necessary number of bits without using synchronization signals or special codes. The basic idea of this invention is to focus on the fact that in a single-distance code string such as a Gray code, there are codes other than adjacent codes that have a single-distance code relationship, and to By removing intervals appropriately to form a circulating single-distance code string of an arbitrary number of codes (that is, a single-distance code in all parts), and patterning it into a rotor (code plate). , to obtain an arbitrary number of divisions. In other words, for example, if 24 numbers from 0 to 24 -1 in decimal notation are converted into Gray code, they will be as shown in Table 1 below. Looking at this, we can see that those that have a single distance code relationship are: It turns out that there are things other than those that are next to each other.
【表】【table】
【表】
例えば、0(0000)と単一距離符号の関係にあ
るものは、隣り合う1(0001)、15(1000)以外に、
3(0010)、7(0100)がある。すなわち、単一距
離符号の関係とは1つのビツトのみが異なつてい
る関係であるから、nビツトで表わされるコード
であれば、各コードについてn個の単一距離符号
の関係にあるコードが存在する。第4図は、第1
表の16個のグレイコードの中で互いに単一距離符
号の関係があるものを線で結んで示したものであ
る。
単一距離符号の関係にある2つのコードは、そ
れらの間に挾まれるコードを取り除いても、全体
のコード列は単一距離符号列を維持する。例え
ば、第4図において、互いに単一距離符号の関係
にある2(0011)と13(1011)とにより挾まれる
14,15,0,1のコードを取り除いた3,4,…
…,12,13,2,3,……のコードも単一距離符
号列となる。したがつて、取り除く位置を適宜選
択することにより、任意のコード数の単一距離符
号列を作成することができる。例えば、第4図の
16個のコード列から10個のコード列を作成するに
は、6個のコードを取り除けばよいから、〔13,
14,15,0,1,2〕、〔1,2,3,4,5,
6〕など連続した部分を取り除くか、あるいは
〔15,0,3,4,7,8〕、〔1,2,5,6,
9,10〕など部分的に取り除いていけばよい。
以上は、単一距離符号の関係にあるものをいち
いちピツクアツプして、そのうち必要な数だけ選
択して取り除くという方法であるが、全体のコー
ド数が多く、かつ、取り除く数も多い場合、選択
するのが大変である。単一距離符号の関係にある
ものは、第4図からもわかるように、ある規則性
があるから、この規則性を見つければ、簡単に選
択を行なうことができる。
その規則性として、例えばグレイコードにおい
ては、コード列の中心から対称位置にあるものど
うしは単一距離符号の関係があるということがい
える。例えば、第4図の例でいえば、コード列の
中心は7と8の間であるから、これを中心対称位
置にある6と9、5と10、……の各グレイコード
はそれぞれ単一距離符号の関係になつている。従
つて、この性質を利用して、はじめのコード数
(例えば1024)から設定しようとする分割数(例
えば1000)を引いた余分な数(24)だけ、コード
列の中心から2つずつ対にして除去すれば(コー
ド列の中心から前後に12個ずつ取り除く)、分割
数に対応した数のコードからなる単一距離符号列
が構成される。
そこで、この発明では、所望の偶数の分割数を
Nとして、2n+1>N>2nを満たす2n+1個のグレイ
コード列の中から2n+1−N=2Xとして2n−Xから
2n+1−1で挾まれる区間の符号列を除去するよ
うにしている。これにより、あらゆる偶数の分割
数に設定することができる(ただし、2n+1−N=
4+8m(m=0,1,2,3,……)の場合は、
本願出願前公知の特開昭54−51436号公報に記載
の方法による符号列と偶然に一致することになる
ので、これを特許請求の範囲から除外する。)。
以下、この方法について詳しく説明する。
いま、設定しようとする分割数をN(偶数)と
するとき、
2n+1>N>2n (1)
なる整数nを求める。また、0から2n+1−1まで
の純2進符号列を求める。また、次の関数を満た
すXを求める。
2n+1−N=2X (2)
2n+1、Nはともに偶数であるから、Xは必ず整数
である。
ここで、0から2n+1−1までの2n+1個の純2進
符号列から
a 2n−1番目から2n−X番目までのX個
b 2n番目から2n+X−1番目までのX個
をそれぞれ取り除く。すると次のようなN個の符
号列が得られる。
000……0(0番目)
000……1(1番目)
〜 〜
011……0(2n−X−1番目)
100……1(2n+X番目)
〜 〜
111……1(2n+1−1番目)N個 (3)
これらの符号をそれぞれグレイ符号に変換する
と、N個の単位距離符号列が得られる。
すなわち、分割数をNとする場合に、上記第(1)
式、第(2)式を満たすn,Xを求め、これを第(3)式
のn,Xに代入して、それをグレイコード化す
る。
このようにして得られた符号列が単位距離符号
列となることは、次のように証明される。
純2進符号の各桁を
Bn,Bn−1,……,B1,B0
とし、これに対応するグレイ符号の各桁を
Gn,Gn−1,……,G1,G0
のように表わす(Bn〜Bo,Gn〜Goは“1”ま
たは“0”で表わされる)。
Gn〜GoとBn〜Boとの間には次のような論
理式が成り立つことが知られている。
Gn=Bn
Gk=Bk+1・++1・Bk
(但し、k=0,1,……,n−1)} (4)
0から2n+1−1までの2n+1個の純2進符号の各桁
について、第(4)式の操作を施すと、得られるグレ
イコード列は単位距離符号列となることは公知で
あるから(2のべき乗個のグレイコードであるか
ら、最後のものと最初のものも単位距離符号の関
係になつている)、2n−X−1番目(除去する区
間の1つ手前のもの)のグレイコードと、2n+X
番目(除去する区間の1つ後のもの)のグレイコ
ードが単一距離符号の関係にあること(すなわち
1つのビツトを除いて等しいこと)を証明すれば
よい。
そこで、まず、2n番目と2n−1番目を純2進数
で表わせば、次のような形になる。
ここで、前記第(1)式、第(2)式からXは、
0<X<2n-1
であるので、Xを純2進数で表わせば
となる。したがつて、2n+Xは第(5)式にXを加え
たものとなるから、第(5)式における0の列のう
ち、第(7)式のXo-1〜X0が1となつている桁を1
にしたものとなる。また2n−X−1は第(6)式から
Xを引いたものとなるから、第(6)式における1の
列のうち、第(7)式のXo-1〜X0が1となつている
桁を0にしたものとなる。
以上のことから、純2進数において、2n+X番
目と2n−X−1番目は互いに各桁の0と1を反転
させたものとなつていることがわかる。
ここで、第(4)式において、純2進数Bn〜B0の
1と0を反転させてみると、対応するグレイコー
ドは、最上位ビツトGnは反転し、残りのビツト
Gk(k=0,1,……,n−1)は変化しない。
すなわち、2n+X番目と2n−X−1番目は先頭ビ
ツト以外はすべて等しいグレイコードとなること
がわかる。
以上のことから、第(3)式をグレイコードに変換
したものはN個の単位距離符号列となることが証
明された。
なお、第(3)式の意味をわかりやすくいえば、0
番から2n+1−1までの2n+1個のグレイコード列に
おいては、コード列の中心(2n−1番2n番の間)
から対称位置にあるものどうしが単一距離符号の
関係にあることを利用して、グレイコード列の中
心位置から、2n−1番と2n番、2n−2番と2n+1
番、2n−3と2n+2番、……と2つ1組にして取
り除いていき、残つた数が設定しようとする分割
数Nになるようにすることにより、分割数Nの単
一距離符号列を形成するというものである。
ここで、上記の理論により得られたグレイコー
ド列を用いて構成した符号板の1部分を第5図に
示す。この場合、第(1)式、第(2)式によりn=9、
X=12となる。したがつて
2n−X−1=499
2n+X=524
であり、それぞれを第(4)式を利用してグレイコー
ド化すれば
499=0100001010
524=1100001010
が得られる。したがつて、499番目と524番目は最
上位ビツト29のみが変化するので、単一距離符号
の関係が得られている。
第6図は、第5図の符号板を用いて1000分割の
ロータリエンコーダを構成する場合の一例であ
る。
第6図において、符号板1はガラスデイスクに
第5図のパターンを描いたものである。4は固定
スリツト板で、検出精度を高める働きをする。符
号板1と固定スリツト板4を挾んで、光源(発光
ダイオード)3と光電素子(フオトダイオード)
2が対向して配置され、光電素子2の受光信号は
アンプ6を介して、記憶素子10に入力される。
記憶素子10は符号板1のパターンによつて得ら
れたグレイコード出力をBCDコードに変換する
ものである。符号板1のそれぞれの位置における
番地と出力の関係は第2表のようになる。ここ
で、記憶素子10を使用する理由は、一般のロジ
ツクICで第2表のような変換を行なう回路を構
成すると、非常に複雑になり、実用的でないから
である。[Table] For example, if there is a single distance code relationship with 0 (0000), in addition to the adjacent 1 (0001) and 15 (1000),
There are 3 (0010) and 7 (0100). In other words, since this is a relationship in which only one bit differs from the relationship of a single distance code, if a code is represented by n bits, there are n codes that have a relationship of a single distance code for each code. do. Figure 4 shows the first
Among the 16 Gray codes in the table, those that have a single distance code relationship are shown by connecting them with lines. For two codes having a single distance code relationship, even if the code sandwiched between them is removed, the entire code string remains a single distance code string. For example, in Fig. 4, 2 (0011) and 13 (1011), which have a single distance code relationship with each other,
3, 4,... with the codes 14, 15, 0, 1 removed.
..., 12, 13, 2, 3, ... codes are also single distance code strings. Therefore, by appropriately selecting the position to be removed, it is possible to create a single distance code string with an arbitrary number of codes. For example, in Figure 4
To create 10 code strings from 16 code strings, 6 codes need to be removed, so [13,
14, 15, 0, 1, 2], [1, 2, 3, 4, 5,
6], or remove consecutive parts such as [15, 0, 3, 4, 7, 8], [1, 2, 5, 6,
9, 10] and so on. The method described above is to pick up the ones related to a single distance code one by one and select and remove only the necessary number of them. However, if the total number of codes is large and there are many to remove, it is necessary It is difficult. As can be seen from FIG. 4, there is a certain regularity in the relationship between single distance codes, so if this regularity is found, selection can be easily made. As a regularity, for example, in a Gray code, it can be said that objects located at symmetrical positions from the center of the code string have a single distance code relationship. For example, in the example shown in Figure 4, the center of the code string is between 7 and 8, so each Gray code of 6 and 9, 5 and 10, etc., located at a centrally symmetrical position, is a single gray code. It is related to the distance sign. Therefore, by taking advantage of this property, the number of divisions to be set (e.g. 1000) is subtracted from the initial number of codes (e.g. 1024), and the extra number (24) is paired up two by two from the center of the code string. (remove 12 codes before and after the center of the code string), a single distance code string consisting of the number of codes corresponding to the number of divisions is constructed. Therefore, in this invention, assuming that the desired even number of divisions is N, 2 n+1 −N=2X is selected from among 2 n+1 Gray code strings satisfying 2 n+1 > N > 2 n. -From X
The code string in the interval between 2 n +1-1 is removed. This allows any even number of divisions to be set (where 2 n+1 −N=
In the case of 4+8m (m=0,1,2,3,...),
This coincidentally coincides with the code string obtained by the method described in Japanese Patent Laid-Open No. 54-51436, which was known before the filing of the present application, and therefore is excluded from the scope of the claims. ). This method will be explained in detail below. Now, when the number of divisions to be set is N (an even number), find an integer n that satisfies 2 n+1 > N > 2 n (1). Also, obtain a pure binary code string from 0 to 2 n+1 -1. Also, find X that satisfies the following function. 2 n+1 −N=2X (2) Since 2 n+1 and N are both even numbers, X is always an integer. Here, from 2 n+ 1 pure binary code strings from 0 to 2 n+ 1 -1, a 2 n -1st to 2 n -Xth numbers b 2 nth to 2 n + X- Remove each of the X items up to the first. Then, the following N code strings are obtained. 000...0 (0th) 000...1 (1st) ~ ~ 011...0 (2 n -X - 1st) 100...1 (2 n +X) ~ ~ 111...1 (2 n +1 - 1st) N pieces (3) By converting each of these codes into Gray codes, N unit distance code strings are obtained. In other words, when the number of divisions is N, the above (1)
Find n and X that satisfy equation (2), substitute them into n and X in equation (3), and convert them into Gray code. The fact that the code string obtained in this way becomes a unit distance code string is proven as follows. Let each digit of the pure binary code be Bn, Bn- 1 , ..., B 1 , B 0 , and each digit of the corresponding Gray code be Gn, Gn- 1 , ..., G 1 , G 0 . (Bn~Bo, Gn~Go are represented by "1" or "0"). It is known that the following logical formula holds true between Gn~Go and Bn~Bo. Gn=Bn Gk=Bk+1・+ +1・Bk (however, k=0, 1, ..., n- 1 )} (4) 2 n +1 pure 2s from 0 to 2 n+1 -1 It is well known that when formula (4) is applied to each digit of the base code, the resulting Gray code string becomes a unit distance code string (since there are a power of 2 Gray codes, the last (and the first one are also in a unit distance code relationship ), the Gray code of 2 n -
It is only necessary to prove that the Gray codes of the th (one after the section to be removed) are in a single distance code relationship (that is, they are equal except for one bit). So, first, if we express the 2 nth and 2 n -1th numbers in pure binary numbers, we get the following form. Here, from equations (1) and (2) above, X is 0<X<2 n-1 , so if X is expressed in pure binary, becomes. Therefore , 2 n +X is the sum of equation (5) and The digit marked as 1
It becomes the one that was made. Also, 2 n -X-1 is the result of subtracting X from equation (6), so of the 1 column in equation (6), X o-1 to X 0 in equation (7) are 1 The digit marked with is set to 0. From the above, it can be seen that in pure binary numbers, the 2 n +X-th and 2 n -X-1 digits are the 0 and 1 digits of each digit inverted. Here, in equation (4), if we invert the 1s and 0s of the pure binary numbers Bn to B0 , the corresponding Gray code will have the most significant bit Gn inverted and the remaining bits
Gk (k=0, 1,..., n- 1 ) does not change.
That is, it can be seen that the 2 n +Xth and 2 n -X-1st bits are all equal Gray codes except for the first bit. From the above, it has been proven that the conversion of equation (3) into a Gray code results in N unit distance code strings. To put it simply, the meaning of equation (3) is 0
In 2 n+ 1 Gray code strings from number 2 n + 1 - 1 , the center of the code string (between 2 n - 1 and 2 n )
Using the fact that objects at symmetrical positions have a single distance code relationship, from the center position of the Gray code string, 2 n -1 and 2 n , 2 n -2 and 2 n +1
By removing numbers 2 n - 3 and 2 n + 2, etc. in pairs, and making the remaining number equal to the number of divisions N you are trying to set, you can This is to form a distance code string. FIG. 5 shows a portion of a code plate constructed using the Gray code string obtained according to the above theory. In this case, according to equations (1) and (2), n=9,
X=12. Therefore, 2 n -X-1 = 499 2 n + Therefore, since only the most significant bit 29 changes between the 499th and 524th, a single distance code relationship is obtained. FIG. 6 is an example of configuring a 1000-division rotary encoder using the code plate shown in FIG. 5. In FIG. 6, the code plate 1 is a glass disk on which the pattern shown in FIG. 5 is drawn. 4 is a fixed slit plate that serves to improve detection accuracy. A light source (light emitting diode) 3 and a photoelectric element (photodiode) are placed between the code plate 1 and the fixed slit plate 4.
2 are arranged facing each other, and the light reception signal of the photoelectric element 2 is inputted to the storage element 10 via the amplifier 6.
The memory element 10 converts the Gray code output obtained from the pattern of the code plate 1 into a BCD code. The relationship between addresses and outputs at each position on the code plate 1 is shown in Table 2. The reason why the memory element 10 is used here is that if a general logic IC were used to construct a circuit that performs the conversion shown in Table 2, it would be extremely complicated and impractical.
【表】【table】
Claims (1)
2n(ただし、2n+1−N=4+8m(m=0,1,2,
3,……)を除く。)を満たす2n+1個のグレイコ
ード列の中から2n+1−N=2Xとして2n−Xから2n
+X−1で挾まれる区間の符号列を除去して、前
記所望の分割数の単一距離符号列を形成した回転
子パターンを具備してなる回転式位置検出装置。1 Let N be the desired even number of divisions, 2 n+1 >N>
2 n (However, 2 n+1 −N=4+8m (m=0, 1, 2,
3,...) are excluded. ) out of 2n +1 Gray code strings satisfying 2n +1 −N=2X, from 2n −X to 2n
A rotary position detection device comprising a rotor pattern in which code strings in sections sandwiched by +X-1 are removed to form a single distance code string of the desired number of divisions.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2365083A JPS59148997A (en) | 1983-02-14 | 1983-02-14 | Rotary position detection device |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2365083A JPS59148997A (en) | 1983-02-14 | 1983-02-14 | Rotary position detection device |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS59148997A JPS59148997A (en) | 1984-08-25 |
| JPH0257846B2 true JPH0257846B2 (en) | 1990-12-06 |
Family
ID=12116407
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2365083A Granted JPS59148997A (en) | 1983-02-14 | 1983-02-14 | Rotary position detection device |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPS59148997A (en) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS63187117A (en) * | 1987-01-30 | 1988-08-02 | Yamatake Honeywell Co Ltd | Rotary encoder |
| US6314154B1 (en) * | 1999-11-04 | 2001-11-06 | Vlsi Technology, Inc | Non-power-of-two Gray-code counter and binary incrementer therefor |
| DE102004006672B3 (en) * | 2004-02-11 | 2005-08-18 | Carl Mahr Holding Gmbh | Fine gauge for distance measurement |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5391765A (en) * | 1977-01-24 | 1978-08-11 | Nippon Chemical Ind | Absolute encoding |
| JPS5451436A (en) * | 1977-09-30 | 1979-04-23 | Hitachi Ltd | Encoder unit |
-
1983
- 1983-02-14 JP JP2365083A patent/JPS59148997A/en active Granted
Also Published As
| Publication number | Publication date |
|---|---|
| JPS59148997A (en) | 1984-08-25 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4445110A (en) | Absolute optical encoder system | |
| JP3179493B2 (en) | Absolute encoder | |
| JPH0476418A (en) | absolute encoder | |
| JPS5981512A (en) | Device for indicating position of member | |
| KR950010385B1 (en) | Absolute encoder | |
| JPH0257846B2 (en) | ||
| RU2434323C1 (en) | Recursive code scale | |
| RU2645880C1 (en) | Absolute optical single-turn angular encoder | |
| US4383317A (en) | Shaft angle encoder having a circuit for synthesizing a skipped track output signal | |
| JPH0157291B2 (en) | ||
| JP3449793B2 (en) | Absolute encoder | |
| JPS6129176B2 (en) | ||
| JPH02132324A (en) | How to create a code pattern for an absolute value encoder | |
| JPH02168115A (en) | Absolute encoder | |
| SU1130893A1 (en) | Position encoder | |
| SU830371A1 (en) | Binary-to-decimal code converter | |
| JP3454907B2 (en) | Absolute encoder | |
| SU1662004A1 (en) | Binary coded decimal to binary translator | |
| SU401994A1 (en) | DEVICE FOR DETERMINATION OF MINORANT BINARY CODES | |
| JP3506778B2 (en) | Absolute encoder | |
| JP3431695B2 (en) | Absolute encoder | |
| JPH0374328B2 (en) | ||
| SU1275778A1 (en) | Device for determining number of ones in binary number | |
| SU390546A1 (en) | ALL-UNION I | |
| SU1282135A1 (en) | Device for shifting information with checking |