ロータリーエンコーダからの出力信号は近似正弦波形であるので、これを波形整形回路でパルス波形にする。
波形整形回路からのパルス信号A,Bの組み合わせは、回転方向により2つのパターンになる。
図のようにパルス信号A,Bは90°位相がずれているが、回転方向によってずれ方が異なる。
@の場合、B信号の立ち上がり時にA信号は必ず”H”になっているため回転 方向検出信号は”H”になる。
Aの場合、B信号の立ち上がり時にA信号は”L”になっているため、回転方向検出信号は”L”になる。このようにして回転方向の判別を行う事ができる。
A,B信号の周波数は回転数に比例するからそのパルスを一定時間間隔にカウントし回転数をもとめれば、回転速度を検出できる。
2相パルス出力型のエンコーダ(正転/逆転)を検出するための回路。A,B 相の動きよりup/downパルスを作り出し、必要桁数のup/downカウンタに入力し、カウンタの内容を読み取る事で回転量を知る事ができる。パルス弁別回路は、このup/downパルスを作り出す回路である。
パルス信号Aをカウンタする。I/Oポートは8ビットあるが、1ビットを回転方向を示すのに使うので残る7ビットを使いカウンタを作る。なお、リセット信号によりリセットされる。
I/Oで値を引き渡す時、一定時間値を変化させないようにする為の回路。
リセット信号の立ち上がりでラッチする。
参考資料: dm9404/memo/encode.sam