(57)【要約】【課題】ロボット装置のインチング送り量を自動的かつ適切に制御し、ロボット装置の操作性を向上する。【解決手段】ＯＮ操作またはＯＦＦ操作の入力状態を生成するスイッチにより構成された操作ボタン群８の入力状態に応じてＣＰＵ５０１がロボットアーム４の動作を制御する。操作ボタン群８のＯＮ操作が継続している間はロボットアーム４に動作状態と停止状態を繰り返させ、操作ボタン群８のＯＦＦ操作に応じてロボットアーム４を停止状態に移行させる。操作ボタン群８のＯＮ操作が継続している間、繰り返される動作状態におけるロボットアーム４の各々の送り量を経時的に変化させる制御データを例えばＲＯＭ５０２に記憶し、操作ボタン群８のＯＮ操作が継続している間、ロボットアーム４に記憶された送り量の動作状態と、停止状態を繰り返させる制御を行う。【選択図】図８
2016000439.tif 000002
【特許請求の範囲】
【請求項１】
ＯＮ操作またはＯＦＦ操作の入力状態を生成するスイッチにより構成された操作手段の入力状態に応じてロボットアームの動作を制御する制御装置を備え、前記制御装置が前記操作手段のＯＮ操作が継続している間は前記ロボットアームに動作状態と停止状態を繰り返させ、前記操作手段のＯＦＦ操作に応じて前記ロボットアームを停止状態に移行させるロボット装置において、
前記操作手段のＯＮ操作が継続している間、繰り返される前記動作状態における前記ロボットアームの各々の送り量を経時的に変化させる制御データを記憶する記憶手段を設け、
前記制御装置は、前記操作手段のＯＮ操作が継続している間、前記ロボットアームに前記記憶手段に記憶された前記送り量の動作状態と、停止状態を繰り返させる制御を行うことを特徴とするロボット装置。
【請求項２】
請求項１に記載のロボット装置において、前記記憶手段に記憶された前記制御データは前記動作状態における前記ロボットアームの各々の送り量が経時的に漸減していくよう定められていることを特徴とするロボット装置。
【請求項３】
請求項１または２に記載のロボット装置において、継続して行われる前記操作手段の１回のＯＮ操作に関連して前記記憶手段に記憶される前記制御データが前記動作状態における前記ロボットアームの送り量の総量が一定であるよう定められていることを特徴とするロボット装置。
【請求項４】
請求項１から３のいずれか１項に記載のロボット装置において、前記制御装置は、前記制御データによって定められた送り量を持つ１つの動作状態の途中で前記操作手段のＯＦＦ操作が生じた場合、当該の動作状態を前記制御データによって定められた前記送り量で実行した後、前記ロボットアームを停止状態に移行させる制御を行うことを特徴とするロボット装置。
【請求項５】
請求項１から４のいずれか１項に記載のロボット装置に前記制御を実行させるためのロボット装置の制御プログラム。
【請求項６】
請求項５に記載のロボット装置の制御プログラムを格納したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、操作手段のインチング操作に応じて制御装置がロボットアームのインチング動作を制御するロボット装置に関するものである。
【背景技術】
【０００２】
産業用その他のロボット装置では、操作キーや操作ボタンを用いて手動操作を行う場合がある。このような手動操作を行う操作手段を代表する呼称として、以下では操作ボタン、ないしボタンを用いる。このような手動操作のためのボタンは、例えば教示装置、ティーチングペンダントなどと呼ばれるロボット操作端末の操作面に設けられる。
【０００３】
ロボットの動作は、大きく自動動作と手動動作に分類される。自動動作では、ロボットの動作手順を記述したロボットプログラムによって所定の操作手順をロボットに与えることにより、ロボットをプログラムの手順通りに自動的に動作させる。この自動動作を行わせるためのプログラミングは、ＰＣのような端末上でロボットプログラムを直接記述することによっても可能であるが、ロボット操作端末の手動操作によって実際にロボットを動作させながら行うこともある。
【０００４】
ロボットの手動操作では、ロボットの操作者がロボット操作端末に設けられた特定の方向への（あるいは特定の軸廻りの）ロボット動作を指定するボタンを操作して、ロボットを動作させる。このボタンは、例えば、３次元座標軸方向に沿った方向（例えば３次元空間上の上下、左右、前後など）、あるいはこれらの軸廻りの動作をそれぞれ指定するものとして、ロボット操作端末の操作面に配置される。
【０００５】
さらに、この手動操作は、ジョグ操作とインチング操作という２つの操作に分類される。このうち、ジョグ操作（連続操作）は、ロボット操作端末のボタン押下操作が押下されている間、ロボットを連続的にボタンに定義された方向に動作させる。通常は、ボタンを押している間のみ、ジョグ操作によりロボットが動作し続ける。押下しているボタンを離すと、ロボットの動作が停止する。
【０００６】
一方、インチング（寸動）操作は、ロボットの動作させたい部分（例えば多関節ロボットであれば先端部分）を、１回の操作（１回のボタン押下など）で、微小の一定量だけ動作させるものである。このインチング操作（動作）は、ステップ操作（動作）などと呼ばれる場合もある。一般に、ロボット装置では、ジョグ操作モードと、インチング操作モードは、モード切り換え操作によって切り換えられるようになっている場合が多い。
【０００７】
ジョグ操作は、ロボットを所定の場所に動かしたい場合に、ロボット操作端末のボタンに定義されている方向への動作を組み合わせながら、比較的遠方から目標の位置の近傍に近づける場合に行われる。このジョグ操作でロボットを大まかに目的位置に近付けたあと、インチング操作によって一定微小量ずつロボットを目標の位置の近づける操作を行う。
【０００８】
多くのロボット装置では、インチング操作は、ボタンを１回だけ短く押下すると、予め定められた一定の微小量だけ、ロボットを動作させる。この際、ボタンを押下し続ける必要はなく、押したボタンをすぐに離す。このインチングの操作は、上記のジョグ操作でロボットを目的位置の近傍まで近づけたあとで、ロボットを除々に目的の位置に移動させるために用いられる。
【０００９】
インチング操作では、仕様上、ボタンを押下し続けても予め定められた送り量だけロボットを動作させるようになっている場合が多い。このような仕様では、インチング操作モードにおいて、１回の送り量が足りなかった場合にはボタンを複数回連続で押下しなければならなくなる状況が発生することがある。ロボットの現在位置と目標位置の距離によっては、１回のインチング操作に対応する微小送り量が小さすぎ、かといってジョグ操作モードに切り換えるほど目標位置が遠くない、といった微妙な状況は往々にして発生することがある。このような場合には、複数回のインチング操作を繰り返さざるを得ず、操作者に連続的で単調な操作を強いることになる。ボタン連打のような連続的で単調な操作を強いることは操作者の大きな負担になる。
【００１０】
この観点から、従来よりインチング操作に関する制御の技術がいくつか提案されている。まず、下記特許文献１の装置は、１回のボタン操作（押下状態の保持）で連続的なインチングを行うことができるとともに、直接ロボットを見なくても連続的なインチングがされているかを知ることができる操作装置である。特許文献１の装置は、操作者のボタン連打を低減し、操作の負担を軽減しようとするものである。また、下記特許文献２では、インチングで動く距離（送り量）を任意に選択することができる操作装置である。特許文献２では、インチング操作の送り量が適切でない場合に、状況に応じてインチングの送り量を微調整することにより、ボタン連打のような面倒な操作を回避することができる。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開平６−３２０４５９号公報
【特許文献２】特開平６−３２０４５８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかしながら、上記特許文献１に記載の従来例では、インチングを１回のボタン押下で連続して行うことにより、ロボットの送りを過剰に行ってしまう可能性がある。逆に、インチングを過度に行うことを恐れて、ボタン押下時間をあまり長くとらない場合は、送り量が足りなくなり、結局、旧来の技術と同様にボタン連打が必要になる可能性もある。また、上記特許文献２に記載の従来例では、操作者がインチングの送り量をその都度設定しなければならなくなる可能性があり、操作自体が増え、かえって操作者の負担が増大する可能性があった。
【００１３】
本発明の課題は、上記の問題に鑑み、ロボット装置のインチング送り量を自動的かつ適切に制御し、ロボット装置の操作性を向上することにある。
【課題を解決するための手段】
【００１４】
上記課題を解決するため、本発明においては、ＯＮ操作またはＯＦＦ操作の入力状態を生成するスイッチにより構成された操作手段の入力状態に応じてロボットアームの動作を制御する制御装置を備え、前記制御装置が前記操作手段のＯＮ操作が継続している間は前記ロボットアームに動作状態と停止状態を繰り返させ、前記操作手段のＯＦＦ操作に応じて前記ロボットアームを停止状態に移行させるロボット装置において、前記操作手段のＯＮ操作が継続している間、繰り返される前記動作状態における前記ロボットアームの各々の送り量を経時的に変化させる制御データを記憶する記憶手段を設け、前記制御装置は、前記操作手段のＯＮ操作が継続している間、前記ロボットアームに前記記憶手段に記憶された前記送り量の動作状態と、停止状態を繰り返させる制御を行う構成を特徴とする。
【発明の効果】
【００１５】
上記の特徴的な構成により、本発明によれば、ロボット装置のインチング送り量を自動的かつ適切に制御し、ロボット装置の操作性を大幅に向上することができる、という優れた効果がある。特に、インチング動作の送り量を特定のパターンに従って経時的に変化させることができるため、自動的にロボット装置の送り量を制御することができ、面倒な設定操作などを必要としない。
【図面の簡単な説明】
【００１６】
【図１】本発明を実施可能なロボットシステムの全体構成を示した説明図である。
【図２】図１のロボット操作端末の構成を示した説明図である。
【図３】図１のロボット操作端末を含むロボットシステムを機能表現で示した説明図である。
【図４】図１のロボットシステムにおいてロボット操作端末でインチング操作を行った場合の制御手順を示したフローチャート図である。
【図５】図１のロボットシステムにおいてロボット操作端末でインチング操作を行った場合のロボットアームのパルス送り量を経時的に示した説明図である。
【図６】図１のロボットシステムにおいてロボット操作端末でインチング操作を短時間行った場合のロボットアームのパルス送り量を経時的に示し、特にロボットアームが停止中に操作を止めた場合の説明図である。
【図７】図１のロボットシステムにおいてロボット操作端末でインチング操作を短時間行った場合のロボットアームのパルス送り量を経時的に示し、特にロボットアームが動作中に操作を止めた場合の説明図である。
【図８】図１のロボット装置の制御系の構成例を示したブロック図である。
【発明を実施するための形態】
【００１７】
以下、図面に示す実施例に基づき、発明を実施するための好ましい形態につき詳細に説明する。
【実施例】
【００１８】
図１は本発明を実施可能なロボットシステムの構成を示している。図１のロボットシステム１は、ロボット操作端末７、ロボットコントローラ３、ロボットアーム４から構成される。ロボットアーム４は、例えば多関節で結合された複数のリンクを有し、その先端に対象物を取り扱うためのロボットハンド５が装着され、架台６によって支持されている。以下では、ロボットアーム４は、例えば６つの関節軸を持つ垂直多関節ロボットアームであるものとする。
【００１９】
ロボットアーム４の動作は、ロボットコントローラ３によって制御される。操作者は、ロボットコントローラ３に接続されたロボット操作端末７によって、ロボットアーム４を手動操作することができ、例えばその手動操作を介してロボットアーム４の動作をプログラミング（教示）することができる。このプログラミング（教示）操作によって生成されたロボットプログラムに従って、ロボットコントローラ３はロボットアーム４を自動的に動作させることができる。
【００２０】
図２は、図１のロボット操作端末７の構成を示している。ロボット操作端末７の操作面には、ＬＣＤパネルなどから成る表示器や、非常停止ボタンなどの他、ロボットアーム４を操作するための操作手段として、操作ボタン群８が配置される。操作ボタン群８は、公知のロボット操作端末のものと同様、ＯＮ操作またはＯＦＦ操作の入力状態を生成するスイッチ素子（不図示）により構成される。この操作ボタン群８には、ジョグモードに移行するボタン８０１、およびインチングモードに移行するボタン８０２が設けられている。
【００２１】
操作ボタン群８には、特定の方向Ａ〜Ｆに関して、その正の方向へロボットアーム４を動作させるためのボタン８０３、８０５、８０７、８０９、８１１、８１３がそれぞれ設けられている。また、操作ボタン群８には、特定の方向Ａ〜Ｆに関して、その負正の方向へロボットアーム４を動作させるためのボタン８０４、８０６、８０８、８１０、８１２、８１４がそれぞれ設けられている。
【００２２】
例えば、ロボットアーム４が６つの関節軸を持つ垂直多関節ロボットアームである場合、ロボットアーム４は３次元座標軸に応じて、全部で６つの動作方向を持つことになる。上記では、ロボットアーム４をジョグまたはインチング動作させる方向を仮にＡ、Ｂ、Ｃ、Ｄ、Ｅ、Ｆで示したが、これらＡ〜Ｆはその６つの動作方向に対応させることができる。
【００２３】
例えば、座標軸が直交座標である場合は、ロボットアーム４の移動方向として、Ｘ軸、Ｙ軸、Ｚ軸方向に沿った正、負の方向と、Ｘ軸、Ｙ軸、Ｚ軸まわりのそれぞれの回転方向（ｔＸ、ｔＹ、ｔＺ方向）の６方向が定義される。この場合、Ｘ、Ｙ、Ｚ、ｔＸ、ｔＹ、ｔＺの各動作を、上記各ボタン８０３〜８１４の上記のＡ、Ｂ、Ｃ、Ｄ、Ｅ、Ｆの６つの入力機能に割り当てることができる。これらのボタン８０３〜８１４の入力機能により各方向へのジョグまたはインチングの動作を行わせることができる。
【００２４】
また、座標軸が関節座標である場合は、ロボットアーム４の６つの関節軸に関してそれぞれ関節座標Ｊ１、Ｊ２、Ｊ３、Ｊ４、Ｊ５、Ｊ６が定義される。これら関節座標のそれぞれに対して、上記の各ボタン８０３〜８１４のＡ、Ｂ、Ｃ、Ｄ、Ｅ、Ｆの６つの入力機能に割り当てることができる。これらのボタン８０３〜８１４の入力機能により各方向へのジョグまたはインチングの動作を行わせることができる。
【００２５】
また、操作ボタン群８の入力機能はロボットハンド５の動作について割り当てることもできる。ロボットハンド５は、産業用ロボットで扱う対象物（ワーク）を把持したり、吸着させたりするなど、ワークに対する操作を提供するエンドエフェクタの１つである。例えばワークを把持するハンドであれば、把持するための爪を構成要素とする。この爪の動きが、ワークを把持する方向を正、ワークを離す方向を負とすると、爪に対して、上記ジョグまたはインチングの方向Ａを割り当てることができる。この場合、ボタン８０３と８０４を用いて、爪に対してジョグまたはインチングの動作を行わせることができる。
【００２６】
以上のように、操作ボタン群８のボタン８０３〜８１４のジョグまたはインチング操作により、ロボットアーム４（あるいはロボットハンド５）にジョグまたはインチング動作を行わせることができる。なお、上記のＡ〜Ｆで示した機能に関するボタン８０３〜８１４の異なる割り当ては、操作ボタン群８に設けられた他のボタンの操作によって切り換えられるようにしておくとよい。
【００２７】
図３は、図１のロボットシステム１の機能構成を示している。ロボット操作端末７は、ボタン押下信号操作部１０を構成要素として持つ。ロボットコントローラ３は、ボタン押下信号検知部１２、パルス信号計算部１３、パルス信号設定記憶部１４、パルス信号制御部１５、およびタイマー回路１８を構成要素として持つ。ロボットアーム４は、ロボット駆動部１７を構成要素として持つ。
【００２８】
ロボット操作端末７のボタン押下信号操作部１０は、上記の操作ボタン群８のボタン８０３〜８１４の押下によるＯＮ操作状態、また各ボタンから指を離すことによって形成されるＯＦＦ操作状態を検出する。ボタン押下信号操作部１０は、各ボタンの操作状態を表現した信号をロボットコントローラ３に送信する。ロボットコントローラ３のボタン押下信号検知部１２は、たとえばキーボードドライバ回路などから構成され、ボタン押下信号操作部１０から送信された信号を介して操作ボタン群８の操作状態を検知する。
【００２９】
本実施例のインチング制御では、例えば数秒〜１０秒程度の時間、ロボット操作端末７の操作ボタン群８のボタン８０３〜８１４を継続して押下（ＯＮ操作）できるようにする。そして、各ボタンのＯＮ操作が継続している間はロボットアーム４に（インチング）動作状態と停止状態を繰り返させる。また、各ボタンのＯＦＦ操作に応じて前記ロボットアームを停止状態に移行させる。
【００３０】
本実施例において、ロボット操作端末７のボタン８０３〜８１４の継続操作中、繰り返しロボットアーム４のインチング動作状態を発生させる点は、上記特許文献１の技術に類似している。しかしながら、本実施例で異なるのは、ボタン８０３〜８１４の継続操作中、繰り返し発生させるインチング動作の各々の送り量をパルス信号設定記憶部１４に記憶させた制御データにより表現されたパターンに従って経時的に変化させる点にある。
【００３１】
ロボットコントローラ３のパルス信号計算部１３は、パルス信号設定記憶部１４に記憶された送り量のパターンに基づき、その時点でパルス信号制御部１５を介してロボットアーム４のロボット駆動部１７に送信すべきパルス信号を計算によって生成する。パルス信号計算部１３のパルス信号の計算には、タイマー回路１８の計時情報が用いられる。タイマー回路１８の計時情報は、パルス信号設定記憶部１４に記憶されているパルス量のパターンに基づき、現時点でロボット駆動部１７にパルス信号で指定するパルス量を決定するために用いられる。また、タイマー回路１８の計時情報は、後述の各インチング動作の間の停止状態の時間長（Ｔ１、Ｔ２…）を決定するために用いられる。
【００３２】
パルス信号設定記憶部１４に記憶された送り量のパターンに基づきパルス信号計算部１３が生成したパルス量はパルス信号制御部１５に入力される。パルス信号制御部１５は、入力されたパルス量を指定する制御信号をロボットアーム４のロボット駆動部１７に送信する。
【００３３】
ロボット駆動部１７は、ロボットアーム４の各関節の駆動手段（サーボモータなど）を駆動するサーボ制御回路などから構成される。ロボット駆動部１７は、パルス信号制御部１５から制御信号によって指定されたパルス量でロボットアーム４の各関節の駆動手段を駆動する。以上のようにして、ロボット操作端末７のボタン８０３〜８１４の継続操作中、繰り返し発生されるロボットアーム４のインチング動作状態における各々の送り量が決定される。
【００３４】
図８は図１のロボットアーム４、ロボットコントローラ３、およびロボット操作端末７から成るロボットシステムの制御系のハードウェア構成の一例を示している。図３に示した各機能は、図８のようなハードウェア構成によって実現できる。
【００３５】
図８において、ロボットコントローラ３の主制御部は、汎用マイクロプロセッサなどから成るＣＰＵ５０１により構成される。ＣＰＵ５０１は、後述の制御プログラムを実行することによって図３のパルス信号計算部１３を構成する演算（計算）手段として機能する。
【００３６】
ＣＰＵ５０１には本ロボットシステム全体を制御するプログラムを格納したＲＯＭ５０２、ＣＰＵ５０１のワークエリアとして用いられるＲＡＭ５０３が接続される。後述の本実施例に係る制御プログラムは例えばＲＯＭ５０２に格納しておくことができる。
【００３７】
なお、ＲＯＭ５０２のプログラム領域は、例えばＥＥ（Ｐ）ＲＯＭなどの書き換え可能なメモリデバイスから構成してもよい。これによりＲＯＭ５０２のプログラム領域のプログラムおよび制御データなどを更新することができる。また、各種の制御データの入出力に用いられる記憶装置として、外部記憶装置５０４を設けることがある。この外部記憶装置５０４は、例えば固定式または着脱式のＨＤＤ、ＳＳＤ、フラッシュメモリなどから構成することができる。外部記憶装置５０４が着脱式の記憶メディアを用いる場合、その記憶メディアは例えばロボットアーム４の教示（プログラミング）内容や、ＲＯＭ５０２のプログラムや制御データの更新データの入出力に用いることができる。
【００３８】
図３のパルス信号設定記憶部１４は、例えばＲＯＭ５０２によって構成することができる。例えばＲＯＭ５０２には、ボタン８０３〜８１４の継続操作中、繰り返し発生させるインチング動作の各々の送り量を特定のパターンに従って経時的に変化させるための制御データを格納しておく。なお、この制御データは、ＲＯＭ５０２のみならず、例えば外部記憶装置５０４に格納しておいてもよい。あるいは、同制御データは、外部記憶装置５０４に格納されたものをＲＡＭ５０３上に展開して、ＲＡＭ５０３上のものを参照してもよい。
【００３９】
ボタン８０３〜８１４の継続操作中、繰り返し発生させるインチング動作の各々の送り量を特定のパターンに従って経時的に変化させるための制御データの格納形式は、ＣＰＵ５０１が後述の制御プログラムを介して参照可能であればよい。例えば、この制御データは、パルス信号制御部１５に指定すべきインチング動作の各々の送り量に相当するパルス数などを上記特定のパターンに相当する順序で格納したテーブルデータなどの形式で格納することができる。また、同制御データは、パルス信号計算部１３として機能すべくＣＰＵ５０１が実行する後述の制御プログラム中に、制御定数のリストのような形式でハードコーディングされていてもよい。
【００４０】
以上のように、ボタン８０３〜８１４の継続操作中、繰り返し発生させるインチング動作の各々の送り量を特定のパターンに従って経時的に変化させるための制御データの格納形式は任意である。従って、同制御データを記憶する記憶手段の具体的なハードウェアおよびソフトウェア的な構成には種々の変形例が考えられ、当業者は必要に応じて任意の構成を採用すればよい。
【００４１】
図８の各部は不図示の内部バスによって接続される。また、ＣＰＵ５０１は任意のインターフェース規格に基づき構成されたインターフェース回路５０５を介してロボット操作端末７と通信することにより、ロボット操作端末７の操作ボタン群８（ボタン８０３〜８１４）の操作状態を入力することができる。インターフェース回路５０５は、図３のボタン押下信号検知部１２の特にハードウェア部分を構成する。なお、図８のロボット操作端末７のブロック中には「ＴＰ」のシンボルを示してあるが、これはロボット操作端末が「ティーチングペンダント」などと呼ばれる場合があり、その略記に対応するものである。
【００４２】
ＣＰＵ５０１はＩＥＥＥ−８０２．３など、所定のネットワーク規格に基づき構成されたインターフェース回路５０６を介して基幹ＬＡＮ３０と通信することができる。基幹ＬＡＮ３０には、例えば本実施例のロボット装置と協働して動作する他のロボット装置などを接続することができる。
【００４３】
また、ＣＰＵ５０１には、ＲＴＣ（リアルタイムクロック）５０７が接続されている。このＲＴＣ５０７は、例えばロボット操作端末７のボタン８０３〜８１４の操作状態に応じてインチング制御を行うためのタイマー回路１８（図４）として用いられる。例えば、ＣＰＵ５０１はＲＴＣ５０７の計時データを参照し、その時点でロボット駆動部１７にパルス信号で指定するパルス量として、パルス信号設定記憶部１４に特定のパターンで記憶されているパルス量のいずれを与えるかを決定できる。また、ＣＰＵ５０１はＲＴＣ５０７の計時データを利用して、後述の各インチング動作の間の停止状態の時間長（Ｔ１、Ｔ２…）を決定することができる。
【００４４】
図８では、ロボットアーム４の構成部材として、ロボットアーム４の各関節に設けられた６軸分のサーボモータ４１ａ、４１ｂ…４１ｆを示してある（ロボットハンド５の系は図示を省略）。各サーボモータ４１ａ、４１ｂ…４１ｆを駆動制御するサーボ制御回路６１は、ロボットコントローラ３のドライバ５０８と接続されている。このサーボ制御回路６１は、図３のロボット駆動部１７の制御回路部分に相当する。また、ドライバ５０８は、図３のパルス信号制御部１５のハードウェア回路部分に相当する。
【００４５】
次に、図４のフローチャートを参照して、上記構成におけるインチング操作に係る制御につき説明する。以下では、必要に応じて、図３に示した機能表現による部材、および図８に示した具体的な部材の双方を用いて説明を行う。パルス信号設定記憶部１４の制御データに基づき経時的に変化させるインチング動作の各々の送り量のパターン例については後で詳述するものとし、ここでは図４の制御の概要を先に説明する。
【００４６】
ロボットシステム１の教示（プログラミング）操作を行う操作者は、ロボット操作端末７のボタン８０１、８０２を用いて、ジョグモードまたはインチングモードを選択できる。ボタン８０１、８０２の操作に応じて、ロボットコントローラ３のＣＰＵ５０１（図８）はロボットアーム４ないしロボットハンド５の動作モードをジョグモードかインチングモードのいずれかに切り換える。通常、インチングモードにてロボットアーム４またはロボットハンド５を動作させて目標の位置姿勢の近傍まで動かした後で、インチングモードに切り替え、インチング動作を開始する。
【００４７】
図４は、ボタン８０２によってインチングモードを指定した後の本実施例におけるインチング制御の流れを示している。本実施例のインチング操作は、短時間のボタン押下ごとに１度づつ行うものではない。本実施例のインチング動作は、ロボットアーム４（あるいはロボットハンド５）の移動を指示するボタン８０３〜８１４の連続的な押下（ＯＮ操作）の間、特定のパターンで自動的に繰り返し発生させる。
【００４８】
図４のステップＳ２では、ＣＰＵ５０１は、ロボット操作端末７の各動作方向に対応するボタン８０３〜８１４のいずれか１つ（あるいは複合方向への移動を指示できるよう複数ボタンの同時押しを許容してもよい）の押下（ＯＮ操作）を検出するのを待つ。ボタン８０３〜８１４の押下（ＯＮ操作）状態が形成されると、図３のロボット操作端末７のボタン押下信号操作部１０から、ロボットコントローラ３のボタン押下信号検知部１２に対して、ボタン押下を示す信号が送信される。
【００４９】
続いてステップＳ４において、ＣＰＵ５０１は、例えばＲＯＭ５０２に格納されているインチング動作の各々の送り量を特定のパターンに従って経時的に変化させるための制御データを読み出す。図３の構成では、この動作は、パルス信号計算部１３がパルス信号設定記憶部１４に記憶されている制御データを読み出す動作に対応する。ステップＳ５では、ＣＰＵ５０１は、読み出した制御データに基づき、ボタン８０３〜８１４の押下（ＯＮ操作）中、繰り返し実行させるインチング動作の各々の送り量に相当するパルス量を、例えばリスト形式で生成する。図３では、この動作はパルス信号計算部１３による送り量（パルス量）生成に相当する。
【００５０】
以下、ＣＰＵ５０１は、ステップＳ６〜Ｓ１２のループの制御により、ボタン８０３〜８１４の押下（ＯＮ操作）中、インチング動作を繰り返し実行させる。
【００５１】
図４のステップＳ６は、例えばＣＰＵ５０１がＲＴＣ５０７の計時情報を用いて、ロボットアーム４（ないしロボットハンド５）のインチング送り（動作状態：ステップＳ７、Ｓ８）と、停止状態のいずれかの制御状態を選択する判定制御である。なお、図４ではこのタイマ制御を簡略化のため単一のプロセス（ないしスレッド）であるかの如く図示しているが、実際にはＲＴＣ５０７の計時に応じて起動されるタイマ割り込みルーチンなどの手法により該当のソフトウェアを記述することができる。
【００５２】
ステップＳ７では、そのタイミングにおいて実行すべきインチング送り量に相当するパルス量を指定するパルス信号をパルス信号制御部１５を介してロボットアーム４のロボット駆動部１７に送信する。この時、パルス信号制御部１５は、同じパルス信号を用いて押下されているボタン８０３〜８１４に応じて、ロボットアーム４のいずれの関節を駆動するかを指定する。これに応じてステップＳ８では、受信したパルス信号に基づき、ロボット駆動部１７が指定されたパルス量だけロボットアーム４（またはロボットハンド５）を動作させる。これにより、パルス量分のインチング動作が行われる。ロボット駆動部１７は指定されたパルス量だけロボットアーム４（またはロボットハンド５）を動作させると停止状態に移行する。なお、後述の通り、本実施例のインチング動作では、ロボットアーム４（またはロボットハンド５）の送り速度は一定であるものとする。
【００５３】
一方、ロボットアーム４（またはロボットハンド５）の停止状態を生成すべきタイミングにおいては、ステップＳ９、Ｓ１０が実行される。ここではロボットアーム４のロボット駆動部１７にはパルス信号を送信しない（ステップＳ９）。これに応じて、ロボットアーム４（またはロボットハンド５）は停止状態となる。この停止状態の長さは、上記ステップＳ６を経由することによって、ＲＴＣ５０７の計時情報を介して決定される。本実施例では、繰り返し実行するインチング動作の間の停止状態の長さ（後述のＴ１、Ｔ２…）は一定で例えば１０００ｍｓ（１秒間）程度であるものとする。
【００５４】
ステップＳ８またはＳ１０の後、ステップＳ１１では、ステップＳ２から開始されたボタン８０３〜８１４の本実施例における継続的なインチング操作がＯＦＦ状態に切り換わったか否かを判定する。ボタン８０３〜８１４の押下状態（ＯＮ状態）が続いている場合はステップＳ６に復帰し、上記の制御を繰り返す。また、当該のインチング操作がＯＦＦ状態に切り換わった場合には、破線で示したステップＳ１２でボタンＯＦＦ制御を実行する。しかる後に、ステップＳ１３でパルス信号制御部１５〜ロボット駆動部１７を介してロボットアーム４（またはロボットハンド５）を停止状態に移行させる。
【００５５】
ステップＳ１２のボタンＯＦＦ制御を破線で示しているのは、後述の図６および図７に関連して述べるように、ボタンのＯＦＦ状態が生成された時に行うロボットアーム４（またはロボットハンド５）の停止制御にはいくつか選択肢があるためである。ステップＳ１２のボタンＯＦＦ制御の具体例については、後で図６、図７に関連して詳述する。
【００５６】
次に、図５以降を参照して、パルス信号設定記憶部１４に記憶されている制御データに基づき、経時的に変化させるインチング動作の各々の送り量のパターンの例につき詳細に説明する。
【００５７】
図５〜図７に示す制御例には、概ね次のような特徴がある（下記の式（ｐ）および（ｑ）に対応する）：
（１）パルス信号設定記憶部１４に記憶された動作状態におけるロボットアーム４（またはロボットハンド５）の各々の送り量が経時的に特定のパターンで変化していくよう定められていること。特に、図５〜図７の例では、動作状態におけるロボットアーム４（またはロボットハンド５）の各々の送り量が経時的に漸減していくよう定められている。
【００５８】
（２）継続して行われるボタン８０３〜８１４の１回の（一連の）押下（ＯＮ操作）に関連してパルス信号設定記憶部１４に記憶される動作状態におけるロボットアームの送り量の総量が一定である。
【００５９】
図３のパルス信号設定記憶部１４に記憶される制御データは、例えば、ロボットアーム４（またはロボットハンド５）の送り量をパルス量の数列で表現することができる。図５は、継続して行われるボタン８０３〜８１４の１回の押下（ＯＮ操作）に関連して、記憶されるロボットアーム４（またはロボットハンド５）の送り量をパルス量の数列の一例を示している。図５の横軸は時間、縦軸はロボットアーム４（またはロボットハンド５）の送り量に相当するパルス量（数）を示している。
【００６０】
図５の例では、制御データの１番目のパルス量がＮ（Ｇ１０２）、２番目のパルス量がＮ／２（Ｇ１０３）、３番目のパルス量がＮ／４（Ｇ１０４）となっている。また、４番目のパルス量が３Ｎ／２０（Ｇ１０５）、５番目のパルス量がＮ／２０（Ｇ１０６）、６番目のパルス量が５番目と同様、Ｎ／２０（Ｇ１０７）となっている。なお、この例でパルス信号設定記憶部１４の制御データを決定づけるパルス量Ｎは、ロボット操作端末７上で行われる所定の操作に応じて変更できるようにしておくことができる。
【００６１】
図５の例では、Ｇ１０２〜Ｇ１０７のグラフで示したパルス数は以下の式（ｐ）および（ｑ）の関係を満足するよう定められている。
Ｎ＋Ｎ／２＋Ｎ／４＋３Ｎ／２０＋Ｎ／２０＋Ｎ／２０＝２Ｎ  …（ｐ）
Ｎ＞Ｎ／２＞Ｎ／４＞３Ｎ／２０＞Ｎ／２０＝Ｎ／２０  …（ｑ）
【００６２】
すなわち、この例では、式（ｐ）のように各パルスの総和が必ず２Ｎ（一定）となること、また、式（ｑ）のように、時系列で並んだパルスが必ず経時的に変化していく、特に全体の傾向としては概ね経時的に漸減していくよう定められている。ただし、図５の例では、一連のインチング操作の終端のＧ１０６、Ｇ１０７のパルス量は整数のパルス数を割り振る都合上、等しくなっている。
【００６３】
パルス信号設定記憶部１４に外部から与えられる変数または変数の数列であるＡ、｛Ｂｎ｝に対して、ｎを自然数とし、ｉ＜ｊであるｉ、ｊ∈ｎに対して以下の式（ｐ’）および（ｑ’）の条件を必要とする。
Ａ＝Ｂ１＋Ｂ２＋…＋Ｂｎ  …（ｐ’）
Ｂｉ≧Ｂｊ  …（ｑ’）
【００６４】
図５に示す例では、上記の式（ｐ’）および（ｑ’）の各項は、Ａ＝２Ｎ、｛Ｂｎ｝＝Ｎ、Ｎ／２、Ｎ／４、３Ｎ／２０、Ｎ／２０、Ｎ／２０、ｎ＝６となっている。
【００６５】
さらに、図５では、１番目のパルス信号送信（Ｇ１０２）によりロボットアーム４（またはロボットハンド５）が動作状態となる。その後、ロボットアーム４またはロボットハンド５の動作が終了した直後から、２番目のパルス信号送信（Ｇ１０３）との間に、Ｔ１の長さの停止状態を設定する。時間間隔Ｔ１は、パルス信号設定記憶部１４に上記のＡや｛Ｂｎ｝の定数と同様に、定数として設定される。この時間間隔Ｔ１も、ロボット操作端末７上で行われる所定の操作に応じて変更できるようにしておくことができる。デフォルトでは、時間間隔Ｔ１の長さは、例えば１０００ｍｓ（１秒間）程度とする。このＴ１の時間の間では、ロボットアーム４またはロボットハンド５は動作を行わず、停止状態に制御される。
【００６６】
同様に、２番目以降のパルス信号送信（Ｇ１０３、Ｇ１０４…Ｇ１０６）についても同様で、それぞれのパルス信号送信の後に時間間隔Ｔ２、Ｔ３…Ｔ５の停止状態を形成する。上記の時間間隔Ｔ１と、時間間隔Ｔ２、Ｔ３…Ｔ５は、それぞれ異なる値であってもよい。例えば、Ｔ１、Ｔ２、Ｔ３…Ｔ５と、除々に時間間隔が長くなるように設定されていてもよい。ただし、図５の例は時間間隔Ｔ２、Ｔ３…Ｔ５は時間間隔Ｔ１と同じ（１０００ｍｓ（１秒間）程度）に取ってある。これら時間間隔Ｔ１、Ｔ２、Ｔ３…Ｔ５は、上記Ａや｛Ｂｎ｝と同様にパルス信号設定記憶部１４に設定しておく。また、時間間隔Ｔ１のみならず、Ｔ２、Ｔ３…Ｔ５（あるいはさらにＴ６）もロボット操作端末７上で行われる所定の操作に応じて変更できるようにしておくことができる。
【００６７】
また、図５において、パルス信号送信（Ｇ１０２、Ｇ１０３、Ｇ１０４…Ｇ１０６）に要する時間は、実際のロボットアーム４（またはロボットハンド５）のインチング動作に要する時間に比例するような長さで記述してある。上述のように、本実施例において繰り返し実行するインチング動作ではロボットアーム４（またはロボットハンド５）の動作速度は一定であるものとする。従って、送り量に相当するパルス量が多い場合はパルス信号送信（ロボット送り）に要する時間が長くなり、パルス量が少なければその時間は短くなる。図５の例では、パルス信号送信（Ｇ１０２、Ｇ１０３、Ｇ１０４…Ｇ１０６）に要する時間Ｐ１、Ｐ２、Ｐ３、Ｐ４、Ｐ５、Ｐ６は除々に短くなっていく。
【００６８】
例えば、ここで、具体的な例として、パルス量ＮをＮ＝１０００、各時間間隔をＴ１＝Ｔ２＝Ｔ３＝Ｔ４＝Ｔ５＝１０００ｍｓとする。この時、パルス量の数列はＧ１０２〜Ｇ１０７に関してそれぞれ１０００、５００、２５０、１５０、５０、５０であり、
１０００＋５００＋２５０＋１５０＋５０＋５０＝２０００  …（ｐ’’）
１０００＞５００＞２５０＞１５０＞５０＝５０  …（ｑ’’）
の関係が成立することになる。
【００６９】
なお、図５の例では、継続して行われるボタン８０３〜８１４の一連の押下（ＯＮ操作）に対応する全部で２Ｎのパルス数を送信し終った後、すなわち、パルス信号送信（Ｇ１０７）の後はロボットアーム４（またはロボットハンド５）は停止状態に移行させる。この後は、ボタン８０３〜８１４の押下（ＯＮ操作）が継続して行われても、それ以上の繰り返しインチング動作を行うことなく、そのまま停止状態が続くよう制御する。このような制御の仕様は、インチングという操作が一定操作に対して一定微小量しか動かないというインチング本来の定義にかなうものである。
【００７０】
ここで、仮に、Ｐ６の時間経過後に、操作者がこれまで押下９０３〜９１４（ＯＮ操作）し続けていたインチング操作のためのボタン８０３〜８１４を離すまでの時間長さをＴ６とする。この時、上記のようにＴ６の長さによらず、ロボットアーム４またはロボットハンド５はこれ以上動作させない。以上より、図５において、ロボットアーム４またはロボットハンド５が規定量２Ｎ分だけ動作するのにかかる時間は、Ｐ１＋Ｔ１＋Ｐ２＋Ｔ２＋Ｐ３＋Ｔ３＋Ｐ４＋Ｔ４＋Ｐ５＋Ｔ５＋Ｐ６となる。また、操作者がロボット操作端末７の、インチングを行うボタン８０３〜８１４を押下（ＯＮ操作）してから離すまでの時間はＰ１＋Ｔ１＋Ｐ２＋Ｔ２＋Ｐ３＋Ｔ３＋Ｐ４＋Ｔ４＋Ｐ５＋Ｔ５＋Ｐ６＋Ｔ６である。
【００７１】
以上のようなインチング制御を行うことにより、本実施例によれば、ロボットアーム４（またはロボットハンド５）のインチング送り量を自動的かつ適切に制御し、大幅に操作性を向上することができる。上記の例では、継続して行われるボタン８０３〜８１４の一連の押下（ＯＮ操作）に応じて、その期間のあいだ、経時的に一定のパターンで送り量が漸減していくよう、ロボットアーム４（またはロボットハンド５）を繰り返しインチング動作させる。特に、上記の制御によれば、送り量が漸減していくよう制御が行われるため、例えばジョグ操作モードによりロボットアーム４（またはロボットハンド５）を目標の位置姿勢に大まかに近づけた後に行うインチング操作（動作）に適している。すなわち、目標の位置姿勢に近づくほど１つのインチング操作（動作）の送り量が小さくなるよう制御されるため、より微妙な操作が要求される目標の位置姿勢のごく近傍のインチング操作（動作）では、小さな送り量が自動的に選択される。これにより、操作者は、より確実にロボットアーム４（またはロボットハンド５）を目標の位置姿勢に制御することができる。また、上記のようなインチング送り量の選択は、操作者が送り量の手動設定を何ら行うことなく自動的に行われるため、面倒な操作を必要とせず、ロボットシステムの操作性を大きく向上することができる。以上のように、本実施例によれば、連続的なロボット送りと同等の便利さを享受しながら、送り量調整の容易さを並行して実現することができる。
【００７２】
例えば、従来では、ボタンの連打か継続押下によって繰り返されるインチング動作は手動設定を行わない限り全て一定送り量であった。これに対して、本実施例では、単に継続してボタン押下を行なうだけで状況に即した送り量変化でインチング動作をリピートできる。すなわち、本実施例によれば、極めて容易な操作により自動的に状況に即した送り量変化でインチング動作をリピートできる、という優れた効果がある。
【００７３】
なお、以上では、継続して行われるボタン８０３〜８１４の一連の押下（ＯＮ操作）に応じて、その期間の間、経時的に一定のパターンで送り量が漸減していくよう、ロボットアーム４（またはロボットハンド５）を繰り返しインチング動作させる例を示した。しかしながら、上記とは逆に、継続して行われるボタン８０３〜８１４の一連の押下（ＯＮ操作）の間、経時的に一定のパターンで送り量が漸増していくよう、ロボットアーム４（またはロボットハンド５）を繰り返しインチング動作させる制御も考えられる。このような制御は、例えば、目標の位置姿勢からまだ遠いような状況において、たまたまインチング操作モードが選択された状態でロボット操作端末７の操作を開始してしまった場合に好適に利用できる可能性がある。例えば、ロボットアーム４（またはロボットハンド５）の繰り返しインチング動作において、単に継続してボタン押下を行なうだけで送り量を漸増させていくことができる。このように経時的に一定のパターンで送り量が漸増していくような制御は、例えば図５に示したＧ１０２〜Ｇ１０７のパルス送り量をＧ１０７〜Ｇ１０２の逆の順序でパルス信号設定記憶部１４に設定しておけば実現できる。
【００７４】
継続して行われるボタン８０３〜８１４の一連の押下（ＯＮ操作）の間、経時的に一定のパターンで送り量が漸減させるか、漸増させるかのモードは、ロボット操作端末７の適当な手動操作によって設定できるようにしておくことができる。
【００７５】
次に、図４にステップＳ１２として示したボタンのＯＦＦ制御に係るものとして、図６および図７の制御例を説明する。図６および図７は、継続して行われるボタン８０３〜８１４の一連の押下（ＯＮ操作）に対応してパルス信号設定記憶部１４に記憶された送り量のロボット動作を全て実行しないうちに当該のボタンがＯＦＦ操作の状態になった場合の取り扱いを例示している。ここでは、パルス信号設定記憶部１４に記憶された送り量パターンは図５で説明したものと同様であるものとする。
【００７６】
図６の例では、Ｇ１０２〜Ｇ１０５までのパルス信号送信を行った後の停止状態（時間間隔Ｔ４）の途中で、Ｔ４’の時間が経過した時点でそれまで押下（ＯＮ操作）状態であったボタンがＯＦＦ操作状態となっている。この場合、ロボットアームの動作量はパルス量でいえば、Ｎ＋Ｎ／２＋Ｎ／４＋３Ｎ／２０＝１９Ｎ／１０であり、所要時間はＰ１＋Ｔ１＋Ｐ２＋Ｔ２＋Ｐ３＋Ｔ３＋Ｐ４＋Ｔ４’となっている。
【００７７】
このように、インチング操作（動作）間の停止状態でそれまで押下（ＯＮ操作）状態であったボタンがＯＦＦ操作状態となった場合には、パルス信号設定記憶部１４にそれ以降の送り量が記憶されていてもそれ以上のパルス信号送信を行わないよう制御する。すなわち、図４のステップＳ１２でいえば、特別な制御を行うことなくステップＳ１３に移行する。なお、図６では、時間間隔Ｔ４で示した停止状態においてボタンがＯＦＦ操作状態となった場合を示しているが、Ｔ１〜Ｔ３の時間間隔を有する停止状態においてボタンがＯＦＦ操作状態となった場合にも上記と同じボタンＯＦＦ制御を行えばよい。
【００７８】
一方、ロボットアーム４（またはロボットハンド５）が実際にインチング動作を行っている間に、それまで押下されていたボタンがＯＦＦ操作状態となった場合には、ステップＳ１２で行うボタンＯＦＦ制御としては、例えば図７のような制御が考えられる。
【００７９】
図７では、そのタイミングにおいて実行させるべき（既に開始されている）送り量のインチング動作だけは最後まで実行し、その後、停止状態に移行させる制御を行っている。図７の場合、Ｇ１０２〜Ｇ１０５までのパルス信号送信を行い、Ｇ１０５のパルス信号送信に対応するインチング動作の途中、Ｔ４’の時間が経過した時点でそれまで押下（ＯＮ操作）状態であったボタンがＯＦＦ操作状態となっている。この場合、この場合、ロボットアームの動作量はＮ＋２／Ｎ＋Ｎ／４＋３Ｎ／２０＝１９Ｎ／１０となる。ロボットの動作にかかる時間はＰ１＋Ｔ１＋Ｐ２＋Ｔ２＋Ｐ３＋Ｔ３＋Ｐ４、ボタンを押してから離すまでの時間はＰ１＋Ｔ１＋Ｐ２＋Ｔ２＋Ｐ３＋Ｔ３＋Ｐ４’である。
【００８０】
このように、実際にインチング動作が行われている状態でそれまで押下（ＯＮ操作）状態であったボタンがＯＦＦ操作状態となった場合には、その時点で実行中の１つのインチング動作は最後まで実行する。すなわち、図４のステップＳ１２でいえば、例えば送信完了していないパルス信号が残っていればそれを全て送信してからステップＳ１３に移行する。すなわち、制御データによって定められた送り量を持つ１つの動作状態の途中でＯＦＦ操作が生じた場合、その１つの動作状態を制御データによって定められた送り量で実行した後、ロボットアームを停止状態に移行させる。なお、図７では、Ｇ１０５のインチング動作中に、ボタンがＯＦＦ操作状態となった場合を示しているが、Ｇ１０２〜Ｇ１０４のインチング動作中にボタンがＯＦＦ操作状態となった場合にも上記と同じボタンＯＦＦ制御を行えばよい。
【００８１】
また、それまで押下（ＯＮ操作）状態であったボタンがＯＦＦ操作状態となった場合、図７のようにその時点で実行中のインチング動作を最後まで実行するのではなく、実行中のインチング動作をその時点で停止させるよう制御してもよい。図４のステップＳ１２でいえば、例えば送信完了していないパルス信号が残っていても、その残りのパルス信号を送信せずにステップＳ１３に移行する制御を行う。ただし、このような制御は、例えば何らかのコマンド形式によって、パルス信号制御部１５がロボット駆動部１７に送り量に相当するパルス数を指定した後、１回のインチング動作を行わせるようなインターフェースでは不可能な場合も考えられる。その場合には、結果として既にコマンドで指定済みのインチング動作は最後まで実行せざるを得ず、結果として上記の図７で説明したのと同じ制御になる。
【００８２】
また、図６、図７のように、特定のパターンで各々の送り量を記憶させたインチング動作を１セット実行する前にボタンのＯＦＦ操作を行った後、再度ＯＮ操作が行われた場合の制御には、下記の（Ａ）、（Ｂ）のようにいくつか異る制御の仕様が考えられる：
（Ａ）この場合の制御の仕様の１つとしては、再度、ボタンのＯＮ操作が生じた場合は、全てに実行されなかった１セットのインチング動作の残りを実行する制御が考えられる。例えば、図６、図７のＧ１０５までインチング動作を行いボタンがＯＦＦ操作となり、その後、ボタンのＯＮ操作が再度生じた場合は、残りのＧ１０６、Ｇ１０７のインチング動作（図５）を実行する。これにより、操作者が１セットのインチング動作の続きを望んでいる場合にその意図を汲んだ動作を行える。
【００８３】
（Ｂ）また別の制御の仕様としては、再度、ボタンのＯＮ操作が生じた場合は、それまでの１セットのインチング動作が全て実行されたか否かに拘らず、新たな１セットのインチング動作を開始する制御が考えられる。この場合は、図６、図７のＧ１０５までインチング動作を行いボタンがＯＦＦ操作となり、その後、ボタンのＯＮ操作が再度生じた場合は、常に図５と同様にＧ１０２から新しい１セットのインチング動作を開始する。この場合は、ＯＦＦ操作によって、操作者が１セットのインチング動作の停止を明示的に指定した、という意図を汲んだ動作となる。
【００８４】
ただし、上記（Ａ）の制御を行う場合は、再度ＯＮ操作されたボタン（ないし複数ボタンの組合せ）が、その直前のＯＦＦ操作の時のものと同一であることを条件とすることが考えられる。異なるボタンのＯＮ操作が開始された場合は、（Ｂ）の制御と同様に、新たなボタン操作に対応する１セットのインチング動作を最初から実行する。このような制御によって、操作の連続性／不連続性を考慮した制御が可能となり、異なるボタンのＯＮ操作が開始された場合は、新たなボタン操作に対応する１セットのインチング動作を最初から実行できる。
【００８５】
また、（Ａ）のように１セットの「続き」を行なう制御は、ＯＦＦ操作から、再度のボタン（ないし複数ボタンの組合せ）のＯＮ操作までの時間が適当な閾値よりも短い場合にのみ行うようにしてもよい。なお、この時、論理積条件として上記の同じボタン（ないし複数ボタンの組合せ）が再度ＯＮ操作されていること、を条件としてもよい。そしてＯＮ操作までの時間が適当な閾値以上の場合には、（Ｂ）の制御を行なう。このような制御によって、操作の連続性／不連続性をより考慮したきめ細い制御が可能となる。また、上記の（Ａ）および（Ｂ）の制御は、ロボット操作端末７の適当な手動操作によってオプション設定できるようにしておいてもよい。
【００８６】
本発明は、操作手段のインチング操作に応じて制御装置がロボットアームの動作を制御する種々のロボット装置において実施することができる。上述の実施例では、操作手段としてロボット操作端末７に設けられた操作ボタン群８を例示したが、このような操作手段は、ロボットコントローラ３や架台６に直接設けられていてもよく、また他の情報端末に設けられていてもよい。本発明のインチング制御は、例えばロボットコントローラのＣＰＵのような演算手段によって実行される。従って上述した機能を実現するソフトウェアのプログラムを記録した記録媒体を画像検査装置に供給し、上記演算手段が記録媒体に格納されたプログラムを読み出し実行することによって達成されるよう構成することができる。この場合、記録媒体から読み出されたプログラム自体が上述した実施形態の機能を実現することになり、プログラム自体はもちろん、そのプログラムを記録した記録媒体は本発明を構成することになる。
【００８７】
また、上記実施例では、コンピュータ読み取り可能な記録媒体がＲＯＭ５０２や外部記憶装置５０４などの記憶デバイスであるものとして説明したが、本発明は上記実施例で例示した形態だけに限定されるものではない。例えば、本発明を実施するためのプログラムは、コンピュータ読み取り可能な記録媒体であれば、いかなる記録媒体に記録されていてもよい。例えば、プログラムを供給するための記録媒体としては、着脱式のＨＤＤやＳＳＤ、光学ディスク、各種フラッシュメモリデバイスなど、任意の外部記憶デバイスを用いることができるのはいうまでもない。このような各種記憶デバイスは、本発明を構成するプログラムが格納されていれば、本発明のコンピュータ読み取り可能な記録媒体を構成することになる。
【符号の説明】
【００８８】
１…ロボットシステム、２…ロボット操作端末、３…ロボットコントローラ、４…ロボットアーム、５…ロボットハンド、６…架台、７…ロボット操作端末、８…操作ボタン群、８０１〜８１４…ボタン、１４…パルス信号設定記憶部、１５…パルス信号制御部、１７…ロボット駆動部。
【図１】
2016000439.tif 000003
【図２】
2016000439.tif 000004
【図３】
2016000439.tif 000005
【図４】
2016000439.tif 000006
【図５】
2016000439.tif 000007
【図６】
2016000439.tif 000008
【図７】
2016000439.tif 000009
【図８】
2016000439.tif 000010