(57)【要約】【課題】  シャフトレス輪転印刷機の同期制御や工作機械の位置決め装置において、停止中や低速回転時のみならず高速回転中においてもロータリーエンコーダの回転位相と回転速度を安定して高精度に検出すること。【解決手段】  ９０°位相差の２相のＡ相、Ｂ相の正弦波と１回転の基準信号を示すＺ相を出力する正弦波インクリメンタルエンコーダ１ｂの出力を位相速度検出装置２ｅ入力する。位相速度検出装置２ｅは、正転又は逆転方向を問わずＺ相信号から正確な基準原点信号を生成する。また、Ａ相及びＢ相信号からシンクロＡ相信号、シンクロＢ相信号、パルス位相、Ａ相デジタル値及びＢ相デジタル値を検出し、該シンクロＡ相信号、シンクロＢ相信号及びパルス位相を完全に同期させ、Ａ相デジタル値とＢ相デジタル値を基準にシンクロＡ相信号とシンクロＢ相信号を監視してパルス位相を補正し、超高精度の回転位相と回転速度を検出する。【選択図】          図１
2005156208.tif 000002
【特許請求の範囲】
【請求項１】
９０°位相差を有する２つの正弦波であるＡ相信号とＢ相信号のインクリメンタル信号を出力する正弦波インクリメンタルエンコーダの前記Ａ相信号と前記Ｂ相信号を入力とし、該正弦波インクリメンタルエンコーダの回転位相速度を検出する位相速度検出装置であって、
上記正弦波インクリメンタルエンコーダは１回転毎に複数サイクルの前記Ａ相信号と前記Ｂ相信号を出力するものであり、
上記位相速度検出装置はＡ相及びＢ相のコンパレータとパルス抽出器を内蔵し、該コンパレータは前記Ａ相信号とＢ相信号から、それぞれ２値化した矩形Ａ相信号と矩形Ｂ相信号を生成して上記パルス抽出器に出力し、
上記パルス抽出器は、上記矩形Ａ相信号と矩形Ｂ相信号から、上記正弦波インクリメンタルエンコーダの正転時にはクロック信号に同期した正転パルス信号を、また、逆転時にはクロック信号に同期した逆転パルス信号を抽出して出力するとともに、
上記矩形Ａ相信号と矩形Ｂ相信号の立上がり、立下りをクロック信号に同期させた、シンクロＡ相信号とシンクロＢ相信号を出力する
ことを特徴とする位相速度検出装置。
【請求項２】
上記正弦波インクリメンタルエンコーダは、Ａ相信号とＢ相信号のインクリメンタル信号に加えて、１回転を識別するＺ相信号を出力するものであり、
上記位相速度検出装置は、上記Ｚ相のコンパレータと原点検出器を内蔵し、
上記Ｚ相のコンパレータは、上記Ｚ相信号から２値化した矩形Ｚ相信号を生成し、
上記原点検出器には、前記パルス抽出器が出力する前記正転パルスと前記逆転パルスと、上記矩形Ｚ相信号が入力され、
上記原点検出器は、上記正転パルスが出力されているか逆転パルスが出力されているかに応じて前記正弦波インクリメンタルエンコーダの回転方向を識別し、
前記正弦波インクリメンタルエンコーダが正転方向に回転しているときは前記矩形Ｚ相信号の先端または後端から短い所定のパルス幅の基準原点信号を出力し、
前記正弦波インクリメンタルエンコーダが逆転方向に回転しているときは前記矩形Ｚ相信号の後端または先端から短い所定のパルス幅の基準原点信号を出力する
ことを特徴とする請求項１の位相速度検出装置。
【請求項３】
上記位相速度検出装置は、パルス位相検出器を内蔵し、該パルス位相検出器は、前記正弦波インクリメンタルエンコーダの前記Ａ相信号とＢ相信号の１回転当たりのサイクル数による最大パルス位相より充分に大きい値をカウントし出力するアップダウンカウンタと、選択手段を備え
上記パルス位相検出器のアップダウンカウンタのアップカウント端子、ダウンカウント端子には、それぞれ前記パルス抽出器が出力する前記正転パルスと前記逆転パルスが入力され、アップダウンカウンタのリセット端子には、前記原点検出器が出力する前記基準原点信号が入力され、
上記アップダウンカウンタは、上記正転パルスが入力されたときアップカウントし、上記逆転パルスが入力されたダウンカウントし、上記リセット端子に基準原点信号が入力されたときゼロにリセットされるものであり、
上記選択手段は、上記アップ・ダウンカウンタの出力が正のときは、そのカウント値を前記正弦波インクリメンタルエンコーダのパルス位相として出力し、
前記アップ・ダウンカウンタの出力が負のときは前記最大パルス位相に１を加算した最大パルス数と前記アップ・ダウンカウンタのカウント値を加算したものを前記正弦波インクリメンタルエンコーダのパルス位相として出力する
ことを特徴とする請求項２の位相速度検出装置。
【請求項４】
上記位相速度検出装置はＡ／Ｄ変換器とコントローラを内蔵し、
上記Ａ／Ｄ変換器は、前記正弦波インクリメンタルエンコーダが出力する前記Ａ相信号とＢ相信号をデジタル値に変換したＡ相デジタル値とＢ相デジタル値を出力するものであり、
前記Ａ相及びＢ相のコンパレータは、前記Ａ相信号と前記Ｂ相信号をハイレベルと判定するレベルＶｈと、ロウレベルと判定するレベルＶｌと比較して、前記Ａ相信号と前記Ｂ相信号から前記矩形Ａ相信号と前記矩形Ｂ相信号を生成するものであって、該Ｖｈが該Ｖｌ以上であり、
上記コントローラには、前記パルス位相検出器の出力である前記パルス位相と、前記パルス抽出器が出力するシンクロＡ相信号とシンクロＢ相信号と、前記Ａ／Ｄ変換器が出力する前記Ａ相デジタル値及びＢ相デジタル値が連続して入力され、
前記正弦波インクリメンタルエンコーダが正転で回転しているとき、前記Ａ相デジタル値が正で前記シンクロＡ相信号が' ０' のときは前記パルス位相について１を加算する補正を行い、前記Ａ相デジタル値が負で前記シンクロＡ相信号が' １' のときは前記パルス位相について１を加算する補正を行い、
また、前記Ｂ相デジタル値が正で前記シンクロＢ相信号が' ０' のときは前記パルス位相について１を加算する補正を行い、前記Ｂ相デジタル値が負で前記シンクロＢ相信号が' １' のときは前記パルス位相について１を加算する補正を行い、
前記正弦波インクリメンタルエンコーダが逆転で回転しているとき、前記Ａ相デジタル値が正で前記シンクロＡ相信号が' ０' のときは前記パルス位相について１を減算する補正を行い、前記Ａ相デジタル値が負で前記シンクロＡ相信号が' １' のときは前記パルス位相について１を減算する補正を行い、
また、前記Ｂ相デジタル値が正で前記シンクロＢ相信号が' ０' のときは前記パルス位相について１を減算する補正を行い、前記Ｂ相デジタル値が負で前記シンクロＢ相信号が' １' のときは前記パルス位相について１を減算する補正を行う
ことを特徴とした請求項３の位相速度検出装置。
【請求項５】
上記位相速度検出装置はＡ／Ｄ変換器とコントローラを内蔵し、
上記Ａ／Ｄ変換器は、前記正弦波インクリメンタルエンコーダが出力する前記Ａ相信号とＢ相信号をデジタル値に変換したＡ相デジタル値とＢ相デジタル値を出力するものであり、
前記Ａ相及びＢ相のコンパレータは、前記Ａ相信号と前記Ｂ相信号をハイレベルと判定するレベルＶｈと、ロウレベルと判定するレベルＶｌと比較して、前記Ａ相信号と前記Ｂ相信号から前記矩形Ａ相信号と前記矩形Ｂ相信号を生成するものであって、該Ｖｈが該Ｖｌ未満であり、
上記コントローラには、前記パルス位相検出器の出力である前記パルス位相と、前記パルス抽出器が出力するシンクロＡ相信号とシンクロＢ相信号と、前記Ａ／Ｄ変換器が出力する前記Ａ相デジタル値及びＢ相デジタル値が連続して入力され、
前記正弦波インクリメンタルエンコーダが正転で回転しているとき、前記Ａ相デジタル値が負で前記シンクロＡ相信号が' １' のときは前記パルス位相について１を減算する補正を行い、前記Ａ相デジタル値が正で前記シンクロＡ相信号が' ０' のときは前記パルス位相について１を減算する補正を行い、
また、前記Ｂ相デジタル値が負で前記シンクロＢ相信号が' １' のときは前記パルス位相について１を減算する補正を行い、前記Ｂ相デジタル値が正で前記シンクロＢ相信号が' ０' のときは前記パルス位相について１を減算する補正を行い、
前記正弦波インクリメンタルエンコーダが逆転で回転しているとき、前記Ａ相デジタル値が負で前記シンクロＡ相信号が' １' のときは前記パルス位相について１を加算する補正を行い、前記Ａ相デジタル値が正で前記シンクロＡ相信号が' ０' のときは前記パルス位相について１を加算する補正を行い、
また、前記Ｂ相デジタル値が負で前記シンクロＢ相信号が' １' のときは前記パルス位相について１を加算する補正を行い、前記Ｂ相デジタル値が正で前記シンクロＢ相信号が' ０' のときは前記パルス位相について１を加算する補正を行う
ことを特徴とした請求項３の位相速度検出装置。
【請求項６】
上記位相速度検出装置はＡ／Ｄ変換器とコントローラを内蔵し、
上記Ａ／Ｄ変換器は、前記正弦波インクリメンタルエンコーダが出力する前記Ａ相信号とＢ相信号をデジタル値に変換したＡ相デジタル値とＢ相デジタル値を出力するものであり、
前記Ａ相及びＢ相のコンパレータは、前記Ａ相信号と前記Ｂ相信号をハイレベルと判定するレベルＶｈと、ロウレベルと判定するレベルＶｌと比較して、前記Ａ相信号と前記Ｂ相信号から前記矩形Ａ相信号と前記矩形Ｂ相信号を生成するものであって、該Ｖｈが該Ｖｌ以上であり、
上記コントローラには、前記パルス位相検出器の出力である前記パルス位相と、前記パルス抽出器が出力するシンクロＡ相信号とシンクロＢ相信号と、前記Ａ／Ｄ変換器が出力する前記Ａ相デジタル値及びＢ相デジタル値が連続して入力され、
前記正弦波インクリメンタルエンコーダが正転で回転しているとき、前記Ａ相デジタル値がゼロで前記Ｂ相デジタル値が正で前記シンクロＡ相信号が' ０' のときは前記パルス位相について１を加算する補正を行い、前記Ａ相デジタル値がゼロで前記Ｂ相デジタル値が負で前記シンクロＡ相信号が' １' のときは前記パルス位相について１を加算する補正を行い、
また、前記Ｂ相デジタル値がゼロで前記Ａ相デジタル値が負で前記シンクロＢ相信号が' ０' のときは前記パルス位相について１を加算する補正を行い、前記Ｂ相デジタル値がゼロで前記Ａ相デジタル値が正で前記シンクロＢ相信号が' １' のときは前記パルス位相について１を加算する補正を行い、
前記正弦波インクリメンタルエンコーダが逆転で回転しているとき、前記Ａ相デジタル値がゼロのときは前記パルス位相についての補正を行なわず、前記Ｂ相デジタル値がゼロのときも前記パルス位相について補正を行なわない
ことを特徴とした請求項３の位相速度検出装置。
【請求項７】
上記位相速度検出装置はＡ／Ｄ変換器とコントローラを内蔵し、
上記Ａ／Ｄ変換器は、前記正弦波インクリメンタルエンコーダが出力する前記Ａ相信号とＢ相信号をデジタル値に変換したＡ相デジタル値とＢ相デジタル値を出力するものであり、
前記Ａ相及びＢ相のコンパレータは、前記Ａ相信号と前記Ｂ相信号をハイレベルと判定するレベルＶｈと、ロウレベルと判定するレベルＶｌと比較して、前記Ａ相信号と前記Ｂ相信号から前記矩形Ａ相信号と前記矩形Ｂ相信号を生成するものであって、該Ｖｈが該Ｖｌ未満であり、
上記コントローラには、前記パルス位相検出器の出力である前記パルス位相と、前記パルス抽出器が出力するシンクロＡ相信号とシンクロＢ相信号と、前記Ａ／Ｄ変換器が出力する前記Ａ相デジタル値及びＢ相デジタル値が連続して入力され、
前記正弦波インクリメンタルエンコーダが正転で回転しているとき、前記Ａ相デジタル値がゼロのときは前記パルス位相についての補正を行なわず、前記Ｂ相デジタル値がゼロのときも前記パルス位相について補正を行なわず、
前記正弦波インクリメンタルエンコーダが逆転で回転しているとき、前記Ａ相デジタル値がゼロで前記Ｂ相デジタル値が負で前記シンクロＡ相信号が' １' のときは前記パルス位相について１を加算する補正を行い、前記Ａ相デジタル値がゼロで前記Ｂ相デジタル値が正で前記シンクロＡ相信号が' ０' のときは前記パルス位相について１を加算する補正を行い、
前記Ｂ相デジタル値がゼロで前記Ａ相デジタル値が正で前記シンクロＢ相信号が' １' のときは前記パルス位相について１を加算する補正を行い、前記Ｂ相デジタル値がゼロで前記Ａ相デジタル値が負で前記シンクロＢ相信号が' ０' のときは前記パルス位相について１を加算する補正を行う
ことを特徴とした請求項３の位相速度検出装置。
【請求項８】
上記位相速度検出装置は、発信器が出力するパルスを計数する基準カウンタとデータラッチを備え、
上記発信器が出力するパルスのエッジに同期したラッチ指令により、同一時刻の前記基準カウンタの出力値と前記パルス位相と前記シンクロＡ相信号と前記シンクロＢ相信号と前記Ａ相デジタル値及び前記Ｂ相デジタル値をラッチして、所定の時間間隔で前記コントローラに入力し、
上記コントローラは、上記時間間隔における上記基準カウンタの出力値の変化量より、上記時間間隔と前記正弦波インクリメンタルエンコーダの回転位相の変化量を検出し、上記時間間隔と回転位相の変化量より上記正弦波インクリメンタルエンコーダの回転速度を演算し検出する
ことを特徴とする請求項４，５，６または請求項７の位相速度検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はシャフトレス輪転印刷機や工作機械などの高精度が要求される複数の電動機の同期制御や位置決め制御に関し、特に、電動機が停止中や低速回転中だけでなく高速回転中においても電動機の位相や速度を超高精度で検出する装置に関するものである。
【背景技術】
【０００２】
複数の電動機間の高精度な同期制御を行うシャフトレス輪転印刷機や精密な位置決めを行う工作機械などにおいては、電動機もしくは出力軸の位相や速度を精度良く検出しなければならず、その為に精度の良いロータリーエンコーダが必要であるが、従来このロータリーエンコーダはアブソリュートエンコーダやインクリメントエンコーダが使用されている。
【０００３】
そして、アブソリュートエンコーダを使用して位相の検出精度を向上させる為に、アブソリュートのデジタル信号の他にこれを補間するアナログ信号も具備するアブソリュートエンコーダが従来考案されている（例えば、特許文献１参照）。
しかし、かような改善が行われているが依然としてデジタル信号も使用するもので、デジタル信号の桁数分のトラックやセンサーをアブソリュートエンコーダに内蔵させ、外部においては多数の信号線を準備する必要がある。又、通常アブソリュートエンコーダは、制御装置側から位相の読み込みを指令した後、実際に位相データを獲得するまでに時間を要することもあり、特に高速で運転中の回転体の位相を短時間で検出することは困難もしくは不可能であった。
【０００４】
一方、インクリメンタルエンコーダでは、回転に応じて複数のサイクルを発生し、９０°の位相差を有する２相の矩形波であるＡ相とＢ相出力と１回転を識別するＺ相出力を有するものがあり（以下、矩形波インクリメンタルエンコーダと称す）、前記Ａ相とＢ相出力の矩形波の立ち上がり又は立ち下がりを制御装置側の位相カウンタで計数し、前記Ｚ相により該位相カウンタをゼロにリセットすることにより回転位相を求めることが従来実施されている（例えば、特許文献２参照）。
この方法では、前記のカウンタで矩形波のエッジを計数するだけなのでリアルタイムに回転位相を検出できる利点がある。しかし、該矩形波インクリメンタルエンコーダの分解能は例えば現状において１回転あたり約２００００パルスが上限と考えられ、これを通常行われるように×４逓倍して使用したとき１回転あたりの位相の検出分解能は８００００が限界となる。
かように、検出分解能に制約があるので任意の時刻の位相を検出するには限界があり、これを図により示せば図３１の（ａ）の如くとなる。
すなわち該図３１の（ａ）において、任意の時刻ｔ１が前記矩形波インクリメンタルエンコーダの矩形波の立ち上がり又は立ち下がりのエッジと離れている程、検出する位相の誤差は大きくなる。
【０００５】
ここで、インクリメンタルエンコーダは前記の矩形波を出力するものの他、２相の正弦波を出力するエンコーダ（以下、正弦波インクリメンタルエンコーダと称す）があり、これを用いて従来から位相の検出が行われている（例えば特許文献３参照）。
図３１の（ｂ）に該正弦波インクリメンタルエンコーダの出力波形の例を示す。同図に示すように、９０°位相差の正弦波であるＡ相とＢ相はインクリメンタルエンコーダの１回転毎に複数サイクルの正弦波を出力する。そして、図３１の（ｂ）の任意の時刻ｔ１におけるＡ相とＢ相の値をそれぞれａ１、ｂ１とすれば、このときの位相はＡ相とＢ相をパルス化してこのエッジを計数したパルス位相Ｃを粗い位相とし、マイクロコントローラなどを使用して次の（１）式から密な位相である補間位相αを求めることができる。
α＝αｍａｘ×｛ａｒｃＴＡＮ（ａ１／ｂ１）｝／９０・・・・・（１）式
かように、前記図３１の(a) の矩形波インクリメンタルエンコーダの場合と相違して、該図３１の（ｂ）の正弦波インクリメンタルエンコーダでは任意の時刻ｔ１における補間位相を上記（１）式に依り得ることが可能で、該補間位相と前記パルス位相を組み合わせて高精度の回転位相を求めるものである。
ここで、図３１の（ｂ）において電気角９０°はマイクロコントローラなどによりαｍａｘなるデジタル値で検出し、θ°はαなるデジタル値で検出するものとしている。例えば、補間位相を無符号の１２ビットのデータサイズとすればαｍａｘは４０９５となる。  
【０００６】
図３２の（ａ）は、前記パルス位相をＹビットの分解能で、前記補間位相をＸビットの分解能で検出するときの１回転の位相の合成を説明するものであり、図３２の（ｂ）はパルス位相がＣ、補間位相がαの場合を示すものである。そして、説明を容易とする為に具体例で示せば、正弦波インクリメンタルエンコーダの１回転当たりのサイクル数が５１２のとき、これを×４逓倍して使用すれば前記パルス位相Ｃの分解能は２０４８となり、前記補間位相を１２ビットのデータサイズとすれば該補間位相αの分解能は４０９６となり、このとき１回転の位相は下記の（２）式の分解能となる。
４０９６×４×５１２＝８，３８８，６０８・・・・・・・・・・・（２）式
かような手段により、１回転の位相を非常に高い分解能で求めることが可能である。
【特許文献１】実開昭５６−９６３２２号
【特許文献２】特許第３０７３７２７号
【特許文献３】特開２０００−３１４６３８
【発明の開示】
【発明が解決しようとする課題】
【０００７】
図３３は前記特許文献２など、従来から実施されている矩形波インクリメンタルエンコーダを使用して回転位相を検出するとき、１回転の原点を前記Ｚ相出力より得て前記位相カウンタをゼロにリセットし、Ａ相とＢ相出力の矩形波の立ち上がり又は立ち下がりを前記位相カウンタで計数して回転位相を得る経緯を示すものである。
図３３の（ａ）は前記矩形波インクリメンタルエンコーダのＡ相、Ｂ相及びＺ相出力を示し、図３３の（ｂ）は前記位相カウンタの時間的推移を示す。
ここで、前記Ｚ相出力が  ’１’となる期間は前記図３３の（ａ）に示すとおり一定のパルス幅を有するもので、これにより前記図３３の（ｂ）に示す回転位相において、期間Ｐ及びＱに示すとおり回転位相が不必要にゼロとなる期間が発生し高精度の回転位相を得るに支障があった。
【０００８】
又、正弦波インクリメンタルエンコーダを使用する場合は前記図３２の（ａ）で示したとおり、前記パルス位相と前記補間位相の合成により１回転の位相を高分解能で求め得るが、前記パルス位相と前記補間位相の組み合わせに誤りが発生すると正しい回転位相や回転速度を得ることができない。
本発明は上記問題点を解決するためになされたものであって、本発明の目的は、回転方向が正転であっても逆転であっても、インクリメンタルエンコーダを使用して正確な１回転の基準を生成せしめ、高精度の回転位相と回転速度を検出することができ、また、正弦波インクリメンタルエンコーダもしくは正弦波インクリメンタルエンコーダが付属する電動機が停止中や低速回転中のみならず高速回転中であっても、前記パルス位相と前記補間位相を常に正確に検出し、超高精度の回転位相と回転速度を得ることにある。
【課題を解決するための手段】
【０００９】
上記課題を本発明においては、次のように解決する。
（１）９０°位相差の２つの正弦波であるＡ相信号とＢ相信号のインクリメンタル信号を出力する正弦波インクリメンタルエンコーダを用い、Ａ相信号とＢ相信号を本発明の請求項１の位相速度検出装置に入力する。この正弦波インクリメンタルエンコーダは１回転に複数サイクルのＡ相信号と前記Ｂ相信号を出力する。
上記位相速度検出装置は、Ａ相及びＢ相のコンパレータとパルス抽出器を内蔵し、該コンパレータは前記Ａ相信号とＢ相信号から、それぞれ２値化した矩形Ａ相信号と矩形Ｂ相信号を生成して上記パルス抽出器に出力する。
上記パルス抽出器は、上記矩形Ａ相信号と矩形Ｂ相信号から、クロック信号に同期した正弦波インクリメンタルエンコーダの正転パルス又は逆転パルスを抽出し出力する。また、前記矩形Ａ相信号と前記矩形Ｂ相信号の立上がり、立下りをクロック信号に同期させた、シンクロＡ相信号とシンクロＢ相信号を、前記正転パルスと前記逆転パルスに同期して出力する。
【００１０】
（２）本発明の請求項２の発明は、上記Ａ相信号とＢ相信号のインクリメンタル信号に加えて、１回転を識別するＺ相信号を出力する正弦波インクリメンタルエンコーダを用い、上記請求項１の位相速度検出装置に、上記Ｚ相のコンパレータと原点検出器を内蔵させる。上記Ｚ相のコンパレータは、上記Ｚ相信号から２値化した矩形Ｚ相信号を生成する。
上記原点検出器には、前記パルス抽出器が出力する前記正転パルスと前記逆転パルスと、上記矩形Ｚ相信号が入力され、上記原点検出器は、上記正転パルスが出力されているか逆転パルスが出力されているかに応じて前記正弦波インクリメンタルエンコーダの回転方向を識別する。また、前記正弦波インクリメンタルエンコーダが正転方向に回転しているときは前記矩形Ｚ相信号の先端または後端から短い所定のパルス幅の基準原点信号を出力し、前記正弦波インクリメンタルエンコーダが逆転方向に回転しているときは前記矩形Ｚ相信号の後端または先端から短い所定のパルス幅の基準原点信号を出力する。
以上のように基準原点信号を出力することで、Ｚ相信号から短いパルス幅の基準原点信号を生成することができ、また、正転方向に回転する場合と逆転方向に回転する場合で位相が正確に一致する前記基準原点信号を生成することができる。
【００１１】
（３）本発明の請求項３の位相速度検出装置は、請求項２の位相速度検出装置に、パルス位相検出器を内蔵させる。
上記パルス位相検出器は、前記正弦波インクリメンタルエンコーダの前記Ａ相信号とＢ相信号の１回転当たりのサイクル数による最大パルス位相より充分に大きい値をカウントし出力するアップダウンカウンタと、選択手段を備える。
上記パルス位相検出器のアップダウンカウンタのアップカウント端子、ダウンカウント端子には、それぞれ前記パルス抽出器が出力する前記正転パルスと前記逆転パルスが入力され、アップダウンカウンタのリセット端子には、前記原点検出器が出力する前記基準原点信号が入力され、上記アップダウンカウンタは、上記正転パルスが入力されたときアップカウントし、上記逆転パルスが入力されたダウンカウントし、上記リセット端子に基準原点信号が入力されたときゼロにリセットされる。
上記選択手段は、上記アップ・ダウンカウンタの出力が正のときは、そのカウント値を前記正弦波インクリメンタルエンコーダのパルス位相として出力し、前記アップ・ダウンカウンタの出力が負のときは前記最大パルス位相に１を加算した最大パルス数と前記アップ・ダウンカウンタのカウント値を加算したものを前記正弦波インクリメンタルエンコーダのパルス位相として出力する。
【００１２】
（４）本発明の請求項４の位相速度検出装置は、請求項３の位相速度検出装置に、Ａ／Ｄ変換器とコントローラを内蔵させる。
上記Ａ／Ｄ変換器は、前記正弦波インクリメンタルエンコーダが出力する前記Ａ相信号とＢ相信号をデジタル値に変換したＡ相デジタル値とＢ相デジタル値を出力する。
また、前記Ａ相及びＢ相のコンパレータは、前記Ａ相信号と前記Ｂ相信号をハイレベルと判定するレベルＶｈと、ロウレベルと判定するレベルＶｌと比較して、前記Ａ相信号と前記Ｂ相信号から前記矩形Ａ相信号と前記矩形Ｂ相信号を生成するものであり、この場合、該Ｖｈが該Ｖｌ以上である。
上記コントローラには、前記パルス位相検出器の出力である前記パルス位相と、前記パルス抽出器が出力するシンクロＡ相信号とシンクロＢ相信号と、前記Ａ／Ｄ変換器が出力する前記Ａ相デジタル値及びＢ相デジタル値が連続して入力され、コントローラは、以下のようにして、パルス位相を補正する。
(i) 前記正弦波インクリメンタルエンコーダが正転で回転しているとき、前記Ａ相デジタル値が正で前記シンクロＡ相信号が' ０' のときは前記パルス位相について１を加算する補正を行い、前記Ａ相デジタル値が負で前記シンクロＡ相信号が' １' のときは前記パルス位相について１を加算する補正を行う。
また、前記Ｂ相デジタル値が正で前記シンクロＢ相信号が' ０' のときは前記パルス位相について１を加算する補正を行い、前記Ｂ相デジタル値が負で前記シンクロＢ相信号が' １' のときは前記パルス位相について１を加算する補正を行う。
(ii)前記正弦波インクリメンタルエンコーダが逆転で回転しているとき、前記Ａ相デジタル値が正で前記シンクロＡ相信号が' ０' のときは前記パルス位相について１を減算する補正を行い、前記Ａ相デジタル値が負で前記シンクロＡ相信号が' １' のときは前記パルス位相について１を減算する補正を行う。
また、前記Ｂ相デジタル値が正で前記シンクロＢ相信号が' ０' のときは前記パルス位相について１を減算する補正を行い、前記Ｂ相デジタル値が負で前記シンクロＢ相信号が' １' のときは前記パルス位相について１を減算する補正を行う。
【００１３】
（５）本発明の請求項５の位相速度検出装置は、請求項３の位相速度検出装置に、Ａ／Ｄ変換器とコントローラを内蔵させる。
上記Ａ／Ｄ変換器は、前記正弦波インクリメンタルエンコーダが出力する前記Ａ相信号とＢ相信号をデジタル値に変換したＡ相デジタル値とＢ相デジタル値を出力する。
また、前記Ａ相及びＢ相のコンパレータは、前記Ａ相信号と前記Ｂ相信号をハイレベルと判定するレベルＶｈと、ロウレベルと判定するレベルＶｌと比較して、前記Ａ相信号と前記Ｂ相信号から前記矩形Ａ相信号と前記矩形Ｂ相信号を生成するものであり、この場合、該Ｖｈが該Ｖｌ未満である。
上記コントローラには、前記パルス位相検出器の出力である前記パルス位相と、前記パルス抽出器が出力するシンクロＡ相信号とシンクロＢ相信号と、前記Ａ／Ｄ変換器が出力する前記Ａ相デジタル値及びＢ相デジタル値が連続して入力され、コントローラは、以下のようにして、パルス位相を補正する。
(i) 前記正弦波インクリメンタルエンコーダが正転で回転しているとき、前記Ａ相デジタル値が負で前記シンクロＡ相信号が' １' のときは前記パルス位相について１を減算する補正を行い、前記Ａ相デジタル値が正で前記シンクロＡ相信号が' ０' のときは前記パルス位相について１を減算する補正を行う。
また、前記Ｂ相デジタル値が負で前記シンクロＢ相信号が' １' のときは前記パルス位相について１を減算する補正を行い、前記Ｂ相デジタル値が正で前記シンクロＢ相信号が' ０' のときは前記パルス位相について１を減算する補正を行う。
(ii)前記正弦波インクリメンタルエンコーダが逆転で回転しているとき、前記Ａ相デジタル値が負で前記シンクロＡ相信号が' １' のときは前記パルス位相について１を加算する補正を行い、前記Ａ相デジタル値が正で前記シンクロＡ相信号が' ０' のときは前記パルス位相について１を加算する補正を行う。
また、前記Ｂ相デジタル値が負で前記シンクロＢ相信号が' １' のときは前記パルス位相について１を加算する補正を行い、前記Ｂ相デジタル値が正で前記シンクロＢ相信号が' ０' のときは前記パルス位相について１を加算する補正を行う。
【００１４】
（６）本発明の請求項６の位相速度検出装置は、請求項３の位相速度検出装置に、Ａ／Ｄ変換器とコントローラを内蔵させる。
上記Ａ／Ｄ変換器は、前記正弦波インクリメンタルエンコーダが出力する前記Ａ相信号とＢ相信号をデジタル値に変換したＡ相デジタル値とＢ相デジタル値を出力する。
また、前記Ａ相及びＢ相のコンパレータは、前記Ａ相信号と前記Ｂ相信号をハイレベルと判定するレベルＶｈと、ロウレベルと判定するレベルＶｌと比較して、前記Ａ相信号と前記Ｂ相信号から前記矩形Ａ相信号と前記矩形Ｂ相信号を生成するものであり、この場合、該Ｖｈが該Ｖｌ以上である。
上記コントローラには、前記パルス位相検出器の出力である前記パルス位相と、前記パルス抽出器が出力するシンクロＡ相信号とシンクロＢ相信号と、前記Ａ／Ｄ変換器が出力する前記Ａ相デジタル値及びＢ相デジタル値が連続して入力され、コントローラは、以下のようにして、パルス位相を補正する。
(i) 前記正弦波インクリメンタルエンコーダが正転で回転しているとき、前記Ａ相デジタル値がゼロで前記Ｂ相デジタル値が正で前記シンクロＡ相信号が' ０' のときは前記パルス位相について１を加算する補正を行い、前記Ａ相デジタル値がゼロで前記Ｂ相デジタル値が負で前記シンクロＡ相信号が' １' のときは前記パルス位相について１を加算する補正を行う。
また、前記Ｂ相デジタル値がゼロで前記Ａ相デジタル値が負で前記シンクロＢ相信号が' ０' のときは前記パルス位相について１を加算する補正を行い、前記Ｂ相デジタル値がゼロで前記Ａ相デジタル値が正で前記シンクロＢ相信号が' １' のときは前記パルス位相について１を加算する補正を行う。
(ii)前記正弦波インクリメンタルエンコーダが逆転で回転しているとき、前記Ａ相デジタル値がゼロのときは前記パルス位相についての補正を行なわず、前記Ｂ相デジタル値がゼロのときも前記パルス位相について補正を行なわない。
【００１５】
（７）本発明の請求項７の位相速度検出装置は、請求項３の位相速度検出装置に、Ａ／Ｄ変換器とコントローラを内蔵させる。
上記Ａ／Ｄ変換器は、前記正弦波インクリメンタルエンコーダが出力する前記Ａ相信号とＢ相信号をデジタル値に変換したＡ相デジタル値とＢ相デジタル値を出力する。
また、前記Ａ相及びＢ相のコンパレータは、前記Ａ相信号と前記Ｂ相信号をハイレベルと判定するレベルＶｈと、ロウレベルと判定するレベルＶｌと比較して、前記Ａ相信号と前記Ｂ相信号から前記矩形Ａ相信号と前記矩形Ｂ相信号を生成するものであり、この場合、該Ｖｈが該Ｖｌ未満である。
上記コントローラには、前記パルス位相検出器の出力である前記パルス位相と、前記パルス抽出器が出力するシンクロＡ相信号とシンクロＢ相信号と、前記Ａ／Ｄ変換器が出力する前記Ａ相デジタル値及びＢ相デジタル値が連続して入力され、コントローラは、以下のようにして、パルス位相を補正する。
(i) 前記正弦波インクリメンタルエンコーダが正転で回転しているとき、前記Ａ相デジタル値がゼロのときは前記パルス位相についての補正を行なわず、前記Ｂ相デジタル値がゼロのときも前記パルス位相について補正を実施しない。
(ii)前記正弦波インクリメンタルエンコーダが逆転で回転しているとき、前記Ａ相デジタル値がゼロで前記Ｂ相デジタル値が負で前記シンクロＡ相信号が' １' のときは前記パルス位相について１を加算する補正を行い、前記Ａ相デジタル値がゼロで前記Ｂ相デジタル値が正で前記シンクロＡ相信号が' ０' のときは前記パルス位相について１を加算する補正を行う。
また、前記Ｂ相デジタル値がゼロで前記Ａ相デジタル値が正で前記シンクロＢ相信号が' １' のときは前記パルス位相について１を加算する補正を行い、前記Ｂ相デジタル値がゼロで前記Ａ相デジタル値が負で前記シンクロＢ相信号が' ０' のときは前記パルス位相について１を加算する補正を行う。
【００１６】
（８）本発明の請求項８の位相速度検出装置は、請求項４，５，６または請求項７の位相速度検出装置において、発信器が出力するパルスを計数する基準カウンタとデータラッチを設ける。
そして、上記発信器が出力するパルスのエッジに同期したラッチ指令により、同一時刻の前記基準カウンタの出力値と前記パルス位相と前記シンクロＡ相信号と前記シンクロＢ相信号と前記Ａ相デジタル値及び前記Ｂ相デジタル値をラッチして、所定の時間間隔で前記コントローラに入力する。
上記コントローラは、上記時間間隔における上記基準カウンタの出力値の変化量より、上記時間間隔と前記正弦波インクリメンタルエンコーダの回転位相の変化量を検出し、上記時間間隔と回転位相の変化量より上記正弦波インクリメンタルエンコーダの回転速度を演算し検出する。
【発明の効果】
【００１７】
本発明においては、正弦波インクリメンタルエンコーダもしくは正弦波インクリメンタルエンコーダが付属する電動機が停止中や低速回転中のみならず高速回転中であっても、回転位相と回転速度を常に精度よく検出することを可能となる。
これにより、高速回転中の複数の電動機相互の高精度の同期制御や、高速の位置決め制御を実現することができる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の一実施例を図面に基づいて説明する。
図１は請求項１に、図５は請求項２に、図１０は請求項３に、図１３は請求項４、請求項５、請求項６及び請求項７に関わる実施例を説明し、図２９は請求項８に関わる実施例を説明するものである。
【実施例１】
【００１９】
図１は実施例１の全体の構成を説明する図であり、図２、図３及び図４は実施例１を更に詳細に説明するものである。始めに図１において１ａは正弦波インクリメンタルエンコーダ、２ａは位相速度検出装置であり、該位相速度検出装置２ａは３、５及び６の機器を内蔵し、３はコンパレータ、５は一定周波数の基準クロックを生成する発信器、６は本実施例によるパルス抽出器であり次にこれらについて順次説明を行う。
【００２０】
前記コンパレータ３は、前記正弦波インクリメンタルエンコーダ１ａが出力するＡ相とＢ相の正弦波を' ０' と' １' の２値の矩形Ａ相信号と矩形Ｂ相信号に変換するものであり、該矩形Ａ相信号と矩形Ｂ相信号は、上記パルス抽出器６のＰＡ入力とＰＢ入力に接続され、前記発信器５は該パルス抽出器６のＣＬＫ入力に基準クロックＣＬＫを供給する。  次に、前記パルス抽出器６のＱ１出力とＱ２出力は例えば、前記正弦波インクリメンタルエンコーダ１ａが正転方向に回転するときＱ１出力に回転に応じた正転パルスを、前記正弦波インクリメンタルエンコーダ１ａが逆転方向に回転するときＱ２出力に回転に応じた逆転パルスを出力する。そして、前記パルス抽出器６のＱＡ出力とＱＢ出力は、回転に応じた正転パルスを送出する前記Ｑ１出力、又は逆転パルスを送出する前記Ｑ２出力を生成するに至った前記ＰＡ入力と前記ＰＢ入力の状態を保持したシンクロＡ相信号ＱＡとシンクロＢ相信号ＱＢを出力する。
【００２１】
次に、前記正弦波インクリメンタルエンコーダ１ａが正転方向に回転するとき、前記パルス抽出器６の動作について更に図２を参照しつつ説明する。
図２の（ａ）は前記正弦波インクリメンタルエンコーダ１ａが正転のときのＡ相とＢ相の出力の時間的推移を示し、正転のとき例えばＢ相がＡ相より９０°の進みとし、前記正弦波インクリメンタルエンコーダ１ａが１回転でＡ相及びＢ相の正弦波はそれぞれＮサイクル生成するものとしている。
図２の（ｂ）は前記Ａ相のコンパレータ３の出力の時間的推移を示すもので、該コンパレータ３はＡ相の正弦波入力を概略ゼロと比較して' ０' と' １' の２値信号である矩形Ａ相信号を出力し前記パルス抽出器６のＰＡ入力となる。そして、同様に図２の（ｃ）は前記Ｂ相のコンパレータ３の出力の矩形Ｂ相信号の時間的推移を示すと共に前記パルス抽出器６のＰＢ入力を示す。ここで、前記図２の（ｂ）の(1) と(2) は前記ＰＡ入力のそれぞれ立ち上がりと立ち下がりを示し、前記図２の（ｃ）の(3) と(4) は前記ＰＢ入力のそれぞれ立ち上がりと立ち下がりを示し、これらの説明は後述するものである。
【００２２】
更に、図２の（ｄ）は前記発信器５が出力する基準クロックＣＬＫの時間的推移を示し、該基準クロックＣＬＫは前記パルス抽出器６のＣＬＫ入力に接続されている。ここで、該図２の（ｄ）は説明の為、前記図２の（ａ）から図２の（ｃ）と対比して目視できるように示すが、実用例を示せば前記図２の（ａ）において１回転当たりのＮが例えば５１２サイクルで回転速度が１８００ｒｐｍ（ｒｅｖｏｌｕｔｉｏｎｓ  ｐｅｒ  ｍｉｎｕｔｅ）のとき、前記図２の（ａ）のＡ相又はＢ相の正弦波の周波数は１５．３６ＫＨｚとなり、一方前記図２の（ｄ）に示す前記発信器５の基準クロックの周波数は例えば２０ＭＨｚである。かように、前記発信器５の周波数は前記正弦波インクリメンタルエンコーダ１ａのＡ相とＢ相が出力する正弦波の周波数に比して充分に高く選定するものである。
【００２３】
次に、図２の（ｅ）は前記正弦波インクリメンタルエンコーダ１ａが正転方向に回転しているとき、前記パルス抽出器６のＱ１出力に回転に応じた正転パルスを出力する状態を示す。該図２の（ｅ）は前記図２の（ａ）で示す入力周波数の×４逓倍のパルス周波数の例で、このとき実用例を示せば、前記図２の（ａ）において１回転当たりのＮが例えば５１２サイクルのとき、前記正弦波インクリメンタルエンコーダ１ａは１回転で５１２×４逓倍で２０４８個の正転パルスを生成することとなる。
又、前述のとおり前記図２の（ｅ）は前記図２の（ａ）で示す入力周波数の×４逓倍のパルス周波数の例で示したが×１逓倍あるいは×２逓倍であってもよい。ここで、図２の（ｆ）は前記正弦波インクリメンタルエンコーダ１ａが逆転方向に回転するとき、前記パルス抽出器６の逆転パルスを出力するＱ２出力の状態を示すが、正転方向に回転しているとき該Ｑ２出力は変化しない。
【００２４】
そして、図２の（ｇ）と（ｈ）は前記パルス抽出器６が出力するシンクロＡ相信号ＱＡとシンクロＢ相信号ＱＢの時間的遷移を示すもので、回転に応じたパルスを出力する前記Ｑ１出力又はＱ２出力を生成した前記ＰＡ入力と前記ＰＢ入力の状態を保持し出力する。これを更に説明すれば、前記図２の（ｂ）の(1) で示すＰＡ入力の立ち上がりは前記図２の（ｄ）の基準クロックＣＬＫで同期化され、図２の（ｅ）の時刻ｔ１における正転パルスを生成する。そして、前記図２の（ｄ）の基準クロックＣＬＫにより前記正転パルスと正確に同期した前記図２の（ｇ）で示すとおりシンクロＡ相信号ＱＡが' １' となる。更に前記図２の（ｂ）の(2) で示すＰＡ入力の立ち下がりは基準クロックＣＬＫで同期化され、前記図２の（ｅ）の時刻ｔ２における正転パルスを生成すると同時に、前記図２の（ｇ）で示すとおりシンクロＡ相信号ＱＡが' ０' となる。同様に前記図２の（ｃ）の(3) と(4) におけるＰＢ入力の立ち上がりと立ち下がりは基準クロックＣＬＫで同期化され、前記図２の（ｅ）の時刻ｔ３とｔ４における正転パルスを生成すると同時に、前記図２の（ｈ）で示すとおりシンクロＢ相信号ＱＢが' １' 、' ０' と変化する。
【００２５】
すなわち、本実施例は前記図２の（ｇ）と（ｈ）で示す前記パルス抽出器６が出力するシンクロＡ相信号ＱＡとシンクロＢ相信号ＱＢの変化を、前記図２の（ｅ）で示す正転パルスと時間的に厳密に同期せしめ、これにより前記図２の（ｅ）のＱ１出力の正転パルスを生成した相がＡ相に起因するかＢ相に起因するか、前記シンクロＡ相信号ＱＡとシンクロＢ相信号ＱＢをモニタすることにより常に正確に認識することを可能とするものである。なお、上記では、ＰＢの立ち上がり(3) 、立下り(4) の際の時刻ｔ３，ｔ４で生ずるパルスについて説明したが、ｔ１、ｔ２の間に図示されるパルス、ｔ３、ｔ４の間に図示されるパルスもＰＢの立ち上がり、立ち下がりの時点に生ずるパルスである。
【００２６】
次に、図３は前記正弦波インクリメンタルエンコーダ１ａが逆転方向に回転するとき前記パルス抽出器６の動作を説明するものである。図３の（ａ）は前記正弦波インクリメンタルエンコーダ１ａが逆転するときのＡ相とＢ相の出力の時間的推移を示し、図２の（ａ）に換えてＡ相がＢ相より９０°の進みとなる。又、図３の（ａ）から（ｈ）において図２の（ａ）から（ｈ）と同じ記号を付すものはこれと同じ前記パルス抽出器６の入力や出力を示しその説明は割愛する。
【００２７】
ここで、前記図３の（ｂ）の(5) と(6) は前記パルス抽出器６のＰＡ入力のそれぞれ立ち上がりと立ち下がりを示し、前記図３の（ｃ）の(7) と(8) は前記ＰＢ入力のそれぞれ立ち上がりと立ち下がりを示す。そして、前記図３の（ｂ）の(5) で示すＰＡ入力の立ち上がりは図３の（ｄ）の基準クロックＣＬＫで同期化され、図３の（ｆ）の時刻ｔ５における逆転パルスを生成する。そして、前記図３の（ｄ）の基準クロックＣＬＫにより該逆転パルスと正確に同期した図３の（ｇ）で示すシンクロＡ相信号ＱＡが' １' となる。更に前記図３の（ｂ）の(6) で示すＰＡ入力の立ち下がりは基準クロックＣＬＫで同期化され、前記図３の（ｆ）の時刻ｔ６における逆転パルスを生成すると同時に、前記図３の（ｇ）で示すとおりシンクロＡ相信号ＱＡが' ０' となる。同様に前記図３の（ｃ）の(7) と(8) におけるＰＢ入力の立ち上がりと立ち下がりは基準クロックＣＬＫで同期化され、前記図３の（ｆ）の時刻ｔ７とｔ８における逆転パルスを生成すると同時に、前記図３の（ｈ）で示すとおりシンクロＢ相信号ＱＢが' １' 、' ０' と変化する。なお、逆転のときは図３の（ｅ）に示す前記パルス抽出器６の正転パルスのＱ１出力は変化しない。
【００２８】
かように本実施例は正転のときと同様に逆転方向に回転するときも、前記図３の（ｇ）と（ｈ）で示す前記パルス抽出器６の出力であるシンクロＡ相信号ＱＡとシンクロＢ相信号ＱＢの変化を前記図３の（ｆ）で示す逆転パルスと時間的に正確に同期せしめ、これにより前記図３の（ｆ）のＱ２出力の逆転パルスを生成した相がＡ相に起因するかＢ相に起因するか、前記シンクロＡ相信号ＱＡとシンクロＢ相信号ＱＢをモニタすることにより常に正確に認識することを可能とするものである。
【００２９】
次に、図４に前記パルス抽出器６の一実施例を示す。図４において６はパルス抽出器であり、ＰＡ入力、ＰＢ入力、ＣＬＫ入力、Ｑ１出力、Ｑ２出力、ＱＡ出力及びＱＢ出力は前記図１で同じ記号を付すものと同じでありその説明は割愛する。そして、６０１、６０３、６０５、６０７及び６０９はＮＯＴゲートであり、６０２、６０４、６０６、６０８、６１３、６１４、６１５及び６１６はＤフリップフロップであり、６１０はＡＮＤゲート、６１１及び６１２はＯＲゲートである。なお、本実施例の以下の説明において、各種フリップフロップのＣＬＫ入力は入力する信号の立ち上がりでラッチ動作をするものとする。
【００３０】
始めに、前記Ｄフリップフロップ６０２、６０４とＮＯＴゲート６０３、６０５は前記ＰＡ入力の立ち上がりと立ち下がりを検出するものであり、同様に前記Ｄフリップフロップ６０６、６０８とＮＯＴゲート６０７、６０９は前記ＰＢ入力の立ち上がりと立ち下がりの検出に用いる。ここで、Ｄフリップフロップ６０２のＱ出力を（６０２Ｑ）と表記しＮＯＴゲート６０３の出力を（／６０２Ｑ）と表記し、前記Ｄフリップフロップ６０４、６０６、６０８及びＮＯＴゲート６０５、６０７、６０９のそれぞれの出力もこれに準じて表記すれば、ＡＮＤゲート６１０の(1) を付すものは次の論理演算を実行する。
(1) ：( ６０２Ｑ) ∩ (／６０４Ｑ) ∩ (６０６Ｑ)   ・・・・・・（３）式
上記（３）式の第１項と第２項の（( ６０２Ｑ）∩（／６０４Ｑ) ）により前記図２の（ｂ）の(1) の立ち上がりを検出し、更に第３項の（∩（６０６Ｑ））によりＢ相が' １' であることより正転を検出し、前記図２の（ｅ）の時刻ｔ１における正転パルスを生成するに至る。同様に、図４のＡＮＤゲート６１０の(2) から(4) を付すものはそれぞれ次の（４）式から（６）式に示す論理演算を実行し、これらの第１項と第２項から立ち上がり又は立ち下がりを検出し更に第３項により正転を検出し、前記図２の（ｅ）の時刻ｔ２、ｔ３及びｔ４における正転パルスを生成するに至る。ここで、前記図２の（ｂ）と（ｃ）で付す(1) から(4) は前記図４のＡＮＤゲート６１０に付す(1) から(4) に対応しているので留意されたい。
(2) ：( ／６０２Ｑ) ∩ (  ６０４Ｑ) ∩ (／６０６Ｑ) ・・・・・・・（４）式
(3) ：(   ６０６Ｑ) ∩ (／６０８Ｑ) ∩ (／６０２Ｑ) ・・・・・・・（５）式
(4) ：( ／６０６Ｑ) ∩ (  ６０８Ｑ) ∩ (  ６０２Ｑ) ・・・・・・・（６）式
そしてこの(1) から(4) のＡＮＤゲート６１０の出力は前記ＯＲゲート６１１を経由して前記Ｄフリップフロップ６１３に送られ、該Ｄフリップフロップ６１３は前記ＣＬＫ入力の立ち上がりに同期して正転パルスをＱ１出力に送出する。
【００３１】
一方、ＡＮＤゲート６１０の(5) から(8) を付すものはそれぞれ次の（７）式から（１０）式の論理演算を実行し、前記図３の（ｂ）、（ｃ）の(5) から(8) を付すエッヂを検出し、前記図３の（ｆ）の時刻ｔ５からｔ８における逆転パルスを生成するに至る。
(5) ：(   ６０２Ｑ) ∩ (／６０４Ｑ) ∩ (／６０６Ｑ) ・・・・・・・（７）式
(6) ：( ／６０２Ｑ) ∩ (  ６０４Ｑ) ∩ (  ６０６Ｑ) ・・・・・・・（８）式
(7) ：(   ６０６Ｑ) ∩ (／６０８Ｑ) ∩ (  ６０２Ｑ) ・・・・・・・（９）式
(8) ：( ／６０６Ｑ) ∩ (  ６０８Ｑ) ∩ (／６０２Ｑ) ・・・・・・（１０）式
この(5) から(8) のＡＮＤゲート６１０の出力は前記ＯＲゲート６１２を経由して前記Ｄフリップフロップ６１４に送られ、該Ｄフリップフロップ６１４は前記ＣＬＫ入力の立ち上がりに同期して逆転パルスをＱ２出力に送出する。
【００３２】
更に、前記（３）式から（１０）式の出力が' １' となるのはこれらの式の第１項目の前記Ｄフリップフロップ６０２又は６０６の出力が変化する時に依るもので、前記図４において該Ｄフリップフロップ６０２と６０６の出力は、前記Ｄフリップフロップ６１５と６１６を経由して前記シンクロＡ相信号ＱＡと前記シンクロＢ相信号ＱＢの出力に送出されるものである。そして、該Ｄフリップフロップ６１５と６１６と前記Ｄフリップフロップ６１３と６１４は同一の前記ＣＬＫ信号の立ち上がりに同期して動作するものである。  これにより、本実施例は前記Ｑ１出力とＱ２出力から送出される正転パルスと逆転パルスと、時間的に正確に同期せしめた前記正弦波インクリメンタルエンコーダ１ａのＡ相とＢ相を２値化し保持した前記シンクロＡ相信号ＱＡと前記シンクロＢ相信号ＱＢを送出し、前記正転パルスと逆転パルスを生成した相がＡ相に起因するかＢ相に起因するか、前記シンクロＡ相信号ＱＡと前記シンクロＢ相信号ＱＢをモニタすることにより正確に認識することを可能とするものである。
【００３３】
ここで、前記図４において前記ＮＯＴゲート６０１は前記基準クロックＣＬＫを反転し、前記ＰＡ入力とＰＢ入力の立ち上がりと立ち下がりを検出するＤフリップフロップ６０２、６０４と６０７、６０９のＣＬＫ入力にクロックを供給するもので、これによりそれぞれのＡＮＤゲート６１０の出力に依り得られる正転パルスと逆転パルスを前記基準クロックＣＬＫの立ち下がりに同期して生成させ、基準クロックＣＬＫの立ち上がりに同期する前記Ｄフリップフロップ６１３、６１４、６１５及び６１６のＤ入力に充分なデータセットアップ時間を確保する為、便宜的に設けたものである。
又、前記図４の前記ＯＲゲート６１１及び６１２は前記正弦波インクリメンタルエンコーダ１ａのＡ相とＢ相を×４逓倍する例で示したが、これに換えて×２逓倍や×１逓倍するものであっても良い。又、前記Ｑ１出力とＱ２出力をそれぞれ正転パルスと逆転パルスを出力する実施例で示したが、これに換えて例えばＱ１出力を正転及び逆転方向に回転するに応じて歩進パルスを生成するものとし、Ｑ２出力を正転のときは例えば' ０' を逆転のときは' １' を出力するものとし、このＱ１出力とＱ２出力と時間的に正確に同期せしめた、前記正弦波インクリメンタルエンコーダ１ａのＡ相とＢ相を２値化した前記シンクロＡ相信号ＱＡと前記シンクロＢ相信号ＱＢを送出させても良い。
【実施例２】
【００３４】
図５は実施例２の全体の構成を説明する図であり、図６，図７、図８及び図９は実施例２を更に詳細に説明するものである。該図５において１ｂは正弦波インクリメンタルエンコーダで前記図１の正弦波インクリメンタルエンコーダ１ａに１回転を識別するＺ相信号を付加したものであり、２ｂは位相速度検出装置、４はコンパレータ、７は本実施例による原点検出器で、その他図１と同じ記号を付す３、５及び６はこれと同じ機能を有しその説明を割愛する。
【００３５】
始めに、前記正弦波インクリメンタルエンコーダ１ｂは前記Ｚ相信号を出力するもので、図６を参照してこれの説明を行う。該図６は前記正弦波インクリメンタルエンコーダ１ｂが出力する信号を説明し、該図６の（ａ）は前記図２の（ａ）と同じくＡ相とＢ相の出力の時間的推移を示しその説明は割愛する。次に、該図６の（ｂ）は例えばＬｏｗレベルを０Ｖ、Ｈｉｇｈレベルを５Ｖとして前記正弦波インクリメンタルエンコーダ１ｂの出力するＺ相の出力の時間的推移を示す。該図６の（ｂ）で示すとおり、Ｚ相は１回転毎にＨｉｇｈレベルとなり１回転を識別するものである。そして、前記図５において該正弦波インクリメンタルエンコーダ１ｂのＺ相の出力は、前記位相速度検出装置２ｂが内蔵するコンパレータ４で波形整形され' ０' と' １' に２値化された矩形Ｚ相信号となり、後述する原点検出器７のＰＺ入力に送出される。
【００３６】
次に、図５の前記原点検出器７はＰ１入力、Ｐ２入力、ＰＺ入力、ＣＬＫ入力及びＱＺ出力を有し、該Ｐ１入力には前記パルス抽出器６のＱ１出力から送出される前記正転パルスが入力され、前記Ｐ２入力には前記Ｑ２出力からの前記逆転パルスが入力される。又、前記原点検出器７の前記ＰＺ入力には前述するとおり前記コンパレータ４の出力が入力され、前記ＣＬＫ入力には前記発信器５からの基準クロックＣＬＫが入力される。そして、前記ＰＺ入力に入力される前記矩形Ｚ相信号はパルス幅が広いもしくは不定のものであるが、前記原点検出器７により正転方向に回転するときも逆転方向に回転するときも、前記正弦波インクリメンタルエンコーダ１ｂの同じ位相で発生する短いパルス幅の正確な基準原点信号を前記ＱＺ出力から送出するものである。
【００３７】
次に図７を参照して、この原点検出器７の動作について更に詳細に説明する。始めに図７の（ａ）は前記正弦波インクリメンタルエンコーダ１ｂが正転及び逆転方向に回転するときのＡ相とＢ相の出力の時間的推移を示し、正転は時刻ｔ３迄、逆転は時刻ｔ３以降としている。そして、図７の（ｂ）は前記正弦波インクリメンタルエンコーダ１ｂのＺ相出力の時間的推移を前記図７の（ａ）のＡ相とＢ相の出力と対比して示しており、説明を容易とする為に正転のとき時刻ｔ１からｔ２でＺ相が出力した後、速やかに時刻ｔ３で回転方向が逆転したとしている。ここで該図７の（ｂ）において、正転のときの時刻ｔ１における前記正弦波インクリメンタルエンコーダ１ｂの位相は、逆転のときの時刻ｔ５における位相と同一であることに留意されたい。同様に正転のときの時刻ｔ２における前記正弦波インクリメンタルエンコーダ１ｂの位相は、逆転のときの時刻ｔ４における位相と同一であることに留意されたい。
【００３８】
次に、図７の（ｃ）は前記原点検出器７のＣＬＫ入力の時間的推移を示し、該ＣＬＫ入力の１周期をＴｏｓｃとしている。そして、図７の（ｄ）は前記原点検出器７のＱＺ出力の時間的推移を示すもので、図示するとおり正転のときは時刻ｔ１における前記Ｚ相の立ち上がりに同期してパルス幅がＴｏｓｃの基準原点信号を生成し、逆転のときは時刻ｔ５における前記Ｚ相の立ち下がりに同期してパルス幅がＴｏｓｃの基準原点信号を生成し前記ＱＺ出力とするものである。かように本実施例は、前記正弦波インクリメンタルエンコーダ１ｂの出力するＺ相のパルス幅が広いものであっても短時間にパルス幅を定めた基準原点信号を生成すると共に、正転のときも逆転のときも前記正弦波インクリメンタルエンコーダ１ｂの同じ位相で、正確に前記基準原点信号を生成するものである。
【００３９】
かような前記原点検出器７の一実施例を図８に示し説明する。該図８において原点検出器７、Ｐ１入力、Ｐ２入力、ＰＺ入力、ＣＬＫ入力及びＱＺ出力は前記図５で説明するものと同じでその説明は割愛し、７０１、７０５、７０６及び７０７はＮＯＴゲートであり、７０２はＪＫフリップフロップ、７０３及び７０４はＤフリップフロップ、７０８及び７０９はＡＮＤゲート、７１０はＯＲゲートである。始めに、前記ＪＫフリップフロップ７０２は前記図５のパルス抽出器６が出力する正転パルスのＰ１入力と逆転パルスのＰ２入力をそれぞれＫ、Ｊ入力とし、これによりＱ出力は前記正弦波インクリメンタルエンコーダ１ｂの回転方向を検出することとなり正転のときは０、逆転のときは１となる。そして、正転のときはＮＯＴゲート７０５を経由して後述のＡＮＤゲート７０８を選択し、逆転のときは同じく後述のＡＮＤゲート７０９を選択する。ここで、Ｋ、Ｊ入力の前記正転パルスと前記逆転パルスが前記基準クロックＣＬＫの立ち上がりに同期して変化する場合、該Ｋ，Ｊ入力のデータセットアップ時間を確保する為、便宜上、ＮＯＴゲート７０１を設け、前記基準クロックＣＬＫの立ち下がりに同期してＪＫフリップフロップ７０２のＱ出力に回転方向を送出するとしている。
【００４０】
同じく前記図８において、直列に接続された前記Ｄフリップフロップ７０３と７０４はＰＺ入力の前記矩形Ｚ相信号の立ち上がりと立ち下がりを検出する為のものであり、前記ＡＮＤゲート７０８は前記Ｄフリップフロップ７０３と前記ＮＯＴゲート７０６の出力から正転のときの基準原点信号を生成し、前記ＡＮＤゲート７０９は前記Ｄフリップフロップ７０４と前記ＮＯＴゲート７０７の出力から逆転のときの基準原点信号を生成する。そして、前記ＯＲゲート７１０に依り前記ＡＮＤゲート７０８と７０９の出力は１つにまとめられＱＺ出力に基準原点信号を出力することになる。
【００４１】
前記図８の実施例について図９を参照しつつ更に説明する。該図９は原点検出器７の動作を説明するもので、図９の（ａ）は前記正弦波インクリメンタルエンコーダ１ｂが正転及び逆転方向に回転するときのＡ相とＢ相の出力の時間的推移を示し、時刻ｔ１迄は正転、時刻ｔ１以降は逆転方向に回転するものとしている。図９の（ｂ）は前記原点検出器７の正転パルスであるＰ１入力を示すもので、前記図２の（ｅ）で示した信号と同一であり説明は割愛し、同様に図９の（ｃ）は前記原点検出器７の逆転パルスであるＰ２入力を示すもので、前記図３の（ｆ）で示した信号と同一であり説明は割愛する。そして、図９の（ｄ）と（ｅ）はそれぞれ前記原点検出器７のＰＺ入力とＱＺ出力を示す。
【００４２】
ここで、前記図９の時間Ｔ１とＴ２の期間を拡大して、前記図９の（ｅ）の基準原点信号のＱＺ出力を生成する経緯を次に説明する。図９の（ｆ）、（ｇ）及び（ｈ）は前記図９の（ｂ）、（ｃ）及び（ｄ）をそれぞれ拡大して示し、図９の（ｉ）は基準クロックＣＬＫが入力されるＣＬＫ入力を示し１周期をＴｏｓｃとしており、実用例を示せば基準クロックＣＬＫが２０ＭＨｚのときＴｏｓｃは僅か０．０５μＳとなる。
次に、図９の（ｊ）は回転方向を検出する前記ＪＫフリップフロップ７０２の出力を示し、例えば前記図９の（ｆ）における時刻ｔ４０の正転パルスにより時刻ｔ４１において' ０' となり、逆転については前記図９の（ｇ）における時刻ｔ５０の逆転パルスにより時刻ｔ５１において' １' となる。かように前記ＪＫフリップフロップ７０２の出力は前記正弦波インクリメンタルエンコーダ１ｂの回転方向を示し、時間Ｔ１における正転のときは前記ＮＯＴゲート７０５を経由して前記ＡＮＤゲート７０８を選択し、時間Ｔ２における逆転のときは前記ＡＮＤゲート７０９を選択する。
【００４３】
次に、図９の（ｋ）と（ｌ）は前記Ｄフリップフロップ７０３と７０４の出力を示すが、該Ｄフリップフロップ７０３と７０４は前記ＰＺ入力のシフターであり、従って前記図９の（ｈ）の時刻ｔ６０におけるＰＺ入力の立ち上がりは前記図９の（ｋ）においては時刻ｔ６１にて、前記図９の（ｌ）においては時刻ｔ６２にて' ０' から' １' となる。そして、正転のとき選択される前記ＡＮＤゲート７０８の出力は図９の（ｍ）の時刻ｔ６１からｔ６２で示すとおり' １' となる。同様に前記図９の（ｈ）の時刻ｔ７０におけるＰＺ入力の立ち下がりは前記図９の（ｋ）においては時刻ｔ７１にて、前記図９の（ｌ）においては時刻ｔ７２にて' １' から' ０' となり、逆転のとき選択される前記ＡＮＤゲート７０９の出力は図９の（ｎ）の時刻ｔ７１からｔ７２で示すとおり' １' となるものである。
【００４４】
そして、前記ＡＮＤゲート７０８と７０９の出力は、前記ＯＲゲート７１０により図９の（ｏ）に示す如くパルス幅Ｔｏｓｃの基準原点信号となりＱＺ出力に送出されるものである。かように、前記図９の（ｅ）に示したＱＺ出力の生成について前記図９の（ｆ）から（ｏ）で説明した。ここで、前記図９の（ａ）と（ｅ）において、正転のときＱＺが' １' となる時刻ｔ２における前記正弦波インクリメンタルエンコーダ１ｂの位相と、逆転のときＱＺが' １' となる時刻ｔ３における前記正弦波インクリメンタルエンコーダ１ｂの位相は等しいものであり、これにより、前記正弦波インクリメンタルエンコーダ１ｂの１回転の原点を正転のときも逆転のときも等しく検出するものである。又、前記図９の（ｄ）で示すとおりＰＺ入力の' １' であるパルス幅が長いものであっても、前記図９の（ｅ）と（ｏ）で示す基準原点信号となるＱＺ出力は、前記基準クロックＣＬＫによりパルス幅がＴｏｓｃと充分に短いものであり、これにより、前記正弦波インクリメンタルエンコーダ１ｂの１回転の原点を精度良く検出するものである。なお、これまでの説明では前記図（ｄ）と（ｅ）に示すとおり、基準原点信号は正転のときはＺ相信号の先端から逆転のときは後端から得るとしたが、これに換えて正転のときはＺ相信号の後端から逆転のときは先端から得るとしても良いのは明かである。
【実施例３】
【００４５】
図１０は実施例３の全体の構成を説明する図であり、図１１と図１２は実施例３を更に詳細に説明するものである。始めに該図１０において２ｃは位相速度検出装置、８は本実施例によるパルス位相検出器で、その他図５と同じ記号を付す１ｂ、３、４、５、６及び７はこれと同じ機能を有しその説明を割愛する。
【００４６】
そして、前記位相速度検出装置２ｃは本実施例によるパルス位相検出器８を内蔵し、該パルス位相検出器８はＰ１入力、Ｐ２入力、ＰＺ入力及びｊビットデータサイズのパルス位相出力を有し、該Ｐ１入力には前記パルス抽出器６のＱ１出力から送出される正転パルスが入力され、前記Ｐ２入力には前記パルス抽出器６のＱ２出力からの逆転パルスが入力される。又、前記ＰＺ入力には前記原点検出器７から回転方向が正転であっても逆転であっても、前記正弦波インクリメンタルエンコーダ１ｂの正確な基準原点信号が入力される。これにより、前記パルス位相検出器８は正転方向及び逆転方向に回転するときも、前記正弦波インクリメンタルエンコーダ１ｂの正確なパルス位相を出力するものである。
【００４７】
次に、図１１は前記パルス位相検出器８の一実施例を示すもので、該図１１において８０１はアップ・ダウンカウンタ、８０２は係数器、８０３は加算器及び８０４はセレクタである。そして、前記アップ・ダウンカウンタ８０１は、前記Ｐ１入力をＵＰ入力によりアップカウントし前記Ｐ２入力をＤＯＷＮ入力によりダウンカウントするもので、前記Ｐ１入力には前記図２の（ｅ）で説明する前記パルス抽出器６のＱ１出力から送出される正転パルスが入力されるものである。ここで、以下の説明を容易とする為に実用例を示せば、前記正弦波インクリメンタルエンコーダ１ｂは１回転当たり５１２サイクルのＡ相又はＢ相の正弦波を発生し、これを×４逓倍して正転パルスを生成するとすれば１回転の最大パルス数は２０４８となる。
そして、この正転パルスを計数することにより、前記正弦波インクリメンタルエンコーダ１ｂの回転位相は、１回転が０から最大パルス位相が２０４７の範囲で検出できることとなる。そして、２０４７を１６進数で表記すれば７ＦＦｈであり２進数では１１１、１１１１、１１１１ｂと最大１１ビットのデータサイズとなるが、このとき、前記アップ・ダウンカウンタ８０１の計数するカウント値の最大は１１ビットを越えて大きい、例えば１６ビットとするものである。なお、本発明において１６進数で数値を表記するときは数値の末尾に' ｈ' を、２進数で数値を表記するときは数値の末尾に' ｂ' を添えるものとする。
【００４８】
次に、前記Ｐ２入力には、前記図３の（ｆ）で説明する前記パルス抽出器６のＱ２出力から送出される逆転パルスが入力され、前記アップ・ダウンカウンタ８０１のＤＯＷＮ入力への信号となる。そして、前記正弦波インクリメンタルエンコーダ１ｂが逆転方向に回転するとき、前記アップ・ダウンカウンタ８０１が１６ビットデータサイズとすれば、カウント値は例えば次のとおりダウンカウントする。
０００１ｈ
００００ｈ
ＦＦＦＦｈ
ＦＦＦＥｈ＝１１１１、１１１１、１１１１，１１１０ｂ・・・・（１１）式
ここで、前記アップ・ダウンカウンタ８０１のデータサイズは充分大きく選定しているので該カウント値はダウンカウントによりゼロとなることはなく、後述するＲＳＴ入力により１回転毎にゼロにリセットされるものであり、これにより前記カウント値の最上位ビット（以下、ＭＳＢと称す）は必ず符号ビットとなる。
【００４９】
前記アップ・ダウンカウンタ８０１が出力するカウント値について、以上で説明したことを要約すれば、前記正弦波インクリメンタルエンコーダ１ｂが１回転することにより検出するパルス位相の最大値をｉビットのデータサイズとすれば、前記アップ・ダウンカウンタ８０１が計数するカウント値はｉビットを充分に越えるｊビットのデータサイズとするものである。
【００５０】
次に前記図１１において、前記アップ・ダウンカウンタ８０１が出力するｊビットのカウント値は、前記セレクタ８０４と加算器８０３に送られる。ここで、該図１１において数値データの流れは太線で示すものであり、本発明の他の図の説明においても同様とする。そして、係数器８０２は前記正弦波インクリメンタルエンコーダ１ｂの最大パルス位相をＰｍａｘとすれば、これに１を加算した（Ｐｍａｘ＋１）となる１回転当たりの最大パルス数なる定数を出力する。これを具体例により示せば、最大パルス位相Ｐｍａｘが２０４７のとき係数器８０２は最大パルス数２０４８を出力するものである。
【００５１】
そして、前記加算器８０３は前記アップ・ダウンカウンタ８０１の出力と前記係数器８０２の出力を加算したデータを前記セレクタ８０４に出力し、前記セレクタ８０４はＡ１からＡｊからなるＡ入力に、前述のとおり前記アップ・ダウンカウンタ８０１が出力するカウント値を入力し、Ｂ１からＢｊからなるＢ入力に、前記加算器８０３が出力するデータを入力する。そして、該セレクタ８０４はＳ入力に' ０' が入力されたときはＡ入力を選択し、Ｓ入力に' １' が入力されたときはＢ入力を選択してＱ１からＱｊよりなるＱ出力へ出力し、これにより、前記正弦波インクリメンタルエンコーダ１ｂが正転方向に回転するときも、逆転方向に回転するときも常に正しくパルス位相を検出するものである。
【００５２】
次に、図１２により前記図１１の一実施例の動作について更に説明する。図１２の（ａ）は前記Ｐ１入力の正転パルスの時間的推移を示し、時刻ｔ３迄と時刻ｔ８以降において正転パルスが入力されるとし、図１２の（ｂ）は前記Ｐ２入力の逆転パルスの時間的推移を示し、時刻ｔ４から時刻ｔ７迄逆転パルスが入力されるとし、図１２の（ｃ）は前記ＰＺ入力の状態を示し時刻ｔ１、ｔ２，ｔ５，ｔ６及びｔ９で１回転の原点を検出し' １' になるとしている。
そして、図１２の（ｄ）は前記アップ・ダウンカウンタ８０１が出力するカウント値を示し、正転のときは例えば時刻ｔ１からカウントアップし、時刻ｔ２において最大パルス位相Ｐｍａｘに達すると共に前記ＰＺ入力によりいったんゼロにリセットされつつカウントアップを継続し、逆転のときは時刻ｔ４よりカウントダウンし、時刻ｔ５においてカウント値はゼロになると共に前記ＰＺ入力によってもゼロとなる。
そして、時刻ｔ５以降は前記（１１）式で説明したとおり負の方向にカウントダウンを継続し、時刻ｔ６において負の最大パルス位相（−Ｐｍａｘ）に達すると共に、前記ＰＺ入力により一旦ゼロにリセットされつつカウントダウンを継続する。かように、前記図１２の（ｄ）で示すとおり前記アップ・ダウンカウンタ８０１の出力は、前記正弦波インクリメンタルエンコーダ１ｂの位相を正負で検出するものである。
【００５３】
次に、図１２の（ｅ）は前記アップ・ダウンカウンタ８０１の出力のＭＳＢであるＱｊのワンビット出力、すなわち前記セレクタ８０４のＳ入力を示し、該Ｑｊ出力は前記図１２の（ｄ）に示すカウント値が正のとき' ０' 、負のとき' １' となる。
そして、図１２の（ｆ）は前記セレクタ８０４の出力、すなわち前記パルス位相検出器８が出力するパルス位相の時間的推移を示し、時刻ｔ５迄は前記セレクタ８０４のＳ入力は' ０' であることより、前記アップ・ダウンカウンタ８０１の出力がそのままパルス位相として前記セレクタ８０４の出力となり、時刻ｔ５以降は前記セレクタ８０４のＳ入力は' １' であることより、前記加算器８０３の出力がパルス位相として前記セレクタ８０４の出力となる。
ここで、前記係数器８０２の出力値を（Ｐｍａｘ＋１）とすれば、
（Ｐｍａｘ＋１）−アップ・ダウンカウンタ８０１の出力・・・・（１２）式
なる値が前記加算器８０３の出力となり、前記図１２の（ｆ）の時刻ｔ５以降で示すとおりパルス位相は正数で得ることができる。
又、前記図１２の（ｆ）の時刻ｔ６においてＰＺ入力が' １' となるとき、逆転のときはパルス位相が最大パルス位相にプリセットされるべきものであるが、前記図１２の（ｄ）の時刻ｔ６で示すとおり、前記アップ・ダウンカウンタ８０１は正転のときと同様にゼロにリセットするのみで、簡単な構成で前記正弦波インクリメンタルエンコーダ１ｂのパルス位相検出器を実現するものである。
【００５４】
かように本実施例は、前記アップ・ダウンカウンタ８０１のカウント値のデータサイズを最大パルス位相よりも充分大きくすることを特徴とし、これにより前記正弦波インクリメンタルエンコーダ１ｂの最大パルス位相が異なるものを使用するときも、前記係数器８０２の値を変更するのみでパルス位相を検出可能とし、又、前記アップ・ダウンカウンタ８０１のカウント値が負のときは該カウント値のＭＳＢを用いることにより前記（１２）式による位相をパルス位相とし、正転のときのみならず逆転のときも常に正のパルス位相を得るものである。
又、正転のときのみならず逆転方向に回転するときも、前記ＰＺ入力により前記アップ・ダウンカウンタ８０１のカウント値をゼロにリセットすればよい特徴がある。そして、前記パルス位相検出器８のＰＺ入力には、前記図７の（ｄ）において説明した正転のときも逆転のときも、前記正弦波インクリメンタルエンコーダ１ｂの同じ位相で生成される極めてパルス幅の狭い基準原点信号が供給されているので、超高精度の回転位相を検出できる特徴がある。
【実施例４】
【００５５】
図１３は本発明の請求項４、請求項５、請求項６及び請求項７に関わる実施例４の全体の構成を説明するものであり、図１４は前記図１３の全体の動作を説明する図である。始めに前記図１３において、２ｄは位相速度検出装置、９はマイクロプロセッサ又はデジタルシグナルプロセッサなどを使用するものであるが以下の説明においてはマイクロコントローラと称し、１０はパラレル出力ポート、１１及び１２はパラレル入力ポート、１３及び１４はＡ／Ｄ変換器であり、その他前記図１０と同じ記号を付すものはこれと同じ機能を有しその説明を割愛する。
【００５６】
そして、前記マイクロコントローラ９のＤ１からＤｎはデータバスをＣはリード、ライト信号及びアドレスなどのコントロール信号を表し、前記パラレル出力ポート１０及び前記パラレル入力ポート１１、１２においてＤを付すものはデータ入力を、Ｑを付すものはデータ出力を示し、Ｃはコントロール信号の入力を示す。
又、Ａ／Ｄ変換器１３及び１４はそれぞれ前記正弦波インクリメンタルエンコーダ１ｂのＡ相信号とＢ相信号を入力し、ＳＴ入力がアクティブになるとＡ／Ｄ変換を実行して、アナログの正弦波である前記Ａ相信号とＢ相信号をデジタル値に変換したＡ相デジタル値とＢ相デジタル値をＤ１からＤｋ出力へ送出し、Ｃはコントロール信号の入力を示すものである。
そして、前記マイクロコントローラ９は前記パラレル入力ポート１１経由で前記パルス位相検出器８が出力するパルス位相を、前記パラレル入力ポート１２経由で前記パルス抽出器６が出力する前記シンクロＡ相信号とシンクロＢ相信号を、前記パラレル出力ポート１０経由で前記Ａ／Ｄ変換器１３及び１４のＳＴ入力をアクティブとして、前記Ａ相デジタル値とＢ相デジタル値を連続して入力する。これにより、前記マイクロコントローラ９は前記正弦波インクリメンタルエンコーダ１ｂの回転位相を精度良く検出するものである。  ここで、前記マイクロコントローラ９のＣ出力、パラレル出力ポート１０のＣ入力、パラレル入力ポート１１、１２のＣ入力及びＡ／Ｄ変換器１３、１４のＣ入力は、リード、ライト信号やアドレス信号など通常、マイクロコントローラを使用するときのコントロール信号を表し説明を割愛する。
【００５７】
次に、請求項４からの本発明について説明する前に、図１４により前記図１３の全体の動作について予め説明する。図１４の（ａ）は前記正弦波インクリメンタルエンコーダ１ｂのＡ相とＢ相出力の時間的推移を表し、時刻ｔ３において前記Ａ／Ｄ変換器１３、１４の変換値であるＡ相デジタル値とＢ相デジタル値をそれぞれａ１、ｂ１としている。
又、該図１４の（ａ）に対応して、図１４の（ｂ）と（ｃ）は前記パルス抽出機６が出力する前記シンクロＡ相信号ＱＡとシンクロＢ相信号ＱＢの時間的推移を表し、図１４の（ｄ）は前記原点検出器７が出力する前記基準原点信号ＱＺの時間的推移を、図１４の（ｅ）は前記パルス位相検出器８が出力するパルス位相の時間的推移を示す。
そして、該図１４の（ｄ）の時刻ｔ４においてＱＺは' １' になるとし、このとき前記図１４の（ｅ）においてパルス位相はゼロにリセットされるものである。更に、該図１４の（ｅ）において時刻ｔ１にて前記パルス位相は（ｃ−４）とし、以降は前記図１４の（ｂ）のＱＡと図１４の（ｃ）のＱＢの変化と共に＋１ずつカウントアップし、時刻ｔ２においては（ｃ＋２）、時刻ｔ３においては（ｃ＋６）となり、前述のとおり時刻ｔ４においてゼロとなり、以降は１，２・・・と推移するものである。なお、該図１４の（ｅ）において前記パルス位相は、前記正弦波インクリメンタルエンコーダ１ｂのＡ相とＢ相の一周期を便宜的に４逓倍して検出する例で示している。
【００５８】
次に、図１４の（ｆ）は前記正弦波インクリメンタルエンコーダ１ｂの仮想上の補間位相の時間的推移を模擬的に示し、図１４の（ｇ）は前記マイクロコントローラ９が、前記正弦波インクリメンタルエンコーダ１ｂの回転位相を検出するタイミングを示す。
始めに、前記図１４の（ｅ）で示す前記パルス位相は、前記正弦波インクリメンタルエンコーダ１ｂのＡ相とＢ相の一周期を４逓倍して計数するものであり、図１４の（ｆ）は前記パルス位相の最下位ビット（該Ａ相とＢ相の一周期の４分の１以下）の補間位相の仮想上の時間的推移を示す。
これを更に説明すれば、前記図１４の（ａ）において時間Ｔ３で示す区間が一周期の４分の１であり、この区間の補間位相は前記図１４の（ｆ）の時間Ｔ３に示す如くゼロからαｍａｘの間で推移するものである。
そして、該マイクロコントローラ９は、前記図１３に図示しない電動機の制御など種々のジョブをも実行するものであるが、１スキャン毎に前記正弦波インクリメンタルエンコーダ１ｂの回転位相の検出を、例えば前記図１４の（ｇ）に示す時刻ｔ１、ｔ２及びｔ３にて処理を行うとしている。
そして、該回転位相の検出の為に、前記マイクロコントローラ９は前記パルス位相検出器８が出力するパルス位相と、前記Ａ／Ｄ変換器１３と１４が出力するＡ相デジタル値とＢ相デジタル値を連続して入力し、前記補間位相の検出は前記図１４の（ａ）の時刻ｔ３で入力したａ１とｂ１から前記（１）式により例えばαを得るものである。
かように、粗い位相として前記パルス位相を、密な位相として補間位相を検出し、前記図３２の（ａ）による前記正弦波インクリメンタルエンコーダ１ｂの回転位相を超高精度で得ることとなる。
【００５９】
ここで、前記正弦波インクリメンタルエンコーダ１ｂの回転位相を超高精度で得る為には、例えば前記図１４の（ｅ）の時刻ｔ３において、パルス位相（Ｃ＋６）と補間位相αの組み合わせを正しく検出しなければならず、前記位相速度検出装置２ｄを構成する電子部品のばらつきが有るときも、前記正弦波インクリメンタルエンコーダ１ｂが高速で回転するときも、前記パルス位相を時間Ｔ３の始めの時刻においては（Ｃ＋５）と  又、時間Ｔ３の終わりの時刻においては（Ｃ＋７）と誤って検出してはならない。
以上のとおり実施例４について説明を明かとする為、始めに前記図１３の全体の動作について前記図１４を参照しつつ説明を行ったものであるが、以下に請求項４に関する発明から順次説明を行う。
【００６０】
図１５は前記図１３における前記コンパレータ３の動作を説明するもので、図１５の（ａ）は前記正弦波インクリメンタルエンコーダ１ｂが正転のときのＡ相とＢ相の出力の時間的推移を示し、これに対応して図１５の（ｂ）と（ｃ）は、Ａ相とＢ相の前記コンパレータ３の出力を前記パルス抽出器６で保持したシンクロＡ相信号ＱＡとシンクロＢ相信号ＱＢの時間的推移を示す。
そして、前記コンパレータ３は入力がＶｈ以上で' １' となり入力がＶｌ未満で' ０' となるものであるが、前記図１５はＶｈがＶｌを越えて大きいときの動作を示すものであって、例えば前記図１５の（ａ）の時刻ｔ１においては前記正弦波インクリメンタルエンコーダ１ｂのＡ相がＶｈを越えるので、前記図１５の（ｂ）に示すとおりシンクロＡ相信号ＱＡは' ０' から' １' となり、時刻ｔ２においてはＡ相がＶｌ未満となるので、前記図１５の（ｂ）に示すとおりシンクロＡ相信号ＱＡは' １' から' ０' となる。
以上はＡ相について説明したが、Ｂ相のシンクロＢ相信号ＱＢについても同様に前記図１５の（ｃ）に示す如くとなり、該シンクロＢ相信号ＱＢが前記ＱＡより９０°進みとなる。ここで、図１５の（ｄ）、（ｅ）及び（ｆ）は前記正弦波インクリメンタルエンコーダ１ｂが逆転方向に回転する場合でこれの説明は後述する。
【００６１】
次に、図１６は前記コンパレータ３が前記図１５の（ａ）、（ｂ）及び（ｃ）で示す特性を有して、前記正弦波インクリメンタルエンコーダ１ｂが正転方向に回転し、Ａ相とＢ相の出力がゼロ付近をクロスするとき、本発明による前記パルス位相検出器８が検出するパルス位相の補正を説明するもので、図１６の（ａ）、（ｂ）及び（ｃ）は、前記図１５の（ａ）、（ｂ）及び（ｃ）と同じくそれぞれ前記正弦波インクリメンタルエンコーダ１ｂのＡ相とＢ相の出力、前記パルス抽出器６が出力するシンクロＡ相信号ＱＡ及びシンクロＢ相信号ＱＢを示す。
【００６２】
始めに図１６の（ａ）において、前記図１３における前記マイクロコントローラ９が、前記Ａ／Ｄ変換器１３及び１４から入力する前記Ａ相デジタル値と前記Ｂ相デジタル値をそれぞれＶＡ、ＶＢと表記する。そして、前記マイクロコントローラ９はプログラムにより図示しない仮想コンパレータｖａとｖｂを内蔵し、前記Ａ相デジタル値ＶＡが正のときは前記仮想コンパレータｖａを' １' とし負のときは該ｖａを' ０' とし、同様に前記Ｂ相デジタル値ＶＢが正のときは前記仮想コンパレータｖｂを' １' とし負のときは該ｖｂを' ０' とするものである。
【００６３】
次に、図１６の（ａ）と（ｂ）について説明すると、時刻ｔ１において前記Ａ相デジタル値ＶＡは負なので前記仮想コンパレータｖａは' ０' となり前記シンクロＡ相信号ＱＡも' ０' で、該ｖａとＱＡは一致するので、前記パルス位相は正しいものとし補正を行わない。次に、時刻ｔ２において前記Ａ相デジタル値ＶＡは正なので前記仮想コンパレータｖａは' １' となり、一方、前記シンクロＡ相信号ＱＡは' ０' で、該ｖａとＱＡは不一致なので前記パルス位相は補正が必要であり、前記Ａ相デジタル値ＶＡが正で前記シンクロＡ相信号ＱＡより進んでいるので前記パルス位相に１を加える補正を行い、時刻ｔ３においては、前記Ａ相デジタル値ＶＡは正なので前記仮想コンパレータｖａは' １' となり前記シンクロＡ相信号ＱＡも' １' で、該ｖａとＱＡは一致するので前記パルス位相は正しいものとし補正を行わない。
同様に、時刻ｔ４において前記Ａ相デジタル値ＶＡは正なので前記仮想コンパレータｖａは' １' となり前記シンクロＡ相信号ＱＡも' １' で、該ｖａとＱＡは一致するので前記パルス位相は正しいものとし補正を行わず、時刻ｔ５においては、前記Ａ相デジタル値ＶＡは負なので前記仮想コンパレータｖａは' ０' となり前記シンクロＡ相信号ＱＡは' １' で、該ｖａとＱＡは不一致なので前記パルス位相は補正が必要であり、前記Ａ相デジタル値ＶＡが負でシンクロＡ相信号ＱＡより進んでいるので前記パルス位相に１を加える補正を行う。さらに、時刻ｔ６において前記Ａ相デジタル値ＶＡは負なので前記仮想コンパレータｖａは' ０' となり前記シンクロＡ相信号ＱＡは' ０' で、該ｖａとＱＡは一致するので前記パルス位相は正しいものとし補正を行わない。そして、上記を要約すると前記パルス位相の補正は下記のとおりとなる。
時刻ｔ１：    ＶＡ＜０よりｖａ＝０、ＱＡ＝０→一致するので補正は不要
時刻ｔ２：    ０＜ＶＡよりｖａ＝１、ＱＡ＝０→不一致なので補正が必要
このときはＶＡがゼロを立ち上がりでクロスするときで、ｖａ
がＱＡより正転方向に進みとなり( ＋１) の補正を行う
時刻ｔ３：    ０＜ＶＡよりｖａ＝１、ＱＡ＝１→一致するので補正は不要
時刻ｔ４：    ０＜ＶＡよりｖａ＝１、ＱＡ＝１→一致するので補正は不要
時刻ｔ５：    ＶＡ＜０よりｖａ＝０、ＱＡ＝１→不一致なので補正が必要
このときはＶＡがゼロを立ち下がりでクロスするときで、ｖａ
がＱＡより正転方向に進みとなり( ＋１) の補正を行う
時刻ｔ６：    ＶＡ＜０よりｖａ＝０、ＱＡ＝０→一致するので補正は不要
【００６４】
上記は、前記正弦波インクリメンタルエンコーダ１ｂが正転方向に回転するときのＡ相について説明したが、同様にＢ相について前記図１６の（ａ）と（ｃ）を参照して、前記パルス位相の補正は下記のとおりとなる。
時刻ｔ７：    ０＜ＶＢよりｖｂ＝１、ＱＢ＝１→一致するので補正は不要
時刻ｔ８：    ＶＢ＜０よりｖｂ＝０、ＱＢ＝１→不一致なので補正が必要
このときはＶＢがゼロを立ち下がりでクロスするときで、ｖｂ
がＱＢより正転方向に進みとなり( ＋１) の補正を行う
時刻ｔ９：    ＶＢ＜０よりｖｂ＝０、ＱＢ＝０→一致するので補正は不要
時刻ｔ１０：  ＶＢ＜０よりｖｂ＝０、ＱＢ＝０→一致するので補正は不要
時刻ｔ１１：  ０＜ＶＢよりｖｂ＝１、ＱＢ＝０→不一致なので補正が必要
このときはＶＢがゼロを立ち上がりでクロスするときで、ｖｂ
がＱＢより正転方向に進みとなり( ＋１) の補正を行う
時刻ｔ１２：  ０＜ＶＢよりｖｂ＝１、ＱＢ＝１→一致するので補正は不要
【００６５】
以上で説明した前記図１６は、前記正弦波インクリメンタルエンコーダ１ｂが正転方向に回転するときのパルス位相の補正を説明するものであるが、次に、逆転方向に回転する場合を説明する。始めに、図１５の（ｄ）、（ｅ）及び（ｆ）は前記図１５の（ａ）、（ｂ）及び（ｃ）と同じ信号の逆転の場合の時間的推移を示し、このとき前記シンクロＢ相信号ＱＢは前記シンクロＡ相信号ＱＡより９０°遅れとなる。そして、図１７は前記正弦波インクリメンタルエンコーダ１ｂが逆転方向に回転するときの前記パルス位相の補正を説明するもので、図１７の（ａ）、（ｂ）及び（ｃ）は前記図１６の（ａ）、（ｂ）及び（ｃ）と同じ信号の逆転の場合を示し、Ａ相から順次、前記パルス位相の補正について説明する。
時刻ｔ２１：  ＶＡ＜０よりｖａ＝０、ＱＡ＝０→一致するので補正は不要
時刻ｔ２２：  ０＜ＶＡよりｖａ＝１、ＱＡ＝０→不一致なので補正が必要
このときはＶＡがゼロを立ち上がりでクロスするときで、ｖａ
がＱＡより逆転方向に進みとなり( −１) の補正を行う
時刻ｔ２３：  ０＜ＶＡよりｖａ＝１、ＱＡ＝１→一致するので補正は不要
時刻ｔ２４：  ０＜ＶＡよりｖａ＝１、ＱＡ＝１→一致するので補正は不要
時刻ｔ２５：  ＶＡ＜０よりｖａ＝０、ＱＡ＝１→不一致なので補正が必要
このときはＶＡがゼロを立ち下がりでクロスするときで、ｖａ
がＱＡより逆転方向に進みとなり( −１) の補正を行う
時刻ｔ２６：  ＶＡ＜０よりｖａ＝０、ＱＡ＝０→一致するので補正は不要
かように、逆転方向に回転するときで前記パルス位相に補正が必要となるときは、前記図１６と相違して進みの（−１）の補正を行うものである。
【００６６】
次に、前記図１７の（ａ）と（ｃ）を参照して、前記正弦波インクリメンタルエンコーダ１ｂが逆転方向に回転するときのＢ相の前記パルス位相の補正について説明する。
時刻ｔ２７：  ０＜ＶＢよりｖｂ＝１、ＱＢ＝１→一致するので補正は不要
時刻ｔ２８：  ＶＢ＜０よりｖｂ＝０、ＱＢ＝１→不一致なので補正が必要
このときはＶＢがゼロを立ち下がりでクロスするときで、ｖｂ
がＱＢより逆転方向に進みとなり( −１) の補正を行う
時刻ｔ２９：  ＶＢ＜０よりｖｂ＝０、ＱＢ＝０→一致するので補正は不要
時刻ｔ３０：  ＶＢ＜０よりｖｂ＝０、ＱＢ＝０→一致するので補正は不要
時刻ｔ３１：  ０＜ＶＢよりｖｂ＝１、ＱＢ＝０→不一致なので補正が必要
このときはＶＢがゼロを立ち上がりでクロスするときで、ｖｂ
がＱＢより逆転方向に進みとなり( −１) の補正を行う
時刻ｔ３２：  ０＜ＶＢよりｖｂ＝１、ＱＢ＝１→一致するので補正は不要
【００６７】
以上で説明した前記図１６及び図１７における前記パルス位相の補正を、前記マイクロコントローラ９のプログラムにより実施する例を図１８に示し説明する。ここで、本実施例においては、該図１８に示すように' ｆ' と共に付す追番により処理を行うブロックもしくは処理のルートを指すものとし、前記マイクロコントローラ９は該図１８においてブロックｆ１、ｆ２及びｆ３の次の処理を始めに行う。
ｆ１：Ａ相デジタル値ＶＡとＢ相デジタル値ＶＢを入力する。又、シンクロＡ相信号ＱＡとシンクロＢ相信号ＱＢを入力した後ｆ２へ。
ｆ２：ＶＡがゼロのとき、パルス位相の補正は実施せずルートｆ２１を経て処理を終える。ＶＡがゼロでないときはｆ３へ。
ｆ３：ＶＢがゼロのとき、パルス位相の補正は実施せずルートｆ２１を経て処理を終える。ＶＢがゼロでないときはｆ４へ。      
かように、前記Ａ相デジタル値ＶＡ又はＢ相デジタル値ＶＢがゼロのときは、前記図１６及び図１７による前記パルス位相の補正を実施せず処理を終える。
【００６８】
次に、前記図１８のブロックｆ４からブロックｆ６はＡ相について前記パルス位相の補正を行うか否かを判定し、Ａ相について該パルス位相の補正を行うときは、ブロックｆ７とｆ８で回転方向により補正量を（＋１）とするか（−１）とするかを決定するものである。
始めに、ブロックｆ４からブロックｆ５を経てブロックｆ７に至るルートｆ５ｎ迄の処理について説明すると、ブロックｆ４において前記Ａ相デジタル値ＶＡがゼロ未満のときはブロックｆ５に至り（ブロックｆ４において' ｎｏ' のときはＶＡがゼロ以下であるが、ブロックｆ２においてＶＡがゼロのときを除外しているので、ブロックｆ５に至るときは' ゼロ未満' となる）、このとき前記仮想コンパレータｖａは' ０' となる。
次にブロックｆ５において前記シンクロＡ相信号ＱＡが' １' のときルートｆ５ｎに至る。
すなわち、ルートｆ５ｎに至るときは、前記仮想コンパレータｖａが' ０' 、前記シンクロＡ相信号ＱＡが' １' と不一致となり前記パルス位相の補正が必要であって、このときは前記仮想コンパレータｖａが' ０' なのでＡ相が立ち下がりの場合であり、正転のときは前記図１６の時刻ｔ５における補正が、逆転のときは前記図１７の時刻ｔ２５における補正が必要となる。
次にブロックｆ７において、前記図１６の時刻ｔ５を参照すれば、Ａ相の立ち下がりにおいて前記Ｂ相デジタル値ＶＢが負のとき回転方向を正転と判定して、パルス位相の（＋１）の補正を行うブロックｆ１４へ分岐し、前記図１７の時刻ｔ２５を参照すれば、Ａ相の立ち下がりにおいて前記Ｂ相デジタル値ＶＢが正のとき回転方向を逆転と判定して、パルス位相の（−１）の補正を行うブロックｆ１５へ分岐する。
【００６９】
以上の、ブロックｆ４からブロックｆ５を経てルートｆ５ｎに至る経緯とブロックｆ７の処理について要約すると次のとおりであり、前記図１６及び図１７の処理と対比して示す。
ｆ５ｎ：  ｆ４にてＶＡ＜０よりｖａ＝０，ｆ５にてＱＡ＝１となり、
ｖａとＱＡは不一致で補正が必要でブロックｆ７へ
このルートｆ５ｎはＡ相が立ち下がりのときである
ｆ７：    ０＜ＶＢを満たさないときは正転でｆ１４へ ・・・・・・ 図１６の時刻ｔ５
０＜ＶＢを満たすときは逆転でｆ１５へ     ・・・・・・ 図１７の時刻ｔ２５
同様に、ブロックｆ４からブロックｆ６を経てルートｆ６ｎに至る経緯とブロックｆ８の処理について要約すると次のとおりであり、前記図１６及び図１７の処理と対比して示す。
ｆ６ｎ：  ｆ４にて０＜ＶＡよりｖａ＝１，ｆ６にてＱＡ＝０となり、
ｖａとＱＡは不一致で補正が必要でブロックｆ８へ
このルートｆ６ｎはＡ相が立ち上がりのときである
ｆ８：    ０＜ＶＢを満たすときは正転でｆ１４へ     ・・・・・・ 図１６の時刻ｔ２
０＜ＶＢを満たさないときは逆転でｆ１５へ ・・・・・・ 図１７の時刻ｔ２２
【００７０】
次に、ブロックｆ４からブロックｆ５を経てルートｆ５ｙに至る経緯と、ブロックｆ４からブロックｆ６を経てルートｆ６ｙに至る経緯は以下のとおりで、このときは前記パルス位相の補正を必要とせずＢ相の処理へ移る。
ｆ５ｙ：  ｆ４にてＶＡ＜０よりｖａ＝０，ｆ５にてＱＡ＝０
ｖａとＱＡは一致するので補正が不要でブロックｆ９へ
図１６の時刻ｔ１、ｔ６又は図１７の時刻ｔ２１、ｔ２６のときである
ｆ６ｙ：  ｆ４にて０＜ＶＡよりｖａ＝１，ｆ６にてＱＡ＝１
ｖａとＱＡは一致するので補正が不要でブロックｆ９へ
図１６の時刻ｔ３、ｔ４又は図１７の時刻ｔ２３とｔ２４のときである
【００７１】
以上で、前記図１８において、Ａ相についてブロックｆ４からｆ８で行う前記パルス位相の補正について説明したが、次に、Ｂ相についてブロックｆ９からｆ１３で行うパルス位相の補正について説明を行う。
前記図１８のブロックｆ９からブロックｆ１１はＢ相について前記パルス位相の補正が必要か否かを判定し、ブロックｆ１２とｆ１３で回転方向により、補正量を（＋１）とするか（−１）とするかを決定するものである。
始めに、ブロックｆ９よりブロックｆ１０を経てブロックｆ１２に至るルートｆ１０ｎ迄の処理は、ブロックｆ９において前記Ｂ相デジタル値ＶＢがゼロ未満のときはブロックｆ１０に至り（ブロックｆ９において' ｎｏ' のときはＶＢがゼロ以下であるが、ブロックｆ３においてＶＢがゼロのときを除外しているので、ブロックｆ１０に至るときは' ゼロ未満' となる）、このとき前記仮想コンパレータｖｂは' ０' となる。
次にブロックｆ１０において前記シンクロＢ相信号ＱＢが' １' のときルートｆ１０ｎに至る。
すなわち、ルートｆ１０ｎに至るときは、前記仮想コンパレータｖｂが' ０' 、前記シンクロＢ相信号ＱＢが' １' と不一致となり前記パルス位相の補正が必要であって、このときは前記仮想コンパレータｖｂが' ０' なのでＢ相が立ち下がりの場合であり、正転のときは前記図１６の時刻ｔ８における補正を、逆転のときは前記図１７の時刻ｔ２８における補正が必要となる。
次にブロックｆ１２において、前記図１６の時刻ｔ８を参照すれば、Ｂ相の立ち下がりにおいて前記Ａ相デジタル値ＶＡが正のとき回転方向を正転と判定してパルス位相の（＋１）の補正を行うブロックｆ１４へ分岐し、前記図１７の時刻ｔ２８を参照すれば、Ｂ相の立ち下がりにおいて前記Ａ相デジタル値ＶＡが負のとき回転方向を逆転と判定してパルス位相の（−１）の補正を行うブロックｆ１５へ分岐する。
【００７２】
以上の、ブロックｆ９からブロックｆ１０を経てルートｆ１０ｎに至る経緯と、ブロックｆ１２の処理について要約すると次のとおりであり、前記図１６及び図１７の処理と対比して示す。
ｆ１０ｎ：ｆ９にてＶＢ＜０よりｖｂ＝０，ｆ１０にてＱＢ＝１
ｖｂとＱＢは不一致で補正が必要でブロックｆ１２へ
このルートｆ１０ｎはＢ相が立ち下がりのときである
ｆ１２：  ０＜ＶＡを満たすときは正転でｆ１４へ    ・・・・・・図１６の時刻ｔ８
０＜ＶＡを満たさないときは逆転でｆ１５へ ・・・・・・ 図１７の時刻ｔ２８
同様に、ブロックｆ９からブロックｆ１１を経てルートｆ１１ｎに至る経緯と、ブロックｆ１３の処理について要約すると次のとおりとなり、前記図１６及び図１７の処理と対比して示す。
ｆ１１ｎ：ｆ９にて０＜ＶＢよりｖｂ＝１，ｆ１１にてＱＢ＝０となり、
ｖｂとＱＢは不一致で補正が必要でブロックｆ１３へ
このルートｆ１１ｎはＢ相が立ち上がりのときである
ｆ１３：  ０＜ＶＡを満たさないときは正転でｆ１４へ ・・・・・・ 図１６の時刻ｔ１１
０＜ＶＡを満たすときは逆転でｆ１５へ     ・・・・・・ 図１７の時刻ｔ３１
【００７３】
そして、ブロックｆ９からブロックｆ１０を経てルートｆ１０ｙに至る経緯と、ブロックｆ９からブロックｆ１１を経てルートｆ１１ｙに至る経緯は以下のとおりで、このときは前記パルス位相の補正を必要とせずルートｆ２１を経て図１８の処理を終える。
ｆ１０ｙ：ｆ９にてＶＢ＜０よりｖｂ＝０，ｆ１０にてＱＢ＝０
ｖｂとＱＢは一致するので補正が不要でエンドへ
図１６の時刻ｔ９、ｔ１０又は図１７の時刻ｔ２９、ｔ３０のときである
ｆ１１ｙ：ｆ９にて０＜ＶＢよりｖｂ＝１，ｆ１１にてＱＢ＝１
ｖｂとＱＢは一致するので補正が不要でエンドへ
図１６の時刻ｔ７、ｔ１２又は図１７の時刻ｔ２７とｔ３２のときである
【００７４】
かようにして、前記マイクロコントローラ９は前記図１８の処理を周期的に行うもので、前記コンパレータ３が前記図１５に示す動作を行うとき、前記正弦波インクリメンタルエンコーダ１ｂが正転方向に回転するときも逆転方向に回転するときも、前記図１６、図１７及び図１８に示すとおり、前記正弦波インクリメンタルエンコーダ１ｂのＡ相とＢ相がゼロをクロスするとき前記パルス位相の補正を行う。
この補正は、前記Ａ相デジタル値ＶＡ及びＢ相デジタル値ＶＢを基準として前記パルス位相の補正を行い、前記図３２の（ａ）の上位桁のパルス位相を正確に求めるものである。そして、前記図３２の（ａ）の下位桁の補間位相は、前記パルス位相を補正するときに基準とした前記Ａ相デジタル値ＶＡ及びＢ相デジタル値ＶＢを用いて前記（１）式から得るものである。
かようにして、パルス位相と補間位相の組み合わせは常に正しいことを補償せしめ、前記正弦波インクリメンタルエンコーダ１ｂが低速のみならず高速で回転するときも、常に正しい回転位相を検出することを可能とする。
ここで、かようなパルス補正が必要となるのは、前記図１３においてパルス抽出機６やパルス位相検出器８からなるパルス位相の検出機構と、Ａ／Ｄ変換器１３、１４からなる補間位相の検出機構が異なるものであり、両検出機構において動作レベルのばらつきや動作時間の遅延等によりパルス位相と補間位相の組み合わせが常に正しいことが補償されない為である。
【００７５】
次に、図１９、図２０、図２１及び図２２により請求項５に関する実施例について説明する。始めに、図１９は前記図１５と異なる前記コンパレータ３の動作を示すもので、図１９の（ａ）は前記正弦波インクリメンタルエンコーダ１ｂが正転のときのＡ相とＢ相の出力の時間的推移を示し、これに対応して図１９の（ｂ）と（ｃ）は、Ａ相とＢ相の前記コンパレータ３の出力を前記パルス抽出器６で保持したシンクロＡ相信号ＱＡとシンクロＢ相信号ＱＢの時間的推移を示す。
そして、前記コンパレータ３は入力がＶｈ以上で' １' となり入力がＶｌ未満で' ０' となるものであるが、前記図１９はＶｈがＶｌ未満のときの動作を示すものであって、例えば前記図１９の（ａ）の時刻ｔ１においては前記正弦波インクリメンタルエンコーダ１ｂのＡ相がＶｈを越えるので、前記図１９の（ｂ）に示すとおりシンクロＡ相信号ＱＡは' ０' から' １' となり、時刻ｔ２においてはＡ相がＶｌ未満となるので、前記図１９の（ｂ）に示すとおりシンクロＡ相信号ＱＡは' １' から' ０' となる。
以上はＡ相について説明したが、Ｂ相のシンクロＢ相信号ＱＢについても同様に前記図１９の（ｃ）に示す如くとなり、該シンクロＢ相信号ＱＢが前記ＱＡより９０°進みとなる。そして、図１９の（ｄ）、（ｅ）及び（ｆ）は前記正弦波インクリメンタルエンコーダ１ｂが逆転方向に回転する場合でこれの説明は後述する。
【００７６】
ここで、前記図１５のＶｈがＶｌを越えて大きいときは前記コンパレータ３が通常のヒステリシス特性を有するときであり、これとは別に、前記図１９のＶｈがＶｌ未満のときを考慮するのは、前記コンパレータ３など装置を構成する電子部品に特性のばらつきが有るときも、確実に前記正弦波インクリメンタルエンコーダ１ｂの回転位相を検出する為である。
【００７７】
次に、図２０は前記コンパレータ３が前記図１９の（ａ）、（ｂ）及び（ｃ）で示す特性を有して、前記正弦波インクリメンタルエンコーダ１ｂが正転方向に回転し、Ａ相とＢ相の出力がゼロ付近をクロスするとき、本実施例による前記パルス位相検出器８が検出するパルス位相の補正を説明するもので、図２０の（ａ）、（ｂ）及び（ｃ）は、前記図１９の（ａ）、（ｂ）及び（ｃ）と同じくそれぞれ前記正弦波インクリメンタルエンコーダ１ｂのＡ相とＢ相の出力、前記パルス抽出器６が出力するシンクロＡ相信号ＱＡ及びシンクロＢ相信号ＱＢを示す。
【００７８】
始めに図２０の（ａ）において、前記図１３における前記マイクロコントローラ９が前記Ａ／Ｄ変換器１３、及び１４から入力する前記Ａ相デジタル値と前記Ｂ相デジタル値をそれぞれＶＡ、ＶＢと表記する。そして、前記マイクロコントローラ９はプログラムにより図示しない仮想コンパレータｖａとｖｂを内蔵し、前記Ａ相デジタル値ＶＡが正のときは前記仮想コンパレータｖａを' １' とし負のときは該ｖａを' ０' とし、同様に前記Ｂ相デジタル値ＶＢが正のときは前記仮想コンパレータｖｂを' １' とし負のときは該ｖｂを' ０' とするものである。
【００７９】
次に、図２０の（ａ）と（ｂ）について説明すると、時刻ｔ４１において前記Ａ相デジタル値ＶＡは負なので前記仮想コンパレータｖａは' ０' となり前記シンクロＡ相信号ＱＡも' ０' で、該ｖａとＱＡは一致するので、前記パルス位相は正しいものとし補正を行わない。
次に、時刻ｔ４２において前記Ａ相デジタル値ＶＡは負なので前記仮想コンパレータｖａは' ０' となり、一方前記シンクロＡ相信号ＱＡは' １' で、該ｖａとＱＡは不一致なので前記パルス位相は補正が必要であり、前記Ａ相デジタル値ＶＡが負で前記シンクロＡ相信号ＱＡより遅れているので前記パルス位相から１を減ずる補正を行い、時刻ｔ４３においては、前記Ａ相デジタル値ＶＡは正なので前記仮想コンパレータｖａは' １' となり前記シンクロＡ相信号ＱＡも' １' で、該ｖａとＱＡは一致するので前記パルス位相は正しいものとし補正を行わない。
同様に、時刻ｔ４４において前記Ａ相デジタル値ＶＡは正なので前記仮想コンパレータｖａは' １' となり前記シンクロＡ相信号ＱＡも' １' で、該ｖａとＱＡは一致するので前記パルス位相は正しいものとし補正を行わず、時刻ｔ４５においては、前記Ａ相デジタル値ＶＡは正なので前記仮想コンパレータｖａは' １' となり前記シンクロＡ相信号ＱＡは' ０' で、該ｖａとＱＡは不一致なので前記パルス位相は補正が必要であり、前記Ａ相デジタル値ＶＡが正でシンクロＡ相信号より遅れているので前記パルス位相から１を減ずる補正を行う。
時刻ｔ４６において前記Ａ相デジタル値ＶＡは負なので前記仮想コンパレータｖａは' ０' となり前記シンクロＡ相信号ＱＡは' ０' で、該ｖａとＱＡは一致するので前記パルス位相は正しいものとし補正を行わない。そして、上記を要約すると前記パルス位相の補正は下記のとおりとなる。
時刻ｔ４１：  ＶＡ＜０よりｖａ＝０、ＱＡ＝０→一致するので補正は不要
時刻ｔ４２：  ＶＡ＜０よりｖａ＝０、ＱＡ＝１→不一致なので補正が必要
このときはＶＡがゼロを立ち上がりでクロスするときで、ｖａ
がＱＡより正転方向に遅れとなり( −１) の補正を行う
時刻ｔ４３：  ０＜ＶＡよりｖａ＝１、ＱＡ＝１→一致するので補正は不要
時刻ｔ４４：  ０＜ＶＡよりｖａ＝１、ＱＡ＝１→一致するので補正は不要
時刻ｔ４５：  ０＜ＶＡよりｖａ＝１、ＱＡ＝０→不一致なので補正が必要
このときはＶＡがゼロを立ち下がりでクロスするときで、ｖａ
がＱＡより正転方向に遅れとなり( −１) の補正を行う
時刻ｔ４６：  ＶＡ＜０よりｖａ＝０、ＱＡ＝０→一致するので補正は不要
【００８０】
上記は、前記正弦波インクリメンタルエンコーダ１ｂが正転方向に回転するときのＡ相について説明したが、同様にＢ相について前記図２０の（ａ）と（ｃ）を参照して、前記パルス位相の補正は下記のとおりとなる。
時刻ｔ４７：  ０＜ＶＢよりｖｂ＝１、ＱＢ＝１→一致するので補正は不要
時刻ｔ４８：  ０＜ＶＢよりｖｂ＝１、ＱＢ＝０→不一致なので補正が必要
このときはＶＢがゼロを立ち下がりでクロスするときで、ｖｂ
がＱＢより正転方向に遅れとなり( −１) の補正を行う
時刻ｔ４９：  ＶＢ＜０よりｖｂ＝０、ＱＢ＝０→一致するので補正は不要
時刻ｔ５０：  ＶＢ＜０よりｖｂ＝０、ＱＢ＝０→一致するので補正は不要
時刻ｔ５１：  ＶＢ＜０よりｖｂ＝０、ＱＢ＝１→不一致なので補正が必要
このときはＶＢがゼロを立ち上がりでクロスするときで、ｖｂ
がＱＢより正転方向に遅れとなり( −１) の補正を行う
時刻ｔ５２：  ０＜ＶＢよりｖｂ＝１、ＱＢ＝１→一致するので補正は不要
【００８１】
以上で説明した前記図２０は、前記正弦波インクリメンタルエンコーダ１ｂが正転方向に回転するときのパルス位相の補正を説明するものであるが、次に、逆転方向に回転する場合を説明する。
始めに、図１９の（ｄ）、（ｅ）及び（ｆ）は前記図１９の（ａ）、（ｂ）及び（ｃ）と同じ信号の逆転の場合の時間的推移を示し、このとき前記シンクロＢ相信号ＱＢは前記シンクロＡ相信号ＱＡより９０°遅れとなる。そして、図２１は前記正弦波インクリメンタルエンコーダ１ｂが逆転方向に回転するときの前記パルス位相の補正を説明するもので、図２１の（ａ）、（ｂ）及び（ｃ）は前記図２０の（ａ）、（ｂ）及び（ｃ）と同じ信号の逆転の場合を示し、Ａ相から順次、前記パルス位相の補正について説明する。
時刻ｔ６１：  ＶＡ＜０よりｖａ＝０、ＱＡ＝０→一致するので補正は不要
時刻ｔ６２：  ＶＡ＜０よりｖａ＝０、ＱＡ＝１→不一致なので補正が必要
このときはＶＡがゼロを立ち上がりでクロスするときで、ｖａがＱＡより逆転方向に遅れとなり( ＋１) の補正を行う
時刻ｔ６３：  ０＜ＶＡよりｖａ＝１、ＱＡ＝１→一致するので補正は不要
時刻ｔ６４：  ０＜ＶＡよりｖａ＝１、ＱＡ＝１→一致するので補正は不要
時刻ｔ６５：  ０＜ＶＡよりｖａ＝１、ＱＡ＝０→不一致なので補正が必要
このときはＶＡがゼロを立ち下がりでクロスするときで、ｖａがＱＡより逆転方向に遅れとなり( ＋１) の補正を行う
時刻ｔ６６：  ＶＡ＜０よりｖａ＝０、ＱＡ＝０→一致するので補正は不要
かように、逆転方向に回転するときで前記パルス位相に補正が必要となるときは、前記図２０と相違して遅れの（＋１）の補正を行うものである。
【００８２】
次に、前記図２１の（ａ）と（ｃ）を参照して、前記正弦波インクリメンタルエンコーダ１ｂが逆転方向に回転するとき、同様にＢ相の前記パルス位相の補正について説明する。
時刻ｔ６７：  ０＜ＶＢよりｖｂ＝１、ＱＢ＝１→一致するので補正は不要
時刻ｔ６８：  ０＜ＶＢよりｖｂ＝１、ＱＢ＝０→不一致なので補正が必要
このときはＶＢがゼロを立ち下がりでクロスするときで、ｖｂ
がＱＢより逆転方向に遅れとなり( ＋１) の補正を行う
時刻ｔ６９：  ＶＢ＜０よりｖｂ＝０、ＱＢ＝０→一致するので補正は不要
時刻ｔ７０：  ＶＢ＜０よりｖｂ＝０、ＱＢ＝０→一致するので補正は不要
時刻ｔ７１：  ＶＢ＜０よりｖｂ＝０、ＱＢ＝１→不一致なので補正が必要
このときはＶＢがゼロを立ち上がりでクロスするときで、ｖｂ
がＱＢより逆転方向に遅れとなり( ＋１) の補正を行う
時刻ｔ７２：  ０＜ＶＢよりｖｂ＝１、ＱＢ＝１→一致するので補正は不要
【００８３】
以上で説明した前記図２０及び図２１における前記パルス位相の補正を、前記マイクロコントローラ９のプログラムにより実施する例を図２２に示し説明する。ここで、前記図１８と同様に該図２２において、' ｆ' と共に付す追番により処理を行うブロックもしくは処理のルートを指すものとし、前記マイクロコントローラ９は該図２２においてブロックｆ１、ｆ２及びｆ３の次の処理を始めに行う。
ｆ１：Ａ相デジタル値ＶＡとＢ相デジタル値ＶＢを入力する。又、シンクロＡ相信号
ＱＡとシンクロＢ相信号ＱＢを入力した後ｆ２へ。
ｆ２：ＶＡがゼロのとき、パルス位相の補正は実施せずルートｆ２１を経て処理を終える。ＶＡがゼロでないときはｆ３へ。
ｆ３：ＶＢがゼロのとき、パルス位相の補正は実施せずルートｆ２１を経て処理を終える。ＶＢがゼロでないときはｆ４へ。
かように、前記Ａ相デジタル値ＶＡ又はＢ相デジタル値ＶＢがゼロのときは、前記図２０及び図２１による前記パルス位相の補正を実施せず処理を終える。
【００８４】
次に、前記図２２のブロックｆ４からブロックｆ６はＡ相について前記パルス位相の補正を行うか否かを判定し、Ａ相についてパルス位相の補正を行うときは、ブロックｆ７とｆ８で回転方向により補正量を（＋１）とするか（−１）とするかを決定するものである。
始めに、ブロックｆ４からブロックｆ５を経てブロックｆ７に至るルートｆ５ｎ迄の処理について説明すると、ブロックｆ４において前記Ａ相デジタル値ＶＡがゼロ未満のときはブロックｆ５に至り（ブロックｆ４において' ｎｏ' のときはＶＡがゼロ以下であるが、ブロックｆ２においてＶＡがゼロのときを除外しているので、ブロックｆ５に至るときは' ゼロ未満' となる）、このとき前記仮想コンパレータｖａは' ０' となる。
次にブロックｆ５において前記シンクロＡ相信号ＱＡが' １' のときルートｆ５ｎに至る。
すなわち、ルートｆ５ｎに至るときは、前記仮想コンパレータｖａが' ０' 、前記シンクロＡ相信号ＱＡが' １' と不一致となり前記パルス位相の補正が必要であって、このときは前記仮想コンパレータｖａが' ０' なのでＡ相が立ち上がりの場合であり、正転のときは前記図２０の時刻ｔ４２における補正が、逆転のときは前記図２１の時刻ｔ６２における補正が必要となる。
次にブロックｆ７において、前記図２０の時刻ｔ４２を参照すれば、Ａ相の立ち上がりにおいて前記Ｂ相デジタル値ＶＢが正のとき回転方向を正転と判定して、パルス位相を（−１）の補正を行うブロックｆ１５へ分岐し、前記図２１の時刻ｔ６２を参照すれば、Ａ相の立ち上がりにおいて前記Ｂ相デジタル値ＶＢが負のとき回転方向を逆転と判定して、パルス位相を（＋１）の補正を行うブロックｆ１４へ分岐する。
【００８５】
以上の、ブロックｆ４からブロックｆ５を経由してルートｆ５ｎに至る経緯と、ブロックｆ７の処理について要約すると次のとおりであり、前記図２０及び図２１の処理と対比して示す。
ｆ５ｎ：  ｆ４にてＶＡ＜０よりｖａ＝０，ｆ５にてＱＡ＝１となり、
ｖａとＱＡは不一致で補正が必要でブロックｆ７へ
このルートｆ５ｎはＡ相が立ち上がりのときである
ｆ７：    ０＜ＶＢを満たすときは正転でｆ１５へ     ・・・・・・ 図２０の時刻ｔ４２
０＜ＶＢを満たさないときは逆転でｆ１４へ ・・・・・・ 図２１の時刻ｔ６２
同様に、ブロックｆ４からブロックｆ６を経由してルートｆ６ｎに至る経緯と、ブロックｆ８の処理について要約すると次のとおりであり、前記図２０及び図２１の処理と対比して示す。
ｆ６ｎ：  ｆ４にて０＜ＶＡよりｖａ＝１，ｆ６にてＱＡ＝０となり
ｖａとＱＡは不一致で補正が必要でブロックｆ８へ
このルートｆ６ｎはＡ相が立ち下がりのときである。
ｆ８：    ０＜ＶＢを満たさないときは正転でｆ１５へ ・・・・・・ 図２０の時刻ｔ４５
０＜ＶＢを満たすときは逆転でｆ１４へ     ・・・・・・ 図２１の時刻ｔ６５
【００８６】
次に、ブロックｆ４からブロックｆ５を経てルートｆ５ｙに至る経緯と、ブロックｆ４からブロックｆ６を経てルートｆ６ｙに至る経緯は以下のとおりで、このときは前記パルス位相の補正を必要とせずＢ相の処理へ移る。
ｆ５ｙ：  ｆ４にてＶＡ＜０よりｖａ＝０，ｆ５にてＱＡ＝０
ｖａとＱＡは一致するので補正が不要でブロックｆ９へ
図２０の時刻ｔ４１、ｔ４６、又は図２１の時刻ｔ６１、ｔ６６のときである。
ｆ６ｙ：  ｆ４にて０＜ＶＡよりｖａ＝１，ｆ６にてＱＡ＝１
ｖａとＱＡは一致するので補正が不要でブロックｆ９へ
図２０の時刻ｔ４３、ｔ４４又は図２１の時刻ｔ６３とｔ６４のときである。
【００８７】
以上で、前記図２２においてＡ相についてブロックｆ４からｆ８で行う前記パルス位相の補正について説明したが、次に、Ｂ相についてブロックｆ９からｆ１３で行うパルス位相の補正について説明を行う。
前記図２２のブロックｆ９からブロックｆ１１はＢ相について前記パルス位相の補正を行うか否かを判定し、ブロックｆ１２とｆ１３で回転方向により、補正量を（＋１）とするか（−１）とするかを決定するものである。
始めに、ブロックｆ９よりブロックｆ１０を経てブロックｆ１２に至るルートｆ１０ｎ迄の処理は、ブロックｆ９において前記Ｂ相デジタル値ＶＢがゼロ未満のときはブロックｆ１０に至り（ブロックｆ９において' ｎｏ' のときはＶＢがゼロ以下であるが、ブロックｆ３においてＶＢがゼロのときを除外しているので、ブロックｆ１０に至るときは' ゼロ未満' となる）、このとき前記仮想コンパレータｖｂは' ０' となる。
次にブロックｆ１０において前記シンクロＢ相信号ＱＢが' １' のときルートｆ１０ｎに至る。
すなわち、ルートｆ１０ｎに至るときは、前記仮想コンパレータｖｂが' ０' と、前記シンクロＢ相信号ＱＢが' １' と不一致となり前記パルス位相の補正が必要であって、このときは前記仮想コンパレータｖｂが' ０' なのでＢ相が立ち上がりの場合であり、正転のときは前記図２０の時刻ｔ５１における補正が、逆転のときは前記図２１の時刻ｔ７１における補正が必要となる。
次にブロックｆ１２において、前記図２０の時刻ｔ５１を参照すれば、Ｂ相の立ち上がりにおいて前記Ａ相デジタル値ＶＡが負のとき回転方向を正転と判定してパルス位相の（−１）の補正を行うブロックｆ１５へ分岐し、前記図２１の時刻ｔ７１を参照すれば、Ｂ相の立ち上がりにおいて前記Ａ相デジタル値ＶＡが正のとき回転方向を逆転と判定してパルス位相の（＋１）の補正を行うブロックｆ１４へ分岐する。
【００８８】
以上の、ブロックｆ９からブロックｆ１０を経てルートｆ１０ｎに至る経緯と、ブロックｆ１２の処理について要約すると次のとおりであり、前記図２０及び図２１の処理と対比して示す。
ｆ１０ｎ：ｆ９にてＶＢ＜０よりｖｂ＝０，ｆ１０にてＱＢ＝１となり
ｖｂとＱＢは不一致で補正が必要でブロックｆ１２へ
このルートｆ１０ｎはＢ相が立ち上がりのときである。
ｆ１２：  ０＜ＶＡを満たさないときは正転でｆ１５へ ・・・・・・ 図２０の時刻ｔ５１
０＜ＶＡを満たすときは逆転でｆ１４へ    ・・・・・・図２１の時刻ｔ７１
同様に、ブロックｆ９からブロックｆ１１を経てルートｆ１１ｎに至る経緯と、ブロックｆ１３の処理について要約すると次のとおりとなり、前記図２０及び図２１の処理と対比して示す。
ｆ１１ｎ：ｆ９にて０＜ＶＢよりｖｂ＝１，ｆ１１にてＱＢ＝０となり
ｖｂとＱＢは不一致で補正が必要でブロックｆ１３へ
このルートｆ１１ｎはＢ相が立ち下がりのときである。
ｆ１３：  ０＜ＶＡを満たすときは正転でｆ１５へ    ・・・・・・図２０の時刻ｔ４８
０＜ＶＡを満たさないときは逆転でｆ１４へ ・・・・・・ 図２１の時刻ｔ６８
【００８９】
そして、ブロックｆ９からブロックｆ１０を経てルートｆ１０ｙに至る経緯と、ブロックｆ９からブロックｆ１１を経てルートｆ１１ｙに至る経緯は以下のとおりで、このときは前記パルス位相の補正を必要とせずルートｆ２１を経て図２２の処理を終える。
ｆ１０ｙ：ｆ９にてＶＢ＜０よりｖｂ＝０，ｆ１０にてＱＢ＝０
ｖｂとＱＢは一致するので補正が不要でエンドへ
図２０の時刻ｔ４９、ｔ５０、又は図２１の時刻ｔ６９、ｔ７０のときである。
ｆ１１ｙ：ｆ９にて０＜ＶＢよりｖｂ＝１，ｆ１１にてＱＢ＝１
ｖｂとＱＢは一致するので補正が不要でエンドへ
図２０の時刻ｔ４７、ｔ５２、又は図２１の時刻ｔ６７とｔ７２のときである。
【００９０】
かようにして、前記マイクロコントローラ９は前記図２２の処理を周期的に行い、前記コンパレータ３が前記図１９に示す動作を行うとき、前記正弦波インクリメンタルエンコーダ１ｂが正転方向に回転するときも逆転方向に回転するときも前記図２０、図２１及び図２２に示すとおり、前記正弦波インクリメンタルエンコーダ１ｂのＡ相とＢ相がゼロをクロスするときも前記パルス位相の補正を行い、前記正弦波インクリメンタルエンコーダ１ｂが低速のみならず高速で回転するときも、常に正しいパルス位相を検出するものである。
【００９１】
ここで、前記図１３において、前記パルス位相検出器８が出力するパルス位相の補正の実施例を、前記図１８と図２２に示し説明を行うものであるが、該実施例では前記正弦波インクリメンタルエンコーダ１ｂの前記Ａ相デジタル値ＶＡ、又は前記Ｂ相デジタル値ＶＢがゼロのときを除外するものであった。
次に、前記図１３において該ＶＡ又はＶＢがゼロのとき、本発明による前記パルス位相の補正の実施例を示し説明する。
【００９２】
始めに、図２３、図２４及び図２５は、前記図１３における前記コンパレータ３が前記図１５の（ａ）から（ｆ）で示す特性を有するときで、前記正弦波インクリメンタルエンコーダ１ｂのＡ相信号又はＢ相信号がゼロのときであって、請求項６に関わる前記パルス位相の補正の実施例を説明するものである。そして、図２３について説明すれば、図２３の（ａ）は前記正弦波インクリメンタルエンコーダ１ｂが正転方向に回転するときのＡ相信号とＢ相信号の時間的推移を示し、図２３の（ｂ）と（ｃ）はそれぞれ前記パルス抽出器６が出力するシンクロＡ相信号ＱＡ及びシンクロＢ相信号ＱＢを示す。そして、前記図２３の（ａ）では前記コンパレータ３が動作するレベルを前記図１５の（ａ）と同じくＶｈ及びＶｌとし、ＶｈがＶｌより大きい場合であって、前記図１３における前記マイクロコントローラ９が前記Ａ／Ｄ変換器１３及び１４から入力する前記Ａ相デジタル値とＢ相デジタル値をそれぞれＶＡ、ＶＢとしている。そして、該Ａ相デジタル値ＶＡは時刻ｔ１３及びｔ１４においてゼロになるとし、前記Ｂ相デジタル値ＶＢは時刻ｔ１５及びｔ１６においてゼロになるとし、次に、Ａ相を例とすれば図２３の（ｂ）に示すとおり、前記シンクロＡ相信号ＱＡは時刻（ｔ１３＋Δｔ１３）において' １' に、時刻（ｔ１４＋Δｔ１４）において' ０' に遅延して変化するものである。
【００９３】
次に、図２３の（ｄ）は前記パルス位相検出器８が出力するパルス位相を示し、該パルス位相は前記シンクロＡ相信号ＱＡと前記シンクロＢ相信号ＱＢと、完全に同期してカウントアップ又はダウンするもので、Ａ相を例にすれば時刻（ｔ１３＋Δｔ１３）にて前記シンクロＡ相信号ＱＡが' １' となる時に前記パルス位相は（Ｃ−１）から（Ｃ）に、時刻（ｔ１４＋Δｔ１４）にて前記シンクロＡ相信号ＱＡが' ０' となる時に前記パルス位相は（Ｃ＋１）から（Ｃ＋２）にカウントアップする。
そして、図２３の（ｅ）は前記マイクロコントローラ９が前記Ａ相デジタル値ＶＡとＢ相デジタル値ＶＢから算出し得る補間位相を仮想的に連続して表し、例えば時刻ｔ１３からｔ１５迄、補間位相はゼロから増大し最大補間位相がαｍａｘ迄カウントアップするものである。
【００９４】
ここで、前記マイクロコントローラ９が、例えば時刻ｔ１３においてＡ相デジタル値ＶＡがゼロであることより補間位相をゼロと検出した時、前記パルス位相は前記図２３の（ｄ）で示すとおり（Ｃ−１）である。然るに、図２３の（ｅ）において点Ａのパルス位相を（Ｃ−１）とすれば、該点Ａより補間位相が増大し最大補間位相αｍａｘに到達した後ゼロとなる点Ｂ、すなわち時刻ｔ１３のパルス位相は１を加えて（Ｃ）と補正すべきであり、この補正後の仮想パルス位相の時間的推移を図２３の（ｆ）に示す。かように、前記図２３の（ｄ）に示すパルス位相が理想的な前記図２３の（ｆ）とならない理由は、前記コンパレータ３を実現するに当たり、' １' を検出するレベルＶｈと' ０' を検出するレベルＶｌを共にゼロとすることは非実用的もしくは実現が不可能であって、ＶｈとＶｌが前記図１５のとおりとなることを禁じ得ない為である。
【００９５】
そして、前記正弦波インクリメンタルエンコーダ１ｂが正転方向に回転するとき、Ａ相について上記に示した本発明による補正の処理を要約すれば、前記マイクロコントローラ９は前記図２３の（ａ）に示すＡ相の立ち上がりの時刻ｔ１３においてＡ相デジタル値ＶＡがゼロを検出し、前記図２３の（ｂ）に示す如く前記シンクロＡ相信号ＱＡが' ０' を検出した時、前記Ｖｈがゼロより大きいことに起因し、該シンクロＡ相信号ＱＡが' １' となるべきところが遅延してパルス位相がカウントアップしていないと判定し、前記図２３の（ｄ）の時刻ｔ１３のパルス位相（Ｃ−１）に１を加える補正を行い（Ｃ）とする。  同様に、前記マイクロコントローラ９は前記図２３の（ａ）に示すＡ相の立ち下がりの時刻ｔ１４においてＡ相デジタル値ＶＡがゼロを検出し、前記図２３の（ｂ）に示す如く前記シンクロＡ相信号ＱＡが' １' を検出した時、Ｖｌがゼロより小さいことに起因し、該シンクロＡ相信号ＱＡが' ０' となるべきところが遅延していると判定し、前記図２３の（ｄ）の時刻ｔ１４のパルス位相（Ｃ＋１）に１を加える補正を行い（Ｃ＋２）とする。
以上はＡ相について説明を行ったがＢ相についても同様に、前記マイクロコントローラ９は前記図２３の（ａ）の時刻ｔ１５及びｔ１６においてＢ相デジタル値ＶＢがゼロを検出した時、Ａ相と同様の処理を行うものである。
【００９６】
以上で説明した図２３は、前記正弦波インクリメンタルエンコーダ１ｂが正転方向に回転するときであるが、次に逆転方向に回転するとき、前記マイクロコントローラ９が前記正弦波インクリメンタルエンコーダ１ｂのＡ相信号又はＢ相信号をゼロと検出したとき、前記パルス位相の補正を図２４に依り説明するもので、該図２４の（ａ）から（ｅ）は前記図２３のそれと同じ信号の時間的推移を示し、図２４の（ｄ）においてはパルス位相が時間の推移とともにカウントダウンし、図２４の（ｅ）における補間位相も減少方向に推移するものである。そして、図２４の（ａ）において前記Ａ相デジタル値ＶＡは時刻ｔ３３及びｔ３４においてゼロになるとし、前記Ｂ相デジタル値ＶＢは時刻ｔ３５及びｔ３６においてゼロになるとし、Ａ相を例とすれば図２４の（ｂ）に示すとおり、前記シンクロＡ相信号ＱＡは時刻（ｔ３３＋Δｔ３３）において' １' に、時刻（ｔ３４＋Δｔ３４）において' ０' に遅延して変化するものである。
【００９７】
そして、図２４の（ｄ）の前記パルス位相検出器８が出力するパルス位相は、前記シンクロＡ相信号ＱＡとＢ相デジタル値ＶＢと、完全に同期してカウントアップ又はダウンするもので、Ａ相を例にすれば時刻（ｔ３３＋Δｔ３３）にて前記シンクロＡ相信号ＱＡが' １' となる時に前記パルス位相は（Ｃ）から（Ｃ−１）に、時刻（ｔ３４＋Δｔ３４）にて前記シンクロＡ相信号ＱＡが' ０' となる時に前記パルス位相は（Ｃ−２）から（Ｃ−３）にカウントダウンする。そして、図２４の（ｅ）は、前記マイクロコントローラ９が前記Ａ相デジタル値ＶＡとＢ相デジタル値ＶＢから算出し得る補間位相を仮想的に連続して表し、例えば時刻ｔ３３からｔ３６迄、補間位相は最大補間位相がαｍａｘからゼロ迄カウントダウンするものである。
【００９８】
ここで、前記マイクロコントローラ９は、例えば前記図２４の（ａ）の時刻ｔ３３の点ＢにおいてＡ相デジタル値ＶＡをゼロと検出したとき、補間位相を前記図２４の（ｅ）の点Ｂに示すとおりゼロと算出するもので、このとき前記図２４の（ｄ）で示すとおり前記パルス位相は（Ｃ）である。ここで、図２４の（ｅ）において点Ａのパルス位相を（Ｃ）とすれば、該点Ａより補間位相が減少してゼロとなる点Ｂのパルス位相も同じく（Ｃ）で正しい。かように、前記正弦波インクリメンタルエンコーダ１ｂが逆転方向に回転するとき、前記マイクロコントローラ９がＡ相デジタル値ＶＡ又はＢ相デジタル値ＶＢをゼロと検出しても、正転のときと相違してパルス位相を補正する必要が無いものである。
【００９９】
以上で説明した前記図１３のコンパレータが前記図１５の動作特性を有するとき、正転のときは前記図２３、逆転のときは前記図２４で説明した前記パルス位相の補正を、前記マイクロコントローラ９のプログラムにより実施する例を図２５に示し説明する。始めに、前記マイクロコントローラ９は該図２５においてブロックｆ１、ｆ２及びｆ３の次の処理を行う。
ｆ１：Ａ相デジタル値ＶＡ、Ｂ相デジタル値ＶＢ、シンクロＡ相信号ＱＡ、シンクロＢ相信号ＱＢ及びパルス位相を入力した後ｆ２へ。
ｆ２：ＶＡがゼロのときはｆ４へ、ＶＡがゼロでないときはｆ３へ。
ｆ３：ＶＢがゼロのときはｆ４へ、ＶＢがゼロでないときはパルス位相の補正は実施せずルートｆ３ｎを経て処理を終える。
かように、前記Ａ相デジタル値ＶＡ又はＢ相デジタル値ＶＢがゼロのときは、前記図２３及び図２４による前記パルス位相の補正を実施するものでブロックｆ４へ進む。
次に、ブロックｆ４では前記正弦波インクリメンタルエンコーダ１ｂの回転方向の検出を行い、逆転のときは前記図２４において説明したとおり、前記パルス位相の補正は必要としないのでルートｆ４ｎを経て処理を終え、正転のときはブロックｆ５へ進み、前記図２３において説明したパルス位相の補正を行う。なお、回転方向の検出は例えば、パルス位相が前スキャンより増加していれば正転、減少していれば逆転とすればよい。
【０１００】
そして、ブロックｆ５は前記Ａ相デジタル値ＶＡがゼロであるか、前記Ｂ相デジタル値ＶＢがゼロであるかを判定し、ブロックｆ６からｆ８はＡ相の前記ＶＡがゼロのときの前記パルス位相の補正に関するもので、前記図２３を参照し次の処理を行う。
ｆ５：    ＶＡがゼロのときはｆ６へ進み、Ａ相によるパルス位相の補正を行う。ＶＡがゼロでないときはＶＢがゼロでありｆ９へ進み、Ｂ相によるパルス位相の補正を行う。  ｆ６：    ＶＡがゼロでＶＢが正のときはＶＡが立ち上がりのときでｆ８へ進む。又ＶＡがゼロでＶＢが負のときはＶＡが立ち下がりのときでｆ７へ進む。
ｆ７：    このときはＶＡが立ち下がりのときゼロとなるときで、このときＱＡが' １' ならばＱＡが' ０' となるが遅れているので、ｆ１２へ進み前記パルス位相に１を加える補正を行う。ＱＡが' ０' のとき補正は不要でｆ１１ｎを経て処理を終える。
ｆ８：    このときはＶＡが立ち上がりのときゼロとなるときで、このときＱＡが' ０' ならばＱＡが' １' となるを遅れているので、ｆ１２へ進み前記パルス位相に１を加える補正を行う。ＱＡが' １' のとき補正は不要でｆ１１ｎを経て処理を終える。
次に、ブロックｆ９からｆ１１は、Ｂ相の前記ＶＢがゼロのときの前記パルス位相の補正に関するもので、Ａ相と同様に前記図２３を参照し次の処理を行う。
ｆ９：    ＶＢがゼロでＶＡが負のときはＶＢが立ち上がりのときでｆ１１へ進む。また、ＶＢがゼロでＶＡが正のときはＶＢが立ち下がりのときで、ｆ１０へ進む。
ｆ１０：  このときはＶＢが立ち下がりのときゼロとなるときで、このときＱＢが' １' ならばＱＢが' ０' となるを遅れているので、ｆ１２へ進み前記パルス位相に１を加える補正を行う。ＱＢが' ０' のとき補正は不要でｆ１１ｎを経て処理を終える。
ｆ１１：  このときはＶＢが立ち上がりのときゼロとなるときで、このときＱＢが' ０' ならばＱＢが' １' となるを遅れているので、ｆ１２へ進み前記パルス位相に１を加える補正を行う。ＱＢが' １' のとき補正は不要でｆ１１ｎを経て処理を終える。
【０１０１】
かようにして、前記図１３のコンパレータ３が前記図１５に示す動作を行うとき、前記正弦波インクリメンタルエンコーダ１ｂが正転方向に回転するときも逆転方向に回転するときも前記図２３、図２４及び図２５に示すとおり、前記マイクロコントローラ９が前記正弦波インクリメンタルエンコーダ１ｂのＡ相デジタル値ＶＡ又はＢ相デジタル値ＶＢをゼロと検出したときに前記パルス位相の補正を行う。これにより、前記正弦波インクリメンタルエンコーダ１ｂが低速のみならず高速で回転するときも、常に正しいパルス位相を検出するものである。
【０１０２】
次に、前記図１３における前記コンパレータ３が、前記図１９の（ａ）から（ｆ）で示す特性を有するときであって、前記正弦波インクリメンタルエンコーダ１ｂのＡ相信号又はＢ相信号がゼロのとき、請求項７に関わる前記パルス位相の補正の実施例を図２６、図２７及び図２８により説明する。
始めに、図２６について前記図２３と類似して、図２６の（ａ）は前記正弦波インクリメンタルエンコーダ１ｂが正転方向に回転するときのＡ相信号とＢ相信号の時間的推移を示し、図２６の（ｂ）と（ｃ）はそれぞれ前記パルス抽出器６が出力するシンクロＡ相信号ＱＡ及びシンクロＢ相信号ＱＢを示す。
そして、前記図２６の（ａ）では前記コンパレータ３が動作するレベルを前記図１９の（ａ）と同じくＶｈ及びＶｌとし、ＶｈがＶｌより小さい場合であって、前記図１３における前記マイクロコントローラ９が前記Ａ／Ｄ変換器１３及び１４から入力する前記Ａ相デジタル値とＢ相デジタル値をそれぞれＶＡ、ＶＢとしている。そして、該Ａ相デジタル値ＶＡは時刻ｔ５３及びｔ５４においてゼロになるとし、前記Ｂ相デジタル値ＶＢは時刻ｔ５５及びｔ５６においてゼロになるとし、次にＡ相を例とすれば図２６の（ｂ）に示すとおり、前記シンクロＡ相信号ＱＡは時刻（ｔ５３−Δｔ５３）において' １' に、時刻（ｔ５４−Δｔ５４）において' ０' に早期に変化するものである。
【０１０３】
次に、図２６の（ｄ）は前記パルス位相検出器８が出力するパルス位相を示し、該パルス位相は前記シンクロＡ相信号ＱＡと前記シンクロＢ相信号ＱＢと、完全に同期してカウントアップ又はダウンするもので、Ａ相を例にすれば時刻（ｔ５３−Δｔ５３）にて前記シンクロＡ相信号ＱＡが' １' となる時に前記パルス位相は（Ｃ−１）から（Ｃ）に、時刻（ｔ５４−Δｔ５４）にて前記シンクロＡ相信号ＱＡが' ０' となる時に前記パルス位相は（Ｃ＋１）から（Ｃ＋２）にカウントアップする。
そして、図２６の（ｅ）は前記マイクロコントローラ９が前記Ａ相デジタル値ＶＡとＢ相デジタル値ＶＢから算出し得る補間位相を仮想的に連続して表し、例えば時刻ｔ５３からｔ５５迄、補間位相はゼロから最大補間位相がαｍａｘ迄カウントアップするものである。
【０１０４】
かような前記図２６において、Ａ相デジタル値ＶＡ又はＢ相デジタル値ＶＢがゼロのときのパルス位相の補正について次に示すと、前記マイクロコントローラ９は、例えば前記図２６の（ａ）の時刻ｔ５３の点ＢにおいてＡ相デジタル値ＶＡをゼロと検出したとき、補間位相を前記図２６の（ｅ）の点Ｂに示すゼロと算出するもので、このとき前記図２６の（ｄ）で示すとおり前記パルス位相は（Ｃ）である。
ここで、図２６の（ｅ）において点Ａのパルス位相を（Ｃ−１）とすれば、該点Ａより補間位相が増大し最大補間位相αｍａｘに到達した後ゼロとなる点Ｂ、すなわち時刻ｔ５３のパルス位相は１を加えて（Ｃ）となるべきもので、前記図２６の（ｄ）から得られるパルス位相と等しい。これは、時刻ｔ５３より時間Δｔ５３だけ早い時刻に、前記図２６のパルス位相がカウントアップされる為である。
かように、前記正弦波インクリメンタルエンコーダ１ｂが正転方向に回転するとき、前記マイクロコントローラ９がＡ相デジタル値ＶＡ又はＢ相デジタル値ＶＢをゼロと検出しても、パルス位相を補正する必要が無いものである。
【０１０５】
以上で説明した図２６は、前記コンパレータ３が前記図１９の（ａ）から（ｆ）で示す特性を有するときに、前記正弦波インクリメンタルエンコーダ１ｂが正転方向に回転するときであるが、次に逆転方向に回転するとき、前記マイクロコントローラ９が前記正弦波インクリメンタルエンコーダ１ｂのＡ相信号又はＢ相信号をゼロと検出したとき、前記パルス位相の補正を図２７に依り説明するもので、該図２７の（ａ）から（ｅ）は前記図２６のそれと同じ信号の時間的推移を示し、図２７の（ｄ）においてはパルス位相が時間の推移とともにカウントダウンし、図２７の（ｅ）における補間位相も減少方向に推移するものである。
そして、図２７の（ａ）において前記Ａ相デジタル値ＶＡは時刻ｔ７３及びｔ７４においてゼロになるとし、前記Ｂ相デジタル値ＶＢは時刻ｔ７５及びｔ７６においてゼロになるとし、Ａ相を例とすれば図２７の（ｂ）に示すとおり、前記シンクロＡ相信号ＱＡは時刻（ｔ７３−Δｔ７３）において' １' に、時刻（ｔ７４−Δｔ７４）において' ０' に早期に変化するものである。
【０１０６】
そして、図２７の（ｄ）の前記パルス位相検出器８が出力するパルス位相は、前記シンクロＡ相信号ＱＡとＢ相デジタル値ＶＢと、完全に同期してカウントアップ又はダウンするもので、Ａ相を例にすれば時刻（ｔ７３−Δｔ７３）にて前記シンクロＡ相信号ＱＡが' １' となる時に前記パルス位相は（Ｃ）から（Ｃ−１）に、時刻（ｔ７４−Δｔ７４）にて前記シンクロＡ相信号ＱＡが' ０' となる時に前記パルス位相は（Ｃ−２）から（Ｃ−３）にカウントダウンする。
そして、図２７の（ｅ）は、前記マイクロコントローラ９が前記Ａ相デジタル値ＶＡとＢ相デジタル値ＶＢから算出し得る補間位相を仮想的に連続して表し、例えば時刻ｔ７５からｔ７３迄、補間位相は最大補間位相がαｍａｘからゼロ迄カウントダウンするものである。
【０１０７】
かような前記図２７において、Ａ相デジタル値ＶＡ又はＢ相デジタル値ＶＢがゼロのときのパルス位相の補正について次に示すと、前記マイクロコントローラ９は、例えば前記図２７の（ａ）の時刻ｔ７３の点ＢにおいてＡ相デジタル値ＶＡをゼロと検出したとき、補間位相を前記図２７の（ｅ）の点Ｂに示すとおりゼロと算出するもので、このとき前記図２７の（ｄ）で示すとおり前記パルス位相は（Ｃ−１）である。
ここで、図２７の（ｅ）において点Ａのパルス位相を（Ｃ）とすれば、該点Ａより補間位相が減少しゼロとなる点Ｂ、すなわち時刻ｔ７３のパルス位相も本来（Ｃ）のままであり、これにより時刻ｔ７３における前記図２７の（ｄ）で示す前記パルス位相は１を加算する補正が必要である。
かように、パルス位相の補正が必要となる理由は、前記コンパレータ３を実現するに当たり、' １' を検出するレベルＶｈと' ０' を検出するレベルＶｌを共にゼロとすることは非実用的もしくは実現が不可能であって、ＶｈとＶｌが前記図１５又は前記図１９のとおりとなることを禁じ得ない為である。
【０１０８】
そして、前記正弦波インクリメンタルエンコーダ１ｂが逆転方向に回転するとき、Ａ相について上記に示した本実施例による補正の処理を要約すれば、前記マイクロコントローラ９は前記図２７の（ａ）に示すＡ相の立ち上がりの時刻ｔ７３においてＡ相デジタル値ＶＡがゼロを検出し、前記図２７の（ｂ）に示す如く前記シンクロＡ相信号ＱＡが' １' を検出した時、前記Ｖｈがゼロより小さいことに起因し、該シンクロＡ相信号ＱＡが' ０' であるべきところが早期に' １' に変化してパルス位相が余分にダウンカウントしていると判定し、前記図２７の（ｄ）の時刻ｔ７３のパルス位相（Ｃ−１）に１を加えて戻す補正を行い（Ｃ）とする。
同様に、前記マイクロコントローラ９は前記図２７の（ａ）に示すＡ相の立ち下がりの時刻ｔ７４においてＡ相デジタル値ＶＡがゼロを検出し、前記図２７の（ｂ）に示す如く前記シンクロＡ相信号ＱＡが' ０' を検出した時、Ｖｌがゼロより大きいことに起因し、該シンクロＡ相信号ＱＡが' １' であるべきところが早期に' ０' に変化してパルス位相が余分にダウンカウントしていると判定し、前記図２７の（ｄ）の時刻ｔ７４のパルス位相（Ｃ−３）に１を加えて戻す補正を行い（Ｃ−２）とする。
以上はＡ相について説明を行ったがＢ相についても同様に、前記マイクロコントローラ９は前記図２７の（ａ）の時刻ｔ７５及びｔ７６においてＢ相デジタル値ＶＢをゼロと検出した時、Ａ相と同様の処理を行うものである。
【０１０９】
以上で説明した前記図１３のコンパレータ３が前記図１９の動作特性を有するとき、正転のときは前記図２６、逆転のときは前記図２７で説明した前記パルス位相の補正を、前記マイクロコントローラ９のプログラムにより実施する例を図２８に示し説明する。始めに、前記マイクロコントローラ９は該図２８においてブロックｆ１、ｆ２及びｆ３の次の処理を行う。
ｆ１：Ａ相デジタル値ＶＡ、Ｂ相デジタル値ＶＢ、シンクロＡ相信号ＱＡ、シンクロＢ相信号ＱＢ及びパルス位相を入力した後ｆ２へ。
ｆ２：ＶＡがゼロのときはｆ４へ、ＶＡがゼロでないときはｆ３へ。
ｆ３：ＶＢがゼロのときはｆ４へ、ＶＢがゼロでないときはパルス位相の補正は実施せずルートｆ３ｎを経て処理を終える。
かように、前記Ａ相デジタル値ＶＡ又はＢ相デジタル値ＶＢがゼロのときは、前記図２６及び図２７による前記パルス位相の補正を実施するものでブロックｆ４へ進む。
次に、ブロックｆ４では前記正弦波インクリメンタルエンコーダ１ｂの回転方向の検出を行い、正転のときは前記図２６において説明したとおり前記パルス位相の補正は必要としないのでルートｆ４ｙを経て処理を終え、逆転のときはブロックｆ１５へ進み、前記図２７において説明したパルス位相の補正を行う。
なお、回転方向の検出は例えば、パルス位相が前スキャンより増加していれば正転、減少していれば逆転とすればよい。
【０１１０】
そして、図２８のブロックｆ１５は前記Ａ相デジタル値ＶＡがゼロであるか、前記Ｂ相デジタル値ＶＢがゼロであるかを判定し、ブロックｆ１６からｆ１８はＡ相の前記ＶＡがゼロのときの前記パルス位相の補正に関するもので、前記図２７を参照し次の処理を行う。
ｆ１５：  ＶＡがゼロのときはｆ１６へ進み、Ａ相によるパルス位相の補正を行う。ＶＡがゼロでないときはＶＢがゼロでありｆ１９へ進み、Ｂ相によるパルス位相の補正を行う。
ｆ１６：  ＶＡがゼロでＶＢが負のときはＶＡが立ち上がりのときでｆ１８へ進む。また、ＶＡがゼロでＶＢが正のときはＶＡが立ち下がりのときでｆ１７へ進む。
ｆ１７：  このときはＶＡが立ち下がりのときゼロとなるときで、このときＱＡが' ０' ならばＱＡが' ０' となるが早まってパルス位相が余分にダウンカウントしているのでｆ２２へ進み、前記パルス位相に１を加えて戻す補正を行う。ＱＡが' １' のとき補正は不要でｆ２１ｎを経て処理を終える。
ｆ１８：  このときはＶＡが立ち上がりのときゼロとなるときで、このときＱＡが' １' ならばＱＡが' １' となるが早まってパルス位相が余分にダウンカウントしているのでｆ２２へ進み、前記パルス位相に１を加えて戻す補正を行う。ＱＡが' ０' のとき補正は不要でｆ２１ｎを経て処理を終える。
次に、ブロックｆ１９からｆ２１は、Ｂ相の前記ＶＢがゼロのときの前記パルス位相の補正に関するもので、Ａ相と同様に前記図２７を参照し次の処理を行う。
ｆ１９：  ＶＢがゼロでＶＡが正のときはＶＢが立ち上がりのときでｆ２１へ進む。また、ＶＢがゼロでＶＡが負のときはＶＢが立ち下がりのときでｆ２０へ進む。
ｆ２０：  このときはＶＢが立ち下がりのときゼロとなるときで、このときＱＢが' ０ならばＱＢが' ０' となるが早まってパルス位相が余分にダウンカウントしているのでｆ２２へ進み、前記パルス位相に１を加えて戻す補正を行う。ＱＢが' １' のとき補正は不要でｆ２１ｎを経て処理を終える。
ｆ２１：  このときはＶＢが立ち上がりのときゼロとなるときで、このときＱＢが' １' ならばＱＢが' １' となるが早まってパルス位相が余分にダウンカウントしているのでｆ２２へ進み、前記パルス位相に１を加えて戻す補正を行う。ＱＢが' ０' のとき補正は不要でｆ２１ｎを経て処理を終える。
【０１１１】
かようにして、前記図１３のコンパレータ３が前記図１９に示す動作を行うとき、前記正弦波インクリメンタルエンコーダ１ｂが正転方向に回転するときも逆転方向に回転するときも前記図２６、図２７及び図２８に示すとおり、前記マイクロコントローラ９が前記正弦波インクリメンタルエンコーダ１ｂのＡ相デジタル値ＶＡ又はＢ相デジタル値ＶＢをゼロと検出したときに前記パルス位相の補正を行う。
これにより、前記正弦波インクリメンタルエンコーダ１ｂが低速のみならず高速で回転するときも、常に正しいパルス位相を検出するものである。
【０１１２】
これ迄を要約すれば、９０°位相差の２相のＡ相、Ｂ相の正弦波と１回転の基準信号を示すＺ相を出力する正弦波インクリメンタルエンコーダを使用して、正転又は逆転方向を問わずＺ相信号から正確な基準原点信号を生成すると共に、Ａ相及びＢ相信号からシンクロＡ相信号、シンクロＢ相信号、パルス位相、Ａ相デジタル値及びＢ相デジタル値を検出し、該シンクロＡ相信号、シンクロＢ相信号及びパルス位相は完全に同期して動作をするよう構成し、Ａ相デジタル値とＢ相デジタル値を基準にシンクロＡ相信号とシンクロＢ相信号を前記マイクロコントローラ９により監視し、前記図１８、図２２、図２５及び図２８の全てのパルス位相の補正の処理を繰り返し実行することに依り、いかなるときもパルス位相と補間位相の組み合わせを正しく検出することが可能となる。
また、前記図１３の正弦波インクリメンタルエンコーダ１ｂは図示するとおり、前記位相速度検出装置と僅かにＡ相、Ｂ相及びＺ相の信号線を接続するのみで、２０ビットを越える分解能の回転位相を安定して得ることが可能となり極めてコストメリットがあるものである。
【実施例５】
【０１１３】
図２９は実施例５の全体の構成を説明する図であり、図３０は実施例５の動作を更に説明するものである。
始めに、該図２９において２ｅは位相速度検出装置、１５はＮＯＴゲート、１６はＤフリップフロップであり、１７、１８及び２０はそれぞれｉビット、２ビット及びｍビットのデータラッチで、ＣＬＫ入力の立ち上がりでＤ入力をラッチしてＱ出力に送出する。１９は基準カウンタ、２１はパラレル入力ポートである。その他、図１３と同じ記号を付すものはこれらと同じ機能を有しその説明を割愛する。
【０１１４】
更に図２９において、前記ＮＯＴゲート１５は前記発信器５の出力の基準クロックＣＬＫを反転した信号を、前記Ｄフリップフロップ１６のＣＬＫ入力に供給し、該Ｄフリップフロップ１６のＤ入力に加えられる信号をラッチし出力する。すなわち、前記Ｄフリップフロップ１６のＤ入力の信号は、前記基準クロックの立ち下がりに同期化されるものである。
ここで、前記基準クロックＣＬＫの立ち上がりではなく立ち下がりでラッチするとしているのは、後述するデータラッチ１７、１８及び２０のＤ入力に加えられる信号は前記基準クロックＣＬＫの立ち上がりで変化するものとしており、便宜上、データラッチのＤ入力対ＣＬＫ入力のデータのセットアップ時間を満たす為である。
そして、前記マイクロコントローラ９から任意のタイミングで出力されるラッチ指令は、前記パラレル出力ポート１０を経由し上述の前記Ｄフリップフロップ１６で前記基準クロックＣＬＫの立ち下がりに同期化された後、前記Ａ／Ｄ変換器１３及び１４のＡ／Ｄ変換の開始と前記データラッチ１７、１８及び２０のＤ入力のラッチを同時に実施することとなる。
【０１１５】
次に、前記データラッチ１７は前記パルス位相検出器８が出力する前記パルス位相を入力とし、前記データラッチ１８は前記パルス抽出器６が出力する前記シンクロＡ相信号とシンクロＢ相信号を入力とする。
又、基準カウンタ１９は前記基準クロックＣＬＫの立ち上がりで動作するｍビットのカウンタであり、該基準カウンタ１９はベースタイムを出力し、該ベースタイムは前記データラッチ２０の入力となる。そして、前記マイクロコントローラ９は前記Ａ／Ｄ変換器１３及び１４のＡ相デジタル値とＢ相デジタル値と、パラレル入力ポート１１、１２及び２１を経由して前記前記データラッチ１７、１８及び２０の出力を入力し、これにより前記基準クロックＣＬＫの立ち下がりに同期した同一時刻の前記Ａ相デジタル値、Ｂ相デジタル値、前記パルス位相、前記シンクロＡ相信号、シンクロＢ相信号及びベースタイムを得ることとなる。
【０１１６】
更に、図３０により図２９の本発明による速度検出の動作について説明する。図３０の（ａ）は前記マイクロコントローラ９のスキャンの状態を表すもので、該マイクロコントローラ９は、前記図２９に図示しない電動機の制御など種々のジョブを実行するものであるが、前記正弦波インクリメンタルエンコーダ１ｂの回転位相や回転速度の検出を、１スキャン毎に例えば図３０の（ａ）に示す時刻ｔ１、ｔ２の' １' となるそれぞれＭ１とＭ２で表す期間で行うとしている。次に、図３０の（ｂ）は前記マイクロコントローラ９により前記Ｄフリップフロップ１６のＤ入力に加えられるラッチ指令を、図３０の（ｃ）は前記基準クロックＣＬＫを、図３０の（ｄ）は前記Ｄフリップフロップ１６のＱ出力から送出される同期化されたラッチ指令を表している。前記マイクロコントローラ９は、前記図３０の（ａ）の時刻ｔ１から始まるＭ１の期間内でラッチ指令を出力し、該ラッチ指令は前記パラレル出力ポート１０を経由し前記Ｄフリップフロップ１６のＤ入力に加えられ、前記図３０の（ｂ）のＲ１に示す如くラッチ指令となる。そして、該ラッチ指令Ｒ１は前記Ｄフリップフロップ１６により、前記図３０の（ｃ）の時刻ｔ１１における前記基準クロックＣＬＫの立ち下がりに同期化され、前記図３０の（ｄ）のＳ１に示す如く同期化されたラッチ指令となる。
【０１１７】
次に、図３０の（ｅ）は前記正弦波インクリメンタルエンコーダ１ｂのＡ相信号とＢ相信号を、図３０の（ｆ）は前記マイクロコントローラ９が演算し得る仮想上の連続した補間位相を、図３０の（ｇ）は前記パルス位相検出器８が出力するパルス位相の時間的推移を示す。
そして、前記図３０の（ｄ）の同期化されたラッチ指令Ｓ１により時刻ｔ１１において、前記Ａ／Ｄ変換器１３と１４の出力は前記図３０の（ｅ）の点Ｕ１のＡ相デジタル値と点Ｖ１のＢ相デジタル値を保持し、前記図３０の（ｇ）では前記パルス位相（Ｃ−１）を前記データラッチ１７に保持し、図３０に図示しないが前記図２９における前記シンクロＡ相信号、シンクロＢ相信号を前記データラッチ１８に保持し、前記ベースタイムを前記データラッチ２０に保持することとなる。
次に、前記マイクロコントローラ９は前記図３０の（ａ）のＭ１の期間内において、これらの保持したデータを前記Ａ／Ｄ変換器１３、１４及びデータラッチ１７、１８、２０から入力すると共に、前記の点Ｕ１のＡ相デジタル値と点Ｖ１のＢ相デジタル値より、図３０の（ｆ）の点Ｗ１の補間位相を演算するものである。
【０１１８】
以上は、前記マイクロコントローラ９の時刻ｔ１における処理を説明したが、次のスキャンの時刻ｔ２においても同様の処理を行う。
すなわち、該マイクロコントローラ９は前記図３０の（ａ）の時刻ｔ２から始まるＭ２の期間でラッチ指令を出力し、これにより前記Ｄフリップフロップ１６のＤ入力に加えられる信号は、前記図３０の（ｂ）のＲ２に示す如くラッチ指令となる。
そして、該ラッチ指令Ｒ２は前記図３０の（ｃ）の時刻ｔ２１における前記基準クロックＣＬＫの立ち下がりに同期化され、前記図３０の（ｄ）のＳ２に示す如く同期化されたラッチ指令となり、該同期化されたラッチ指令Ｓ２により時刻ｔ２１において、前記Ａ／Ｄ変換器１３と１４の出力は前記図３０の（ｅ）の点Ｕ２のＡ相デジタル値と点Ｖ２のＢ相デジタル値を保持し、前記図３０の（ｇ）においては前記パルス位相（Ｃ＋２）と、図３０に図示しないが前記図２９における前記シンクロＡ相信号、シンクロＢ相信号と、前記ベースタイムをそれぞれ前記データラッチ１７、１８及び２０に保持することとなる。  そして、前記マイクロコントローラ９は前記図３０の（ａ）のＭ２の期間内において、これらの保持したデータを前記Ａ／Ｄ変換器１３、１４及びデータラッチ１７、１８、２０から入力すると共に、前記の点Ｕ２のＡ相デジタル値と点Ｖ２のＢ相デジタル値より、図３０の（ｆ）の点Ｗ２の補間位相を演算するものである。
【０１１９】
ここで、本実施例の特徴は、前記図３０の（ａ）で示した前記マイクロコントローラ９のスキャンにより決定される任意の時刻、例えばｔ１やｔ２において、前記正弦波インクリメンタルエンコーダ１ｂのパルス位相と補間位相を得ることにより回転位相を常時正確に検出することが可能で、これにより更に、例えば時刻ｔ１１とｔ２１間の回転位相の変化量も極めて精度良く検出するものである。
又、図３０の（ｃ）を参照して、時刻ｔ１１においてラッチされ入力される前記基準カウンタ１９によるベースタイムは、時刻ｔ１２における前記基準クロックＣＬＫの立ち上がり迄を計数したものであり、同様に時刻ｔ２１においてラッチされ入力される前記基準カウンタ１９によるベースタイムは、時刻ｔ２２における前記基準クロックＣＬＫの立ち上がり迄を計数したものである。
そして、時刻ｔ２１で得た上記のベースタイムから時刻ｔ１１で得た上記のベースタイムを減算したものに、前記基準クロックＣＬＫの周期を乗算して得られるスキャン時間は図３０の（ｄ）に示す時間ΔＴ１となる。
【０１２０】
ここで、前記発信器５は極めて精度の優れた水晶振動子を使用するもので、該発信器５が出力する基準クロックＣＬＫは、周波数の安定度と共に波形のデューティも一定で安定している為、前記時間ΔＴ１は同じく図３０の（ｄ）に図示する時間ΔＴ１１に等しい。  かようにして得られるスキャン時間ΔＴ１１は、前記基準クロックＣＬＫの２つの離れたエッジ間の該基準クロックＣＬＫのパルス数と該基準クロックＣＬＫの周期を乗算したもので、極めて正確なスキャン時間を得るものである。そして、前記正弦波インクリメンタルエンコーダ１ｂの回転速度は図３０を例にすれば、時刻ｔ２１における前記パルス位相と前記補間位相からなる回転位相から時刻ｔ１１における回転位相を減算してスキャン時間ΔＴ１１における回転位相の変化量を求め、これを前記スキャン時間ΔＴ１１で除して求めるものであり、本発明による回転位相の変化量とスキャン時間ΔＴ１１は極めて精度良く検出するものであるから、該回転位相の変化量とスキャン時間を演算して得られる前記正弦波インクリメンタルエンコーダ１ｂの回転速度も、極めて精度が良いものとすることができる。
【０１２１】
かような本発明により、前記正弦波インクリメンタルエンコーダ１ｂが正転方向に回転するときも逆転方向に回転するときも、又停止中や低速回転中のみならず高速で回転中であっても、前記原点検出器７によりＺ相信号から正確な１回転の基準を生成すると共に、前記図１８、前記図２２、前記図２５及び図２７により前記パルス位相の補正を行い、この補正後のパルス位相と補間位相により超高精度の回転位相と回転速度の検出を可能とし、これにより、シャフトレス輪転印刷機など複数の電動機間の高精度の同期制御や高速の位置決め制御を実現するものである。
【図面の簡単な説明】
【０１２２】
【図１】実施例１の全体の構成を説明する図である。
【図２】正転のとき図１のパルス抽出器の動作を詳細に説明する図である。
【図３】逆転のとき図１のパルス抽出器の動作を詳細に説明する図である。
【図４】パルス抽出器の一実施例を説明する図である。
【図５】実施例２の全体の構成を説明する図である。
【図６】正弦波インクリメンタルエンコーダが出力する信号を説明する図である。
【図７】原点検出器の動作を詳細に説明する図である。
【図８】原点検出器の一実施例を説明する図である。
【図９】図９の原点検出器の一実施例の動作を説明する図である。
【図１０】実施例３の全体の構成を説明する図である。
【図１１】パルス位相検出器の一実施例を説明する図である。
【図１２】図１１のパルス位相検出器の一実施例の動作を説明する図である。
【図１３】実施例４の全体の構成を説明する図である。
【図１４】図１３の実施例４の全体の動作を説明する図である。
【図１５】コンパレータの動作その１を説明する図である。
【図１６】パルス位相の補正を説明する図−その１である。
【図１７】パルス位相の補正を説明する図−その２である。
【図１８】図１６と図１７のパルス位相の補正の実施例を説明する図である。
【図１９】コンパレータの動作その２を説明する図である。
【図２０】パルス位相の補正を説明する図−その３である。
【図２１】パルス位相の補正を説明する図−その４である。
【図２２】図２０と図２１のパルス位相の補正の実施例を説明する図である。
【図２３】パルス位相の補正を説明する図−その５である。
【図２４】パルス位相の補正を説明する図−その６である。
【図２５】図２３と図２４のパルス位相の補正の実施例を説明する図である。
【図２６】パルス位相の補正を説明する図−その７である。
【図２７】パルス位相の補正を説明する図−その８である。
【図２８】図２６と図２７のパルス位相の補正の実施例を説明する図である。
【図２９】実施例５の全体の構成を説明する図である。
【図３０】速度検出を説明する図である。
【図３１】インクリメンタル信号を説明する図である。
【図３２】１回転の位相検出を説明する図である。
【図３３】従来の回転位相の検出を説明する図である。
【符号の説明】
【０１２３】
１ａ    正弦波インクリメンタルエンコーダ
１ｂ    正弦波インクリメンタルエンコーダ
２ａ    位相速度検出装置
２ｂ    位相速度検出装置
２ｃ    位相速度検出装置
２ｄ    位相速度検出装置
２ｅ    位相速度検出装置
３      コンパレータ
４      コンパレータ
５      発信器
６      パルス抽出器
６０１  ＮＯＴゲート
６０２  Ｄフリップフロップ
６０３  ＮＯＴゲート
６０４  Ｄフリップフロップ
６０５  ＮＯＴゲート
６０６  Ｄフリップフロップ
６０７  ＮＯＴゲート
６０８  Ｄフリップフロップ
６０９  ＮＯＴゲート
６１０  ＡＮＤゲート
６１１  ＯＲゲート
６１２  ＯＲゲート
６１３  Ｄフリップフロップ
６１４  Ｄフリップフロップ
６１５  Ｄフリップフロップ
６１６  Ｄフリップフロップ
７      原点検出器
７０１  ＮＯＴゲート
７０２  ＪＫフリップフロップ
７０３  Ｄフリップフロップ
７０４  Ｄフリップフロップ
７０５  ＮＯＴゲート
７０６  ＮＯＴゲート
７０７  ＮＯＴゲート
７０８  ＡＮＤゲート
７０９  ＡＮＤゲート
７１０  ＯＲゲート
８      パルス位相検出器
８０１  アップ・ダウンカウンタ
８０２  係数器
８０３  加算器
８０４  セレクタ
９      マイクロコントローラ
１０    パラレル出力ポート
１１    パラレ入力ポート
１２    パラレ入力ポート
１３    Ａ／Ｄ変換器
１４    Ａ／Ｄ変換器
１５    ＮＯＴゲート
１６    Ｄフリップフロップ
１７    データラッチ
１８    データラッチ
１９    カウンタ
２０    データラッチ
２１    パラレル入力ポート
【図１】
2005156208.tif 000003
【図２】
2005156208.tif 000004
【図３】
2005156208.tif 000005
【図４】
2005156208.tif 000006
【図５】
2005156208.tif 000007
【図６】
2005156208.tif 000008
【図７】
2005156208.tif 000009
【図８】
2005156208.tif 000010
【図９】
2005156208.tif 000011
【図１０】
2005156208.tif 000012
【図１１】
2005156208.tif 000013
【図１２】
2005156208.tif 000014
【図１３】
2005156208.tif 000015
【図１４】
2005156208.tif 000016
【図１５】
2005156208.tif 000017
【図１６】
2005156208.tif 000018
【図１７】
2005156208.tif 000019
【図１８】
2005156208.tif 000020
【図１９】
2005156208.tif 000021
【図２０】
2005156208.tif 000022
【図２１】
2005156208.tif 000023
【図２２】
2005156208.tif 000024
【図２３】
2005156208.tif 000025
【図２４】
2005156208.tif 000026
【図２５】
2005156208.tif 000027
【図２６】
2005156208.tif 000028
【図２７】
2005156208.tif 000029
【図２８】
2005156208.tif 000030
【図２９】
2005156208.tif 000031
【図３０】
2005156208.tif 000032
【図３１】
2005156208.tif 000033
【図３２】
2005156208.tif 000034
【図３３】
2005156208.tif 000035