(57)【特許請求の範囲】
【請求項１】
モータを駆動制御し、該モータに連結された駆動系における駆動対象物の状態を制御するモータ制御装置であって、前記駆動対象物を反転駆動する場合に前記駆動系に配置されたギヤにより生じるバックラッシュを除去するための前記モータの駆動制御を行った後、前記駆動対象物を所定の目標状態にするためのモータの駆動制御を行うモータ制御装置において、
前記駆動対象物の複数の位置に対して反転駆動が開始された時のバックラッシュの大きさを示す実測データが事前に実測されて記憶される記憶手段と、
前記駆動対象物の現在位置を検出する位置検出手段と、
前記駆動対象物を反転駆動する際に、前記位置検出手段により検出された現在位置におけるバックラッシュの大きさを前記記憶手段に記憶された実測データに基づいて決定する決定手段と、
を備えたことを特徴とするモータ制御装置。
【請求項２】
前記駆動対象物の複数の位置における前記バックラッシュの大きさを前記実測データとして事前に検出するバックラッシュ検出手段を備え、該バックラッシュ検出手段は、前記駆動対象物の複数の各位置において、位置制御により目標位置を変化させながら前記駆動対象物を往復移動させると共に前記駆動対象物の現在位置を前記位置検出手段により検出し、該駆動対象物の往復移動時において現在位置が変化しなかった範囲での目標位置の変化量に基づいてバックラッシュの大きさを検出することを特徴とする請求項１のモータ制御装置。
【請求項３】
前記駆動系に配置されたギヤの周期を考慮すると、前記駆動対象物の複数の位置においてバックラッシュの大きさが同一になると想定される場合には、該複数の位置のうち、いずれか１つの位置でのバックラッシュの大きさを前記バックラッシュ検出手段により検出し、他の位置でのバックラッシュの大きさは、該検出したバックラッシュの大きさと同一の値で検出されたものとすることを特徴とする請求項２のモータ制御装置。
【請求項４】
手動操作手段の操作に基づいて前記駆動対象物を駆動する場合には、前記バックラッシュを除去する操作領域を設け、該バックラッシュ操作領域での操作時間にバックラッシュを除去するための前記モータの駆動制御を行うことを特徴とする請求項１のモータ制御装置。
【請求項５】
複数の駆動系を複数のモータにより同時に制御する場合には、各駆動系のバックラッシュの大きさの相違を考慮し、バックラッシュを除去するためのモータの駆動制御を行った後における各駆動系の実質的な駆動開始時間を一致させるようにしたことを特徴とする請求項１のモータ制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はモータ制御装置に係り、特にテレビカメラ及び雲台の駆動制御に用いられるモータ制御装置に関する。
【０００２】
【従来の技術】
各種の分野で、駆動系の機械的位置を制御するモータ制御装置としてのサーボ回路が用いられており、サーボ回路は、例えばテレビカメラを動かす雲台の駆動やレンズの駆動にも適用されている。即ち、テレビカメラを支持する雲台ではパン（左右方向）、チルト（上下方向）の動きがサーボ回路で行われ、テレビカメラ内のズームレンズ、フォーカスレンズがサーボ回路によって駆動される。
【０００３】
しかしながら、従来のサーボ回路では、モータから駆動対象物までの駆動系に配置されているギヤのバックラッシュによって、駆動対象物の動きが不自然となったり、操作した通りの動きとならないという問題があった。例えば、テレビカメラのパン動作において方向を転換させて位置Ｐ１から位置Ｐ２へ移動させる場合に、位置制御信号は位置Ｐ１から位置Ｐ２までの距離に比例した位置信号電圧となり、この位置信号電圧によってモータが駆動される。このときの駆動対象物であるテレビカメラの軌跡は、バックラッシュが存在することにより、制御開始からバックラッシュ分のモータの駆動時間が過ぎた後に急激に動き出すことになる。このため、テレビカメラの動きが不自然となり、しかも、駆動系に負担がかかるという問題があった。
【０００４】
また、テレビカメラをパン及びチルト動作させ、位置Ｐ３から位置Ｐ４に移動させる場合において、パンについてのみ方向転換して例えば右側へ移動させると、パンのバックラッシュ分を駆動させている間に、チルトでは例えば上側へ移動するので、テレビカメラは位置Ｐ３から位置Ｐ４へ真っ直ぐ進まず、屈折した軌跡をたどることになる。従って、カメラが被写体を正確に追うことができないという不都合があった。
【０００５】
そこで、本願出願人は、特開平７−２９５６４５号公報、特開平７−２９５６４６号公報、及び、特開平７−２９５６４８号公報において上記不具合等を解消するためのサーボ回路を提案している。特開平７−２９５６４５号公報に記載のサーボ回路では、バックラッシュ分を駆動させる時間を設定し、このバックラッシュ駆動時間ではモータを速度制御する。そして、その後、モータの制御を位置制御に切り替えて駆動系（駆動対象物）の実質的な駆動を開始するようにしている。これにより、駆動対象物の不自然な動きが低減される。また、ジョイスティック等の手動操作手段を用いる場合は、バックラッシュ分を駆動させる操作領域を設け、このバックラッシュ操作領域の操作時間に速度制御するようにしている。これにより、実際の駆動と一致した操作感覚が得られる。また、複数の駆動系を同時に制御する場合は、バックラッシュ分の駆動後の各駆動系の実質的な駆動開始時間を一致させるようにしている。これにより、操作通りの正確な軌跡の駆動が可能となる。
【０００６】
特開平７−２９５６４６号公報に記載のサーボ回路では、バックラッシュ分を駆動させる時間を設定し、このバックラッシュ駆動時間では実質的駆動の速度よりも遅い速度となるようにモータを駆動制御するようにしている。これにより、実質的な駆動を安定したモータ回転数で開始でき、駆動対象物の不自然な動きが軽減される。また、ジョイスティック等の手動操作手段を用いる場合は、バックラッシュ分を駆動させる操作領域を設け、このバックラッシュ操作領域の操作時間に遅い速度のモータ駆動を実行するようにしている。これにより実際の駆動と一致した操作感覚が得られる。また、複数の駆動系を同時に制御する場合は、上記公報と同様の処理により操作通りの正確な軌跡の駆動が可能となる。
【０００７】
特開平７−２９５６４８号公報に記載のサーボ回路では、バックラッシュ分を駆動させる時間を設定し、このバックラッシュ駆動時間では位置制御信号でバックラッシュ分を駆動し、このバックラッシュ駆動時間が経過した時点で、位置制御信号を元の状態に戻して新たに位置制御を開始するようにしている。これにより、モータの回転数の急激な増加が防止され、駆動対象物の不自然な動きが軽減される。また、ジョイスティック等の手動操作手段を用いる場合は、バックラッシュ分を駆動させる操作領域を設け、このバックラッシュ操作領域の操作時間経過時に位置信号を元の状態に戻して新たに位置制御を開始する。これにより、実際の駆動と一致した操作感覚が得られる。また、複数の駆動系を同時に制御する場合は、上記公報と同様の処理により操作通りの正確な軌跡の駆動が可能となる。
【０００８】
以上の公報に記載のサーボ回路はいずれもバックラッシュを除去するためのモータの駆動制御を、駆動対象物を実質的に駆動する前に別制御で行うことによって、バックラッシュによる悪影響を除去するようにしたものである。
【０００９】
【発明が解決しようとする課題】
しかしながら、上記公報に記載のサーボ回路では、駆動対象物の位置にかかわらずバックラッシュ量が一定と仮定し、バックラッシュ分のモータの駆動時間を一定値に設定しているため、その駆動時間をバックラッシュ量が最小となる位置に対応した値に合わせる必要があった。従って、バックラッシュ量が大きい位置での効果は少なかった。
【００１０】
一方、特許第３１７３８４８号に記載のように駆動源に流れる電流値等からバックラッシュ分の駆動時間を実際の動作時に演算する方法が提案されており、この方法によれば駆動対象物の位置に応じた量のバックラッシュを除去することが可能である。しかしながら、この方法では、ＣＰＵの負担が大きくなり、ＣＰＵの能力によっては演算の遅れや、他の制御項目に影響を及ぼす不具合があるという欠点があった。また、電流検出回路を設ける必要があり、コスト、回路実装スペースの点でも不具合があった。
【００１１】
本発明はこのような事情に鑑みてなされたもので、駆動対象物の位置に応じた量のバックラッシュを簡易な処理で適切に除去し、バックラッシュによる悪影響を防止することができるモータ制御装置を提供することを目的とする。
【００１２】
【課題を解決するための手段】
前記目的を達成するために、請求項１に記載の発明は、モータを駆動制御し、該モータに連結された駆動系における駆動対象物の状態を制御するモータ制御装置であって、前記駆動対象物を反転駆動する場合に前記駆動系に配置されたギヤにより生じるバックラッシュを除去するための前記モータの駆動制御を行った後、前記駆動対象物を所定の目標状態にするためのモータの駆動制御を行うモータ制御装置において、前記駆動対象物の複数の位置に対して反転駆動が開始された時のバックラッシュの大きさを示す実測データが事前に実測されて記憶される記憶手段と、前記駆動対象物の現在位置を検出する位置検出手段と、前記駆動対象物を反転駆動する際に、前記位置検出手段により検出された現在位置におけるバックラッシュの大きさを前記記憶手段に記憶された実測データに基づいて決定する決定手段と、を備えたことを特徴としている。
【００１３】
本発明によれば、駆動対象物の反転駆動の開始位置において除去すべきバックラッシュの大きさを、その開始位置に応じた大きさとなるようにしたため、適切にバックラッシュを除去することができ、バックラッシュによる悪影響を防止することができる。また、そのバックラッシュの大きさを駆動対象物の複数の位置において事前に検出したバックラッシュの大きさに基づいて決定するようにしたため、簡易な処理で決定することができる。
【００１４】
また、請求項２に記載のように前記駆動対象物の複数の位置における前記バックラッシュの大きさを前記実測データとして事前に検出するバックラッシュ検出手段を備え、該バックラッシュ検出手段は、前記駆動対象物の複数の各位置において、位置制御により目標位置を変化させながら前記駆動対象物を往復移動させると共に前記駆動対象物の現在位置を前記位置検出手段により検出し、該駆動対象物の往復移動時において現在位置が変化しなかった範囲での目標位置の変化量に基づいてバックラッシュの大きさを検出するものとしてもよい。この場合、駆動対象物の複数の位置におけるバックラッシュの大きさをユーザの手間なく容易に検出することができる。
【００１５】
また、請求項３に示すように前記駆動系に配置されたギヤの周期を考慮すると、前記駆動対象物の複数の位置においてバックラッシュの大きさが同一になると想定される場合には、該複数の位置のうち、いずれか１つの位置でのバックラッシュの大きさを前記バックラッシュ検出手段により検出し、他の位置でのバックラッシュの大きさは、該検出したバックラッシュの大きさと同一の値で検出されたものとすることができる。即ち、駆動対象物の複数の位置におけるバックラッシュの大きさを事前に検出する際に要する時間を短縮することができる。
【００１６】
また、請求項４に示すように手動操作手段の操作に基づいて前記制御対象物を駆動する場合には、前記バックラッシュを除去する操作領域を設け、該バックラッシュ操作領域での操作時間にバックラッシュを除去するための前記モータの駆動制御を行うことができる。即ち、バックラッシュ分の駆動を手動操作手段の不感帯領域において実施することができ、実質的な駆動操作では、実際の駆動と一致した操作感覚が得られる利点がある。
【００１７】
また、請求項５に示すように複数の駆動系を複数のモータにより同時に制御する場合には、各駆動系のバックラッシュの大きさの相違を考慮し、バックラッシュを除去するためのモータの駆動制御を行った後における各駆動系の実質的な駆動開始時間を一致させるようにすることができる。これにより、操作通りの正確な軌跡の駆動が可能となる。
【００１８】
【発明の実施の形態】
以下添付図面に従って本発明に係るモータ制御装置の好ましい実施の形態について詳説する。
【００１９】
図１は、本発明に係るモータ制御装置の構成の一実施の形態を示したもので、本発明に係るモータ制御装置をテレビカメラ及び雲台に適用した場合の例である。図１において、雲台の操作部には図示の操作スイッチ１０及びその表示灯１１が複数（図では１個のみ表示）配置されており、この操作スイッチ１０としては、予め設定された場所に自動的にカメラを移動させるためのショットスイッチ等が設けられる。また、手動操作により任意の位置へカメラを駆動させるジョイスティック１２が設けられている。尚、カメラのズームレンズやフォーカスレンズの位置や移動速度を個別に操作する操作部材及びその操作量を検出する検出器なども設けられているが説明を省略する。
【００２０】
上記の操作スイッチ１０のようにオン状態とオフ状態とからなる操作信号は、直接、入出力（Ｉ／Ｏ）部１４へ供給されてＣＰＵ２２で読み取られ、ジョイスティック１２のように連続的な電圧値をとり得る操作信号は、Ａ／Ｄ変換器１５によりデジタル信号に変換された後、入出力（Ｉ／Ｏ）部１４へ供給されてＣＰＵ２２で読み取られるようになっている。
【００２１】
ＣＰＵ２２は、各種制御を統轄する処理部であり、上述のように雲台の操作部から与えられた操作信号に基づいてテレビカメラのパン（左右方向）動作、チルト（上下方向）動作、カメラ部内レンズのフォーカス動作、ズーム動作等を制御するための各種制御信号を出力する。ＣＰＵ２２から出力された制御信号はＩ／Ｏ部１４を介してサーボアンプ１７に与えられる。尚、ＣＰＵ２２の処理内容については後述する。
【００２２】
また、ＣＰＵ２２により読み取り又は書き込み可能なメモリ（ＥＥＰＲＯＭ２３、ＲＯＭ２４等）が搭載されており、例えば、ＥＥＰＲＯＭ２３には、ショット位置情報や現在の駆動方向等の適宜書き換えられる情報や、初期化プログラム実行時に生成される後述のバックラッシュ駆動時間のデータ等が記憶されるようなっている。ＲＯＭ２４には制御プログラムなどの読取り専用のデータが記憶されている。
【００２３】
サーボアンプ１７には、テレビカメラのパン動作、チルト動作、カメラ部内レンズのフォーカス動作、ズーム動作をするために、それぞれの駆動系に対応してモータ１８及び位置検出器１９が４組接続されており、これらのモータ１８と各駆動対象物との間は複数のギヤによって接続される。尚、位置検出器１９の出力は、Ａ／Ｄ変換器２０、Ｉ／Ｏ部１４を介してＣＰＵ２２にも与えられるようになっている。
【００２４】
サーボアンプ１７はＣＰＵ２２からＩ／Ｏ部１４を介して与えられる速度制御設定信号又は位置制御設定信号による指示により各駆動系のモータの制御を個別に速度制御又は位置制御に切り替えることができ、速度制御となっている駆動系に対して目標速度を指令する速度制御信号や、位置制御となっている駆動系に対して目標位置を指令する位置制御信号がＣＰＵ２２からＩ／Ｏ部１４及びＤ／Ａ変換器１６を介してサーボアンプ１７に与えられるようになっている。サーボアンプ１７は、各駆動対象物が、ＣＰＵ２２から与えられた速度制御信号の値に対応した速度、又はＣＰＵ２２から与えられた位置制御信号の値に対応した位置となるようにモータ１８をサーボ駆動する。
【００２５】
次に、上記ＣＰＵ２２の処理内容について説明する。上記モータ制御装置では、例えば、各駆動系の駆動対象物を予め設定された位置にショット動作させる場合と、ジョイスティック等による手動操作に基づいて動作させる場合とがある。まず、ショット動作させる場合のＣＰＵ２２の処理について説明すると、ＣＰＵ２２は、上記操作スイッチ１０のショットスイッチが押されたことを検出すると、ＥＥＰＲＯＭ２３に記憶されているショット位置情報を読み出し、ショット動作時の処理を実行する。ショット位置情報は、各駆動対象物の一連の動作、即ち、テレビカメラのパン、チルト、カメラ部内レンズのフォーカス、ズームについての一連の動作を再現するためのデータであり、例えば、そのショット動作時にパン、チルト、フォーカス、ズームが通過する軌跡上の位置を時系列で記憶したものである。ここで、例えば、パンのみのショット位置情報が記憶されているとすると、ＣＰＵ２２は、サーボアンプ１７に与える位置制御設定信号によりパン用のモータの制御を位置制御にし、ＥＥＰＲＯＭ２３から読み出したショット位置情報に基づいてサーボアンプ１７にパンの目標位置を示す位置制御信号を与える。これにより、パンが位置制御信号により指示された目標位置に移動すると共に、ショット位置情報に基づいて順次更新される目標位置に従って移動し、ＥＥＰＲＯＭ２３にショット位置情報として記憶された一連の動作が再現される。
【００２６】
また、ＣＰＵ２２は、位置検出器１９により検出される各制御対象物の位置信号に基づいて各駆動対象物の移動方向を常時検出し、各駆動対象物の現在の移動方向をＥＥＰＲＯＭ２３に記憶している。上述のようにショット位置情報に基づいてショット動作させる駆動対象物の移動方向が、ＥＥＰＲＯＭ２３に記憶されている現在（前回）の移動方向と比較として反転駆動となる場合には、そのショット動作のための位置制御信号を出力する前に駆動系のギヤにより生じるバックラッシュを除去する制御を実行する。尚、ショット動作中であっても反転駆動となる場合には、ショット動作を中止してバックラッシュを除去する以下の制御を実行することもできる。手動操作による動作時においても同様である。
【００２７】
バックラッシュを除去する制御は、バックラッシュ分だけモータを駆動する制御であり、ＥＥＰＲＯＭ２３には、所定の速度でバックラッシュ分だけモータを駆動するのに必要な時間（バックラッシュ駆動時間）が予め記憶されている。このバックラッシュ駆動時間は、駆動系によって相違し、また、駆動対象物の設定位置によっても異なるため、駆動系ごとに、且つ、駆動対象物の複数の位置に対応して記憶されている。尚、バックラッシュ駆動時間は初期化プログラム実行時において自動的に生成されるようになっているがこれについての詳細は後述する。
【００２８】
そこで、ＣＰＵ２２は、ＥＥＰＲＯＭ２３に記憶されているバックラッシュ駆動時間の情報により、反転駆動する駆動系の現在の駆動対象物の位置に対応したバックラッシュ駆動時間ｔ１を取得する。
【００２９】
図２には、反転駆動する駆動系で位置Ｐ１から位置Ｐ２まで駆動対象物を移動させる場合の制御状態が示されている。反転駆動する場合、サーボアンプ１７には反転駆動する駆動系のモータを速度制御にするための速度制御設定信号がＣＰＵ２２から与えられる。そして、図（Ａ）に示されるように、バックラッシュ駆動時間ｔ１の間では、速度制御電圧Ｖ１の速度制御信号がＣＰＵ２２からサーボアンプ１７に与えられ、図（Ｂ）の位置制御信号は与えられない。これにより、図（Ｄ）に示されるバックラッシュ分Ｂが駆動されるが、速度制御のため、モータ回転数は図（Ｅ）に示されるように一定となる。そして、バックラッシュ駆動時間ｔ１の後に、モータの制御を位置制御に切り替えるための位置制御設定信号がＣＰＵ２２からサーボアンプ１７に与えられると共に、図（Ｂ）の位置信号電圧Ｖｐの位置制御信号がＣＰＵ２２からサーボアンプ１７に与えられる。これによって駆動対象物は位置Ｐ1 から位置Ｐ2 まで駆動される。このようにして、図（Ｅ）に示されるように、モータ１８では常に安定した回転数を維持することになる。従って、パン、チルト、ズーム、フォーカス動作における駆動対象物の急激な動きが防止され、自然な動きの駆動が達成される。
【００３０】
更に、ＣＰＵ２２は４つの駆動系のバックラッシュを考慮して、各駆動系の実質的な駆動を同時に行うように制御している。即ち、パン、チルト、フォーカス、ズームの各駆動系ではバックラッシュ量が多少相違し、これらが同時に反転駆動されると、相互間に動きのずれが生じる。また、一方が前回と同方向に駆動され、他方が反転駆動される場合もあり、この場合も相互間に動きのずれが生じる。そこで、反転駆動する駆動系、又はこの駆動系の中で最もバックラッシュ駆動時間ｔ１が長い駆動系のバックラッシュ分の駆動が終了した後に、全ての駆動系の実質的な駆動を同時に開始制御するようにしている。これにより操作通りの軌跡で駆動が実行可能となる。
【００３１】
図３には、上記各駆動系が同時に駆動される場合の開始時の動作が示されている。即ち、パンをＡ駆動系、チルトをＢ駆動系とし、例えばＡ駆動系では図３  （Ａ）に示されるバックラッシュ駆動時間ｔ1Aが設定され、Ｂ駆動系では図３  （Ｂ）に示されるバックラッシュ駆動時間ｔ1Bが設定されており、両者を反転駆動するものとする。この場合は、Ｂ駆動系のバックラッシュ駆動時間ｔ1Bの駆動が終了しても、直に次の位置制御は行われず、Ａ駆動系のバックラッシュ駆動時間ｔ1Aが終了したときを開始時点Ｔｐとして、Ａ，Ｂの両駆動系で次の位置制御が開始される。従って、この場合はパン、チルトのいずれかの動作が遅れるということはなく、操作通りの動きが達成できることになる。
【００３２】
また、図３（Ｃ）はＢ駆動系が同方向へ駆動される場合を示しており、この場合はバックラッシュ駆動時間ｔ1Bが０となる。この場合も、Ａ駆動系のバックラッシュ分の駆動が終わるまで、Ｂ駆動系の動作を保留し、開始時点ＴｐからＡ、Ｂの両駆動系の位置制御が開始される。この同時開始制御は、４つの駆動系の相互間で実行されるが、特にパンとチルトの関係、パン、チルト、フォーカスとズームの関係において重要となる。
【００３３】
次に、ジョイスティック１２等の手動操作手段の手動操作に基づいて駆動対象物を動作せる場合のＣＰＵ２２の処理について説明する。図４には、ジョイスティック１２の操作領域が示されており、図示されるように、棒状の操作レバー２６は全方位方向で垂直位置から位置Ｑ1 又は位置Ｑ2 まで倒せるようになっている。そして、Ｄが不感帯領域、Ｅがバックラッシュ操作領域、Ｆが実際の操作領域として設定されている。上記バックラッシュ操作領域Ｅは、実質的な駆動に関係しないことから、第２の不感帯領域ということができるが、このような不感帯領域のバックラッシュ操作領域を設けることによって、ジョイスティックの実質的な操作において、実際の駆動と一致した操作感覚が得られるという利点がある。
【００３４】
図５には、上記ジョイスティック１２を用いた場合のＣＰＵ２２の処理手順が示されている。まず、ステップ１０１で操作レバー２６の操作量がＣＰＵ２２へ入力されると、ステップ１０２にてその操作量が不感帯領域Ｄにあるか否かの判定を行う。そして、Ｙ（Yes ）のときはステップ１０３でバックラッシュフラグ（ＢＦ）を０にリセットし、Ｎ（No）のときはステップ１０４へ移行して、上記操作レバー２６の操作量がバックラッシュ操作領域Ｅにあるか否かの判定を行う。このステップ１０４で、Ｙのとき、即ちバックラッシュ操作領域Ｅに操作レバー２６が操作されているときは、ステップ１０５に移行して現在の操作方向が前回の駆動方向と一致するか否かの判定を行う。即ち、ここでモータ１８が反転することになるか同方向回転となるかの判定が行われる。
【００３５】
そして、このステップ１０５で操作方向が前回の駆動方向と一致していると判定すれば（Ｙのとき）、今回の制御動作を終了するが、操作方向が前回の駆動方向と一致せず、反転動作となる場合（Ｎのとき）は、ステップ１０６にて、ＢＦが１であるか否かの判定を行う。即ち、バックラッシュ分が既に駆動されている場合は、このＢＦが１となるので、今回の操作でバックラッシュ分が駆動されているか否かを判定することになる。そして、このステップ１０６でバックラッシュフラグが１でないと判定したとき（Ｎのとき）は、次のステップ１０７で、図２（Ａ）の速度制御電圧Ｖ1 がサーボアンプ１７へ出力される。尚、このときモータの制御は速度制御に設定される。ここで、上述した図２の時間ｔ1 に相当する操作時間でバックラッシュ分の駆動が、所定回転数のモータ１８により実行される。このバックラッシュ分の駆動が終了すると、次のステップ１０８へ移行し、上記ＢＦを１にセットして制御動作を終了する。
【００３６】
また、上記ステップ１０４にて、Ｎのとき、即ち操作レバー２６が実質的な操作領域Ｆにあるときは、ステップ１０９にて、位置信号電圧Ｖｐをサーボアンプ１７へ出力して通常の位置制御を行う。尚、このときモータの制御は位置制御に設定される。ステップ１１０では、モータ１８の駆動方向をＥＥＰＲＯＭ２３へ記憶して、動作を終了する。従って、ここでは図２の時間ｔ４における安定した駆動が実行され、これによってパン、チルトの各駆動系が操作レバー２６の操作量に応じて駆動される。尚、フォーカスやズームを手動操作する操作手段についてもジョイスティック１２と同様にバックラッシュ操作領域を設けて、上述と同様の処理を行うこともできる。
【００３７】
次に、上記バックラッシュ駆動時間の決定方法について説明する。バックラッシュ量は、駆動系ごとに駆動対象物の設定位置によって異なるため、上記モータ制御装置では、初期化プログラム実行時において各駆動系ごとに駆動対象物の複数の位置でバックラッシュ量を測定しておき、その測定したバックラッシュ量に基づいて駆動対象物の所望の設定位置に対応する適切なバックラッシュ駆動時間を決定できるようにしている。尚、初期化プログラムは、操作スイッチ１０の所定のスイッチによって実行される。初期化プログラムは、電源スイッチをＯＮにした時、常に実行するようにしても良いし、電源スイッチＯＮの何回かに１回だけ実行するようにしても良い。
【００３８】
ここで、初期化プログラム実行時において事前にバックラッシュ量を測定しておく駆動対象物の位置について説明すると、例えば、ある駆動系において駆動系に配置されたギヤの段数、周期を考慮すると、図６に示すように駆動対象物の駆動範囲に対してＰで示す範囲と同一の駆動系の状態がＰ′、Ｐ″、…の範囲で繰り返されるものとする。この場合、各範囲の対応する位置におけるバックラッシュ量は一致していると想定することができる。そこで、バックラッシュ量が一致していると想定することができる位置のうち、いずれか１つの位置においてのみバックラッシュ量を実際に測定し、その他の位置のバックラッシュ量はその測定値に等しいものとする。例えばバックラッシュ量を測定する位置を一周期分の範囲（ここでは、Ｐの範囲とする）に限定する。他の各周期の範囲についてはＰの範囲で測定したバックラッシュ量に一致すると想定し、実際の測定を行わず測定に要する時間を短縮する。
【００３９】
また、Ｐの範囲において、駆動対象物が設定され得る全ての位置においてバックラッシュ量を測定すると、測定時間が極めて長くなるため、数点の位置に限定してバックラッシュ量を測定するものとする。例えば、図７に示すように駆動系にウォーム歯車３０が配置され、このウォーム歯車３０によりバックラッシュが生じているとする。このとき、ウォーム歯車３０の図中Ｐ１、Ｐ２、Ｐ３、Ｐ４の各位置がウォーム３２にかみ合っているときの駆動対象物の位置においてバックラッシュ量を測定するものとする。尚、ウォーム歯車３０の各位置Ｐ１、Ｐ２、Ｐ３、Ｐ４がウォーム３２にかみ合っているときの駆動対象物の位置を図６のＰの範囲に示すと、各位置と同一のバックラッシュ量になると想定されるＰ′の範囲における位置は、Ｐ１′、Ｐ２′、Ｐ３′、Ｐ４′となる。
【００４０】
このようにバックラッシュ量が異なる複数の位置をギヤの段数、周期により予め割り出しておき、その位置をバックラッシュ量を測定する位置（バックラッシュ測定位置）として初期化プログラムに組み込んでおく。
【００４１】
次に初期化プログラム実行時のＣＰＵ２２の処理について図８のフローチャートを用いて説明すると、まず、初期化プログラム実行用のスイッチがオンされたか否かを判定する（ステップ２００）。ＮＯであれば、他の処理を行う。一方、ＹＥＳであれば、初期化プログラムを実行する。そして、まず、各駆動系のモータ１８を位置制御信号により駆動して駆動対象物を移動範囲の一方の端に移動させる（ステップ２０２）。尚、以下の処理は各駆動系ごとに行われるが、ここではある１つの駆動系についてのみ説明する。次にＣＰＵ２２は、初期化プログラムに組み込まれた複数のバックラッシュ測定位置のうち現在位置に最も近いバックラッシュ測定位置（この処理の２回目以降は、測定済みの位置を除く）を目標位置とする位置制御信号によりモータ１８を駆動し、駆動対象物をそのバックラッシュ測定位置に移動させる（ステップ２０４）。続いて、位置検出器１９により得られる位置信号により測定対象物がバックラッシュ測定位置に到達したか否かを判定し（ステップ２０６）、ＹＥＳと判定した場合には、位置制御信号の値を増減させて駆動対象物をそのバックラッシュ測定位置の近傍で往復移動させる（ステップ２０８）。
【００４２】
このとき、図９（Ａ）に示すような位置制御信号の変化に対して、図９（Ｂ）に示すような駆動対処物の位置変化を示す位置信号が位置検出器１９から得られたとする。この結果、駆動対象物の移動方向を反転させる位置制御信号を出力した時点Ｔ１から駆動対象物が移動を開始する時点Ｔ２までの間で駆動対象物の位置が変化しない範囲Ｓが検出される。この範囲Ｓにおける位置制御信号の変化量Ｌが現在のバックラッシュ測定位置におけるバックラッシュ量であり、ＣＰＵ２２は駆動対象物をバックラッシュ測定位置近傍で往復移動させた結果からその変化量Ｌを検出しバックラッシュ量として取得する（ステップ２１０）。
【００４３】
以上のステップ２０４〜ステップ２１０の処理を繰り返し、全てのバックラッシュ測定位置におけるバックラッシュ量の測定が終了すると（ステップ２１２の判定処理）、次に、ＣＰＵ２２は、ギヤの周期から上記バックラッシュ測定位置と同一のバックラッシュ量が得られると想定される位置のバックラッシュ量として、その測定したバックラッシュ量を複写する（ステップ２１４）。そして、このようにして得られた測定対象物の各位置のバックラッシュ量により、各位置でのバックラッシュを除去するためのバックラッシュ駆動時間を決定し（ステップ２１６）、ＥＥＰＲＯＭ２３に記憶する（ステップ２１８）。これにより、初期化プログラム実行の処理を終了する。
【００４４】
尚、ＥＥＰＲＯＭ２３に記憶するバックラッシュ駆動時間は、例えば、バックラッシュ量を上記ステップ２０８における駆動対象物の往復移動の速度で割った値である。
【００４５】
以上のように、初期化プログラム実行時に得られた駆動対象物の各位置におけるバックラッシュ駆動時間をＥＥＰＲＯＭ２３に記憶しておくことにより、実際の駆動時にこのデータを参照して反転駆動する駆動系の現在の駆動対象物の位置に対応した上記バックラッシュ駆動時間ｔ１を決定することができる。
【００４６】
具体的には、駆動対象物を反転駆動する場合、ＣＰＵ２２は、反転駆動する駆動対象物の位置に対応するバックラッシュ駆動時間をＥＥＰＲＯＭ２３から読み出す。もし、その位置に対応するバックラッシュ駆動時間がＥＥＰＲＯＭ２３に記憶されていない場合には、例えば、最も近い位置に対応するバックラッシュ駆動時間を読み出す。尚、ＥＥＰＲＯＭ２３に記憶されている位置でのバックラッシュ駆動時間を補間して所望の位置でのバックラッシュ駆動時間を求めるようにしてもよい。
【００４７】
そして、ＥＥＰＲＯＭ２３から読み出したバックラッシュ駆動時間に基づいて、実際にバックラッシュを除去するためのモータの駆動する時（バックラッシュ分だけモータを駆動するとき）のバックラッシュ駆動時間ｔ１を決定する。即ち、ＥＥＰＲＯＭ２３に記憶されているバックラッシュ駆動時間は、初期化プログラム実行時における速度でのバックラッシュ駆動時間であるため、実際にバックラッシュを除去するときの速度に対応したバックラッシュ駆動時間ｔ１に変換する。例えば、初期化プログラム実行時における速度に対して実際の速度が2 倍であればＥＥＰＲＯＭ２３から読み出したバックラッシュ駆動時間を１／２倍にする。
【００４８】
以上のようにバックラッシュ駆動時間ｔ１を決定すると、そのバックラッシュ駆動時間ｔ１だけモータを所定速度で駆動し、バックラッシュを除去する。
【００４９】
尚、上記説明では、ＥＥＰＲＯＭ２３に各位置におけるバックラッシュ駆動時間を記憶させるようにしたが、ＥＥＰＲＯＭ２３には各位置におけるバックラッシュの大きさを示す値を記憶させておけば良く、例えば、各位置におけるバックラッシュ量を記憶させるようにしてもよい。また、バックラッシュ測定位置と同一のバックラッシュ量と想定される位置のバックラッシュ駆動時間については、必ずしもＥＥＰＲＯＭ２３に記憶させておく必要はなく、実際の駆動時において必要となったときに、その位置のバックラッシュ駆動時間と同一と想定されるバックラッシュ測定位置のバックラッシュ駆動時間をＥＥＰＲＯＭ２３から読み出すようにしてもよい。
【００５０】
以上、上記実施の形態では、駆動対象物の実質的な駆動を位置制御により行うのに対して、反転駆動の際のバックラッシュを除去するためのモータの駆動を速度制御で行うようにしたが、本発明は、反転駆動の際のバックラッシュを除去するためのモータの駆動を予め測定したバックラッシュ量に基づいて制御する場合に適用することができる。例えば、駆動対象物の実質的な駆動を速度制御で行うのに対して、反転駆動の際のバックラッシュを除去するためのモータの駆動を速度制御で行う場合の態様、又は、駆動対象物の実質的な駆動を位置制御により行うのに対して、反転駆動の際のバックラッシュを除去するためのモータの駆動を位置制御で行う場合の態様であっても、本発明を適用できる。
【００５１】
また、上記実施例では、テレビカメラ及び雲台の制御について説明したが、これらの制御に限らず、本発明は各種の装置を位置制御するサーボ回路に適用することができる。また、手動操作手段として、ジョイスティックを用いた例を示したが、これに限らず、手動操作手段にはトラックボールのような他の操作手段を用いることができる。
【００５２】
【発明の効果】
以上説明したように本発明に係るモータ制御装置によれば、駆動対象物の反転駆動の開始位置において除去すべきバックラッシュの大きさを、その開始位置に応じた大きさとなるようにしたため、適切にバックラッシュを除去することができ、バックラッシュによる悪影響を防止することができる。また、そのバックラッシュの大きさを駆動対象物の複数の位置において事前に検出したバックラッシュの大きさに基づいて決定するようにしたため、簡易な処理で決定することができる。
【図面の簡単な説明】
【図１】図１は、本発明に係るモータ制御装置をテレビカメラ及び雲台に適用した場合の構成を示した図である。
【図２】図２は、モータ駆動時の制御動作を示した波形図である。
【図３】図３は、2 つの駆動系の制御動作を示した説明図である。
【図４】図４は、ジョイスティックの操作領域を示した図である。
【図５】図５は、ジョイスティックによる制御動作を示したフローチャートである。
【図６】図６は、バックラッシュ測定位置の説明に使用した説明図である。
【図７】図７は、バックラッシュ測定位置の説明に使用した説明図である。
【図８】図８は、初期化プログラム実行時のＣＰＵの処理手順を示したフローチャートである。
【図９】図９は、バックラッシュ量を測定する際の処理の説明に使用した波形図である。
【符号の説明】
１０…操作スイッチ、１２…ジョイスティック、１７…サーボアンプ、１８…モータ、１９…位置検出器、２２…ＣＰＵ、２３…ＥＥＰＲＯＭ
【図１】
0003820546.tif 000002
【図２】
0003820546.tif 000003
【図３】
0003820546.tif 000004
【図４】
0003820546.tif 000005
【図５】
0003820546.tif 000006
【図６】
0003820546.tif 000007
【図７】
0003820546.tif 000008
【図８】
0003820546.tif 000009
【図９】
0003820546.tif 000010