コード板リファレンス設計

単一トラック擬似ランダム符号コード板のレイアウト:コード要素幅・検出窓・インクリメンタルとの組合せ

単一トラック擬似ランダム符号コード板のレイアウト:コード要素幅・検出窓・インクリメンタルとの組合せ

単一トラック擬似ランダム符号のコード要素幅はw = 2πr/M。本記事はレイアウトだけを扱う:Mとインクリメンタルのスリット数N = k·Mによる一周の閉合、切り詰め系列の全周巡回チェック、検出窓(n + c + 1)·wと直線アレイの矢高、コード要素とインクリメンタル周期の位置合わせ、マンチェスター符号化の代償、そしてr = 15 mmでのパラメータ計算例を示す。

単一トラック擬似ランダム符号は、n本のグレイコードトラックを一本のトラックで置き換える。読取りヘッドは接線方向に連続するn個のコード要素を読み、それが何番目のコード要素かを判定する。系列の生成、復号、誤り訂正については本ライブラリに専用の記事があり、直線コードストリップの長さ計画についても別記事がある。本記事では、これをコード板に描くときに決めるべき数値だけを扱う:コード要素数とインクリメンタルのスリット数をどう一周で閉じるか、検出窓の長さ、コード要素とインクリメンタル周期の位置合わせ、マンチェスター符号化で何を支払うか、そして最後に読取り半径r = 15 mmでのパラメータ一式を示す。

単一トラック擬似ランダム符号とインクリメンタルトラックが並んで回転する様子(模式図:n = 6、コード要素64個、インクリメンタルピッチ=コード要素幅):検出窓の幅はn + 1要素、インクリメンタル位相によりサンプリング点を完全なコード要素の中心に置き、テーブル参照で先頭要素番号を得て、インクリメンタル位相を加えて細位置を得る
図1 単一トラック擬似ランダム符号とインクリメンタルトラックが並んで回転する様子(模式図:n = 6、コード要素64個、インクリメンタルピッチ=コード要素幅):検出窓の幅はn + 1要素、インクリメンタル位相によりサンプリング点を完全なコード要素の中心に置き、テーブル参照で先頭要素番号を得て、インクリメンタル位相を加えて細位置を得る

一周の閉合:コード要素数とインクリメンタルのスリット数

コード板上ではM個のコード要素がちょうど一周を埋め、コード要素角は360°/M、読取り半径におけるコード要素幅は

w = 2πr / M

インクリメンタルトラックでコード要素の位相を決めるため、コード要素幅は通常インクリメンタルピッチの整数倍kにとる。するとインクリメンタルのスリット数は

N = k·M

Mのとり方は三通りある:

系列Mk = 1のときのスリット数特徴
M系列2ⁿ − 1、例:10231023スリット数が奇数で、二進出力や極対数での割り切りに不便
de Bruijn拡張2ⁿ、例:10241024n − 1個連続する0の箇所に0を一つ補う。二進向き
切り詰め系列任意、例:10001000十進分解能だが、始点を一つずつ探索する必要がある

切り詰め系列は直線コードストリップでは問題ないが、コード板では条件が一つ増える:系列の末尾と先頭がつながり、継ぎ目をまたぐn − 1個の窓が新たに生じ、それらが区間内の既存の窓と重複してはならない。10次の系列(漸化式a[k] = a[k−3] ⊕ a[k−10]、すなわちx¹⁰ + x⁷ + 1)について始点を一つずつ調べたところ、1000要素に切り詰めた後も巡回窓がすべて互いに異なる始点は、1023個中19個しかなかった。切り詰め方式は必ずプログラムで全周巡回チェックを行うこと。適当に一区間を切り出してはならない。

検出窓:n個のコード要素+余裕

読取りヘッドとコード要素の相対位相は任意なので、窓内に常にn個の完全なコード要素が入るには、窓長は少なくとも(n + 1)·wが必要である。誤り検出・訂正のためにさらにcビット読む場合、窓長は(n + c + 1)·wとなる。ハミング限界によれば、1ビットを訂正するcはn = 9–11で少なくとも4、n ≥ 12で少なくとも5であり、実際に達成できるかは多項式の選び方による(本ライブラリの誤り訂正の記事を参照)。

コード板と直線コードストリップの違いは、トラックが円弧であるのに対し、受光素子アレイは通常直線であることだ。アレイが窓中心でトラックに接するとき、幾何学的な偏差が二つある:

  • 矢高:アレイ両端がトラック中心線から s = L²/(8r) ずれる。Lは窓長;
  • 接線方向の投影誤差:両端のコード要素のアレイ上での位置ずれは約 L³/(48r²)。

n = 10、c = 4、r = 15 mmのときL ≈ 1.38 mm、矢高は約16 μm、接線誤差は約0.24 μmで、92 μmのコード要素幅に比べて無視できる。矢高はトラックの半径方向幅に算入すればよく、アレイを円弧状にする必要があるのはnが小さく窓が長い場合だけである。

読取り半径がずれると、アレイ上のコード要素ピッチがΔr/rだけ変化する。窓中心を位相基準とし、窓端での累積ずれをw/4以内とすると、Δr ≤ r/(2(n + c))が得られ、n = 11、c = 4で約0.5 mmとなり、トラック幅への要求よりはるかに緩い。

コード要素とインクリメンタル周期の位置合わせ

