(57)【要約】【課題】作業者が教示点の位置・姿勢を修正するための手動操作を行う際に、安価かつ簡単な構成で、位置・姿勢情報を修正することができるとともに、作業者への負担を軽減することができるロボット制御装置を提供することを目的とする。【解決手段】ロボット制御装置３は、教示点の位置・姿勢を修正するための手動操作によるロボット４の動作速度を制御する動作速度制御部８と、手動操作に従って、ロボット４の動作を制御する動作制御部６とを備えている。動作速度制御部８は、ロボット本体のリンク上および作業ツール上に予め設定された特徴点と、特徴点の位置座標を表現するために設定された基準点との接近距離を算出するとともに、接近距離に基づいて、動作速度を決定する。動作制御部６は、決定された動作速度により、ロボット４を動作させる。【選択図】図２
2007199936.tif 000002
【特許請求の範囲】
【請求項１】
ロボットの作業プログラム内に記録されている教示点の位置・姿勢の修正を行うロボット制御装置において、
前記教示点の位置・姿勢を修正するための手動操作による前記ロボットの動作速度を制御する動作速度制御手段と、
前記手動操作に従って、前記ロボットの動作を制御する動作制御手段と、を備え、
前記動作速度制御手段は、ロボット本体のリンク上および作業ツール上に予め設定された特徴点と、前記特徴点の位置座標を表現するために設定された基準点との接近距離を算出するとともに、前記接近距離に基づいて、前記動作速度を決定し、前記動作制御手段は、決定された前記動作速度により、前記ロボットが、作業対象物に対して所望の位置、および姿勢となるように、前記ロボットを動作させることを特徴とするロボット制御装置。
【請求項２】
前記動作速度制御手段は、前記接近距離と、予め設定された安全距離、および予め設定され、前記安全距離よりも小さい臨界距離とを比較し、前記比較の結果に応じて、前記動作速度を決定することを特徴とする請求項１に記載のロボット制御装置。
【請求項３】
前記動作速度制御手段は、予め設定された複数の速度レベルに対応する速度の中から前記動作速度を決定することを特徴とする請求項２に記載のロボット制御装置。
【請求項４】
前記動作速度制御手段は、前記接近距離が、前記安全距離以上である場合は、前記複数の速度レベルのうち、作業者が選択した速度レベルに対応する速度を前記ロボットの動作速度とし、前記接近距離が、前記臨界距離未満の場合は、前記複数の速度レベルのうち、最も低速な速度レベルに対応する速度を前記ロボットの動作速度とし、前記接近距離が、前記臨界距離以上であり、かつ前記安全距離未満である場合は、前記複数の速度レベルのうち、前記接近距離の長さに応じた速度レベルを選択するとともに、前記接近距離の長さに応じて選択した速度レベルと、作業者が選択した速度レベルを比較し、より低速な速度レベルに対応する速度を前記ロボットの動作速度とすることを特徴とする請求項３に記載のロボット制御装置。
【請求項５】
前記基準点が、前記作業プログラム内に記録されている教示点であることを特徴とする請求項１乃至請求項４のいずれかに記載のロボット制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットの位置および姿勢を変更するための教示再生方式のロボット制御装置に関する。
【背景技術】
【０００２】
一般に、教示再生方式のロボット制御装置は、作業プログラムに記録された情報に基づいて、作業者が指示した作業を行う。そして、作業プログラム内にロボットの位置・姿勢情報を記録する場合、作業者は、ティーチペンダント（以下、「ＴＰ」という。）と呼ばれる教示操作盤を手動操作することによって、ロボットの現在の位置・姿勢を所望の状態に変更する必要がある。
【０００３】
ここで、近年、作業プログラムを再生するロボット制御装置を使用せずに、作業プログラムを作成する、いわゆるオフラインプログラミングシステムによって作業プログラムを作成する機会が増えている。このオフラインプログラミングシステムで作業プログラムを作成する場合、作業者が、オフラインプログラミングシステムで作成した作業プログラムを実機で低速で再生し、ロボット本体やロボットに取り付けた作業ツール（以下、「作業ツール」という。）と、作業対象物との衝突を確認しながら、作業プログラムに記録されたロボットの位置・姿勢情報を修正する必要がある。従って、この修正作業を行う際、作業者は手動操作にてロボットの位置・姿勢を作業に最適な状態に変更し、既存の作業プログラムに再記録する必要がある。
【０００４】
また、作業プログラム内に記録されているロボットの位置・姿勢を修正するために、ロボット本体および作業ツールが作業対象物に接近した状態で、ロボットの現在の位置・姿勢を手動操作によって変更する場合、作業者は、ロボット本体および作業ツールと作業対象物が衝突しないように手動操作時におけるロボットの動作速度を頻繁に変更しながら、ロボットの現在の位置・姿勢を変更する必要がある。そして、手動操作時におけるロボットの動作速度を変更する際、作業者はＴＰを操作して手動操作時におけるロボットの動作速度をロボット制御装置に指示する必要があるが、熟練した作業者であっても、目視確認することなく、所望の動作速度を指示することは非常に困難である。このため、ロボットおよび作業ツールと作業対象物が衝突しないことを目視確認し、目線を変えてＴＰを操作して動作速度を変更し、再度、ロボット本体および作業ツールと作業対象物を目視確認しながらロボットの現在の位置・姿勢を変更するといった、負担の大きい作業を強いられている。また、この際、作業者による、ロボット制御装置に対する動作速度の指示を誤ると、ロボット本体および作業ツールが作業対象物に衝突してしまい、作業ツールや作業対象物が破損してしまう場合がある。
【０００５】
そこで、これらの不都合を解消すべく、ロボット本体および作業ツールが作業対象物に接近した状態を判定する方法が提案されている。この方法としては、例えば、作業対象物やロボットの周辺装置の３次元情報を予め登録しておく方法が開示されている。より具体的には、作業対象物に関する３次元データを取得して出力する視覚センサと、視覚センサにより取得された３次元データを処理して、作業対象物の位置・姿勢を演算するデータ処理装置とを備え、データ処理装置から得られた情報に基づいて、作業対象物に対して所望の位置、および姿勢となるように、ロボットを動作させるロボット制御装置が開示されている（例えば、特許文献１参照）。また、ロボットに外界センサを取り付ける方法も開示されている。より具体的には、ロボットに装着され、作業対象物を撮像するカメラと、撮像された画像において、作業対象物上の任意の点を指定する手段と、撮像された画像における、指定された点の位置情報を取得する手段と、当該位置情報、およびカメラと作業対象物間の距離に基づいて、ロボットの移動方向と移動量を決定する手段と、当該移動方向と移動量に基づいて、ロボットを移動させる手段とを備えるロボットが開示されている（例えば、特許文献２参照）。
【０００６】
また、作業ツールと作業対象物の接触の有無を判定するロボット制御装置が開示されている。より具体的には、当該ロボット制御手段は、作業ツールを、教示修正が必要な教示点に到達する前に停止させる手段と、作業ツールと作業対象物との接触の有無を判定する手段を備えている。そして、まず、ロボットの現在の位置・姿勢が、教示点に到達する前にロボットを自動的に停止させる。次いで、作業者が、当該停止位置から、オフラインティーチングによって作成した作業プログラムの教示内容を確認するジョグ送り（手動送り）操作によって、作業対象物に対して所望の位置、姿勢となるようにロボットを動かす。そして、作業ツールと作業対象物の接触と、作業対象物に対して作業ツールが所望の位置、姿勢になったことが確認されると、ＴＰにより修正指示が入力され、所望の位置、姿勢を新たな教示位置として教示点を修正する。このような構成により、ロボットの教示修正作業を容易に行うことができると記載されている（例えば、特許文献３参照）。
【特許文献１】特開２００５−１０２２号公報
【特許文献２】特開２００５−７４６００号公報
【特許文献３】特開２００４−２８０５２９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかし、上記特許文献１に記載のロボット制御装置においては、正確な３次元データをロボット制御装置に格納するためには、膨大なデータ、および当該データを格納するための記憶装置が必要となるため、コスト面の制約が厳しい産業用ロボットにおいて、採用することが困難であるという問題があった。また、上記特許文献２に記載のロボット制御装置においては、外界センサを別個に設ける必要があるため、コストアップになるという問題があった。
【０００８】
また、上記特許文献３に記載のロボット制御装置においては、作業ツールと作業対象物との接触の有無を判定する手段を別個に設ける必要があるため、コストアップになるという問題があった。また、作業ツールと作業対象物との接触を前提としており、作業ツールと作業対象物とを接触させる際に、作業者が、ロボットと作業対象物との距離に応じて、ロボットの動作速度を調整しなければならないため、作業者への負担が大きいという問題があった。また、作業者の操作ミスにより、作業ツールが作業対象物に衝突する場合があり、作業ツールや作業対象物が破損してしまうという問題があった。
【０００９】
そこで、本発明は、上述の問題に鑑みてなされたものであり、作業者が作成済みの作業プログラム内に記録されている教示点の位置・姿勢を修正するための手動操作を行う際に、安価かつ簡単な構成で、位置・姿勢情報を修正することができるとともに、作業者への負担を軽減することができるロボット制御装置を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、請求項１に記載の発明は、ロボットの作業プログラム内に記録されている教示点の位置・姿勢の修正を行うロボット制御装置において、教示点の位置・姿勢を修正するための手動操作によるロボットの動作速度を制御する動作速度制御手段と、手動操作に従って、ロボットの動作を制御する動作制御手段と、を備え、動作速度制御手段は、ロボット本体のリンク上および作業ツール上に予め設定された特徴点と、特徴点の位置座標を表現するために設定された基準点との接近距離を算出するとともに、接近距離に基づいて、動作速度を決定し、動作制御手段は、決定された動作速度により、ロボットが、作業対象物に対して所望の位置、および姿勢となるように、ロボットを動作させることを特徴とする。
【００１１】
同構成によれば、動作速度制御手段が、基準点と特徴点との接近距離を算出するため、作業対象物や周辺機器等の詳細な３次元データや、当該データを格納するための記憶装置、および外界センサ等のロボット周辺環境を識別するための特別な装置を使用しなくても、ロボットと作業対象物との接近状態を判定することが可能となる。その結果、安価かつ簡単な構成で、ロボットと作業対象物との接近状態を判定することが可能となる。
【００１２】
また、作業者が教示点の位置・姿勢を修正するために手動操作を行う場合、特徴点と基準点との接近距離に応じて、自動的に手動操作におけるロボットの動作速度を制御できることになる。従って、手動操作を行う際に、作業者がロボットと作業対象物との接近距離に応じてロボットの動作速度を変更する必要がなくなるため、作業者への負担を軽減することができる。また、作業ツールと作業対象物との接触の有無を判定するための手段を別個に設ける必要がなくなるため、コストアップを抑制することが可能になる。さらに、ロボットと作業対象物が接近した状態にも関わらず、作業者の操作ミスによって、動作速度を高速側に設定し、かつ、ロボットが作業対象物に接近する方向に手動操作が指示されても、自動的に動作速度を制限することが可能になる。従って、作業者の操作ミスに基づく、ロボットと作業対象物の衝突を効果的に抑制して、ロボットや作業対象物の破損を効果的に回避することができ、万一、ロボットと作業対象物が衝突しても、双方が受けるダメージを低減することができる。
【００１３】
請求項２に記載の発明は、請求項１に記載のロボット制御装置であって、動作速度制御手段は、接近距離と、予め設定された安全距離、および予め設定され、安全距離よりも小さい臨界距離とを比較し、比較の結果に応じて、動作速度を決定することを特徴とする。なお、ここでいう「安全距離」とは、ロボットと作業対象物との衝突が発生しない、基準点からの距離をいい、ロボットの動作速度の制限が不要な距離をいう。また、「臨界距離」とは、ロボットと作業対象物との衝突が発生し易い、基準点からの距離をいい、ロボットの動作速度の制限が必要な距離をいう。
【００１４】
同構成によれば、手動操作におけるロボット４の動作速度を精度良く制御できることになる。従って、作業者の操作ミスに基づく、ロボットと作業対象物の衝突を一層効果的に抑制して、ロボットや作業対象物の破損を一層効果的に回避することが可能になる。また、手動操作時における、作業者への負担を一層軽減することができる。
【００１５】
請求項３に記載の発明は、請求項２に記載のロボット制御装置であって、動作速度制御手段は、予め設定された複数の速度レベルに対応する速度の中から動作速度を決定することを特徴とする。同構成によれば、動作速度の決定が迅速かつ簡略化されるため、作業者が作成済みの作業プログラム内に記録されている教示点の位置・姿勢を修正するために行う手動操作の時間を短縮化することが可能になる。
【００１６】
請求項４に記載の発明は、請求項３に記載のロボット制御装置であって、動作速度制御手段は、接近距離が、安全距離以上である場合は、複数の速度レベルのうち、作業者が選択した速度レベルに対応する速度をロボットの動作速度とし、接近距離が、臨界距離未満の場合は、複数の速度レベルのうち、最も低速な速度レベルに対応する速度をロボットの動作速度とし、接近距離が、臨界距離以上であり、かつ安全距離未満である場合は、複数の速度レベルのうち、接近距離の長さに応じた速度レベルを選択するとともに、接近距離の長さに応じて選択した速度レベルと、作業者が選択した速度レベルを比較し、より低速な速度レベルに対応する速度をロボットの動作速度とすることを特徴とする。
【００１７】
同構成によれば、手動操作におけるロボットの動作速度を、接近距離、および作業者が選択した速度レベルに応じて、精度良く制御できることになる。従って、作業者の操作ミスに基づく、ロボットと作業対象物の衝突をより一層効果的に抑制して、ロボットや作業対象物の破損をより一層効果的に回避することが可能になる。また、手動操作における、作業者への負担をより一層軽減することができる。
【００１８】
請求項５に記載の発明は、請求項１乃至請求項４のいずれかに記載のロボット制御装置であって、基準点が、作業プログラム内に記録されている教示点であることを特徴とする。同構成によれば、教示点とは別個に、新たに基準点を設定する必要がなくなるため、ロボットの動作速度の制御が容易になる。
【発明の効果】
【００１９】
本発明のロボット制御装置によれば、作業者が作成済みの作業プログラム内に記録されている教示点の位置・姿勢を修正するための手動操作を行う際に、安価かつ簡単な構成で、ロボットと作業対象物との接近状態を判定することできるとともに、位置・姿勢情報を修正することができる。また、手動操作を行う際の作業者への負担を軽減することができる。また、ロボットや作業対象物の破損を効果的に回避することができる。
【発明を実施するための最良の形態】
【００２０】
以下に、本発明の具体的な実施形態について図面を参照しながら説明する。図１は、本発明の実施形態に係るロボット制御装置が使用されるロボットシステムの構成を示すブロック図であり、図２は、本発明の実施形態に係るロボット制御装置を示すブロック図である。なお、本実施形態では、ロボットにより作業対象物に対してアーク溶接を行う作業プログラムの修正を例に挙げて、説明する。
【００２１】
このロボットシステム１は、図１に示すように、教示点を入力する（ティーチングする）ための教示点入力手段２と、ロボット４の動作を制御するためのロボット制御装置３と、を備えている。教示点入力手段２としては、例えば、可搬型の教示操作盤であるＴＰを使用することができ、教示点の入力作業は、教示点入力手段２が具備する図示しないスイッチ等を作業者が操作することにより行われる。また、教示点入力手段２は、図示しないケーブルを介してロボット制御装置３と接続されている。ロボット制御装置３は、ロボット４の作業プログラム内に記録されている教示点の位置の修正を行う、教示再生方式の制御装置であり、図示しないケーブルを介してロボット４と接続されている。また、ロボット４は、例えば、複数の関節軸を有する多関節ロボットであり、ロボット本体４ａと、アーク溶接用の作業ツール（アーク溶接トーチ）４ｂにより構成されている。そして、ロボット制御装置３が、図示しないサーボモータを制御することにより、各関節軸が駆動され、ロボット４（即ち、ロボット本体４ａと作業ツール４ｂ）の動作が制御される構成となっている。
【００２２】
また、ロボット制御装置３は、図２に示すように、作業プログラムに記録された情報をロボット４の移動命令信号等に変換する情報変換部５と、当該情報変換部５に接続され、ロボット４のサーボモータの駆動を制御することにより、ロボット４の動作を制御する動作制御手段である動作制御部６と、当該動作制御部６に接続され、サーボモータの駆動を行うサーボドライバ７と、を備えている。そして、当該ロボット制御装置３は、作業プログラムに記録された情報に基づいて、作業者が指示した作業を行うように構成されており、作業者は、作業プログラムをジョグ送り操作にて再生し、作成された作業プログラムが、所望の通りに作成されているか否かを確認する。
【００２３】
作成済みの作業プログラム内に記録されている教示点におけるロボットの位置・姿勢情報を修正するための作業を行う際には、まず、作業者が、ロボット制御装置３のモードを、動作モードから教示モードに設定する。この教示モードの設定は、例えば、教示点入力手段２に設けられたモード切り替えスイッチにより行うことができる。
【００２４】
次いで、教示点入力手段２の画面に表示された作業プログラムのうち、作業者が確認を行う作業プログラムを選択するとともに、作業プログラム内に記録されている教示点のうち、位置修正を行う教示点を選択する。例えば、アーク溶接においては、アーク溶接しようとする溶接点の教示点が選択される。そうすると、ロボット制御装置３に設けられたプログラム記憶部１３に記憶されている作業プログラムの中から、選択した作業プログラムが読み出され、当該作業プログラムが、プログラム記憶部１３から情報変換部５に入力される。
【００２５】
作業者が、教示点入力手段２にてジョグ送り操作を開始し、選択した作業プログラムの実行を指示すると、情報変換部５は、作業プログラムに記録された情報をロボット４の移動命令信号や作業ツール４ｂの制御信号に変換するとともに、これらの信号を出力し、当該信号が動作制御部６に入力される。なお、ロボット４の移動命令信号には、移動先となる目標点（即ち、選択された教示点）におけるロボット４の位置、および姿勢に関するデータ（以下、「教示点データ」という。）が含まれている。また、作業者によるジョグ送り操作は、例えば、教示点入力手段２に設けられたジョグ送りボタンを押すことにより行うことができる。
【００２６】
次いで、動作制御部６は、入力された信号に基づいて、サーボモータを駆動させるための駆動信号を発生させ、当該駆動信号がサーボドライバ７に入力され、当該サーボドライバ７は、駆動信号に基づいて、サーボモータの駆動を行い、ロボット４が、上述の教示点に向かって移動する。そして、ロボット４が教示点に到達すると、作業者は、ジョグ送り操作を中断して、選択した作業プログラムの教示内容を確認するとともに、作業プログラムに記録されたロボット４の位置・姿勢情報を修正する必要がある場合は、作業対象物２０に対して、当該ロボット４が、所望の位置、および姿勢となるように、手動操作で、ロボット４を動かす。そして、手動操作にてロボット４の位置・姿勢を作業に最適な状態（即ち、上述の所望の位置、および姿勢）に変更して記録操作を行うと、当該位置・姿勢が新たな教示位置として、既存の作業プログラムに再記録され、教示点が修正される。本実施形態においては、このように、作業プログラム内に記録されている各教示点におけるロボットの位置・姿勢情報が確認・修正される。
【００２７】
なお、手動操作が行われる場合は、作業者が、教示点入力手段２にて手動操作を開始し、当該手動操作の実行を指示すると、教示点入力手段２から、手動操作を行うための情報が情報変換部５に入力される。そして、当該情報変換部５は、入力された情報をロボット４の移動命令信号や作業ツール４ｂの制御信号に変換するとともに、これらの信号を出力し、当該信号がロボット制御装置３に設けられ、情報変換部５に接続された手動操作実行部１２に入力される。次いで、手動操作実行部１２は、入力された信号に基づいて、ロボット４の移動位置を算出して、算出結果に基づく信号を出力し、当該信号が、手動操作実行部１２に接続された動作制御部６に入力される。次いで、動作制御部６は、入力された信号に基づいて、サーボモータを駆動させるための駆動信号を発生させ、当該駆動信号がサーボドライバ７に入力され、当該サーボドライバ７は、駆動信号に基づいて、サーボモータの駆動を行い、ロボット４が、上述の所望の位置、および姿勢となるように移動する。
【００２８】
ここで、本実施形態においては、教示点の位置・姿勢を修正するための手動操作を行う際の、手動操作速度（即ち、手動操作によるロボット４の動作速度）を制御するための手段が設けられている点に特徴がある。以下、本特徴について、図面を参照して詳細に説明する。
【００２９】
図２に示すように、本実施形態におけるロボット制御装置３には、作業者が、作成済みの作業プログラム内に記録されている教示点の位置・姿勢を修正するための手動操作によるロボット４の動作速度を制御するための動作速度制御手段である動作速度制御部８が設けられている。この動作速度制御部８は、上述の教示点データを記憶する教示点データ記憶部９と、予めロボット本体４ａのリンク上および作業ツール４ｂ上に設定され、ロボット４と作業対象物２０との距離を算出するために使用される特徴点（本実施形態においては、図１に示す、特徴点Ｔ１〜Ｔ３）を記憶する特徴点データ記憶部１０と、作業者の手動操作によるロボット４の動作速度を監視する動作速度監視部１１と、を備えている。
【００３０】
次に、手動操作を行う際の、ロボット４の動作速度制御の手順について説明する。図３は、本発明の実施形態に係るロボット制御装置における、ロボットの動作速度を制御する手順を示すフローチャートである。まず、作業者によるジョグ送り操作が開始されると（ステップＳ１）、選択された作業プログラムに記録された情報に基づいて変換されたロボット４の移動命令信号や作業ツール４ｂの制御信号が動作制御部６に入力される際に、動作速度制御部８は、上述の教示点データを教示点データ記憶部９に記憶する（ステップＳ２）。
【００３１】
次いで、動作制御部６は、作業者がジョグ送り操作において、どの段階でジョグ送り操作を中断したかを検知し（ステップＳ３）、検知内容に基づく検知信号が動作速度監視部１１に入力される（ステップＳ４）。より具体的には、ロボット４が、移動目標となる上述の教示点に到達した状態で、作業者がジョグ送り操作を中断した場合は、動作制御部６は、教示点に到達した状態で、作業者がジョグ送り操作を中断した旨の検知信号を出力し、当該検知信号が動作速度監視部１１に入力される。一方、ロボット４が、上述の教示点に到達する前に、作業者がジョグ送り操作を中断した場合（例えば、作業プログラムの再生中に、何らかの異常が発生した場合）は、動作制御部６は、教示点に到達する前に、作業者がジョグ送り操作を中断した旨の検知信号を出力し、当該検知信号が動作速度監視部１１に入力される。
【００３２】
次いで、動作速度監視部１１は、ジョグ送り操作が中断された段階に応じて、上述の特徴点Ｔ１〜Ｔ３の位置座標を表現するために使用され、ロボット４と作業対象物２０との距離を算出するための基準となる基準点を設定する（ステップＳ５）。より具体的には、図４に示すように、移動経路ｒにおいて、ロボット４の作業ツール４ｂが、作業者により選択された、位置修正が行われる最新の教示点Ａ１に到達した状態で、作業者がジョグ送り操作を中断した場合は、動作速度監視部１１は、教示点データ記憶部９に記憶された教示点データのうち、最新の教示点Ａ１に対応する最新の教示点データＤ１を読み出し、当該教示点データＤ１に基づいて、ロボット４の動作速度を制御するための基準となる基準点Ｂ１を設定（即ち、最新の教示点Ａ１を基準点Ｂ１に設定）する。なお、図４において、最新の教示点Ａ１の１つ前の教示点を教示点Ａ２として示している。一方、図５に示すように、移動経路ｒにおいて、ロボット４の作業ツール４ｂが、最新の教示点Ａ１に到達する前に、作業者がジョグ送り操作を中断した場合は、動作速度監視部１１は、教示点データ記憶部９に記憶された教示点データのうち、最新の教示点Ａ１と最新の教示点Ａ１の１つ前の教示点Ａ２に対応する教示点データＤ１、Ｄ２を読み出し、当該教示点データＤ１、Ｄ２に基づいて、ロボット４の動作速度を制御するための基準となる基準点Ｂ１、Ｂ２を設定（即ち、最新の教示点Ａ１を基準点Ｂ１に設定し、１つ前の教示点Ａ２を基準点Ｂ２に設定）する。なお、図５において、最新の教示点Ａ１の２つ前の教示点を教示点Ａ３として示している。
【００３３】
次いで、作業者が、ロボット４の位置・姿勢を、所望の位置、および姿勢に変更するために、手動動作を開始すると（ステップＳ６）、動作速度監視部１１は、位置修正が行われる最新の教示点Ａ１に到達した状態で、作業者がジョグ送り操作を中断した場合は、上述の基準点Ｂ１と、ロボット本体４ａのリンク上、および作業ツール４ｂ上に予め設定された各特徴点Ｔ１〜Ｔ３との接近距離Ｅ１〜Ｅ３を算出する。ここで、接近距離Ｅ１とは、基準点Ｂ１と特徴点Ｔ１との距離をいい、接近距離Ｅ２とは、基準点Ｂ１と特徴点Ｔ２との距離をいう。また、接近距離Ｅ３とは、基準点Ｂ１と特徴点Ｔ３との距離をいう。一方、最新の教示点Ａ１に到達する前に、作業者がジョグ送り操作を中断した場合は、動作速度監視部１１は、上述の基準点Ｂ１、Ｂ２と、ロボット本体４ａのリンク上、および作業ツール４ｂ上に予め設定された各特徴点Ｔ１〜Ｔ３との接近距離Ｅ１〜Ｅ６を算出する（ステップＳ７）。ここで、接近距離Ｅ４とは、基準点Ｂ２と特徴点Ｔ１との距離をいい、接近距離Ｅ５とは、基準点Ｂ２と特徴点Ｔ２との距離をいう。また、接近距離Ｅ６とは、基準点Ｂ２と特徴点Ｔ３との距離をいう。
【００３４】
そして、動作速度監視部１１は、最新の教示点Ａ１に到達した状態で、作業者がジョグ送り操作を中断した場合は、上述の接近距離Ｅ１〜Ｅ３に基づいて、ロボット４の動作速度を決定し、最新の教示点Ａ１に到達する前に、作業者がジョグ送り操作を中断した場合は、上述の接近距離Ｅ１〜Ｅ６に基づいて、ロボット４の動作速度を決定する（ステップＳ８）。より具体的には、最新の教示点Ａ１に到達した状態で、作業者がジョグ送り操作を中断した場合は、動作速度監視部１１は、基準点Ｂ１（即ち、上述の図４に示した教示点Ａ１）と、図１に示した各特徴点Ｔ１、Ｔ２、Ｔ３との接近距離Ｅ１、Ｅ２、Ｅ３の各々と、図６に示す、予め設定された安全距離Ｓ、および当該安全距離Ｓよりも小さい臨界距離Ｒとを比較し、当該比較の結果に応じて、動作速度を決定する。また、最新の教示点Ａ１に到達する前に、作業者がジョグ送り操作を中断した場合は、動作速度監視部１１は、基準点Ｂ１、Ｂ２（即ち、上述の図５に示した教示点Ａ１とＡ２）と、各特徴点Ｔ１、Ｔ２、Ｔ３との接近距離Ｅ１〜Ｅ６の各々と、上述した予め設定された安全距離Ｓ、および当該安全距離Ｓよりも小さい臨界距離Ｒとを比較し、当該比較の結果に応じて、動作速度を決定する。ここで、安全距離Ｓとは、ロボット本体４ａ、または作業ツール４ｂと作業対象物２０との衝突が発生しない、基準点Ｂ１（または、基準点Ｂ２）からの距離をいい、ロボット４の動作速度の制限が不要な距離をいう。また、臨界距離Ｒとは、ロボット本体４ａ、または作業ツール４ｂと作業対象物２０との衝突が発生し易い、基準点Ｂ１（または、基準点Ｂ２）からの距離をいい、ロボット４の動作速度の制限が必要な距離をいう。
【００３５】
また、本実施形態においては、図６に示すように、基準点Ｂ１（または、基準点Ｂ２）を中心として、安全距離Ｓを半径とする領域内であって、ロボット本体４ａ、または作業ツール４ｂと作業対象物２０との衝突が発生しない領域を安全領域Ｔとしている。さらに、基準点Ｂ１（または、基準点Ｂ２）を中心として、臨界距離Ｒを半径とする領域内であって、ロボット本体４ａ、または作業ツール４ｂと作業対象物２０との衝突が発生し易い領域を臨界領域Ｕとしている。
【００３６】
そして、最新の教示点Ａ１に到達した状態で、作業者がジョグ送り操作を中断した場合において、算出された全ての接近距離Ｅ１〜Ｅ３（最新の教示点Ａ１に到達する前に、作業者がジョグ送り操作を中断した場合においては、算出された全ての接近距離Ｅ１〜Ｅ６）が、上述の安全距離Ｓ以上である場合は、動作速度監視部１１は、動作速度の制限を行わず、作業者が選択した動作速度レベルに対応する速度をロボット４の動作速度とする。例えば、図７に示すように、接近距離に対応して、予めロボット４の動作速度レベルが５段階（レベル０〜４の５段階であって、レベル４が最も高速、レベル０が最も低速）に設定されている場合、算出された全ての接近距離Ｅ１〜Ｅ３（または、算出された全ての接近距離Ｅ１〜Ｅ６）が、上述の安全距離Ｓ以上であるため、ロボット４は、上述の安全領域Ｔの外側に位置すると言える。従って、ロボット４の動作速度が、レベル０〜４に対応する、いずれの速度であっても、ロボット本体４ａ、または作業ツール４ｂと作業対象物２０との衝突は発生しないため、仮に、複数の動作速度レベルのうち、作業者が最も高速であるレベル４の動作速度を選択している場合であっても、動作速度の制限は行われない。
【００３７】
また、最新の教示点Ａ１に到達した状態で、作業者がジョグ送り操作を中断した場合において、算出された接近距離Ｅ１〜Ｅ３の少なくとも１つ以上（最新の教示点Ａ１に到達する前に、作業者がジョグ送り操作を中断した場合においては、算出された接近距離Ｅ１〜Ｅ６の少なくとも１つ以上）が、上述の臨界距離Ｒ未満の場合は、動作速度監視部１１は、複数ある動作速度レベルのうち、最も低速な速度レベルに対応する速度を実際の動作速度とする。この場合、ロボット４は、上述の臨界領域Ｕの内側に位置すると言えるため、動作速度が小さい場合であっても、ロボット本体４ａ、または作業ツール４ｂと作業対象物２０との衝突が発生し易い状況にある。従って、当該衝突を回避すべく、作業者が設定している動作速度レベルに依存することなく、最も低速な速度レベル（即ち、レベル０）に対応する速度に、ロボット４の動作速度が制限される。
【００３８】
また、最新の教示点Ａ１に到達した状態で、作業者がジョグ送り操作を中断した場合において、算出された全ての接近距離Ｅ１〜Ｅ３（最新の教示点Ａ１に到達する前に、作業者がジョグ送り操作を中断した場合においては、算出された全ての接近距離Ｅ１〜Ｅ６）が臨界距離Ｒ以上で、かつ、接近距離Ｅ１〜Ｅ３の少なくとも１つ以上（最新の教示点Ａ１に到達する前に、作業者がジョグ送り操作を中断した場合においては、接近距離Ｅ１〜Ｅ６の少なくとも１つ以上）が、安全距離Ｓ未満の場合は、ロボット４は、上述の臨界領域Ｕの外側に位置するが、安全領域Ｔの内側に位置すると言えるため、手動操作速度が大きい場合、ロボット本体４ａ、または作業ツール４ｂと作業対象物２０との衝突が発生する場合がある。従って、当該衝突を回避すべく、動作速度が制限される。この場合、動作速度監視部１１は、接近距離Ｅ１〜Ｅ３（または、接近距離Ｅ１〜Ｅ６）の長さに応じて速度レベルを選択するとともに、当該選択した速度レベルと、作業者が選択した速度レベルを比較し、より低速な速度レベルに対応する速度をロボットの動作速度とする。
【００３９】
より具体的には、動作速度監視部１１は、まず、下記（式１）によって、接近距離Ｅ１〜Ｅ３の各々に対して、速度制限比率を算出する。
速度制限比率（％）＝（接近距離−臨界距離）／（安全距離−臨界距離）×１００…（式１）
【００４０】
次いで、設定された最も高速な動作速度（動作速度レベル４に対応する速度）に、上述の（式１）により算出された速度制限比率のうち、最も低いものを乗じた速度を算出する。そして、当該算出された速度に最も近い速度を有する動作速度レベル（例えば、手動速度レベル２）を選定し、当該選定された動作速度レベルに対応する速度を、ロボット４の動作速度とする。ただし、作業者が選択している動作速度レベルに対応する速度が、速度制限比率から求めた動作速度レベルに対応する速度よりも低速である場合（例えば、作業者が選択した動作速度レベルがレベル１であり、速度制限比率から求めた動作速度レベルがレベル２の場合）は、作業者が選択している速度レベル（レベル１）を優先する。
【００４１】
このように、動作速度監視部１１は、接近距離に基づいて、ロボット４の動作速度を決定する。そして、動作制御部６は、決定された動作速度により、ロボット４が、作業対象物２０に対して所望の位置、および姿勢となるように、ロボット４を動作させる。より具体的には、決定された動作速度に関するデータが、動作速度監視部１１から、手動操作実行部１２へと出力される。そして、手動操作実行部１２は、作業者が指示した手動操作条件に基づいて、ロボット４の移動位置を算出する。次いで、動作制御部６は、入力された動作速度と算出された移動位置に基づいて、サーボモータを駆動させるための駆動信号を発生させ、当該駆動信号がサーボドライバ７に入力される。サーボドライバ７は、駆動信号に基づいて、サーボモータの駆動を行い、ロボット４を、決定された動作速度により、上述の所望の位置、および姿勢となるように動作させる（ステップＳ９）。
【００４２】
手動操作にてロボット４の位置・姿勢が作業に最適な状態（即ち、上述の所望の位置、および姿勢）に変更されると、当該位置・姿勢が新たな教示位置として、既存の作業プログラムに再記録され、教示点の位置修正が行われる（ステップＳ１０）。
【００４３】
以上のようにして、作業プログラム内に記録されている全ての教示点に対して、その位置修正を終了すると、作成済みの作業プログラム内に記録されている教示点におけるロボットの位置・姿勢情報を修正するための作業が終了する。一方、全ての教示点に対して、その位置修正を終了していない場合は、上述のステップＳ１〜ステップＳ１０の作業が繰り返される（ステップＳ１１）。
【００４４】
以上に説明したように、本実施形態においては、ロボット制御装置３が、教示点の位置・姿勢を修正するための手動操作によるロボット４の動作速度を制御する動作速度制御部８と、手動操作に従って、ロボット４の動作を制御する動作制御部６とを備える構成としている。そして、動作速度制御部８は、ロボット本体４ａのリンク上および作業ツール４ｂ上に予め設定された特徴点と、特徴点の位置座標を表現するために設定された基準点との接近距離を算出し、当該接近距離に基づいて、ロボット４の動作速度を決定する構成としている。また、動作制御部６は、決定された動作速度により、ロボット４が、作業対象物２０に対して所望の位置、および姿勢となるように、ロボット４を動作させる構成としている。従って、動作速度制御部８が、基準点と特徴点との接近距離を算出するため、作業対象物２０やロボット４の周辺機器等の詳細な３次元データや、当該データを格納するための記憶装置、および外界センサ等のロボット周辺環境を識別するための特別な装置を使用しなくても、ロボット４と作業対象物２０との接近状態を判定することが可能となる。その結果、安価かつ簡単な構成で、ロボット４と作業対象物２０との接近状態を判定することが可能となる。
【００４５】
また、作業者が作成済みの作業プログラム内に記録されている教示点の位置・姿勢を修正するために手動操作を行う場合、特徴点と基準点との接近距離に応じて、自動的に手動操作におけるロボット４の動作速度を制御できることになる。従って、作業者がロボット４と作業対象物２０との接近距離に応じて手動操作時のロボット４の動作速度を変更する必要がなくなるため、作業者への負担を軽減することができる。また、作業ツール４ｂと作業対象物２０との接触の有無を判定するための手段を別個に設ける必要がなくなるため、コストアップを抑制することが可能になる。
【００４６】
さらに、ロボット４と作業対象物２０が接近した状態にも関わらず、作業者の操作ミスによって、動作速度を高速側に設定し、かつ、ロボット４が作業対象物２０に接近する方向に手動操作が指示されても、自動的に動作速度を制限することが可能になる。従って、作業者の操作ミスに基づく、ロボット４と作業対象物２０の衝突を効果的に抑制して、ロボット４や作業対象物２０の破損を効果的に回避することができ、万一、ロボット４と作業対象物２０が衝突しても、双方が受けるダメージを低減することができる。
【００４７】
また、動作速度制御部８は、接近距離と、予め設定された安全距離Ｓ、および臨界距離Ｒとを比較し、比較の結果に応じて、動作速度を決定する構成としている。従って、手動操作におけるロボット４の動作速度を精度良く制御できることになり、結果として、作業者の操作ミスに基づく、ロボット４と作業対象物２０の衝突を一層効果的に抑制して、ロボット４や作業対象物２０の破損を一層効果的に回避することが可能になる。また、手動操作時における、作業者への負担を一層軽減することができる。
【００４８】
また、動作速度制御部８は、予め設定された複数の速度レベルに対応する速度の中から動作速度を決定する構成としている。従って、動作速度の決定が迅速かつ簡略化されるため、作業者が作成済みの作業プログラム内に記録されている教示点の位置・姿勢を修正するために行う手動操作の時間を短縮化することが可能になる。
【００４９】
また、動作速度制御部８は、接近距離が、安全距離Ｓ以上である場合は、複数の速度レベルのうち、作業者が選択した速度レベルに対応する速度をロボット４の動作速度とする構成としている。また、動作速度制御部８は、接近距離が、臨界距離Ｒ未満の場合は、複数の速度レベルのうち、最も低速な速度レベルに対応する速度をロボット４の動作速度とする構成としている。さらに、動作速度制御部８は、接近距離が、臨界距離Ｒ以上であり、かつ安全距離Ｓ未満である場合は、複数の速度レベルのうち、接近距離の長さに応じた速度レベルを選択するとともに、接近距離の長さに応じて選択した速度レベルと、作業者が選択した速度レベルを比較し、より低速な速度レベルに対応する速度をロボット４の動作速度とする構成としている。従って、手動操作におけるロボット４の動作速度を、接近距離、および作業者が選択した速度レベルに応じて、精度良く制御できることになり、結果として、作業者の操作ミスに基づく、ロボット４と作業対象物２０の衝突をより一層効果的に抑制して、ロボット４や作業対象物２０の破損をより一層効果的に回避することが可能になる。また、手動操作における、作業者への負担をより一層軽減することができる。
【００５０】
また、本実施形態においては、特徴点の位置座標を表現するために使用され、ロボット４と作業対象物２０との距離を算出するための基準となる基準点として、作業プログラム内に記録されている教示点を使用する構成としている。従って、教示点とは別個に、新たに基準点を設定する必要がなくなるため、ロボット４の動作速度の制御が容易になる。
【００５１】
なお、本発明は、上述の実施形態に限定されるものではなく、これらの実施形態を本発明の趣旨に基づいて変形、変更することが可能であり、それらを本発明の範囲から除外するものではない。
【００５２】
例えば、上述の実施形態においては、基準点として、作業プログラム内に記録されている教示点を使用する構成としたが、教示点とは別個に、新たな基準点を設定する構成としても良い。例えば、作業対象物２０の搬入および搬出を行う装置や、作業対象物２０をクランプする装置等の、ロボット４の周辺装置上に基準点を設ける構成としても良い。
【００５３】
より具体的には、例えば、ワールド座標系上の任意の点を設定する手段を設けるとともに、ロボット４の周辺装置上に基準点を設定する。そして、当該基準点を、上述のロボットの作業プログラムとは別個に作成されたプログラム内に記録するとともに、プログラム記憶部１３に記憶する。そして、上述の実施形態と同様に、動作速度制御部８により、特徴点Ｔ１〜Ｔ３と、ロボット４の周辺装置上に設定された基準点との接近距離を算出するとともに、当該接近距離に基づいて、ロボット４の動作速度を決定する。そして、動作制御部６は、決定された動作速度により、ロボット４が、周辺装置に対して所望の位置、および姿勢となるように、ロボット４を動作させる。このような構成により、ロボット４が周辺装置に接近した状態で、手動操作を行う際に、作業者がロボット４と周辺装置との距離に応じてロボット４の動作速度を変更する必要がなくなるため、作業者への負担を軽減することができる。また、ロボット４と周辺装置が接近した状態にも関わらず、作業者の操作ミスによって、動作速度を高速側に設定し、かつ、ロボット４が周辺装置に接近する方向に手動操作が指示されても、自動的に動作速度を制限することが可能になる。従って、作業者の操作ミスに基づく、ロボット４と周辺装置の衝突を効果的に抑制して、ロボット４や周辺装置の破損を効果的に回避することができ、万一、ロボット４と周辺装置が衝突しても、双方が受けるダメージを低減することができる。
【００５４】
また、基準点として、作業プログラム内に記録されている教示点と、ロボット４の周辺装置上に設置された基準点の双方を用いて、ロボット４の動作速度を制御する構成としても良い。この場合も、上述の実施形態と同様に、動作速度制御部８により、特徴点Ｔ１〜Ｔ３と、ジョグ送り操作が中断された段階に応じて設定された基準点（即ち、作業プログラム内に記録されている教示点）、およびロボット４の周辺装置上に設定された基準点との接近距離を算出するとともに、当該接近距離に基づいて、ロボット４の動作速度を決定する。そして、動作制御部６は、決定された動作速度により、ロボット４が、作業対象物２０、および周辺装置に対して所望の位置、および姿勢となるように、ロボット４を動作させる。このような構成により、ロボット４が、作業対象物２０、および周辺装置に接近した状態で、手動操作を行う際に、作業者がロボット４と、作業対象物２０、および周辺装置との距離に応じてロボット４の動作速度を変更する必要がなくなるため、作業者への負担を軽減することができる。また、ロボット４と作業対象物２０、周辺装置が接近した状態にも関わらず、作業者の操作ミスによって、動作速度を高速側に設定し、かつ、ロボット４が、作業対象物２０、および周辺装置に接近する方向に手動操作が指示されても、自動的に動作速度を制限することが可能になる。従って、作業者の操作ミスに基づく、ロボット４と、作業対象物２０、および周辺装置の衝突を効果的に抑制して、ロボット４、作業対象物２０、および周辺装置の破損を効果的に回避することができ、万一、ロボット４と、作業対象物２０、および周辺装置が衝突しても、これらが受けるダメージを低減することができる。
【産業上の利用可能性】
【００５５】
本発明の活用例としては、ロボットの位置および姿勢を変更するための教示再生方式のロボット制御装置が挙げられる。
【図面の簡単な説明】
【００５６】
【図１】本発明の実施形態に係るロボット制御装置が使用されるロボットシステムの構成を示すブロック図である。
【図２】本発明の実施形態に係るロボット制御装置を示すブロック図である。
【図３】本発明の実施形態に係るロボット制御装置における、ロボットの動作速度を制御する手順を示すフローチャートである。
【図４】本発明の実施形態に係るロボット制御装置における手動操作速度を制御する際の、基準点の設定を説明するための図である。
【図５】本発明の実施形態に係るロボット制御装置における手動操作速度を制御する際の、基準点の設定を説明するための図である。
【図６】ロボットの動作速度を制御する際に使用する安全距離、および臨界距離を説明するための図である。
【図７】ロボットの動作速度レベルと、接近距離の関係を示す図である。
【符号の説明】
【００５７】
１…ロボットシステム、２…教示点入力手段、３…ロボット制御装置、４…ロボット、４ａ…ロボット本体、４ｂ…作業ツール、５…情報変換部、６…動作制御部、７…サーボドライバ、８…動作速度制御部、９…教示点データ記憶部、１１…動作速度監視部、１２…動操作実行部、１３…プログラム記憶部、２０…作業対象物、Ｒ…臨界距離、Ｓ…安全距離、Ａ１…教示点、Ａ２…教示点、Ａ３…教示点、Ｂ１…基準点、Ｂ２…基準点、Ｄ１…教示点データ、Ｅ１〜Ｅ６…接近距離
【図１】
2007199936.tif 000003
【図２】
2007199936.tif 000004
【図３】
2007199936.tif 000005
【図４】
2007199936.tif 000006
【図５】
2007199936.tif 000007
【図６】
2007199936.tif 000008
【図７】
2007199936.tif 000009