(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023173853
(43)【公開日】2023-12-07
(54)【発明の名称】ロボット制御システム
(51)【国際特許分類】
B25J 9/16 20060101AFI20231130BHJP
B25J 13/00 20060101ALI20231130BHJP
【FI】
B25J9/16
B25J13/00 Z
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2022086369
(22)【出願日】2022-05-26
(71)【出願人】
【識別番号】501428545
【氏名又は名称】株式会社デンソーウェーブ
(74)【代理人】
【識別番号】100121821
【弁理士】
【氏名又は名称】山田 強
(74)【代理人】
【識別番号】100125575
【弁理士】
【氏名又は名称】松田 洋
(72)【発明者】
【氏名】阿部 卓未
(72)【発明者】
【氏名】若山 利宏
【テーマコード(参考)】
3C707
【Fターム(参考)】
3C707BS10
3C707LU05
3C707LV01
3C707LV15
3C707MS10
3C707MS28
(57)【要約】
【課題】シーン切替を行うロボット制御システムにおいて、ロボットの位置と設定した切替位置との関係が正しいか否かを確認する手間を減らす。
【解決手段】ロボット(10)を制御するロボット制御システムであって、表示部(41)と、ロボットの動作を制限する複数の制限パラメータ及び切替位置を構成要素として含むシーンを、ユーザにより入力された制限パラメータ及び切替位置に基づいて設定する設定部(43)と、ロボットの位置が適用するシーンに含まれる切替位置であることを条件として、ロボットに適用するシーンを切り替える切替部(32)と、ロボットに適用されたシーンで設定された制限パラメータにより制限した状態でロボットを動作させる動作部(33)と、切替部によりシーンを切り替える時のロボットの位置と、適用するシーンに含まれる切替位置との関係を判定し、判定結果に基づいた表示を表示部により行わせる判定部(34)と、を備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
ロボットを制御するロボット制御システムであって、
前記ロボットに関する表示を行う表示部と、
前記ロボットの動作を制限する複数の制限パラメータ及び切替位置を構成要素として含むシーンを、ユーザにより入力された前記制限パラメータ及び前記切替位置に基づいて設定する設定部と、
前記ロボットの位置が適用する前記シーンに含まれる前記切替位置であることを条件として、前記ロボットに適用する前記シーンを切り替える切替部と、
前記ロボットに適用された前記シーンで設定された前記制限パラメータにより制限した状態で前記ロボットを動作させる動作部と、
前記切替部により前記シーンを切り替える時の前記ロボットの位置と、適用する前記シーンに含まれる前記切替位置との関係を判定し、判定結果に基づいた表示を前記表示部により行わせる判定部と、
を備える、ロボット制御システム。
【請求項2】
前記判定部は、前記切替部により前記シーンを切り替える時の前記ロボットの位置と、適用する前記シーンに含まれる前記切替位置とが一致しない場合に、警告表示を前記表示部により行わせる、請求項1に記載のロボット制御システム。
【請求項3】
前記判定部は、前記切替位置の条件を無効にして前記切替部により前記シーンを切り替えさせ、前記切替部により前記シーンを切り替えた時の前記ロボットの位置と、適用した前記シーンに含まれる前記切替位置とが一致しない場合に、警告表示を前記表示部により行わせる、請求項2に記載のロボット制御システム。
【請求項4】
前記判定部は、前記シーンにおいて前記切替位置が設定されていない場合に、警告表示を前記表示部により行わせる、請求項1に記載のロボット制御システム。
【請求項5】
前記判定部は、前記警告表示を前記表示部により行わせる際に、前記シーンの前記切替位置として正しいと推定される切替位置を前記表示部に表示させる、請求項2~4のいずれか1項に記載のロボット制御システム。
【請求項6】
前記判定部は、前記ロボットの位置を移動させる移動コマンドと、前記切替部により実行される前記シーンを切り替える切替コマンドとが連続している場合に、前記移動コマンドの目標位置と前記切替コマンドにより適用される前記シーンに含まれる前記切替位置とが一致しない場合に、警告表示を前記表示部により行わせる、請求項2に記載のロボット制御システム。
【請求項7】
前記判定部は、前記切替部及び前記動作部の安全基準よりも高い安全基準を満たした安全関連部により構成されている、請求項1~4,6のいずれか1項に記載のロボット制御システム。
【請求項8】
ロボットを制御するロボット制御システムであって、
前記ロボットの動作を制限する複数の制限パラメータ及び切替位置を構成要素として含むシーンを、ユーザにより入力された前記制限パラメータ及び前記切替位置に基づいて設定する設定部と、
前記ロボットの位置が適用する前記シーンに含まれる前記切替位置であることを条件として、前記ロボットに適用する前記シーンを切り替える切替部と、
前記ロボットに適用された前記シーンで設定された前記制限パラメータにより制限した状態で前記ロボットを動作させる動作部と、
を備える、ロボット制御システム。
【請求項9】
前記設定部は、前記ユーザにより入力された前記シーンの名前であるシーン名と前記制限パラメータとを関連付けて予め登録し、
登録された前記シーン名が前記ユーザにより入力されて前記設定部により前記シーンが設定された場合に、前記制限パラメータの値を、入力された前記シーン名に関連付けられた前記制限パラメータの値に設定する、請求項1~4,6,8のいずれか1項に記載のロボット制御システム。
【請求項10】
前記設定部は、複数のメインシーン及び前記メインシーンに従属する複数のサブシーンを備え、前記メインシーンを構成する前記制限パラメータと前記サブシーンを構成する前記制限パラメータとの組み合わせにより前記シーンを設定する、請求項1~4,6,8のいずれか1項に記載のロボット制御システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボットを制御するロボット制御システムに関する。
【背景技術】
【0002】
従来、ハンドにより把持されたワークの種類及び数に応じてロボットの速度上限値及び加速度上限値の少なくとも一方を変更する上限値変更部と、上限値変更部により変更された速度上限値及び加速度上限値を超えないように、ロボットの動作を制御する動作制御部と、を備えるロボット制御装置がある(特許文献1参照)。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、速度上限値、加速度上限値、可動範囲等の安全に関わるパラメータ(制限パラメータ)をシーンとしてまとめ、シーンを切り替えることにより制限パラメータをまとめて切り替える(設定する)ことが考えられる。そして、シーンの切替を許可する条件として、ロボットの位置が設定した切替位置であることを要求する場合、シーン切替時のロボットの位置と設定した切替位置との関係が正しいか否かを確認する作業等に多くの手間がかかる。
【0005】
本発明は、こうした課題を解決するためになされたものであり、その主たる目的は、シーン切替を行うロボット制御システムにおいて、ロボットの位置と設定した切替位置との関係が正しいか否かを確認する手間を減らすことにある。
【課題を解決するための手段】
【0006】
上記課題を解決するための第1の手段は、
ロボットを制御するロボット制御システムであって、
前記ロボットに関する表示を行う表示部と、
前記ロボットの動作を制限する複数の制限パラメータ及び切替位置を構成要素として含むシーンを、ユーザにより入力された前記制限パラメータ及び前記切替位置に基づいて設定する設定部と、
前記ロボットの位置が適用する前記シーンに含まれる前記切替位置であることを条件として、前記ロボットに適用する前記シーンを切り替える切替部と、
前記ロボットに適用された前記シーンで設定された前記制限パラメータにより制限した状態で前記ロボットを動作させる動作部と、
前記切替部により前記シーンを切り替える時の前記ロボットの位置と、適用する前記シーンに含まれる前記切替位置との関係を判定し、判定結果に基づいた表示を前記表示部により行わせる判定部と、
を備える。
【0007】
上記構成によれば、設定部は、前記ロボットの動作を制限する複数の制限パラメータ及び切替位置を構成要素として含むシーンを、ユーザにより入力された前記制限パラメータ及び前記切替位置に基づいて設定する。このため、ユーザは、シーンの構成要素である複数の制限パラメータ及び切替位置を入力することにより、複数の制限パラメータ及び切替位置をシーン単位でまとめて設定することができる。切替部は、前記ロボットに適用する前記シーンを切り替える。このため、ロボットに適用するシーンを切り替えることにより、複数の制限パラメータを一度に適用することができ、複数の制限パラメータの変更が容易となる。そして、動作部は、前記ロボットに適用された前記シーンで設定された前記制限パラメータにより制限した状態で前記ロボットを動作させる。したがって、設定された制限パラメータに基づいて、ロボットを適切に動作させることができる。
【0008】
ここで、切替部は、前記ロボットに適用する前記シーンを切り替える際に、前記ロボットの位置が適用する前記シーンに含まれる前記切替位置であることを条件としている。このため、前記ロボットの位置が適用する前記シーンに含まれる前記切替位置でない場合は、シーンの切替を禁止することができ、ロボットが意図せず危険な状態で動作することを抑制することができる。ただし、シーンの切替を許可する条件として、ロボットの位置が設定した切替位置であることを要求する場合、シーン切替時のロボットの位置と設定した切替位置との関係が正しいか否かを確認する作業等に多くの手間がかかる。
【0009】
この点、判定部は、前記切替部により前記シーンを切り替える時の前記ロボットの位置と、適用する前記シーンに含まれる前記切替位置との関係を判定し、判定結果に基づいた表示を前記表示部により行わせる。したがって、ユーザは、判定結果に基づいた表示を見て、シーン切替時のロボットの位置と設定した切替位置との関係が正しいか否かを判断することができ、それらを確認する手間を減らすことができる。
【0010】
第2の手段では、前記判定部は、前記切替部により前記シーンを切り替える時の前記ロボットの位置と、適用する前記シーンに含まれる前記切替位置とが一致しない場合に、警告表示を前記表示部により行わせる。こうした構成によれば、ユーザは、シーン切替時のロボットの位置と設定した切替位置とが一致していないことを容易に把握することができ、それらを確認する手間及びそれらを修正する手間を減らすことができる。
【0011】
第3の手段では、前記判定部は、前記切替位置の条件を無効にして前記切替部により前記シーンを切り替えさせ、前記切替部により前記シーンを切り替えた時の前記ロボットの位置と、適用した前記シーンに含まれる前記切替位置とが一致しない場合に、警告表示を前記表示部により行わせる。
【0012】
上記構成によれば、前記判定部は、前記切替位置の条件を無効にして前記切替部により前記シーンを切り替えさせる。このため、シーン切替時のロボットの位置と設定した切替位置との関係が正しいか否かにかかわらず、シーンの切替を実行することができる。そして、判定部は、実際にシーンの切替を実行した時の判定結果に基づいて、容易に警告表示を行わせることができる。
【0013】
第4の手段では、前記判定部は、前記シーンにおいて前記切替位置が設定されていない場合に、警告表示を前記表示部により行わせる。こうした構成によれば、ユーザは、前記シーンにおいて前記切替位置が設定されていないことを容易に把握することができ、シーンにおいて切替位置が設定されているか否かを確認する手間を減らすことができる。
【0014】
第5の手段では、前記判定部は、前記警告表示を前記表示部により行わせる際に、前記シーンの前記切替位置として正しいと推定される切替位置を前記表示部に表示させる。こうした構成によれば、警告表示と併せて、前記シーンの前記切替位置として正しいと推定される切替位置が表示されるため、ユーザは切替位置を修正する手間を減らすことができる。
【0015】
ロボットの位置を移動させる移動コマンドと、シーンを切り替える切替コマンドとが連続している場合は、移動コマンドの目標位置において切替コマンドが実行されることが分かる。
【0016】
この点、第6の手段では、前記判定部は、前記ロボットの位置を移動させる移動コマンドと、前記切替部により実行される前記シーンを切り替える切替コマンドとが連続している場合に、前記移動コマンドの目標位置と前記切替コマンドにより適用される前記シーンに含まれる前記切替位置とが一致しない場合に、警告表示を前記表示部により行わせる。こうした構成によれば、判定部は、ロボットを実際に動作させなくても、ロボットを動作させるコマンドに基づいて、容易に警告表示を行わせることができる。
【0017】
第7の手段では、前記判定部は、前記切替部及び前記動作部の安全基準よりも高い安全基準を満たした安全関連部により構成されている。こうした構成によれば、より高い安全基準を満たした判定部によって、前記切替部により前記シーンを切り替える時の前記ロボットの位置と、適用する前記シーンに含まれる前記切替位置との関係を判定することができる。したがって、ロボットの安全性をより向上させることができる。
【0018】
第8の手段は、
ロボットを制御するロボット制御システムであって、
前記ロボットの動作を制限する複数の制限パラメータ及び切替位置を構成要素として含むシーンを、ユーザにより入力された前記制限パラメータ及び前記切替位置に基づいて設定する設定部と、
前記ロボットの位置が適用する前記シーンに含まれる前記切替位置であることを条件として、前記ロボットに適用する前記シーンを切り替える切替部と、
前記ロボットに適用された前記シーンで設定された前記制限パラメータにより制限した状態で前記ロボットを動作させる動作部と、
を備える。
【0019】
上記構成によれば、設定部は、前記ロボットの動作を制限する複数の制限パラメータ及び切替位置を構成要素として含むシーンを、ユーザにより入力された前記制限パラメータ及び前記切替位置に基づいて設定する。このため、ユーザは、シーンの構成要素である複数の制限パラメータ及び切替位置を入力することにより、複数の制限パラメータ及び切替位置をシーン単位でまとめて設定することができる。切替部は、前記ロボットに適用する前記シーンを切り替える。このため、ロボットに適用するシーンを切り替えることにより、複数の制限パラメータを一度に適用することができ、複数の制限パラメータの変更が容易となる。そして、動作部は、前記ロボットに適用された前記シーンで設定された前記制限パラメータにより制限した状態で前記ロボットを動作させる。したがって、設定された制限パラメータに基づいて、ロボットを適切に動作させることができる。
【0020】
ここで、切替部は、前記ロボットに適用する前記シーンを切り替える際に、前記ロボットの位置が適用する前記シーンに含まれる前記切替位置であることを条件としている。このため、前記ロボットの位置が適用する前記シーンに含まれる前記切替位置でない場合は、シーンの切替を禁止することができ、ロボットが意図せず危険な状態で動作することを抑制することができる。
【0021】
第9の手段では、前記設定部は、前記ユーザにより入力された前記シーンの名前であるシーン名と前記制限パラメータとを関連付けて予め登録し、登録された前記シーン名が前記ユーザにより入力されて前記設定部により前記シーンが設定された場合に、前記制限パラメータの値を、入力された前記シーン名に関連付けられた前記制限パラメータの値に設定する。
【0022】
上記構成によれば、前記設定部は、前記ユーザにより入力された前記シーン名と前記制限パラメータとを関連付けて予め登録する。このため、ユーザは、シーンを設定する時に制限パラメータを直接設定するだけでなく、前記シーン名と前記制限パラメータとを関連付けて予め登録しておくことができる。そして、登録された前記シーン名が前記ユーザにより入力されて前記設定部により前記シーンが設定された場合に、前記制限パラメータの値を、入力された前記シーン名に関連付けられた前記制限パラメータの値に設定する。したがって、ユーザは、登録した前記シーン名を入力して前記シーンを設定することにより、予め登録した制限パラメータの値に容易に設定することができる。
【0023】
第10の手段では、前記設定部は、複数のメインシーン及び前記メインシーンに従属する複数のサブシーンを備え、前記メインシーンを構成する前記制限パラメータと前記サブシーンを構成する前記制限パラメータとの組み合わせにより前記シーンを設定する。こうした構成によれば、ユーザは各状況に応じた各シーンを、複数のメインシーンとメインシーンに従属する複数のサブシーンとの組み合わせに整理して設定することができ、複数の制限パラメータを多くの状況に応じて設定する際に、誤った設定をすることを抑制することができる。ここで、ロボット制御システムでは、制限パラメータに誤った設定をするとロボットが周辺環境や人に危害を与えるおそれがあるため、制限パラメータの誤った設定を抑制することができることは極めて重要な意義を有する。
【図面の簡単な説明】
【0024】
【
図1】ロボット、ロボット制御装置、及びティーチングペンダントを示す模式図。
【
図2】各シーンの制限パラメータ及び切替位置を示す表。
【
図3】切替位置の条件を満たす場合と満たさない場合とを示す模式図。
【
図4】動作プログラム、ロボットの動作、及び実シーン切替位置を示す図。
【
図5】設定切替位置と実切替位置との比較を示す表。
【
図7】メインシーン及びサブシーンで設定するパラメータを示す図。
【
図8】メインシーンとサブシーンとの関係を示す模式図。
【発明を実施するための形態】
【0025】
以下、人との協働作業を行うロボット、及びそのロボットを制御するロボット制御システムに具現化した一実施形態について、図面を参照しつつ説明する。
【0026】
図1に示すように、ロボット10は、例えば垂直多関節型ロボットであり、アーム11を備えている。アーム11の隣り合うリンクは、関節を介して相対回転可能に連結されている。各関節(各軸)は、各関節に対応する各モータにより駆動される。ロボット10の各関節には、各関節の回転角度を検出するエンコーダ(図示略)、各関節のトルクを検出するトルクセンサ(図示略)等がそれぞれ設けられている。なお、ロボット10は、垂直多関節型ロボットに限らず、水平多関節型ロボット等であってもよい。
【0027】
アーム11の先端には、ハンド20が取り付けられている。ハンド20(ツール)は、例えば一対の爪を備えており、一対の爪の間隔を拡大及び縮小する開閉動作を行う。ハンド20の一対の爪が開閉動作を行うことにより、ワーク等が把持される。
【0028】
ロボット制御装置30は、CPU、ROM、RAM、駆動回路、及び入出力インターフェース等を備えるコンピュータとして構成されている。ロボット制御装置30は、ロボット10に接続されている。ロボット制御装置30は、切替部32、動作部33、及び判定部34を備えている。ロボット制御装置30は、ロボット10を動作させる動作プログラムを実行することにより、切替部32、動作部33、及び判定部34の機能を実現してロボット10の動作を制御する。なお、ロボット制御装置30は、ロボット10に内蔵されていてもよい。
【0029】
ティーチングペンダント40(操作器)は、表示部41、操作部42、及び設定部43を備えている。表示部41は、液晶パネル等により構成され、ロボット10に関する表示を行う。操作部42は、ユーザにより操作されるキー、ボタン、ダイヤル等を備えている。設定部43は、ロボット10の動作を制限する複数の制限パラメータ及び切替位置を構成要素として含むシーンを、ユーザにより入力された制限パラメータ及び切替位置に基づいて設定する。
【0030】
ユーザによる入力は、例えばロボット制御装置30に接続されたティーチングペンダント40を用いて行われる。制限パラメータは、例えばロボット10の監視部位の最大速度、ロボット10の対象関節の最大トルク、ロボット10の可動範囲(対象関節の可動角度)等を含む。シーンは、複数の制限パラメータと切替位置との組み合わせにより構成されている。
【0031】
切替部32は、ロボット10の位置が適用するシーンに含まれる切替位置であることを条件として、ロボット10に適用するシーンを切り替える。ロボット10の位置として、例えばアーム11の先端の位置を採用することができる。動作部33は、ロボット10に適用されたシーンで設定された制限パラメータにより制限した状態で、ロボット10を動作させる。判定部34は、切替部32によりシーンを切り替える時のロボット10の位置と、適用するシーンに含まれる切替位置との関係を判定し、判定結果に基づいた表示を表示部41により行わせる。なお、ロボット10の位置として、アーム11の先端の位置に限らず、アーム11における所定部分の位置を採用することができる。
【0032】
ティーチングペンダント40は、ロボット10の動作をシミュレーションする機能を備えている。シミュレーション時において、ティーチングペンダント40は、ロボット10の動作プログラムを実行することにより、切替部32、動作部33、及び判定部34の機能を実現する。表示部41は、ロボット10のシミュレーション画像や動作プログラムを表示する。ユーザは、ティーチングペンダント40を操作して、ロボット10の動作プログラムを作成(編集)することができる。
【0033】
なお、ロボット制御装置30及びティーチングペンダント40により、ロボット制御システムが構成されている。
【0034】
図2は、各シーンの名前であるシーン名、及び各シーンの制限パラメータ及び切替位置を示す表である。ここでは、最大速度、最大トルク、可動範囲、及び切替位置により各シーンが構成されている例を示している。なお、各シーンは、図示した以外の制限パラメータを含んでいてもよいし、また制限パラメータ以外のパラメータを含んでいてもよい。
【0035】
DefaultSceneは、ロボット制御装置30において初期設定されているシーンであり、ユーザによる設定を必要とせず、ユーザが変更することはできない。DefaultSceneでは、最大速度、最大トルク、及び可動範囲の各値を、ロボット10を安全に動作させることができる初期設定値に設定している。ここでは、ロボット10の監視部位の速度を最大速度20以下に制限し、ロボット10の対象関節が発生するトルクを最大トルク20以下に制限し、ロボット10の可動範囲を範囲20以内に制限する例を示している。なお、最大速度、最大トルク、及び可動範囲の各値は、それぞれの傾向を抽象的に表したものであり(数値が大きいほど大きく、広くなる)、具体的な規定方法は任意である。ロボット制御装置30(ロボット制御システム)の起動時に、切替部32はDefaultSceneをロボット10に適用する(ロボット10に適用するシーンをDefaultSceneに切り替える)。すなわち、ロボット制御装置30の起動時に、ロボット10に現在適用されている全ての制限パラメータの値は、ロボット10を安全に動作させることができる初期設定値に設定される。そして、動作部33は、DefaultSceneで設定された制限パラメータにより制限した状態でロボット10を動作させる。
【0036】
切替位置は、自身が含まれるシーンへの切替を許可する条件である。具体的には、切替部32は、ロボット10の位置が適用するシーンに含まれる切替位置であることを条件として、ロボット10に適用するシーンを切り替える。例えば、
図3に示すように、シーン2において設定されている切替位置がP[7]であるとする。左図の状態でシーン2へ切り替える場合は、ロボット10の位置が切替位置P[7]と一致している(ロボット10の位置が切替位置P[7]であるとみなせる)ため、シーン2への切替を許可する。なお、ロボット10の位置が切替位置P[7]と一致しているか否かの判定は、ロボット10の位置と切替位置P[7]との距離が所定未満であるか否か等に基づいて行うことができる。一方、右図の状態でシーン2へ切り替える場合は、ロボット10の位置が切替位置P[7]と一致していない(ロボット10の位置が切替位置P[7]でない)ため、シーン2への切替を禁止する。この場合、例えば表示部41によりエラー表示を行って、動作プログラムを中断する。このため、ユーザが意図していないロボット10の位置でシーンが切り替えられることを抑制することができる。
【0037】
図2に戻り、Scene1,2は、ロボット10の動作プログラムを実行する前に、予め登録(設定)されたシーンである。Scene1,2のシーン名及び制限パラメータは、ロボット10の動作プログラムとは別のアプリケーション等において、例えばティーチングペンダント40の操作部42を用いてユーザにより入力され、設定部43により関連付けられて登録(設定)される。すなわち、設定部43は、ユーザにより入力されたシーン名と制限パラメータとを関連付けて予め登録(設定)する。ロボット10の動作プログラムとは別のアプリケーション等においてユーザによりシーン名及び制限パラメータが入力され、設定部43がシーン名と制限パラメータとを関連付けて登録(記憶)することは、ユーザにより入力された制限パラメータに基づいて設定部43がシーンを設定することに相当する。Scene1では、例えば最大速度の値が60、最大トルクの値が60、可動範囲の値が60、切替位置がP[4]に設定されている。Scene2では、例えば最大速度の値が50、最大トルクの値が50、可動範囲の値が50、切替位置がP[7]に設定されている。Scene3では、例えば最大速度の値が30、最大トルクの値が30、可動範囲の値が30に設定され、切替位置は設定されていない。なお、ロボット10の動作プログラムとは別のアプリケーション等においてScene1-3の制限パラメータ及び切替位置が登録された段階では、切替部32はロボット10に適用するシーンをScene1-3に切り替えず、例えばロボット10にDefaultSceneが適用された状態が維持される。
【0038】
ここで、シーンの切替を許可する条件として、ロボット10の位置が設定した切替位置であることを要求する場合、シーン切替時のロボット10の位置と設定した切替位置との関係が正しいか否かを確認する作業等に多くの手間がかかる。これに対して、ティーチングペンダント40は、以下の制御を実行する。
【0039】
図4は、動作プログラム、ロボット10の動作、及び実シーン切替位置を示す図である。同図の画面は、ティーチングペンダント40の表示部41に表示される。すなわち、同図は、ティーチングペンダント40によりロボット10の動作をシミュレーションした状態(ロボット10のシミュレーション画像)を示している。この場合は、切替部32、動作部33、判定部34、表示部41、操作部42、及び設定部43の機能がティーチングペンダント40により実現される。このとき、判定部34は、切替位置の条件を無効にして切替部32によりシーンを切り替えさせる。例えば、判定部34は、ロボット10の位置が設定された切替位置と一致していない場合であっても切替部32によりシーンを切り替えさせたり、ロボット10の位置が設定された切替位置と一致しているか否かの判定を省略して切替部32によりシーンを切り替えさせたりする。
【0040】
表示部41の左部には、ロボット10の動作プログラムが表示されている。同図では、ロボット10の動作プログラムを、テキストプログラミング言語により記述する例を示している。コマンド「Move P[4]」等は、ロボット10のアーム11の先端(基準点)を、位置P[4]等に移動させるコマンドである。ChangeSceneは、シーンの切替を実行するコマンドである。具体的には、ChangeSceneは、制限パラメータの値を適用することによりシーンを切り替えること、切り替えるシーン名を指定することによりシーンを切り替えること、シーン名を指定するとともに制限パラメータの値を適用することによりシーンを切り替えること等を実行する。設定部43は、動作プログラムが作成された場合に、動作プログラム中のChangeSceneのコマンドを認識し、ChangeSceneのコマンドを含む動作プログラムを実行可能な状態にする。動作プログラム中でユーザによりChangeSceneのコマンドが規定(入力)され、設定部43がChangeSceneのコマンドを認識すること(あるいは設定部43がChangeSceneのコマンドを含む動作プログラムを実行可能な状態にすること)は、ユーザにより入力された制限パラメータに基づいて設定部43がシーンを設定することに相当する。なお、動作プログラムを実行可能な状態とは、例えばコンパイル前の完成した動作プログラムを記憶した状態や、動作プログラムをコンパイルした状態等である。
【0041】
切替部32は、登録されたシーン名がユーザにより入力されて設定部43によりシーンが設定された場合に、制限パラメータの値を、入力されたシーン名に関連付けられた制限パラメータの値に設定する。例えば、「ChangeScene 1」を実行した場合は、登録されたシーン名である「1」が入力されているため、切替部32は(最大速度,最大トルク,可動範囲)を、
図2に示すようにScene1(60,60,60)に設定する。切替部32は、ロボット10に適用するシーンを、現在のシーンからScene1(60,60,60)に切り替える。
【0042】
動作プログラムの右側には、ロボット10のシミュレーション画像が表示されている。同図の動作プログラムが実行されると、コマンド「Move P[4]」により、ロボット10の位置が位置P[4]に移動させられる。コマンド「ChangeScene 1」により、シーン1の制限パラメータが設定されて現在のシーン(例えばDefaultScene)からシーン1へ切り替えられる。コマンド「Move P[5]」により、ロボット10の位置が位置P[5]に移動させられる。コマンド「Move P[6]」により、ロボット10の位置が位置P[6]に移動させられる。コマンド「ChangeScene 2」により、シーン2の制限パラメータが設定されてシーン1(現在のシーン)からシーン2へ切り替えられる。コマンド「Move P[7]」により、ロボット10の位置が位置P[7]に移動させられる。コマンド「ChangeScene 1」により、シーン1の制限パラメータが設定されてシーン2(現在のシーン)からシーン1へ切り替えられる。コマンド「Move P[8]」により、ロボット10の位置が位置P[8]に移動させられる。コマンド「ChangeScene 3」により、シーン3の制限パラメータが設定されてシーン1(現在のシーン)からシーン3へ切り替えられる。
【0043】
そして、判定部34は、各シーンに実際に切り替えられた時のロボット10の位置(シミュレーションによるロボット10の位置)を記録する。なお、記録した各シーン及び実際に切り替えた位置(実切替位置)は、表示部41に表示してもよいし、表示しなくてもよい。
【0044】
図5は、設定切替位置と実切替位置との比較を示す表である。
図2に示すように、シーン1(Scene1)に切替位置としてP[4]が設定され、シーン2に切替位置としてP[7]が設定され、シーン3には切替位置が設定されていない。これに対して、実際には、位置P[4]と位置P[7]とでシーン1に切り替えられ、位置P[6]でシーン2に切り替えられ、位置P[8]でシーン3に切り替えられたことが記録されている。
【0045】
判定部34は、各シーンにおいて設定された切替位置と実際に切り替えられた位置とを比較し、比較結果に基づいて
図6に示す表示を表示部41により行わせる。
【0046】
判定部34は、複数の位置で同一のシーンに切り替えられている場合に、警告表示を表示部41により行わせる。このため、判定部34は、「シーン1にP[4]とP[7]とで切り替えられています。」という警告文を表示部41に表示させる。
【0047】
判定部34は、切替位置の条件を無効にして切替部32によりシーンを切り替えさせ、切替部32によりシーンを実際に切り替えた時のロボット10の位置(実切替位置)と、適用したシーンに含まれる切替位置(設定切替位置)とが一致しない場合に、警告表示を表示部41により行わせる。すなわち、判定部34は、切替部32によりシーンを切り替える時のロボット10の位置と、適用するシーンに含まれる切替位置とが一致しない場合に、警告表示を表示部41により行わせる。このため、判定部34は、「設定切替位置P[7]と実切替位置P[6]とが一致していません。」という警告文を表示部41に表示させる。
【0048】
さらに、判定部34は、警告表示を表示部41により行わせる際に、シーンの切替位置として正しいと推定される切替位置を表示部41に表示させる(提案表示)。このため、判定部34は、シーン2の実切替位置P[6]が正しい切替位置であると推定して、「シーン2の正しい設定切替位置はP[6]ではありませんか?」という提案文を表示部41に表示させる。なお、このとき、
図2の各シーンのパラメータ登録画面を表示部41に表示して、シーン2の切替位置にP[6]を表示してもよい。
【0049】
判定部34は、シーンにおいて切替位置が設定されていない場合に、警告表示を表示部41により行わせる。このため、判定部34は、「シーン3に切替位置が設定されていません。」という警告文を表示部41に表示させる。
【0050】
さらに、判定部34は、警告表示を表示部41により行わせる際に、シーンの切替位置として正しいと推定される切替位置を表示部41に表示させる(提案表示)。このため、判定部34は、シーン3の実切替位置P[8]が正しい切替位置であると推定して、「シーン3の正しい設定切替位置はP[8]ではありませんか?」という提案文を表示部41に表示させる。なお、このとき、
図2の各シーンのパラメータ登録画面を表示部41に表示して、シーン3の切替位置にP[8]を表示してもよい。
【0051】
要するに、判定部34は、切替部32によりシーンを切り替える時のロボット10の位置と、適用するシーンに含まれる切替位置との関係を判定し、判定結果に基づいた表示を表示部41により行わせる。
【0052】
以上詳述した本実施形態は、以下の利点を有する。
【0053】
・設定部43は、ロボット10の動作を制限する複数の制限パラメータ及び切替位置を構成要素として含むシーンを、ユーザにより入力された制限パラメータ及び切替位置に基づいて設定する。このため、ユーザは、シーンの構成要素である複数の制限パラメータ及び切替位置を入力することにより、複数の制限パラメータ及び切替位置をシーン単位でまとめて設定することができる。切替部32は、ロボット10に適用するシーンを切り替える。このため、ロボット10に適用するシーンを切り替えることにより、複数の制限パラメータを一度に適用することができ、複数の制限パラメータの変更が容易となる。そして、動作部33は、ロボット10に適用されたシーンで設定された制限パラメータにより制限した状態でロボット10を動作させる。したがって、設定された制限パラメータに基づいて、ロボット10を適切に動作させることができる。
【0054】
・切替部32は、ロボット10に適用するシーンを切り替える際に、ロボット10の位置が適用するシーンに含まれる切替位置であることを条件としている。このため、ロボット10の位置が適用するシーンに含まれる切替位置でない場合は、シーンの切替を禁止することができ、ロボット10が意図せず危険な状態で動作することを抑制することができる。
【0055】
・判定部34は、切替部32によりシーンを切り替える時のロボット10の位置と、適用するシーンに含まれる切替位置との関係を判定し、判定結果に基づいた表示(警告表示、提案表示)を表示部41により行わせる。したがって、ユーザは、判定結果に基づいた表示を見て、シーン切替時のロボット10の位置と設定した切替位置との関係が正しいか否かを判断することができ、それらを確認する手間を減らすことができる。
【0056】
・判定部34は、切替部32によりシーンを切り替える時のロボット10の位置と、適用するシーンに含まれる切替位置とが一致しない場合に、警告表示(例えば、「設定切替位置P[7]と実切替位置P[6]とが一致していません。」という警告文を表示)を表示部41により行わせる。こうした構成によれば、ユーザは、シーン切替時のロボット10の位置P[6]と設定した切替位置P[7]とが一致していないことを容易に把握することができ、それらを確認する手間及びそれらを修正する手間を減らすことができる。特に、設定するシーンの数とシーン切替を行う回数とが多くなった場合に、顕著な効果を奏することができる。
【0057】
・判定部34は、切替位置の条件を無効にして切替部32によりシーンを切り替えさせる。このため、シーン切替時のロボット10の位置と設定した切替位置との関係が正しいか否かにかかわらず、シーンの切替を実行することができる。そして、判定部34は、実際にシーンの切替を実行した時の判定結果に基づいて、容易に警告表示を行わせることができる。
【0058】
・判定部34は、シーン3において切替位置が設定されていない場合に、警告表示(例えば、「シーン3に切替位置が設定されていません。」という警告文を表示)を表示部41により行わせる。こうした構成によれば、ユーザは、シーン3において切替位置が設定されていないことを容易に把握することができ、シーン3において切替位置が設定されているか否かを確認する手間を減らすことができる。
【0059】
・判定部34は、警告表示を表示部41により行わせる際に、シーンの切替位置として正しいと推定される切替位置(例えば、シーン2の正しい設定切替位置としてP[6])を表示部41に表示させる。こうした構成によれば、警告表示と併せて、シーンの切替位置として正しいと推定される切替位置P[6]が表示されるため、ユーザは切替位置を修正する手間を減らすことができる。
【0060】
・設定部43は、ユーザにより入力されたシーン名と制限パラメータとを関連付けて予め登録する。そして、登録されたシーン名(例えば「Scene1」)がユーザにより入力されてシーンが設定された場合に、
図2に示すように、制限パラメータの値を、入力されたシーン名「Scene1」に関連付けられた制限パラメータの値(60,60,60)に設定する。したがって、ユーザは、登録したシーン名「Scene1」を入力してシーンを設定することにより、予め登録した制限パラメータの値(60,60,60)に容易に設定することができる。
【0061】
なお、上記実施形態を、以下のように変更して実施することもできる。上記実施形態と同一の部分については、同一の符号を付すことにより説明を省略する。
【0062】
・判定部34は、上記の判定及び警告表示を行う際に、各シーンに切替位置が設定されていない状態でシーンを切り替えることを許可することにより、切替位置の条件を無効にして切替部32によりシーンを切り替えさせてもよい。
【0063】
・判定部34は、上記警告文の表示及び上記提案文の表示の一方のみを行ってもよい。
【0064】
・設定部43は、各シーンに複数の切替位置を設定することを許容してもよい。この場合、判定部34は、切替部32によりシーンを切り替える時のロボット10の位置が、適用するシーンに含まれるいずれの切替位置とも一致しない場合に、警告表示(例えば、「実切替位置P[6]が設定切替位置P[7],P[9]のいずれとも一致していません。」という警告文を表示」を表示部41により行わせてもよい。
【0065】
・シーンが予め登録されていない場合、及びシーン名と制限パラメータとを関連付けて予め登録しておくことを設定部43が実行しない場合に、例えば「ChangeScene 60, 60,60,P[4]」というコマンドにより、切替部32がシーン(最大速度,最大トルク,可動範囲,切替位置)を直接設定することもできる。この場合であっても、判定部34は、切替部32によりシーンを切り替える時のロボット10の位置と、適用するシーンに含まれる切替位置との関係を判定し、判定結果に基づいた表示(警告表示、提案表示)を表示部41により行わせることができる。
【0066】
・ロボット10の位置を移動させる移動コマンド(例えば、「Move P[6]」)と、シーンを切り替える切替コマンド(例えば、「ChangeScene 2」)とが連続している場合は、移動コマンド「Move P[6]」の目標位置P[6]において切替コマンド「ChangeScene 2」が実行されることが分かる。
【0067】
そこで、判定部34は、動作プログラムにおいて、ロボット10の位置を移動させる移動コマンド「Move」と、切替部32により実行されるシーンを切り替える切替コマンド「ChangeScene」とが連続している場合に、移動コマンド「Move」の目標位置P[6]と切替コマンド「ChangeScene」により適用されるシーン2に含まれる切替位置P[7]とが一致しない場合に、警告表示を表示部41により行わせてもよい。こうした構成によれば、判定部34は、ロボット10(シミュレーション画像)を実際に動作させなくても、ロボット10を動作させるコマンド「Move」,「ChangeScene」に基づいて、容易に警告表示を行わせることができる。判定部34は、上記の判定及び警告表示を、例えば動作プログラムのコンパイル時(動作プログラム実行前)に行うことができる。なお、判定部34は、上記の判定及び警告表示を、動作プログラム実行時に行うこともできる。
【0068】
・設定部43は、複数のメインシーン及びメインシーンMSnに従属する複数のサブシーンSnを備え、メインシーンMSnを構成する制限パラメータとサブシーンSnを構成する制限パラメータとの組み合わせによりシーンを設定することもできる。nは自然数である。
図7はメインシーンMSn及びサブシーンSnで設定するパラメータを示す図であり、
図8はメインシーンMSnとサブシーンSnとの関係を示す模式図である。
【0069】
例えば、メインシーンMSnではロボット10の使用条件を設定し、サブシーンSnでは安全監視を設定する。サブシーンSnで設定するパラメータは、シーン切替条件(例えば「切替位置」)、最大速度、最大トルク、最大力等である。最大速度及び最大トルクは上記実施形態と同様である。シーン切替条件は、シーンの切り替えを許可するロボット10の位置等を設定する。最大力は、例えばロボット10がワークに作用させる力の最大値を設定する。メインシーンMSnで設定するパラメータは、各安全監視の有効設定、最大負荷質量、ツール番号、ワーク番号、可動範囲、監視部位等である。各安全監視の有効設定は、安全監視の最大速度等(各パラメータ)の有効又は無効を設定する。最大負荷質量は、ロボット10が移動させるワーク等の最大質量を設定する。ツール番号は、ツールの種類を表す番号である。ワーク番号は、ワークの種類を表す番号である。可動範囲は、上記実施形態と同様である。監視部位は、ロボット10のうち速度等を監視する部位を設定する。
【0070】
各サブシーンSnは、いずれかのメインシーンMSnに従属している。MS1S1は、メインシーンMS1の中の(下の階層の)サブシーンS1を表している。MS1S1、MS1S2、及びMS1S3は、いずれもメインシーンMS1に従属しており、メインシーンMS1で設定したパラメータが共通して適用されている。同様に、MSnSnは、メインシーンMSnの中のサブシーンSnを表している。
【0071】
こうした構成によれば、ユーザは各状況に応じた各シーンを、複数のメインシーンMSnとメインシーンMSnに従属する複数のサブシーンSnとの組み合わせに整理して設定することができ、複数の制限パラメータを多くの状況に応じて設定する際に、誤った設定をすることを抑制することができる。ここで、ロボット制御装置30では、制限パラメータに誤った設定をするとロボット10が周辺環境や人に危害を与えるおそれがあるため、制限パラメータの誤った設定を抑制することができることは極めて重要な意義を有する。
【0072】
・設定部43によりシーンが設定された場合に、制限パラメータの値を、入力されたシーン名に関連付けられた制限パラメータの値に設定することを、切替部32に代わって動作部33が実行することもできる。具体的には、動作部33は、ロボット10に適用されたシーンで設定された制限パラメータにより制限した状態でロボット10を動作させる際に、制限パラメータの値を、入力されたシーン名に関連付けられた制限パラメータの値に設定して、制限パラメータにより制限した状態でロボット10を動作させることができる。
【0073】
・ティーチングペンダント40に代えて、ロボット制御装置30に接続されたPC(コンピュータ)、モニタ、キーボード、マウス等により、ティーチングペンダント40の機能(シミュレーション時における切替部32、動作部33、及び判定部34の機能を含む)を実現することもできる。
【0074】
・ロボット10の動作プログラムを、ビジュアルプログラミング言語により記述することもできる。この場合、ChangeScene等の各コマンドを、対応する各ブロック等に置き換えればよい。
【0075】
・判定部34による判定及び判定結果に基づいた表示は、ティーチングペンダント40及びPCによるロボット10のシミュレーション実行中に限らず、ロボット制御装置30によるロボット10の実際の動作中に行うこともできる。この場合は、切替部32、動作部33、及び判定部34の機能がロボット制御装置30により実現され、表示部41、操作部42、及び設定部43の機能がティーチングペンダント40により実現される。さらに、判定部34は、切替部32及び動作部33の安全基準よりも高い安全基準を満たした安全関連部により構成されていてもよい。こうした構成によれば、より高い安全基準を満たした判定部34によって、切替部32によりシーンを切り替える時のロボット10の位置と、適用するシーンに含まれる切替位置との関係を判定することができる。したがって、ロボット10の安全性をより向上させることができる。
【符号の説明】
【0076】
10…ロボット、30…ロボット制御装置、32…切替部、33…動作部、34…判定部、40…ティーチングペンダント、41…表示部、42…操作部、43…設定部。