ロータリーエンコーダーは、回転する軸の角度や位置を電気信号に変換するセンサーです。その中心にあるのは、円盤に刻まれた明暗の模様と、それを決まった位置から読み取るセンサーの組み合わせです。模様の刻み方が変われば、読み取れる情報の種類も、誤読したときの壊れ方も変わります。
このシリーズでは、円盤の模様の読み方を様式ごとに、動く図で追いかけます。このページで扱うのは、トラック1本がそのまま1ビットに対応する多トラック方式のアブソリュート(バイナリとGray)と、絶対番地を持たない古典的なインクリメンタル(A相・B相)です。
トラックを1本に減らして位置情報を詰め込む単トラックPRBSや、粗い符号と細かい周期を組み合わせるハイブリッド、周期差を使うバーニアは、(2)単トラックとハイブリッドで扱います。
| 疑問 | 該当する図 |
|---|---|
| 電源を入れた瞬間から角度が分かるのはなぜか | アブソリュート(バイナリ)(図1) |
| 産業用の円盤でGrayが定番になっている理由は何か | アブソリュート(Gray)(図2) |
| 絶対番地を持たない円盤が、回転の向きをどう判断するのか | インクリメンタル(A/B)(図3) |
各図の円盤はドラッグで回せます。文章を読む前に境界付近を少しずつ動かしてみると、後半の説明が追いやすくなります。
なお、以下の図はいずれも仕組みを説明するための簡略図であり、特定メーカーの製品をそのまま描いたものではありません。実機との差がある箇所は、各節の「本記事の図では」で明示します。
アブソリュート(バイナリ)(図1)
符号化の原理
円盤を半径方向に複数の同心トラックへ分け、各トラックを1ビットとして扱います。ある角度における各トラックの明暗の組み合わせが、そのまま、その位置の絶対番地になります。自然二進(バイナリ)で刻めば、4トラックなら16分割、8トラックなら256分割の番地を持つ円盤ができあがります。
この方式の利点は、電源を入れた瞬間から位置が確定していることです。軸を回さなくても、いま読めている明暗の組み合わせがそのまま角度を表すため、起動のたびに原点へ戻す動作が要りません。
一方で、弱点も同じ仕組みから生まれます。隣の番地へ移る境界では、複数のビットが同時に切り替わってしまうことがあります。たとえば 0111 から 1000 へ移る瞬間は、4ビットすべてが入れ替わります。センサーの取り付けにわずかなずれがあると、切り替わりのタイミングがビットごとに前後し、0111 でも 1000 でもない値を一瞬だけ読んでしまいます。しかも誤読の幅が大きく、半周ぶん離れた番地が出ることさえあります。
本記事の図では
透過型のアブソリュートに寄せて、白が1(光が通る)、黒が0(遮光)としています。トラックの並びは外側がLSB、内側がMSBです。画面上部の固定センサー列が各トラックを読み、図の下に並ぶランプは左がMSB(内側)、右がLSB(外側)に対応します。
スライダを動かすとビット数が変わり、それに応じてトラックの本数と分割数も変わります。時計回りに回したときにセクタ番号が増える向きへ合わせてあります。境界付近をゆっくり通過させて、ランプが複数同時に切り替わる瞬間を探してみてください。
ビット数を増やせば分解能は上がりますが、境界で同時に変わるビットの本数も増えていきます。バイナリのまま分割数だけを上げると、誤読したときの飛び幅がかえって大きくなってしまいます。
アブソリュート(Gray)(図2)
符号化の原理
物理的な配置はバイナリと同じ「トラック=ビット」のままです。違うのは刻む符号のほうで、隣り合う角度どうしの符号が常に1ビットだけ違うように並べます。これがGray符号です。
境界で変わるビットが必ず1本だけになるため、読み取りのタイミングがずれても、出てくる値は手前の番地か次の番地のどちらかにしかなりません。誤読が起きても隣までで収まる、というこの性質が、産業用の多トラック円盤でGrayが定番になっている理由です。
ただし、Grayのビット列を、そのまま数値として扱えるわけではありません。コントローラやPLCの側では、読み取ったGrayを後段で自然二進へ変換してから位置演算に使います。変換を挟むことが前提の符号だと考えてください。
本記事の図では
図1と同じ物理配置(外側がLSB、内側がMSB、白が1、黒が0)のまま、セクタごとにGray変換したパターンを描いています。時計回りに回すとセクタ番号は1ずつ増えます。
一方、読取欄に出るGrayの数値、つまり円盤上のビット列をそのまま十進として読んだ値のほうは、1ずつは増えません。0、1、3、2、6…… のように飛びます。参考として素のバイナリも併記してあるので、「Grayの十進は飛ぶが、セクタ番号と変換後の値は1ずつ揃う」という関係を見比べられます。
ランプの動きにも注目してください。隣り合うセクタへ移るとき、おおむね1つのランプだけが切り替わります。図1のバイナリで複数同時に変わっていた境界と比べると、差がはっきり出ます。
読取値が 0、1、3、2 と飛ぶのを見て故障を疑う必要はありません。Grayの円盤では、これが正しい見え方です。1ずつ揃うのは変換後の値のほうです。
インクリメンタル(A/B)(図3)
符号化の原理
円周に均等なスリット(明暗の繰り返し)だけを持ち、絶対番地は刻みません。読み取りには2つのセンサーを使い、電気角でおよそ90度(直角位相)ずらして配置します。慣例として、この2つをA相、B相と呼びます。
2本の信号の状態は、だいたい 00 → 10 → 11 → 01(回転方向が逆なら、この逆順)の4つを巡ります。ここで見落とされやすいのが、A相とB相が同時に1になる区間、同時に0になる区間が必ずあるという点です。「2本が常に逆相で交互に反転するだけ」ではありません。
どちらの相が先に立ち上がるかで回転の向きが分かり、エッジを数えれば相対的な変位が分かります。逆に言えば、分かるのは相対量だけです。電源が落ちたり、ノイズでカウントを取りこぼしたりすると、原点(Z相などの基準位置)を取り直すまで、絶対位置は不明のままになってしまいます。
本記事の図では
符号トラックは1本だけで、均等なスリットが並びます。A相は真上、B相は電気角90度に相当するぶんだけずらした位置に置いています。
2つのランプが同時に点灯する瞬間、同時に消灯する瞬間があります。これは直角位相の重複ポイントとして正常な見え方です。「細かさ」のスライダはPPR(1回転あたりのパルス数)に相当する分割数として効きます。ランプはA相とB相の2つだけで、MSBやLSBの列はありません。
A相とB相が同時に点灯している状態を見て、配線ミスや故障と判断してしまう例があります。直角位相である以上、4つの状態のうち2つは両相が揃った状態です。むしろ異常を疑うべきなのは、00 と 11 のどちらかがまったく現れない場合のほうです。
3つの様式は、どんな機器で使われているのか
ここまで見た違いは、そのまま採用される場所の違いにつながります。以下は方式ごとの一般的な傾向です。実際にどの方式が入っているかは機種ごとに異なるので、実機を選ぶときは仕様書で確認してください。
バイナリのアブソリュート
自然二進のまま刻んだ円盤は、実務の回転検出ではあまり見かけません。境界で複数ビットが同時に変わるという弱点が、そのまま誤動作につながってしまうためです。多トラックで絶対位置を持たせる場面では、次に挙げるGrayへ置き換わっているのが普通です。
ただし、符号としてのバイナリが消えるわけではありません。Grayで読み取った値は、最終的にコントローラの側で自然二進へ変換されてから位置演算に使われます。円盤の刻み方としては退いても、演算の土台としては残っている、という関係になります。
Grayのアブソリュート
産業用の多トラック円盤では、こちらが定番です。強みは、電源を入れた瞬間から角度が確定していることでした。この性質が効くのは、起動のたびに機械を動かして原点を探す動作が許されない場所です。
用途としてよく挙げられるのは、工作機械の割出し軸、ロボットの関節角、バルブやダンパの開度、巻上機やクレーンの位置、アンテナや観測装置の方位角といったものです。いずれも、電源が復帰したときに現在位置が分からないと危険だったり、原点復帰そのものが物理的に難しかったりする対象です。
これらの読み方でロボットの各関節の角度を測ったあと、手先は今どこか、ある位置へ行くには各軸を何度回せばよいか、を知りたい場合は、順運動学と逆運動学を動く図で解説(1)で、平面2リンクの計算を動かして確認できます。
インクリメンタル(A/B)
構造がもっとも単純で、符号トラックも1本で済みます。絶対位置を諦める代わりに、安価に、細かく回転を追えるのが持ち味です。
モーターの速度と回転方向のフィードバック、コンベアの搬送量、プリンタやスキャナの紙送り、操作パネルで値を変えるつまみ、マウスのホイールなどが、この方式の領域です。起動時に原点を取り直せる用途か、そもそも絶対位置が要らない用途が並びます。
方式の名前から選ぶより、「電源を入れ直した直後に、機械が自分の位置を知っている必要があるか」を先に決めるほうが早く絞り込めます。必要ならアブソリュート、不要ならインクリメンタルです。
3つの様式は何を優先しているのか
ここまでの3つは、同じ「円盤の模様を読む」仕組みでありながら、何を優先したかが違います。
| 様式 | 絶対位置 | 境界での誤読 | 符号トラックの本数 |
|---|---|---|---|
| バイナリ | 電源投入直後から分かる | 飛び幅が大きくなりうる | ビット数だけ必要 |
| Gray | 電源投入直後から分かる | 隣の番地までで収まる | ビット数だけ必要 |
| インクリメンタル | 原点を取るまで分からない | 該当しない(相対量のみ) | 1本 |
絶対位置が要るなら多トラックのアブソリュート、そのなかで境界の誤読を抑えたいならGray、という整理になります。インクリメンタルはトラック1本で済むぶん構造が単純ですが、絶対位置は別の手段で確保しなければなりません。
では、トラックを増やさずに絶対位置を持たせられないのか。その発想から出てくるのが、円周1本の擬似乱数列を使う単トラックPRBSや、粗い符号と細かい周期を組み合わせるハイブリッドです。続きは (2)単トラックとハイブリッド で扱います。
よくある質問
Q1. アブソリュートとインクリメンタルは、どちらを選べばよいですか?
A. 電源を入れ直したあとに原点へ戻す動作を許せるかどうかが、まず分かれ目になります。許せるならインクリメンタル、許せないならアブソリュート、という整理が出発点です。実際の選定は機械側の安全要件や制御系の仕様にも左右されるため、この記事では方式の違いまでを扱っています。
Q2. Grayの読取値が 0、1、3、2 と飛びます。円盤の不良ですか?
A. 不良ではありません。Gray符号は隣接する角度どうしが1ビットしか違わないように並べてあるため、ビット列をそのまま十進として読むと順番が飛びます。自然二進へ変換したあとの値が 0、1、2、3 と揃っていれば正常です。
Q3. A相とB相が同時に点灯するのは異常ではないのですか?
A. 正常です。直角位相で読む以上、状態は 00、10、11、01 の4つを巡るので、両方が1になる区間と両方が0になる区間が必ず現れます。2本が常に逆相になるのは位相差が180度の場合で、その配置では回転の向きが判別できなくなってしまいます。
Q4. ビット数を増やせば、そのぶん精度が上がりますか?
A. 分割数は増えますが、そのたびにトラックが1本ずつ増え、円盤の外周に刻む模様も細かくなっていきます。図のスライダでビット数を上げると、外側トラックの明暗がどれだけ細かくなるかを確認できます。実機では、この細かさが加工精度やセンサーの分解能の限界にぶつかります。
Q5. この記事の図は、実際の製品と同じものですか?
A. 違います。仕組みを見せるための簡略図です。トラックの配置、明暗の割り当て、センサーの位置は説明しやすさを優先して決めてあり、実機では同期用のトラックや複数の読取ヘッドが加わることがあります。各節の「本記事の図では」に、この図固有の約束をまとめています。

コメントを残す