(57)【要約】【課題】サーボ回路等で使用され、インクリメンタル型のロータリエンコーダ及びその出力パルスをカウントするカウンタにより制御対象の位置を検出する位置検出装置において、ロータリエンコーダから出力されるゼロ位置信号を示すＺ相のパルスを制御対象の可動範囲において複数回出力するようにする。また、各Ｚ相のパルスが出力されるときの制御対象の絶対的な位置の値をメモリに記憶させておく。電源投入時において、電源投入時の制御対象の位置に対してＺ相のパルスが出力される最も近い位置に制御対象を移動させてその位置の値をメモリから読み出してその値でカウント値を初期化する。これによって、ロータリエンコーダのカウント値の初期化を短時間で行うことができるようにする。【解決手段】サーボ回路において、制御対象１８の位置を検出するためのロータリエンコーダ２０とカウンタの機能を備えたＣＰＵ１０とが設けられる。また、ロータリエンコーダから出力されるＺ相のパルスを識別するための情報としてポテンショメータ２２も設けられる。【選択図】      図１
2005283274.tif 000002
【特許請求の範囲】
【請求項１】
制御対象の所定の移動量ごとにエンコーダから出力されるパルスに基づいてカウント値を増加又は減少させることによって制御対象の現在位置を示す現在値を前記カウント値として検出する位置検出装置において、
前記制御対象の可動範囲が制限されている場合にはその可動範囲内の複数の位置において、又は、前記制御対象の可動範囲が制限されず、周期的に同一状態が繰り返される場合には、その周期の整数倍の動作範囲内の複数の位置において、初期化位置を示す初期化信号を出力する初期化信号出力手段と、
各初期化信号出力手段により初期化信号が出力される各位置での前記制御対象の現在値を、各初期化信号を識別する識別情報に対応付けて記憶する現在値記憶手段と、
前記カウント値の初期化時において、前記初期化信号出力手段によりいずれかの初期化信号が出力される位置に前記制御対象を移動させると共に、該初期化信号を識別する識別情報に対応する現在値を前記現在値記憶手段から取得し、該取得した現在値を前記カウント値として設定するカウント値設定手段と、
を備えたことを特徴とする位置検出装置。
【請求項２】
前記初期化信号出力手段により出力される各初期化信号は、前記エンコーダから出力されるゼロ位置信号であることを特徴とする請求項１の位置検出装置。
【請求項３】
前記初期化信号出力手段により出力される各初期化信号を識別する識別情報は、前記制御対象の位置に対応した値の信号を出力する位置検出センサの出力値であって、各初期化信号が出力される際の出力値であることを特徴とする請求項１又は２の位置検出装置。
【請求項４】
前記位置検出センサは、ポテンショメータ、又は、アブソリュート型のエンコーダであることを特徴とする請求項３の位置検出装置。
【請求項５】
前記カウント値設定手段は、前記カウント値の初期化を開始する際に、前記位置検出センサの出力値を検出し、該検出した出力値に対して、前記現在値記憶手段に記憶されている識別情報の値のうち最も近い値によって識別される初期化信号が出力される位置に前記制御対象を移動させることを特徴とする請求項３の位置検出装置。
【請求項６】
前記現在値記憶手段に記憶するデータの作成時において、前記制御対象を所定の規定位置に移動させて前記カウント値を０にリセットした後、前記制御対象を移動させながら前記初期化信号出力手段によって初期化信号が出力されたときの前記カウント値を前記制御対象の現在値として識別情報と共に前記現在値記憶手段に記憶させる初期設定手段を備えたことを特徴とする請求項１乃至５のうちいずれか１に記載の位置検出装置。
【請求項７】
サーボ装置における制御対象の位置検出に適用されることを特徴とする請求項１乃至６のうちいずれか１に記載の位置検出装置。
【請求項８】
テレビカメラを支持してテレビカメラをパン駆動又はチルト駆動する雲台において、パン駆動又はチルト駆動に関する位置の検出に適用されることを特徴とする請求項１乃至６のうちいずれか１に記載の位置検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は位置検出装置に係り、特にサーボ装置での制御対象の位置検出に使用される位置検出送致に関する。
【背景技術】
【０００２】
従来、テレビレンズのレンズ駆動やテレビカメラを支持する雲台のパン／チルト駆動等において、コントローラからの指令信号に従ってモータをサーボ駆動するサーボ装置（サーボ回路）が使用されている。サーボ回路ではモータによって駆動する制御対象の位置を検出する位置検出センサが用いられるが、従来では位置検出センサとしてポテンショメータやエンコーダが使用されている。尚、特許文献１にはポテンショメータを用いた位置検出装置が記載されている。
【特許文献１】特開平７−２３００３１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、高い精度の制御が要求されるサーボ回路では、位置検出サンサとしてポテンショメータを使用した場合と、エンコーダを使用した場合とでそれぞれ次のような欠点があった。位置検出センサとしてポテンショメータを使用した場合には、高精度のポテンショメータが必要となるためその分、コストが高くなるという欠点がある。また、高精度のポテンショメータでも、検出位置（検出角度）に対する出力電圧の直線性に限界があり、位置検出の精度にも限界がある。更に、デジタル処理が必要な場合には、ポテンショメータの出力電圧をＡ／Ｄコンバータによってデジタル信号に変換する必要があり、そのＡ／Ｄコンバータにも高精度のものを使用する必要があるためコストが高くなるという欠点もあった。
【０００４】
一方、エンコーダとして例えばインクリメンタル型のエンコーダ（以下、単にエンコーダという）を使用した場合には、ポテンショメータのような欠点はなく安価に高精度の位置検出を行うことができるが、エンコーダから出力されたパルス数のカウント値を位置に対応した絶対的な値（絶対位置を示す値）とするために電源投入時に制御対象を可動範囲の端まで一旦移動させてカウント値を０に初期化するか、又は、ゼロ位置信号（Ｚ相）付きのエンコーダの場合にはそのゼロ位置信号を検出するまで制御対象を移動させてカウント値を０に初期化する等の原点復帰の動作が必要となる。そのため、電源投入時に原点復帰の動作に時間を要するという欠点があった。
【０００５】
原点復帰の動作を不要とするものにポテンショメータと同様の位置に対応した絶対値を出力するアブソリュート型のエンコーダが知られているが、アブソリュート型のエンコーダを使用する場合には、高分解能のものが必要となるため、コストが高くなるという欠点がある。また、アブソリュート型のエンコーダの分解能にも限界があり、更に、パラレル出力であるため、ケーブルの本数、入力端子がビット数分必要になるという欠点がある。
【０００６】
本発明はこのような事情に鑑みてなされたもので、インクリメンタル型のエンコーダを用いることによって高精度、高分解能の位置検出を安価に行えるようにすると共に、電源投入時の初期化の処理を短時間で行えるようにして電源投入後にすぐに位置検出を有効に行うことができる位置検出装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
前記目的を達成するために、請求項１に記載の位置検出装置は、制御対象の所定の移動量ごとにエンコーダから出力されるパルスに基づいてカウント値を増加又は減少させることによって制御対象の現在位置を示す現在値を前記カウント値として検出する位置検出装置において、前記制御対象の可動範囲が制限されている場合にはその可動範囲内の複数の位置において、又は、前記制御対象の可動範囲が制限されず、周期的に同一状態が繰り返される場合には、その周期の整数倍の動作範囲内の複数の位置において、初期化位置を示す初期化信号を出力する初期化信号出力手段と、各初期化信号出力手段により初期化信号が出力される各位置での前記制御対象の現在値を、各初期化信号を識別する識別情報に対応付けて記憶する現在値記憶手段と、前記カウント値の初期化時において、前記初期化信号出力手段によりいずれかの初期化信号が出力される位置に前記制御対象を移動させると共に、該初期化信号を識別する識別情報に対応する現在値を前記現在値記憶手段から取得し、該取得した現在値を前記カウント値として設定するカウント値設定手段と、を備えたことを特徴としている。
【０００８】
本発明によれば、インクリメンタル型のエンコーダを用いているため高精度、高分解能の位置検出を安価に行うことができる。また、電源投入時のエンコーダのカウント値の初期化において、制御対象を大きく移動させることなく所望の初期化信号が出力される位置まで移動させることによって、制御対象の位置に対応した規定の値にカンウト値を適切に設定することができるためカウント値の初期化を短時間で行うことができ、電源投入後にすぐに位置検出を有効に行うことができる。
【０００９】
請求項２に記載の位置検出装置は、請求項１に記載の発明において、前記初期化信号出力手段により出力される各初期化信号は、前記エンコーダから出力されるゼロ位置信号であることを特徴としている。エンコーダには、ゼロ位置信号を示すＺ相のパルスが出力されるものがあり、そのゼロ位置信号を初期化信号として利用する。
【００１０】
請求項３に記載の位置検出装置は、請求項１又は２に記載の発明において、前記初期化信号出力手段により出力される各初期化信号を識別する識別情報は、前記制御対象の位置に対応した値の信号を出力する位置検出センサの出力値であって、各初期化信号が出力される際の出力値であることを特徴としている。初期化信号を識別する識別情報として位置に対応した絶対的な値を出力する位置検出センサの出力値を使用するようにしたものであるが、この位置検出センサは、単に初期化信号を識別するだけの精度があればよく、高精度、高分解能のものは不要である。従って、これによってコストが高くなるという不利益はほとんどない。この位置検出センサとして例えば、請求項４に記載のようにポテンショメータ、又は、アブソリュート型のエンコーダを用いることができる。
【００１１】
請求項５に記載の位置検出装置は、請求項３に記載の発明において、前記カウント値設定手段は、前記カウント値の初期化を開始する際に、前記位置検出センサの出力値を検出し、該検出した出力値に対して、前記現在値記憶手段に記憶されている識別情報の値のうち最も近い値によって識別される初期化信号が出力される位置に前記制御対象を移動させることを特徴としている。請求項３のように位置検出センサを使用する場合、カウント値の初期化を開始する際に、制御対象の現在値（本来の現在値とは必ずしも一致しない）を位置検出センサによって検出することによって、初期化信号が出力される最も近い位置に制御対象を移動させてカウント値を初期化することができる。従って、より短時間にカウント値の初期化を行うことができる。
【００１２】
請求項６に記載の位置検出装置は、請求項１乃至５に記載の発明のうちいずれか１に記載の発明において、前記現在値記憶手段に記憶するデータの作成時において、前記制御対象を所定の規定位置に移動させて前記カウント値を０にリセットした後、前記制御対象を移動させながら前記初期化信号出力手段によって初期化信号が出力されたときの前記カウント値を前記制御対象の現在値として識別情報と共に前記現在値記憶手段に記憶させる初期設定手段を備えたことを特徴としている。本発明は、初期化信号が出力されるときの現在値を事前に記憶しておく手段を備えたものである。
【００１３】
請求項７に記載の位置検出装置は、請求項１乃至６のうちいずれか１に記載の発明をサーボ装置における制御対象の位置検出に適用したことを特徴としている。
【００１４】
請求項８に記載の位置検出装置は、請求項１乃至６のうちいずれか１に記載の発明を、テレビカメラを支持してテレビカメラをパン駆動又はチルト駆動する雲台において、パン駆動又はチルト駆動に関する位置の検出に適用したことを特徴としている。
【発明の効果】
【００１５】
本発明によれば、基本としてインクリメンタル型のエンコーダを用いて位置検出を行うため、安価で、且つ、高精度、高分解能の位置検出を行うことができる。また、エンコーダのカウント値の初期化を短時間で行うことができる。
【発明を実施するための最良の形態】
【００１６】
以下添付図面に従って本発明に係る位置検出装置の好ましい実施の形態について詳説する。
【００１７】
図１は本発明が適用されるサーボ回路の構成を示した図である。同図のサーボ回路は、所望の制御対象１８をモータ１６により制御するもので、制御対象１８の位置を制御量とし、その制御量が指令信号により与えられた目標値となるように制御対象１８を制御するものである。本サーボ回路の適用範囲は特定の分野に限られないが、特に、テレビレンズシステムやテレビカメラを支持する雲台システムなどに使用され、その場合にテレビレンズの可動のレンズ群や、雲台システムのパン機構、チルト機構などが制御対象となり、指令信号は所定のコントローラなどから与えられる。
【００１８】
同図において、ＣＰＵ１０には指令信号が与えられるようになっており、その指令信号により制御対象１８を移動させる位置を示す目標値が与えられる。ＣＰＵ１０からＤ／Ａコンバータ１２にはモータ１６を駆動するための制御信号が出力され、その制御信号がＤ／Ａコンバータ１２によってデジタル値からアナログ値（電圧値）に変換されて駆動回路１４に与えられる。駆動回路１４は、モータ１６に制御信号の電圧に応じた駆動電圧を印加する。これによって、ＣＰＵ１０から出力された制御信号の値に対応する回転方向及び速度でモータ１６が駆動される。制御対象１８はモータ１６の出力軸にギヤ列等を介して連結されており、モータ１６と連動して動作する。
【００１９】
ロータリエンコーダ２０は、インクリメンタル型のロータリエンコーダであり、制御対象１８の現在値を高精度、高分解能に検出するための位置検出センサとして設けられる。ロータリエンコーダ２０の回転軸は、モータ１６の回転軸又は制御対象１８に直結又はギヤ列等を介して接続される。ロータリエンコーダ２０の出力信号は、図２（Ａ）、（Ｂ）、（Ｃ）（横軸は回転角度）に示すようなＡ相、Ｂ相、Ｚ相とからなり、例えば、図２（Ａ）、（Ｂ）に示すようにＡ相、Ｂ相からは、互いに９０度の位相差をもつ所定回転量ごとのパルスが１回転当たり決まった数だけ出力される。また、図２（Ｃ）に示すようにＺ相からは、１回転当たり１つのパルスがゼロ位置信号として出力される。ロータリエンコーダ２０から出力されたこれらの各相の出力信号はＣＰＵ１０に与えられる。
【００２０】
ポテンショメータ２２は、制御対象１８のおおよその位置を検出する位置検出センサであり、詳細を後述するようにロータリエンコーダ２０のＺ相によりゼロ位置信号のパルスが出力される制御対象１８の位置を特定し、また、複数の位置で出力されるゼロ位置信号（又はその位置）を識別するために使用される。ポテンショメータ２２の回転軸は、モータ１６の回転軸又は制御対象１８に直結又はギヤ等を介して接続される。ポテンショメータ２２からは例えば図２（Ｄ）に示すように回転軸の回転角度に応じて０Ｖから５Ｖの電圧が略線形的に出力され、その電圧信号は、Ａ／Ｄコンバータ２４によってデジタル値に変換されてＣＰＵ１０に与えられる。
【００２１】
ＣＰＵ１０は、カウンタの機能を備えており、ロータリエンコーダ２０からＣＰＵ１０に入力したＡ相、Ｂ相のパルスに基づいてそのカウンタのカウント値がカウントされる。尚、Ａ相、Ｂ相のパルスに基づいてカウンタによってカウントされたカウント値をＡ・Ｂ相カウント値というものとする。ここで、Ａ相、Ｂ相のパルスの位相関係は、ロータリエンコーダ２０の回転軸が正転している場合と、逆転している場合とで逆になる。カウンタは、ロータリエンコーダ２０からＡ相、Ｂ相のパルスが与えられるごとに例えば１ずつＡ・Ｂ相カウント値を増加、又は、減少させるが、Ａ相のパルスがＢ相のパルスよりも９０度進んでいる場合（正転の場合）にはＡ・Ｂ相カウント値を増加させ、逆にＢ相のパルスがＡ相のパルスよりも９０度進んでいる場合（逆転の場合）にはＡ・Ｂ相カウント値を減少させる。
【００２２】
また、詳細は後述するが、Ａ・Ｂ相カウント値は、制御対象１８が所定の位置（端）に設定されている場合に、０となるように初期設定される。従って、上述のようにカウンタによってカウントされた各時点でのＡ・Ｂ相カウント値は、そのときの制御対象１８の位置に対応した絶対的な値を示す。以下、このように初期設定されたときのＡ・Ｂ相カウント値を制御対象１８の現在値という。尚、ポテンショメータ２２から出力された電圧信号をＡ／Ｄコンバータ２４によりデジタル信号に変換してＣＰＵ１０に入力される値も制御対象１８の現在位置に対応した絶対的な値を示すが、その値はＡ・Ｂ相カウント値と一致させる必要はなく、以下、その値をポテンショメータ２２のＡ／Ｄ変換値というものとする。
【００２３】
ＣＰＵ１０は、このようにしてカウンタによって得られるＡ・Ｂ相カウント値を制御対象１８の現在値として、指令信号によって与えられた目標値と現在値との差に応じた（例えば比例した）値の制御信号を逐次求めてその制御信号を上述のようにＤ／Ａコンバータ１２に出力する。これによって、目標値と現在値との差が小さくなる方向にモータ１６が回転すると共に、目標値と現在値との差が小さくなる程、モータ１６の回転速度が減速する。そして、現在値の変化と共に変化する制御信号がＣＰＵ１０から駆動回路１４に逐次与えられることにより制御対象１８の位置が目標値によって示される位置に移動し停止する。また、指令信号の目標値が変われば、それに追従して制御対象１８の位置が移動する。
【００２４】
次に、以上の如く構成されたサーボ回路の初期設定の手順について図３のフローチャートに従って説明する。製品出荷時や制御対象の位置精度が低下した場合等の所望時において、サーボ回路の初期設定を行う。初期設定を行う場合には、例えば所定のスイッチを押して初期設定の実行指示をＣＰＵ１０に与える。ＣＰＵ１０は、初期設定の実行指示が与えられと、モータ１６を所定方向に回転させるための制御信号をＤ／Ａコンバータ１２を介して駆動回路１４に出力し、モータ１６を回転可能な範囲の一方の端に向けて動作させる。即ち、制御対象１８を可動範囲の一方の端（以下、この端を始端という）に向けて移動させる（ステップＳ１０）。そして、始端が検出されたか否かを判定する（ステップＳ１２）。始端が検出されたか否かは、制御対象１８が始端に到達したことを検出するセンサ（マイクロスイッチやフォトインタラプタ等）を設けて、そのセンサからの信号で判断してもよいし、また、モータ１６の回転が強制的に停止したこと検出する手段等によって判断してもよい（下記の終端の検出も同様）。この判定処理でＮＯと判定している間は、ステップＳ１０の処理とステップＳ１２の処理を繰り返す。ＹＥＳと判定した場合には次のステップＳ１４の処理に移行する。
【００２５】
尚、制御対象１８が例えば雲台のパン機構のように回転するもので始端及び終端なくエンドレスで動作可能な場合には、制御対象１８が例えば１回転する範囲（０度〜３６０度の範囲）を制御対象１８の可動範囲とみなし、制御対象が所定の位置にあるときを始端及び終端とする。また、この場合、端の位置を検出するためのセンサを設けておき、ＣＰＵ１０は、そのセンサによって制御対象１８が端に移動したことを検出する。但し、このようなセンサを用いることなく所望の位置を端としてもよく、その場合には、操作者がコントローラを操作して制御対象１８を制御し、端とする所望の位置に制御対象１８を設定する。
【００２６】
制御対象１８が始端に到達し、ステップＳ１２においてＹＥＳと判定すると、続いてＣＰＵ１０は、上記カウンタのＡ・Ｂ相カウント値を０にクリアする（ステップＳ１４）。そして、駆動回路１４に出力する制御信号の値を変更し、モータ１６の回転方向を反転させてもう一方の端（以下、この端を終端という）の方向へ制御対象１８を動作させると共に、Ａ・Ｂ相カウント値のカウントを開始する（ステップＳ１６）。
【００２７】
次にＣＰＵ１０は、ロータリエンコーダ２０から与えられるＺ相の出力信号においてゼロ位置信号を示すパルスが検出されたか否かを判定する（ステップＳ１８）。ここで、ＮＯと判定した場合には終端が検出された否かを判定する（ステップＳ２２）。更に、ＮＯと判定した場合にはステップＳ１８の処理から繰り返す。即ち、制御対象１８が終端に到達するまで、ステップ１８の判定を繰り返す。
【００２８】
ステップＳ１８において、ＹＥＳと判定した場合、ＣＰＵ１０は、そのときのＡ・Ｂ層カウント値（Ｄ値）と、ポテンショメータ２２からＡ／Ｄコンバータ２４を介して得られるＡ／Ｄ変換値（Ａ値）を対応付けて内蔵のメモリに記憶する（ステップＳ２０）。尚、メモリはＥＥＰＲＯＭ等の不揮発性メモリであって電源をオフしても記憶したデータは保持される。
【００２９】
以上のようにロータリエンコーダ２０のＺ相のパルスを検出したときのＡ・Ｂ層カウント値（Ｄ値）とポテンショメータ２２のＡ／Ｄ変換値（Ａ値）とをメモリに記憶すると、ステップＳ２２の判定処理に移行する。
【００３０】
ここで、制御対象１８が始端）から終端まで移動する間、ロータリエンコーダ２０は、少なくとも複数回転するようにモータ１６との減速比が決められ、そのような減速比となるようにモータ１６等に連結されている。従って、ステップＳ２２においてＹＥＳと判定するまでには少なくとも２回以上はＺ相のパルスを検出する。また、ポテンショメータ２２は制御対象１８が始端から終端まで移動する間に略１回転するようにモータ１６等に連結されている。尚、制御対象１８が始端から終端まで移動する間のポテンショメータ２２の回転数には特に制限はないが、ロータリエンコーダ２０からＺ相のパルスが出力された際のポテンショメータ２２のＡ／Ｄ変換値を、そのパルスを他のパルスから識別する識別情報として使用するため、仮に制御対象１８が始端から終端まで移動する間にポテンショメータ２２が２回転以上する場合にＺ相のパルスが出力されたときのポテンショメータ２２のＡ／Ｄ変換値が他のＺ相のパルスが出力されたときのＡ／Ｄ変換値と重複する場合にはメモリに記憶するデータとしては無効となる。しかしながら、ポテンショメータ２２の回転数を多くする理由がない場合には本実施の形態のように１回転程度が妥当である。
【００３１】
図４は、上記初期設定の処理の際に制御対象１８が始端から終端まで移動する間にロータリエンコーダ２０から出力されるＺ相のパルスのタイミングと、ポテンショメータ２２の出力電圧を例示した図である。同図の例では、上記のように制御対象１８が始端から終端まで移動する間、ポテンショメータ２２は１回転し、出力電圧は、最小値（０Ｖ）から最大値（５Ｖ）まで変化する。但し、ポテンショメータ２２で実際に位置検出できる範囲は３６０度のうち３４０度程度の範囲に限られているため、制御対象１８の始端付近と終端付近で出力電圧が不変となる部分が存在する。また、同図の例では制御対象１８は１回転の範囲で回転するものとしており、始端を０度、終端を３６０度と記している。
【００３２】
これに対して、ロータリエンコーダ２０のＺ相のパルスは、等間隔のＺ１〜Ｚ８で示す制御対象１８の各位置で出力される。実際には、制御対象１８の始端付近や終端付近においてポテンショメータ２２の出力が不変となる範囲でＺ相のパルスが出力されることもあり得るが、その場合のＺ相のパルスは無効にする。もし、制御対象１８の始端から終端までの可動範囲全体でポテンショメータ２２の出力電圧が変化するように制御対象１８の可動範囲に対してポテンショメータ２２の回転量を１回転より小さくすれば、ポテンショメータ２２の出力電圧が不変となる範囲をなくすことができ、その場合には制御対象１８の可動範囲で出力されるＺ相のパルスを全て有効にすることができる。
【００３３】
ＣＰＵ１０は、Ｚ相のパルス（有効なパルス）が検出されたＺ１〜Ｚ８の各タイミングにおいて、ポテンショメータ２２のＡ／Ｄ変換値（Ａ値）と、Ａ・Ｂ相カウント値（Ｄ値）を読み取り、メモリに記憶する。これによって、図５に例示するような対応データが生成される。例えば、制御対象１８がＺ１の位置のとき得られたデータによって、ポテンショメータ２２のＡ／Ｄ変換値（Ａ値）が１０００Ｈ（Ｈは１６進数の意味）のときには、ロータリエンコーダ２０のＡ・Ｂ相カウント値（Ｄ値）が１５００Ｈというように、制御対象１８が始端のときのＡ・Ｂ相カウント値を０とした場合における各Ｚ１〜Ｚ８の位置でのＡ・Ｂ相カウント値（Ｄ値）、即ち、制御対象１８の現在値がポテンショメータ２２のＡ／Ｄ変換値（Ａ値）を識別情報として記憶される。
【００３４】
以上のように、制御対象１８を終端に向けて移動させながら対応データを順次生成してメモリに記憶した後、制御対象１８が終端に到達し図３のステップＳ２２においてＹＥＳと判定すると初期設定を終了する。
【００３５】
次に、サーボ回路の使用開始の際の電源投入時におけるＡ・Ｂ相カウント値の初期化の処理手順を図６のフローチャートを用いて説明する。電源が投入されると、ＣＰＵ１０は、まず、ポテンショメータ２２のＡ／Ｄ変換値を読み取る（ステップＳ３０）。尚、電源投入時の制御対象１８の位置は前回使用した際の終了時の位置に設定されており不定である。続いて、ＣＰＵ１０は、ステップＳ３０で検出した現在のポテンショメータ２２のＡ／Ｄ変換値と、対応データとしてメモリに記憶したポテンショメータ２２のＡ／Ｄ変換値（Ａ値）と比較し、現在のＡ／Ｄ変換値に最も近いＡ値を見つけてＺ相のパルスが出力される至近の位置を特定すると共に、その方向にモータ１６を回転させる（ステップＳ３２）。そして、ＣＰＵ１０は、ロータリエンコーダ２０から与えられるＺ相の出力信号においてゼロ位置信号を示すパルスが検出されたか否かを判定する（ステップＳ３４）。ＮＯと判定した場合には、この判定を繰り返す。一方、ＹＥＳと判定した場合には、その位置でモータ１６の回転を停止させると共に、ステップＳ３２で最も近い値としたＡ値に対応するＤ値をメモリの対応データから読み取り、そのＤ値をＡ・Ｂ相カウント値として設定する(ステップＳ３６)。これによって、初期化の処理を終了し、以後、指令信号に従ってモータ１６を駆動して制御対象１８の位置を制御する通常の処理に移行する。
【００３６】
以上のような初期化の処理によれば、初期設定で行ったように制御対象が始端に設定されている場合のＡ・Ｂ相カウント値を０としたときに、ステップＳ３４でＺ相のパルスが検出された位置でのＡ・Ｂ相カウント値が再現される。即ち、制御対象１８が始端に設定されている場合のＡ・Ｂ相カウント値を０としてＡ相とＢ相のパルスによってカウントしたＡ・Ｂ相カウント値を制御対象１８の位置を示す現在値として表した場合に、ステップＳ３４でＺ相のパルスが検出された位置における現在値がＡ・Ｂ相カウント値として初期化される。従って、この初期化以後、Ａ・Ｂ相カウント値をその初期化した値からＡ相とＢ相のパルスに基づいて増加、減少させることによって、制御対象１８の現在値の検出を開始することができ、サーボ回路を有効に使用できるようになる。
【００３７】
尚、図６の初期化の手順では、電源投入後（初期化の処理開始後）、まず、ポテンショメータ２２のＡ／Ｄ変換値を読み取り、そのＡ／Ｄ変換値と、対応データとしてメモリに記憶したポテンショメータ２２のＡ／Ｄ変換値（Ａ値）と比較することによって、現在のＡ／Ｄ変換値に最も近いＡ値を見つけてその位置に向けて制御対象１８を移動させるようにしたが、これに限らない。例えば、電源投入後、所望の方向（例えば、予め決めている方向）に制御対象１８を移動させてもよい。この場合、制御対象１８を移動させてからＺ相のパルスを検出した位置でポテンショメータ２２のＡ／Ｄ変換値を読み取り、そのＡ／Ｄ変換値に一致する対応データのＡ値を見つける。そして、そのＡ値に対応するＤ値を対応データから読み取り、Ａ・Ｂ相カウント値として設定すればよい。
【００３８】
以上、上記実施の形態では、制御対象１８の可動範囲が制限されており、始端及び終端を有する場合について説明したが、制御対象１８の可動範囲が制限されていない場合に周期的に同一状態が繰り返される場合には、その周期の整数倍の動作範囲を可動範囲とみなして上記実施の形態と同様に初期設定及びＡ・Ｂ相カウント値の初期化の処理を行うことができる。
【００３９】
また、上記実施の形態では、ロータリエンコーダ２０のＺ相のゼロ位置信号を示すパルスを、Ａ・Ｂ相カウント値の初期化位置を示す初期化信号として利用したが、これに限らず、他の手段により初期化信号を出力（発生）させるようにしてもよい。例えば、制御対象１８が初期化位置とする所定の位置に移動したときにオン信号等を出力するスイッチ、フォトインタラプタ、その他の信号発生手段を制御対象１８の可動範囲の複数の位置に配置することによってＺ相のパルス同様に初期化信号を出力させることができる。
【００４０】
また、上記実施の形態では、制御対象１８の可動範囲において初期化信号として複数回出力されるロータリエンコーダ２０のＺ相のパルスを識別すると共に、電源投入時の制御対象１８の位置に対して、Ｚ相のパルスが出力される最も近い位置を特定するためにポテンショメータ２２のＡ／Ｄ変換値を使用したが、ポテンショメータ２２の代わりにアブソリュート型のエンコーダのように制御対象１８の位置に対応した絶対的な値を出力する位置検出センサを用いてもよい。
【００４１】
また、上記実施の形態では、電源投入時の制御対象１８の位置に対してＺ相のパルスが出力される最も近い位置をＡ・Ｂ相カウント値の初期化位置としてその位置に制御対象１８を移動させるようにしたが、上記のように電源投入後に任意の方向に制御対象１８を移動させて最初にＺ相のパルスを検出した位置をＡ・Ｂ相カウント値の初期化位置としてもよい。この場合、電源投入時の制御対象１８の位置に対して、Ｚ相のパルスが出力される最も近い位置を特定することは不要であり、制御対象１８の可動範囲において出力される複数の初期化信号を識別することができればよい。即ち、上記実施の形態では、制御対象１８の可動範囲の複数の位置で出力されるＺ相のパルスを識別する識別情報として、ポテンショメータ２２のＡ／Ｄ変換値を用い、初期設定時には、そのＡ／Ｄ変換値に対応させてＺ相の各パルス（初期化信号）が出力されるときの制御対象１８の現在値を対応データとしてメモリに記憶させ、Ａ・Ｂ相の初期化時には、Ｚ相のパルスが出力されるときのポテンショメータ２２のＡ／Ｄ変換値に対応する制御対象１８の現在値をメモリの対応データから読み取ってＡ・Ｂ相カウント値として設定するようにしたが、このような識別情報は、ポテンショメータ２２のＡ／Ｄ変換値以外であってもよい。例えば、初期化信号を出力する手段として制御対象の可動範囲の複数の初期化位置に信号発生手段を設置した場合に、初期化信号の番号等の識別情報を含む初期化信号を信号発生手段により発生させるようにしてもよい。
【００４２】
また、上記実施の形態のようにサーボ回路において制御対象１８の位置を検出する位置検出装置は、サーボ回路以外においても適用することができる。
【図面の簡単な説明】
【００４３】
【図１】図１は、本発明が適用されるサーボ回路の構成を示した図である。
【図２】図２（Ａ）〜（Ｃ）は、ロータリエンコーダの出力信号を示し、図２（Ｄ）は、ポテンショメータの出力信号を示した図である。
【図３】図３は、初期設定の手順を示したフローチャートである。
【図４】図４は、制御対象の可動範囲に対するポテンショメータの出力電圧とＺ相のパルスの出力タイミングを例示した図である。
【図５】図５は、初期設定によって生成される対応データを例示した図である。
【図６】図６は、Ａ・Ｂ相カウント値の初期化の処理手順を示したフローチャートである。
【符号の説明】
【００４４】
１０…ＣＰＵ、１２…Ｄ／Ａコンバータ、１４…駆動回路、１６…モータ、１８…制御対象、２０…ロータリエンコーダ、２２…ポテンショメータ、２４…Ａ／Ｄコンバータ
【図１】
2005283274.tif 000003
【図２】
2005283274.tif 000004
【図３】
2005283274.tif 000005
【図４】
2005283274.tif 000006
【図５】
2005283274.tif 000007
【図６】
2005283274.tif 000008