(57)【要約】【課題】  周期の異なる複数の相対位置検出信号を同一の信号線で出力する構成において、これらの相対位置検出信号を用いて制御対象物の絶対位置の演算を正しく行う。【解決手段】  位置制御対象物の移動に伴い周期的に変化する、複数の異なる周期の位置検出信号を同一の信号線で出力する位置検出信号出力手段１０２と、位置検出信号の周期を切り替える信号切替手段１１０と、第１の周期の位置検出信号により位置制御対象物の相対位置を演算する相対位置演算手段１０４と、第１および第２の周期の位置検出信号により位置制御対象物の絶対位置を演算する絶対位置演算手段１０４と、相対位置演算結果を用いて位置制御対象物の位置を所定の制御周期で制御する位置制御手段１０４とを備え、位置制御手段は、制御周期よりも短い時間間隔で、位置検出信号の周期の切り替えを行わせ、絶対位置演算を行わせる。【選択図】  図１
2014134493.tif 000002
【特許請求の範囲】
【請求項１】
位置制御対象物の移動に伴い周期的に変化する、複数の異なる周期の位置検出信号を同一の信号線で出力する位置検出信号出力手段と、
前記位置検出信号出力手段から出力される前記位置検出信号の周期を切り替える信号切替手段と、
前記位置検出信号の複数の周期のうちの第１の周期の位置検出信号により前記位置制御対象物の相対位置を演算する相対位置演算手段と、
前記第１の周期の位置検出信号および前記位置検出信号の複数の周期のうちの第２の周期の位置検出信号により前記位置制御対象物の絶対位置を演算する絶対位置演算手段と、
前記位置制御対象物を駆動する駆動手段と、
前記相対位置演算手段の相対位置演算結果を用いて前記駆動手段を駆動し、前記位置制御対象物の位置を所定の制御周期で制御する位置制御手段とを備え、
前記位置制御手段は、前記制御周期よりも短い時間間隔で前記信号切替手段による前記位置検出信号の周期の切り替えを行わせ、前記位置検出信号の取得を行い、前記絶対位置演算手段による絶対位置演算を行わせることを特徴とする位置制御装置。
【請求項２】
前記第２の周期は異なる２以上の周期であり、
前記位置制御手段は、１回の前記制御周期内で、前記信号切替手段による前記第２の周期すべての切り替えを終了させ、前記位置検出信号の取得を行うことを特徴とする請求項１に記載の位置制御装置。
【請求項３】
前記第２の周期は異なる２以上の周期であり、
前記位置制御手段は、複数回の前記制御周期に分けて、前記信号切替手段による前記第２の周期すべての切り替えを行わせ、前記位置検出信号の取得を行うことを特徴とする請求項１に記載の位置制御装置。
【請求項４】
前記位置制御手段は、前記相対位置を前記絶対位置で補正することを特徴とする請求項１ないし３のいずれか１項に記載の位置制御装置。
【請求項５】
前記位置制御手段は、前記第１および第２の周期の位置検出信号の取得を行う間は、前記位置制御対象物を同一位置に保持するように制御することを特徴とする請求項１ないし４のいずれか１項に記載の位置制御装置。
【請求項６】
前記位置制御手段は、起動時に、前記絶対位置演算手段による絶対位置演算を行わせることを特徴とする請求項１ないし５のいずれか１項に記載の位置制御装置。
【請求項７】
前記位置制御手段は、前記相対位置演算手段による相対位置演算結果が異常である場合に、前記絶対位置演算手段による絶対位置演算を行わせることを特徴とする請求項１ないし６のいずれか１項に記載の位置制御装置。
【請求項８】
位置制御対象物の移動に伴い周期的に変化する、複数の異なる周期の位置検出信号を同一の信号線で出力する位置検出信号出力手段と、前記位置制御対象物を駆動する駆動手段とを備えた装置を制御する位置制御方法であって
前記位置検出信号出力手段から出力される前記位置検出信号の周期を切り替える信号切替ステップと、
前記位置検出信号の複数の周期のうちの第１の周期の位置検出信号により前記位置制御対象物の相対位置を演算する相対位置演算ステップと、
前記第１の周期の位置検出信号および前記位置検出信号の複数の周期のうちの第２の周期の位置検出信号により前記位置制御対象物の絶対位置を演算する絶対位置演算ステップと、
前記相対位置演算結果を用いて前記駆動手段を駆動し、前記位置制御対象物の位置を所定の制御周期で制御する位置制御ステップとを有し、
前記位置制御ステップでは、前記制御周期よりも短い時間間隔で前記信号切替ステップによる前記位置検出信号の周期の切り替えを行わせ、前記位置検出信号の取得を行い、前記絶対位置演算ステップによる絶対位置演算を行わせることを特徴とする位置制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、位置制御装置及び位置制御方法に関するものである。
【背景技術】
【０００２】
３つのインクリメンタル信号を３つのサンプルホールド回路で同時保持するアブソリュートエンコーダがある（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平５−２７２９８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１においては、３つのインクリメンタル信号を３つのサンプルホールド回路へそれぞれ接続する必要があり、このようなアブソリュートエンコーダを使う位置制御装置においては、信号線の本数が多くなってしまう。これを回避するため、ピッチ切替え制御により、ピッチの異なる複数のインクリメンタル信号を同一の信号線に出力する構成とすることで信号線の本数を削減することができる。
【０００５】
ここで、ピッチの異なる複数のインクリメンタル信号を組み合わせて制御対象物の絶対位置の演算を行う場合、前記複数のインクリメンタル信号を、制御対象物が静止した状態で取得しなくてはならない。なぜなら制御対象物の位置が異なる状態でそれぞれのインクリメンタル信号を取得してしまうと、制御対象物の絶対位置の演算を正しく行うことができないためである。
【０００６】
ところで、位置制御装置は多くの場合、エンコーダの信号から検出した制御対象物の位置と、位置制御の目標位置とが一致するようにフィードバック制御を行う構成となっている。したがって制御対象物を静止させるためには、制御対象物の位置が正しく検出され、前記のフィードバック制御が正しく動作していなくてはならない。そしてインクリメンタル信号から制御対象物の位置を検出するには、信号のピッチが一意に決まっていることが必要である。
【０００７】
しかしながら、前記のようにピッチ切替え制御により、ピッチの異なる複数のインクリメンタル信号を同一の信号線に出力する構成とした場合、ピッチ切替えによって信号のピッチが変化してしまうために制御対象物の位置を正しく検出できない。この結果、制御対象物を静止させることができず、絶対位置の演算を正しく行うことができなくなってしまうという問題がある。
【０００８】
（発明の目的）
本発明の目的は、周期の異なる複数の相対位置検出信号を同一の信号線で出力する構成において、これらの相対位置検出信号を組み合わせて制御対象物の絶対位置の演算を正しく行うことが可能な位置制御装置及び位置制御方法を提供することである。
【課題を解決するための手段】
【０００９】
本発明の位置制御装置は、位置制御対象物の移動に伴い周期的に変化する、複数の異なる周期の位置検出信号を同一の信号線で出力する位置検出信号出力手段と、前記位置検出信号出力手段から出力される前記位置検出信号の周期を切り替える信号切替手段と、前記位置検出信号の複数の周期のうちの第１の周期の位置検出信号により前記位置制御対象物の相対位置を演算する相対位置演算手段と、前記第１の周期の位置検出信号および前記位置検出信号の複数の周期のうちの第２の周期の位置検出信号により前記位置制御対象物の絶対位置を演算する絶対位置演算手段と、前記位置制御対象物を駆動する駆動手段と、前記相対位置演算手段の相対位置演算結果を用いて前記駆動手段を駆動し、前記位置制御対象物の位置を所定の制御周期で制御する位置制御手段とを備え、前記位置制御手段は、前記制御周期よりも短い時間間隔で前記信号切替手段による前記位置検出信号の周期の切り替えを行わせ、前記位置検出信号の取得を行い、前記絶対位置演算手段による絶対位置演算を行わせることを特徴とするものである。
【発明の効果】
【００１０】
本発明によれば、周期の異なる複数の相対位置検出信号を同一の信号線で出力する構成において、これらの相対位置検出信号を組み合わせて制御対象物の絶対位置の演算を正しく行うことができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施例１である位置制御装置の構成を示すブロック図である。
【図２】実施例１におけるインクリメンタル位置エンコード処理の概念図である。
【図３】実施例１におけるインクリメンタル位置エンコード処理を示すフローチャートである。
【図４】実施例１におけるアブソリュート位置エンコード処理の概念図である。
【図５】実施例１におけるアブソリュート位置エンコード処理を示すフローチャートである。
【図６】実施例１における位置制御処理を示すフローチャートである。
【図７】本発明の実施例２である位置制御処理を示すフローチャートである。
【発明を実施するための形態】
【００１２】
本発明を実施するための形態は、以下の実施例１及び２に記載される通りである。
【実施例１】
【００１３】
図１は、本発明の実施例１である位置制御装置の構成を示している。
【００１４】
図１において、１０１は位置制御対象物であり、後述するモータ１０９によりその位置が移動可能になっている。１０２はエンコーダであり、位置制御対象物１０１の移動に応じてインクリメンタル信号を出力する。エンコーダ１０２は位置検出信号出力手段を構成する。また、インクリメンタル信号は、位置制御対象物１０１の移動に伴い周期的に変化する位置検出信号に相当する。出力されたインクリメンタル信号はＡ／Ｄ変換部１０３によりデジタル変換され、マイクロコンピュータ１０４に入力されて、インクリメンタル位置エンコード処理（相対位置演算処理）に用いられる。マイクロコンピュータ１０４はＲＯＭ１０５に格納されたプログラムに従い、ＲＡＭ１０６をワークメモリとして用いて、位置制御装置各部の制御を行う。モータ制御信号出力部１０７は、モータ駆動部１０８に対してモータ１０９を駆動させるためのマイクロコンピュータ１０４から命令された制御信号を出力する。モータ１０９はＤＣモータやボイスコイルモータ等のモータであり、これを駆動することで位置制御対象物１０１の位置を移動させることができる。以上に述べた位置制御対象物１０１、エンコーダ１０２からモータ１０９までの構成要素は全体としてフィードバックループを構成しており、公知のフィードバック制御手法に基づいて、マイクロコンピュータ１０４で実行されるプログラムに従い位置制御対象物１０１が所望の位置に移動・停止するように構成されている。マイクロコンピュータ１０４は位置制御手段を構成する。
【００１５】
マイクロコンピュータ１０４からは、ピッチ切り替え信号出力部１１０を介してエンコーダ１０２にピッチ切り替え信号が出力される。ピッチ切り替え信号出力部１１０は信号切替手段を構成する。エンコーダ１０２は、ピッチ（周期）の異なる複数のインクリメンタル信号のうち、ピッチ切り替え信号により指示されたピッチのインクリメンタル信号を出力する。マイクロコンピュータ１０４はピッチ切り替え信号によりピッチの異なる複数のインクリメンタル信号を順次検出し、後述するアブソリュート位置エンコード処理により位置制御対象物の絶対位置の演算を行う。
【００１６】
また、マイクロコンピュータ１０４からはＤ／Ａ変換部１１１を介してエンコーダ１０２に信号レベル制御電圧が供給される。この信号レベル制御電圧は、エンコーダ１０２から出力されるインクリメンタル信号の信号レベル（信号振幅やオフセットレベル）を調整するためのものである。マイクロコンピュータ１０４はこの信号レベル制御電圧により、エンコーダ１０２の個体ごとに異なる信号レベルを、位置検出を実行するための適正なレベルに調整する。この信号レベル調整は、たとえば位置制御装置が工場で組み立てられた際に実行され、信号レベルを適正とするための制御電圧のデータが不揮発性のメモリに記憶される。その後は位置制御装置の起動時に、マイクロコンピュータ１０４が記憶された制御電圧のデータに基づいてエンコーダ１０２に制御電圧を供給することで、信号レベルが適正に制御される。なお、単一の制御電圧でピッチの異なる複数の信号のレベルをすべて適正にそろえることができない場合は、前記のピッチ切り替え制御と同期して制御電圧を切り替えてもよいし、フィードバック制御に用いられる前記特定のピッチが最適レベルとなる制御電圧に固定してもよい。
【００１７】
次に、図２と図３を用いてインクリメンタル位置エンコード処理について説明する。
【００１８】
図２は、インクリメンタル位置エンコード処理の概念図である。図２（Ａ）の縦軸は１０ｂｉｔのＡ／Ｄ変換値、横軸は位置制御対象物１０１の位置で、２０１と２０２は位置制御対象物１０１の移動に応じて出力される２相のインクリメンタル信号を表している。ここで２０１と２０２は位相が９０°異なっている。図２（Ｂ）の縦軸は角度ラジアン、横軸は位置制御対象物１０１の位置で、２０３は移動に応じてインクリメンタル信号２０１と２０２間の逆正接関数として０から２πまでに正規化され演算される逆正接関数演算結果を表している。図２（Ｃ）の縦軸はインクリメンタル位置エンコード値、横軸は位置制御対象物１０１の位置で、２０４は逆正接関数演算結果２０３が０を跨いだ時、ＬＳＢが２πに相当する上位桁を増減させるインクリメンタル位置エンコード値を表している。
【００１９】
図３はインクリメンタル位置エンコード処理のフローチャートである。以下の処理はマイクロコンピュータ１０４にて、所定の周期で反復実行される。
【００２０】
図３のステップＳ３０１では、図２（Ａ）の２０１、２０２で示した２相のインクリメンタル信号のＡ／Ｄ変換値を取得する。ここでＡ／Ｄ変換値はＡ／Ｄ変換部１０３での変換値を直接読みだしてもよいし、あらかじめ取得されＲＡＭ１０６に保存されているＡ／Ｄ変換値を読みだしてもよい。次にステップＳ３０２にて、取得したインクリメンタル信号のオフセット除去演算、ゲイン調整演算を行う。これらの演算は、逆正接関数演算を行うために２相のインクリメンタル信号の振幅（ゲイン）とオフセットをそろえるために行うものであり、公知であるので説明は省略する。さらにステップＳ３０３にて、図２（Ｂ）の逆正接関数演算結果２０３をＲＡＭ１０６へ保存し、ステップＳ３０４に進む。ステップＳ３０４では、前回のエンコード処理時にＲＡＭ１０６に保存されていた前回の逆正接関数演算結果と、今回の逆正接関数演算結果の差が３π／８より小さいかどうかを判断し、小さければステップＳ３０５へ処理を移し、以上であればステップＳ３１１へ処理を移す。ステップＳ３０５ではマイクロコンピュータ１０４は逆正接関数演算結果２０３が移動で０を跨いだかどうかを判定する。０を跨いでいればステップＳ３０６へ処理を移し、いなければステップＳ３０８へ処理を移す。ステップＳ３０６では、今回の逆正接関数演算結果が前回の逆正接関数演算結果より小さいかどうかを判別する。今回の結果が前回の結果より小さければステップＳ３０７へ処理を移し、以上であればステップＳ３０８へ処理を移す。ステップＳ３０７では、２π単位である上位桁へ１を加算して、ステップＳ３０９へ処理を移す。ここで上位桁とは、インクリメンタル位置エンコード値の２π以上の桁である。一方ステップＳ３０８では、２π単位である上位桁から１を減算して、ステップＳ３０９へ処理を移す。ステップＳ３０９では２π単位である上位桁と今回結果を加算し、図２（Ｃ）の上位桁を含むインクリメンタル位置エンコード値２０４（相対位置演算結果）として求め、ステップＳ３１０へ処理を移す。ステップＳ３１０では、今回と前回の移動が３π／８より小さく、移動方向が正しく判別されていることから、移動方向判別エラーフラグをクリアし、今回の処理を終了する。一方ステップＳ３１１では、今回と前回の移動が３π／８以上であるので、移動方向が増加方向か減少方向かの判別ができないことから、移動方向判別エラーフラグをセットして処理を終了する。以上の処理により、インクリメンタル信号からインクリメンタル位置エンコード値２０４を生成して位置制御に用いることができる。なお、前記の移動方向判別エラーフラグは、インクリメンタル位置エンコード処理が正しく実行できたかを判別する情報として、マイクロコンピュータ１０４で実行される他のプログラム処理において参照される。
【００２１】
インクリメンタル位置エンコード処理を行うマイクロコンピュータ１０４は、相対位置を演算する相対位置演算手段を構成する。次に、図４と図５を用い、ピッチ（周期）の異なる複数のインクリメンタル信号により位置制御対象物１０１の絶対位置を求める、アブソリュート位置エンコード処理について説明する。以下では３種類のピッチのインクリメンタル信号を用いた場合について説明しているが、ピッチが４種類以上でも、２種類でも原理は同じである。なお以下では、３種類のピッチを、ピッチが小さい方から順にピッチα、ピッチβ、ピッチγと表記する。ピッチαは第１の周期に相当し、ピッチβ、ピッチγは異なる２以上の第２の周期を構成する。
【００２２】
図４は、アブソリュート位置エンコード処理の概念図である。図４（Ａ）の縦軸は角度ラジアン、横軸は位置で、４０１は移動に応じて逆正接関数として０から２πまでに正規化され演算される、ピッチαの逆正接関数演算結果を表している。ピッチαは３種類のうちの最少のピッチであり、絶対位置検出が可能な全ストローク長において２１周期出現する。以下の説明では、この結果をｐ１と記載する。同様に図４（Ｂ）の４０２はピッチβの逆正接関数演算結果を表しており、全ストロークで１０周期出現する。以下ではこの結果をｐ２と記載する。図４（Ｃ）の４０３はピッチγの逆正接関数演算結果を表しており、全ストロークで４周期出現する。以下ではこの結果をｐ３と記載する。
【００２３】
図４（Ｄ）の４０４は、ピッチαから得られたｐ１とピッチβから得られたｐ２とから式（１）で演算されたｐｈ１を、０から２πまでに正規化した結果を表している。前記したように全ストロークでｐ１は２１周期、ｐ２は１０周期出現するので、ｐ２を２倍したものとｐ１とは全ストロークで１周期分の差分を持つので、ｐｈ１は全ストロークで１周期出現する。
式（１）    ｐｈ１＝ｐ１−２×ｐ２
【００２４】
同様に図４（Ｅ）の４０５は、ピッチβから得られたｐ２とピッチγから得られたｐ３とから式（２）で演算されたｐｈ６を、０から２πまでに正規化した結果を表している。１０周期と４周期の差分であるので、全ストロークで６周期出現する。
式（２）    ｐｈ６＝ｐ２−ｐ３
【００２５】
また図４（Ｆ）の４０６は、ピッチαから得られたｐ１とピッチγから得られたｐ３とから式（３）で演算されたｐｈ１３を、０から２πまでに正規化した結果を表している。２１周期と、４周期の２倍との差分であるので、全ストロークで１３周期出現する。
式（３）    ｐｈ１３＝ｐ１−２×ｐ３
【００２６】
図５はアブソリュート位置エンコード処理のフローチャートである。以下の処理はマイクロコンピュータ１０４にて、位置制御対象物１０１の絶対位置を演算する際に実行される。ここで理論上は、前記のｐｈ１にて位置制御対象物１０１の絶対位置を得ることができるが、全ストロークを１周期とした信号であるので分解能が粗く、そのままでは信号のノイズなどにより高精度な位置検出ができない。一方、ｐ１〜ｐ３やｐｈ６、ｐｈ１３などは信号の周期が細かいので精度は高くなるが、全ストローク中の何番目の周期にあるかが判別できないため絶対位置を得ることができない。そこで以下に述べる処理により、粗い周期の信号から得た絶対位置を細かい周期の絶対位置に順次対応させていき、最終的にもっとも細かいｐ１の信号の分解能で絶対位置が得られるようにする。なお、以下の説明では、各ピッチのインクリメンタル信号のＡ／Ｄ変換値はあらかじめ取得され、ＲＡＭ１０６に保存されているものとする。
【００２７】
図５のステップＳ５０１では、ＲＡＭ１０６の保存されているピッチαの２相信号のＡ／Ｄ変換値を取得し、オフセット除去演算、ゲイン調整演算、逆正接関数演算を行った結果をｐ１としてＲＡＭ１０６へ保存する。ここでの処理は図３のステップＳ３０２、Ｓ３０３と同様である。以下、ステップＳ５０２、Ｓ５０３にて、それぞれピッチβ、ピッチγについて同様の演算を行い、それぞれの結果をｐ２、ｐ３としてＲＡＭ１０６へ保存し、ステップＳ５０４に処理を移す。
【００２８】
ステップＳ５０４では、ＲＡＭ１０６に保存されているｐ１、ｐ２、ｐ３から、前記した式（１）から式（３）に従ってｐｈ１、ｐｈ６、ｐｈ１３の演算、正規化を行い、ＲＡＭ１０６に保存する。さらにｐ１をｐｈ２１としてＲＡＭ１０６に保存し、ステップＳ５０５に処理を移す。ここでｐｈ２１は前記のように全ストロークで２１周期出現する。
【００２９】
ステップＳ５０５では、ＲＡＭ１０６に保存されているｐｈ１から式（４）で得られるａｂｓ６を演算し、ＲＡＭ１０６に保存してＳ５０６に進む。ここでａｂｓ６はｐｈ１を、周期２πの６分の１で割ったものである。前記したようにｐｈ１は全ストロークで１周期なので、ここで得られたａｂｓ６は位置検出対象物の位置が、全ストロークを６分割した領域のうち何番目の領域にあるかを示している。
式（４）    ａｂｓ６＝ｐｈ１／（２π／６）
【００３０】
次にステップＳ５０６では、ＲＡＭ１０６に保存されているｐｈ６およびａｂｓ６から式（５）で得られるａｂｓ１３を演算し、ＲＡＭ１０６に保存してステップＳ５０７に進む。前記のようにａｂｓ６は全ストロークを６分割した領域のうち何番目の領域にあるかを示しており、ｐｈ６はａｂｓ６番目の領域内のどの位置にあるかを示しているので、式（５）の分子はｐｈ６の分解能で表された絶対位置に相当する。そしてこれを２π×６／１３で割ったａｂｓ１３は、全ストロークを１３分割した領域のうち何番目の領域にあるかを示している。
式（５）    ａｂｓ１３＝（２π×ａｂｓ６＋ｐｈ６）／（２π×６／１３）
【００３１】
次にステップＳ５０７では、ＲＡＭ１０６に保存されているｐｈ１３およびａｂｓ１３から式（６）で得られるａｂｓ２１を演算し、ＲＡＭ１０６に保存してＳ５０８に進む。前記したＳ５０６の説明と同様の理由により、ここで演算されたａｂｓ２１は、全ストロークを２１分割した領域のうち何番目の領域にあるかを示している。
式（６）    ａｂｓ２１＝（２π×ａｂｓ１３＋ｐｈ１３）／（２π×１３／２１）
【００３２】
ステップＳ５０８では、ＲＡＭ１０６に保存されているｐｈ２１およびａｂｓ２１から式（７）で得られるＦｕｌｌＡＢＳを演算し、ＲＡＭ１０６に保存して処理を終了する。ｐｈ２１はもっとも細かいピッチαから得られた位置情報であるので、ここで演算されたＦｕｌｌＡＢＳは、もっとも細かいピッチαの分解能を持つ絶対位置情報（絶対位置演算結果）となる。
式（７）    ＦｕｌｌＡＢＳ＝（２π×ａｂｓ２１＋ｐｈ２１）
【００３３】
以上に述べたように、ピッチの異なる３種類のインクリメンタル信号を合成することで、更にピッチの異なるインクリメンタル信号を合成することができる。そして前記したアブソリュート位置エンコード処理を行うことで、最小ピッチの分解能で位置制御対象物１０１の絶対位置を求めることができる。
【００３４】
アブソリュート位置エンコード処理を行うマイクロコンピュータ１０４は、絶対位置を演算する絶対位置演算手段を構成する。
【００３５】
ところで、以上に述べたアブソリュート位置エンコード処理では、演算に用いるピッチα、β、γの各信号が、すべて位置制御対象物１０１が同一位置にある時のものであることを前提としている。すなわちピッチα、β、γの各信号は制御対象が静止した状態で取得されていなければならない。なお、前記同一位置とは略同一位置を包含するものである。
【００３６】
以下では、本発明の特徴であるところの、ピッチαの信号を用いたフィードバック制御により制御対象物を静止させつつ、フィードバック制御処理を実行していない期間にピッチβ、γの信号を検出する処理について説明する。
【００３７】
図６は、実施例１における位置制御処理のフローチャートである。以下の処理はマイクロコンピュータ１０４にて実行される。
【００３８】
図６のステップＳ６０１では、マイクロコンピュータ１０４からピッチ切り替え信号出力部１１０を介して、ピッチをαに設定する信号がエンコーダ１０２に出力される。これによりエンコーダ１０２からはピッチαのインクリメンタル信号が出力される。
【００３９】
次にステップＳ６０２では、位置制御処理のフィードバック制御を一定周期で実行するために、制御周期を規定する割り込み要求が発生しているかどうかを判別する。一般にフィードバック制御は、制御対象物や駆動部の物理的・電気的特性や、位置制御装置に要求される制御応答性・安定性などから規定される所定の周期で反復実行される。そしてこの制御周期を規定するために、マイクロコンピュータ１０４の内部または外部に備えられたタイマー回路により、既定の周期でトリガー信号が発生するように構成される。このトリガー信号によりマイクロコンピュータ１０４のＣＰＵに割り込み処理要求を発生させることで、ＣＰＵに処理周期を通知し、一定周期のフィードバック制御処理が実行される。ステップＳ６０２で割り込みが発生されていないと判別された場合は、次の処理には進まず、割り込みが発生されるまで待機または位置制御処理以外の処理が実行される。そして割り込みが発生するとステップＳ６０３に処理を移す。
【００４０】
ステップＳ６０３では、前記のステップＳ６０１でエンコーダ１０２の出力をピッチαに切り替えてから、出力信号が静定するまでの所定の時間が経過したかを判別する。本実施例１ではピッチの異なる複数のインクリメンタル信号を同一の信号線に出力する構成としているため、ピッチを切り替えた際、切り替え後のピッチの信号が正しく読み取れる状態になるまでには、信号回路の電気特性に応じた所定の時間を要する。そこでステップＳ６０３では所定の静定時間が経過したかを判別し、経過していない場合は次の処理には進まず待機する。そして静定時間が経過したらステップＳ６０４に処理を移す。
【００４１】
ステップＳ６０４では、ピッチαの２相のインクリメンタル信号のＡ／Ｄ変換値を取得してＲＡＭ１０６へ保存し、ステップＳ６０５に進む。ステップＳ６０５は図３で説明したインクリメンタル位置エンコード処理であり、ここでの処理により前記したインクリメンタル位置エンコード値が得られる。
【００４２】
次にステップＳ６０６では、位置制御目標値を取得する。この位置制御目標値は位置制御対象物１０１を移動または停止させたい位置を表すものであり、位置制御装置の制御目的に応じて、マイクロコンピュータ１０４で実行される他のプログラム処理により決定されるものである。そしてステップＳ６０５で得られたインクリメンタル位置エンコード値（制御対象物１０１の現在位置）と位置制御目標値との差分を演算し、ステップＳ６０７に処理を移す。ステップＳ６０７では、ステップＳ６０６で演算された差分に基づき、差分を０とするためのモータ制御量を、公知のフィードバック制御手法に基づいて演算する。そして演算されたモータ制御量を、モータ制御信号出力部１０７を介してモータ駆動部１０８に出力して、ステップＳ６０８に進む。
【００４３】
ステップＳ６０８では、位置制御対象物１０１の絶対位置の検出を実行するかどうかが判別される。前記したように絶対位置の検出は、位置制御対象物１０１が静止した状態でピッチの異なる複数のインクリメンタル信号を検出する必要があるため、位置制御装置が位置制御対象物１０１を移動させている状態では実行できない。このため位置制御装置の動作中に常時実行されるのではなく、装置の起動時や、何らかの外乱や故障によりインクリメンタル位置エンコード値が異常となった場合などの際に実行するよう制御される。この異常の判定は、例えば前記した移動方向判別エラーフラグがセットされているかどうかや、インクリメンタル信号のＡ／Ｄ変換値が異常値になっているかなどを判別することにより行うことができる。また位置制御装置に衝撃が加わったことを加速度センサやジャイロセンサなどで検出してもよい。このような絶対位置検出の実行判定はマイクロコンピュータ１０４で実行される他のプログラム処理により行われ、ＲＡＭ１０６に最新の判定結果が保存されているものとする。そしてステップＳ６０８では保存されている判定結果を読み出し、絶対位置検出を実行すると判別した場合はステップＳ６０９へ処理を移し、実行しないと判別した場合はステップＳ６０２に戻る。なお、ここまでに説明した処理により、ピッチαのインクリメンタル信号を用いてフィードバック制御を行い、位置制御対象物１０１の位置制御を行うことができる。また、前記したように絶対位置の検出は位置制御対象物１０１が静止した状態で実行する必要があるため、絶対位置検出を実行すると判定されている状態では、ステップＳ６０６で取得される位置制御目標値も絶対位置検出が完了するまで同一位置で保持されていることとする。そして、ステップＳ６０４でピッチαの２相のインクリメンタル信号のＡ／Ｄ変換値を取得したときの位置は、位置制御目標値と同一位置になっている。
【００４４】
ステップＳ６０９では、マイクロコンピュータ１０４からピッチ切り替え信号出力部１１０を介して、ピッチをβに設定する信号がエンコーダ１０２に出力される。これによりエンコーダ１０２からはピッチβのインクリメンタル信号が出力される。次にステップＳ６１０では、ステップＳ６０３と同様に所定の静定時間が経過したかを判別し、静定時間が経過したらステップＳ６１１に処理を移す。ステップＳ６１１ではピッチβの２相のインクリメンタル信号のＡ／Ｄ変換値を取得してＲＡＭ１０６へ保存し、ステップＳ６１２に進む。ステップＳ６１２〜Ｓ６１４では、ピッチγに対して前記したステップＳ６０９〜Ｓ６１１と同様の処理を行う。ここまでの処理により、ピッチα、β、γの各ピッチのインクリメンタル信号のＡ／Ｄ変換値が取得され、ＲＡＭ１０６に保存された状態となる。
【００４５】
ステップＳ６１５は図５で説明したアブソリュート位置エンコード処理であり、ここでの処理により前記したアブソリュート位置エンコード値、すなわち位置制御対象物１０１の絶対位置が得られる。
【００４６】
ステップＳ６１６では、ステップＳ６１５で得られた絶対位置を用いて、フィードバック制御に用いられるインクリメンタル位置エンコード値（相対位置）の補正を行う。前記したように絶対位置の検出は位置制御装置の起動時や、インクリメンタル位置エンコード値が異常となった場合などに実行されるが、ここでの処理によりインクリメンタル位置エンコード値を補正することで絶対位置に基づくフィードバック制御が実行可能になる。なお、補正の手法としては、相対位置そのものを絶対位置で書き換えてもよいし、相対位置と絶対位置の差分を記憶し、その差分情報を用いて以後の相対位置を絶対位置に換算してもよい。そして以上の処理を実行後、ステップＳ６０１に戻る。
【００４７】
なお、以上の説明では３種類のピッチのインクリメンタル信号を用いた場合について説明しているが、４種類以上のピッチの信号を用いる場合においては、すべてのピッチの信号を検出する分だけ図６のステップＳ６１２〜Ｓ６１４と同様の処理を追加すればよい。
【００４８】
また、以上の説明では最小のピッチであるピッチαのインクリメンタル信号を用いてフィードバック制御を実行しているが、その他のピッチの信号を用いてもよい。その場合は以上の説明において、ピッチαとフィードバック制御に用いるピッチ（βまたはγ）の説明部分を入れ替えれば同様の制御を行うことができる。
【００４９】
以上で説明した処理は、前記したようにフィードバック制御の実行周期で反復実行される。以下では例としてフィードバック制御周期が０．１ｍｓｅｃ（制御周波数１０ｋＨｚ）の場合について説明する。
【００５０】
まず、絶対位置検出を行わない場合は、ピッチαのインクリメンタル信号によるフィードバック制御処理であるステップＳ６０２〜Ｓ６０８が０．１ｍｓｅｃ周期で実行される。一方、絶対位置検出を行う場合はフィードバック制御処理に加えて、ピッチの切り替え、信号取得および絶対位置検出処理であるステップＳ６０１、Ｓ６０９〜Ｓ６１６が実行される。ここでピッチの切り替えと信号取得を十分短い時間間隔で実行し、フィードバック制御周期である０．１ｍｓｅｃの時間内にステップＳ６０１からステップＳ６１６の全ての処理が実行されるように構成することで、絶対位置検出を行わない場合と同じ制御周期でフィードバック制御を行うことができる。
【００５１】
このように、ピッチ切り替えと信号取得をフィードバック制御周期より短い時間間隔で実行することで、フィードバック制御処理を実行していない期間を用いて絶対位置検出の処理を実行することができる。この結果、制御対象物を静止させるように制御した状態でピッチの異なる複数のインクリメンタル信号を検出することができ、これらの信号を組み合わせて制御対象物の絶対位置の演算を正しく行うことができる。
【００５２】
なお、絶対位置検出の処理中に位置制御装置に衝撃などが加わると、制御対象物を静止させるように制御していても制御対象物の位置が変化してしまう場合がある。このような場合に絶対位置の演算が誤って実行されないようにするために、以上で説明した複数のインクリメンタル信号の検出と絶対位置検出処理を複数回連続して実行し、結果が一致または所定の閾値内に入っているかどうかを判定するようにしてもよい。結果が不一致であれば再度検出処理を実行することで、絶対位置の演算が誤って実行されることを防ぐことができる。
【実施例２】
【００５３】
以下で、本発明の実施例２について説明する。前記した実施例１においては、ピッチαのインクリメンタル信号によるフィードバック制御を行いつつ、フィードバック制御処理を実行していない期間に他の全てのピッチへの切替と信号検出を終了させていた。これに対して以下で説明する実施例２においては、フィードバックの１回の制御周期内ですべてのピッチの処理を終了させるのではなく、複数回の制御周期に分割して処理を行う。
【００５４】
前記した実施例１においては、フィードバックの１回の制御周期内に図６の全ての処理が実行されるように構成している。ここでピッチの切り替えと信号取得を行う際には、前記のように信号回路の電気特性に応じた静定時間の経過を待つ必要がある。一方でフィードバック制御周期は制御対象物等の物理的・電気的特性、位置制御装置に要求される制御応答性・安定性などから規定される。このため位置制御装置の特性や要求性能によっては、フィードバック制御周期の時間内に全ての処理が実行できるとは限らない。そこで以下で説明する実施例２では、複数のフィードバック制御周期に分割して処理を行うように構成している。
【００５５】
実施例２における位置制御装置の構成、インクリメンタル位置エンコード処理およびアブソリュート位置エンコード処理の内容は、前記した実施例１と同様であるので、説明は省略する。以下では実施例２の特徴である位置制御処理について説明する。なお、以下では３種類のピッチのインクリメンタル信号を用いた場合について説明しているが、ピッチが４種類以上の構成とすることもできる点は実施例１と同様である。
【００５６】
図７は、本発明の実施例２である位置制御装置における位置制御処理のフローチャートである。以下の処理はマイクロコンピュータ１０４にて実行される。
【００５７】
図７のステップＳ７０１では、ＲＡＭ１０６に保持されている変数であるステータスカウンタの値として０をセットする。このステータスカウンタは、複数のフィードバック制御周期に分割して処理を行う際に処理内容を区別するために用いるデータである。次のステップＳ７０２〜Ｓ７０９の処理は、実施例１の説明における図６のステップＳ６０１〜Ｓ６０８と同じであるので説明は省略する。ステップＳ７０９で絶対位置検出を実行すると判別した場合はステップＳ７１０へ処理を移し、実行しないと判別した場合はステップＳ７０３に戻る。
【００５８】
ステップＳ７１０では、ステータスカウンタの値が０であるかどうかを判別する。ステータスカウンタが０の場合はステップＳ７１１に進み、ピッチβの信号の処理を行う。ステップＳ７１１〜Ｓ７１３の処理は図６のステップＳ６０９〜Ｓ６１１の処理と同じである。ステップＳ７１４ではステータスカウンタの値として１をセットし、ステップＳ７０２に戻る。
【００５９】
一方、ステップＳ７１０でステータスカウンタが０でないと判別された場合はステップＳ７１５に進み、ピッチγの信号の処理および絶対位置検出の処理を行う。ステップＳ７１５〜Ｓ７１９の処理は図６のステップＳ６１２〜Ｓ６１６の処理と同じである。ステップＳ７２０ではステータスカウンタの値として０をセットし、ステップＳ７０２に戻る。
【００６０】
以上で説明したように、本発明の実施例２ではステータスカウンタの値が０の場合と１の場合で、フィードバック制御周期の時間内に実行する処理を変更している。すなわちステータスカウンタの値が０の場合はピッチβへの切り替えと信号取得、１の場合はピッチγへの切り替え、信号取得および絶対位置検出の処理を実行する。ピッチαの信号取得およびフィードバック制御の処理はステータスカウンタの値によらず、フィードバック制御周期で実行される。このように構成することで、フィードバック制御を所定の周期で実行しつつ、フィードバック制御の２周期の期間ですべてのピッチのインクリメンタル信号を取得し絶対位置の検出を行うことができる。
【００６１】
なお、ピッチが４種類以上の場合はその分だけステータスカウンタの場合分けを増やし、３周期以上に分割して処理を行えばよい。また、実施例１の場合と同様に、ピッチαのインクリメンタル信号の代わりにその他のピッチの信号を用いてフィードバック制御を実行してもよい。その場合は以上の説明において、ピッチαとフィードバック制御に用いるピッチ（βまたはγ）の説明部分を入れ替えれば同様の制御を行うことができる。
【００６２】
以上説明した本発明の実施例によれば、ピッチの異なる複数のインクリメンタル信号を同一の信号線に出力する構成においても、フィードバック制御により制御対象物を静止させた状態でピッチの異なる複数のインクリメンタル信号を検出することができる。そしてこれらの信号を組み合わせて、制御対象物の絶対位置の演算を正しく行うことができる。
【００６３】
以上、本発明をその好適な実施例に基づいて詳述してきたが、本発明はこれら特定の実施例に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。上述の実施例の一部を適宜組み合わせてもよい。
【００６４】
また、上述の実施例の機能を実現するソフトウェアのプログラムを、記録媒体から直接、或いは有線／無線通信を用いてプログラムを実行可能なコンピュータを有するシステム又は装置に供給し、そのプログラムを実行する場合も本発明に含む。
【００６５】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータに供給、インストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明の機能処理を実現するためのコンピュータプログラム自体も本発明に含まれる。
【００６６】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【００６７】
プログラムを供給するための記録媒体としては、例えば、ハードディスク、磁気テープ等の磁気記録媒体、光／光磁気記憶媒体、不揮発性の半導体メモリでもよい。
【００６８】
また、プログラムの供給方法としては、コンピュータネットワーク上のサーバに本発明を形成するコンピュータプログラムを記憶し、接続のあったクライアントコンピュータはがコンピュータプログラムをダウンロードしてプログラムするような方法も考えられる。
【符号の説明】
【００６９】
１０１  位置制御対象物
１０２  エンコーダ
１０４  マイクロコンピュータ
１０９  モータ
１１０  ピッチ切り替え信号出力部
【図１】
2014134493.tif 000003
【図２】
2014134493.tif 000004
【図３】
2014134493.tif 000005
【図４】
2014134493.tif 000006
【図５】
2014134493.tif 000007
【図６】
2014134493.tif 000008
【図７】
2014134493.tif 000009