k = 1のときコード要素幅はインクリメンタルピッチに等しく、コード要素の境界とインクリメンタル目盛線のエッジは同じフォトマスク上で位置合わせされる。読取りヘッドはインクリメンタル位相でサンプリング点をコード要素の中心に置く(図1)。サンプリング点からコード要素エッジまでの余裕はw/4で、これを食いつぶすのは、読取りヘッド内のコードトラック用受光素子とインクリメンタル用受光素子の接線方向のずれ、コードトラックとインクリメンタルトラックの半径差による偏心の差分、コード要素エッジの線幅誤差である。コードトラック15.0 mm、インクリメンタルトラック15.6 mm、偏心20 μmのとき、偏心の差分はコードトラック上で約0.77 μmにすぎず、余裕の大部分は読取りヘッドの組立てに残せる。

k > 1のときは、アブソリュート符号はコード要素番号しか与えないため、コード要素内の何番目のインクリメンタル周期にいるかも判定する必要があり、コード要素エッジの位置誤差はw/(2k)より小さくなければならない。kが大きいほど難しく、レイアウトでは一般にk = 1または2とする。

マンチェスター符号化のレイアウト上の代償

通常の符号化では、nビットの窓内の1の割合は0からすべてまで変わりうるため、窓内の平均透過率が位置によって大きく変動し、各ビットはそれぞれ絶対しきい値と比較するしかない。照明むらとDCオフセットはそのまま読取り誤りになる。マンチェスター符号化は各ビットを二つの半要素に分け、「明暗」を1、「暗明」を0とする:

  • 各ビットの平均透過率は常に50%で、判読は二つの半分の差を比べるだけなので、照明の勾配やオフセットに左右されない;
  • 各ビットの中央に必ず遷移があり、トラック自体がビットクロックを持つ;
  • 二つの半分の差が小さすぎる場合は「消失」と判定でき、訂正能力が高まる。

代償は、最小パターンがwからw/2になり、受光素子数が倍になることだ。最小パターンを変えないならビット幅を倍にする必要があり、同じ半径で一ビット減る(Mが半分になる)。別の方法として、半径方向に相補コードトラックを一本追加して差動にすれば、コード要素幅は変わらないが、トラック一本分の半径方向スペースを余計に使う。

r = 15 mmのパラメータ計算例

方式Mコード要素角コード要素幅 wインクリメンタルスリット数(k = 1)幾何光学式インクリメンタルトラックの最大ギャップ(n + 1)·w(n + c + 1)·wマンチェスターの最小パターン
n = 10102421.1′92.0 μm1024約2.0 mm1.01 mm1.38 mm46.0 μm
切り詰め1000100021.6′94.2 μm1000約2.1 mm1.04 mm1.41 mm47.1 μm
n = 11204810.5′46.0 μm2048約0.49 mm0.55 mm0.74 mm23.0 μm
n = 1240965.3′23.0 μm4096約0.12 mm0.30 mm0.41 mm11.5 μm

インクリメンタルトラックの最大ギャップは0.205·p²/λ(λ = 0.88 μm)で見積もった。n = 11を例にとると、コード要素2048個、コード要素幅46.0 μm、2048本のインクリメンタルトラックと組み合わせ、検出窓は0.55–0.74 mm。マンチェスター符号化を使うと最小パターンは23.0 μmに下がり、あるいはn = 10、ビット幅92 μmに変更する。図2にコード要素幅と窓長のnに対する変化を示す。

r = 15 mmにおけるコード要素幅、マンチェスターの最小パターン(左)と検出窓の弧長(右)の系列ビット数nに対する変化。右図に直線アレイの矢高を示す
図2 r = 15 mmにおけるコード要素幅、マンチェスターの最小パターン(左)と検出窓の弧長(右)の系列ビット数nに対する変化。右図に直線アレイの矢高を示す

設計のポイント

  • 先にMを決めてからスリット数を決める:N = k·M。二進分解能が必要ならde Bruijnの2ⁿ、十進が必要なら切り詰め系列を使う。
  • 切り詰め系列は必ず全周巡回チェックを行う:例では1023個の始点のうち、1000に切り詰めた後も窓が重複しないのは19個だけ。
  • 検出窓は(n + c + 1)·wで設計し、r = 15 mm、n = 11、c = 4で約0.74 mm。直線アレイの矢高L²/(8r)はトラックの半径方向幅に算入する。
  • k = 1を優先する:コード要素の境界とインクリメンタル目盛線を同一マスクで位置合わせでき、サンプリング点の余裕はw/4、n = 11で約11.5 μm。
  • 照明むらやオフセットが大きい場合はマンチェスター符号化か相補トラックを使う。前者は最小パターンが半分になり、後者はトラックが一本増える。
  • コード要素幅はそのままインクリメンタルピッチ(k = 1)でもあるので、インクリメンタルトラックのギャップ窓で再確認する。n = 12では最大ギャップは約0.12 mmしか残らない。

まとめ

単一トラック擬似ランダム符号のレイアウトは、w = 2πr/MとN = k·Mの二つの関係でつながっている。Mがコード要素幅とスリット数を決め、kが粗・細の接続の難しさを決め、nと冗長ビットが検出窓を決める。コード板では直線コードストリップに比べて、一周の閉合と継ぎ目をまたぐ窓の非重複という要求が加わる。マンチェスター符号化は最小パターンを半分にする代わりに照明とオフセットへの耐性を得る。r = 15 mmでは、n = 11、k = 1がピッチと窓長を両立させる一つの選択である。


中国語原文記事の翻訳 (0304). ENC7 コード板メーカー(お問い合わせ) · 技術記事 · https://enc7.com

© 廊坊晶正光電技術有限公司(Langfang Jingzheng Optoelectronic Technology Co., Ltd.)無断転載を禁じます。本記事はAIの支援を受けて作成されています。

Have a drawing? Get an engineer's review.

Send your outer diameter, bore, line count or bit count, substrate and readhead wavelength. Our engineers check manufacturability and reply with a quotation and sample lead time.

WhatsApp