(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-21
(45)【発行日】2024-08-29
(54)【発明の名称】ロボットシステムとこれをモニタする方法
(51)【国際特許分類】
B25J 19/06 20060101AFI20240822BHJP
【FI】
B25J19/06
(21)【出願番号】P 2021557740
(86)(22)【出願日】2020-04-01
(86)【国際出願番号】 DK2020050086
(87)【国際公開番号】W WO2020200387
(87)【国際公開日】2020-10-08
【審査請求日】2023-03-17
(32)【優先日】2019-04-02
(33)【優先権主張国・地域又は機関】DK
(32)【優先日】2019-12-23
(33)【優先権主張国・地域又は機関】DK
(73)【特許権者】
【識別番号】516266514
【氏名又は名称】ユニバーサル ロボッツ アクツイエセルスカプ
(74)【代理人】
【識別番号】100083806
【氏名又は名称】三好 秀和
(74)【代理人】
【識別番号】100095500
【氏名又は名称】伊藤 正和
(74)【代理人】
【識別番号】100111235
【氏名又は名称】原 裕子
(74)【代理人】
【識別番号】100195257
【氏名又は名称】大渕 一志
(72)【発明者】
【氏名】ベック、 アンダース ビレソ
(72)【発明者】
【氏名】ブラント、 ダビド
(72)【発明者】
【氏名】オルムホイ、 ヤコブ シュルツ
(72)【発明者】
【氏名】ナシオポウロス、 ステファノス
【審査官】牧 初
(56)【参考文献】
【文献】米国特許出願公開第2017/0225331(US,A1)
【文献】特開2015-208789(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 1/00-21/02
G05B 9/00- 9/05
(57)【特許請求の範囲】
【請求項1】
ロボットシステムであって、
・ロボット基部(105)及びロボットツールフランジ(107)に接続される複数のロボットジョイント(103a~103f)を含むロボットアーム(101)と、
・前記ロボットアームの動作を基本制御ソフトウェアとプロセス制御ソフトウェアの組合せに従って制御するように構成されるロボットプロセスコントローラ(202)と、
・前記ロボットアームの動作をモニタし、評価するように構成されるロボット安全コントローラと
を含み、
前記基本制御ソフトウェアは一群の安全限界に関連付けられ、各安全限界は、前記ロボットプロセスコントローラによって前記基本制御ソフトウェアに従って制御されるときに前記ロボットアームの動作を限定する正常値を有し、
前記プロセス制御ソフトウェアは、前記一群の安全限界のうち、前記正常値の少なくとも1つとは異なるプロセス値を有する少なくとも1つの安全限界に関連付けられ、
少なくとも1つの安全限界の前記プロセス値は、前記ロボットシステムがランタイムモードにある間に変更されるように構成され、
前記ロボット安全コントローラは、1つ又は複数の動作パラメータについて行われた評価が、前記少なくとも1つの安全限界の前記正常値と前記プロセス値のうち、より制約的な方が超過されるとの結果である場合、前記ロボットアームを限界超過停止モードにするように構成される
、ロボットシステム。
【請求項2】
前記ロボットプロセスコントローラは、前記ロボットプロセスコントローラが、一の動作パラメータが前記少なくとも1つの安全限界の前記正常値及び前記プロセス値のうちの、より制約的な方を超過すると推定した場合、前記ロボットアームを予防停止モードにするように構成される、請求項
1に記載のロボットシステム。
【請求項3】
前記ロボットプロセスコントローラは、前記ロボットプロセスコントローラによって行われた1つ又は複数の動作パラメータの前記評価により、前記少なくとも1つの安全限界の前記正常値からオフセットを差し引いたものと前記プロセス値からオフセットを差し引いたもののうち、より制約的な方の超過との結果が得られた場合、前記ロボットアームを予防停止モードにするように構成される、請求項1~
2の何れか1項に記載のロボットシステム。
【請求項4】
前記ロボットプロセスコントローラは、前記ロボットプロセスコントローラにより行われる1つ又は複数の動作パラメータの前記評価により、前記少なくとも1つの安全限界の前記正常値からオフセットを差し引いたものと前記プロセス値からオフセットを差し引いたもののうち、より制約的な方の超過との結果が得られた場合、前記ロボットアームを前記限界超過停止モードにするように構成される、請求項1~
3の何れか1項に記載のロボットシステム。
【請求項5】
前記ロボットプロセスコントローラは、安全限界の前記正常値を同じ前記安全限界のプロセス値と比較して、これら2つのうちのより制約的な方を確定するように構成される、請求項1~
4の何れか1項に記載のロボットシステム。
【請求項6】
前記ロボットプロセスコントローラは、1つ又は複数の安全限界の低減正常値に基づく低減動作モードで前記ロボットアームを制御するように構成される、請求項1~
5の何れか1項に記載のロボットシステム。
【請求項7】
プロセスソフトウェアがメモリにアップロードされ、前記メモリから前記ロボットプロセスコントローラが基本制御ソフトウェア及びプロセス制御ソフトウェアを実行することができる場合、安全限界の値がプロセス値で更新される、請求項1~
6の何れか1項に記載のロボットシステム。
【請求項8】
前記一群の安全限界は安全メモリに記憶される、請求項1~
7の何れか1項に記載のロボットシステム。
【請求項9】
前記安全限界は、ツール中心点速度、ツール中心点フォース、肘部速度、肘部フォース、ジョイント速度、ジョイント位置、停止距離、停止持間、極限電力、極限トルク、及びツール方向を含むリストから選択される、請求項1~
8の何れか1項に記載のロボットシステム。
【請求項10】
前記ロボットプロセスコントローラ、前記ロボット安全コントローラ、及びジョイントコントローラを含むリストのコントローラのうちの少なくとも1つは、1つ又は複数の動作パラメータの前記評価を実行するように構成される、請求項1~
9の何れか1項に記載のロボットシステム。
【請求項11】
1つ又は複数の動作パラメータの前記評価は、前記1つ又は複数の動作パラメータに関する値を確定し、前記確定された値を少なくとも1つの関連する安全限界と比較することを含む、請求項1~
10の何れか1項に記載のロボットシステム。
【請求項12】
前記ロボット安全コントローラの安全等級は前記ロボットプロセスコントローラの安全等級より高い、請求項1~
11の何れか1項に記載のロボットシステム。
【請求項13】
前記ロボット安全コントローラは前記ロボットプロセスコントローラに確認を提供するように構成され、前記確認は、前記ロボット安全コントローラが前記少なくとも1つの安全限界に関する前記プロセス値を受け取ったことを示す、請求項1~
12の何れか1項に記載のロボットシステム。
【請求項14】
前記ロボットシステムは、異なるハードウェア上に提供される独立した少なくとも2つのロボット安全コントローラを含み、
独立したロボット安全コントローラの各々は、前記少なくとも2つのロボット安全コントローラのうちの1つにより行われた1つ又は複数の動作パラメータの評価が、前記少なくとも1つの安全限界の前記正常値及び前記プロセス値のうち、より制約的な方の超過であるとの結果である場合、前記ロボットアームを前記限界超過停止モードにするように構成される、請求項1~
13の何れか1項に記載のロボットシステム。
【請求項15】
前記ロボットシステムは、ユーザが前記ロボットシステムと通信できるようにするユーザインタフェースを含み、
前記ユーザインタフェースは、前記ロボットアームがランタイムモードにある間に、前記プロセス値の少なくとも1つ又は前記安全限界の少なくとも1つの値を変更するためのユーザインタフェース手段を含む、請求項1~
14の何れか1項に記載のロボットシステム。
【請求項16】
前記動作パラメータの値は、前記ロボットシステムに入力を提供するセンサによって確定される、請求項1~
15の何れか1項に記載のロボットシステム。
【請求項17】
ロボットシステムをモニタする方法であって、
前記ロボットシステムは、
・ロボット基部(105)及びロボットツールフランジ(107)に接続される複数のロボットジョイント(103a~103f)を含むロボットアーム(101)と、
・前記ロボットアームを基本制御ソフトウェアにしたがって動作させるように構成されるロボットプロセスコントローラ(202)であって、前記基本制御ソフトウェアにしたがった前記ロボットアームの動作は、複数の動作パラメータの各々に関する安全限界の正常値により限定される、ロボットプロセスコントローラ(202)と、
・前記ロボットアームの動作をモニタし、評価するように構成されたロボット安全コントローラと、
を含み、
前記ロボットプロセスコントローラと前記ロボット安全コントローラとは異なるハードウェアに提供され、
前記方法は、
・データ処理ユニットを介して、前記複数の動作パラメータに関する前記安全限界の少なくとも1つについて、プロセス制御ソフトウェア及び関連するプロセス値を確定するステップと、
・前記少なくとも1つのプロセス値を含む前記プロセス制御ソフトウェアをロボットシステムメモリに記憶するステップと、
・前記ロボットプロセスコントローラにより、前記ロボットアームの前記動作を前記基本制御ソフトウェアと前記プロセス制御ソフトウェアの組合せに基づいて制御するステップと、
・前記ロボットアームの動作中、少なくとも1つの動作パラメータのリアルタイム値を確定するステップと、
・前記少なくとも1つの動作パラメータの前記リアルタイム値の評価が、前記少なくとも1つの動作パラメータの前記安全限界の前記正常値及び前記プロセス値のうち、より制約的であるものを超過する場合に、前記ロボット安全コントローラによって、前記ロボットアームを限界超過停止モードにするステップと、
を含む、方法。
【請求項18】
安全限界の前記正常値を同じ前記安全限界のプロセス値と比較して、これら2つのうち、より制約的な方を確定するステップを含む、請求項
17に記載の方法。
【請求項19】
前記少なくとも1つの動作パラメータの前記リアルタイム値が前記少なくとも1つの動作パラメータの前記安全限界の前記正常値と前記プロセス値のうち、より制約的な方を超過するか否かを評価するステップを含む、請求項
17~
18の何れか1項に記載の方法。
【請求項20】
前記少なくとも1つの動作パラメータの前記リアルタイム値が前記少なくとも1つの動作パラメータの前記安全限界の前記正常値と前記プロセス値のうち、より制約的な方を超過するか否かを評価するステップは、前記少なくとも1つの動作パラメータを、前記少なくとも1つの動作パラメータの前記安全限界の前記正常値と前記プロセス値のうち、より制約的な方と比較するステップを含む、請求項
19に記載の方法。
【請求項21】
・前記ロボットプロセスコントローラにより、前記少なくとも1つの動作パラメータの前記リアルタイム値の評価が前記少なくとも1つの動作パラメータの前記安全限界の前記正常値と前記プロセス値のうち、より制約的な方を超過する場合に、前記ロボットアームを予防停止モードにするステップ
を含む、請求項
17~
20の何れか1項に記載の方法。
【請求項22】
・前記ロボットプロセスコントローラにより、前記少なくとも1つの動作パラメータの前記リアルタイム値の評価が前記少なくとも1つの動作パラメータの前記安全限界の前記正常値からオフセットを差し引いたものと前記プロセス値からオフセットを差し引いたもののうち、より制約的な方を超過する場合に、前記ロボットアームを予防停止モードにするステップ
を含む、請求項
17~
21の何れか1項に記載の方法。
【請求項23】
・前記ロボットプロセスコントローラにより、前記少なくとも1つの動作パラメータの前記リアルタイム値の評価が前記少なくとも1つの動作パラメータの前記安全限界の前記正常値からオフセットを差し引いたものと前記プロセス値からオフセットを差し引いたもののうち、より制約的な方を超過する場合に、前記ロボットアームを前記限界超過
停止モードにするステップ
を含む、請求項
17~
22の何れか1項に記載の方法。
【請求項24】
・1つ又は複数のジョイントコントローラにより前記少なくとも1つの動作パラメータの前記リアルタイム値を確定するステップ
を含む、請求項
17~
23の何れか1項に記載の方法。
【請求項25】
・前記ロボットシステムに入力を提供するセンサにより前記少なくとも1つの動作パラメータの前記リアルタイム値を確定するステップ
を含む、請求項
17~
24の何れか1項に記載の方法。
【請求項26】
前記評価は1つ又は複数のジョイントコントローラにより行われる、請求項
17~
25の何れか1項に記載の方法。
【請求項27】
前記評価の結果を示す信号が、前記
ロボットプロセスコントローラと前記
ロボット安全コントローラのうちの少なくとも一方に提供され、それに基づいて、前記
ロボットプロセスコントローラと前記
ロボット安全コントローラの少なくとも一方が、前記ロボットアームの動作モードの変更が必要であるか否かを特定する、請求項
17~
26の何れか1項に記載の方法。
【請求項28】
前記ロボットシステムがランタイムモードである間にプロセス値を調整するステップをさらに含む、請求項
17~
27の何れか1項に記載の方法。
【請求項29】
前記プロセス制御ソフトウェアは外部データ処理ユニットにより確定される、請求項
17~
28の何れか1項に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明はロボットアームのための安全システムに関し、この安全システムは、ロボットアームの動作中、ロボットアームをモニタして、ロボットアームが安全でない動作モードとなった場合にロボットアームを安全な状態にするように構成される。
【背景技術】
【0002】
複数のロボットジョイントとロボットリンクを含むロボットアームが知られており、この場合、アクチュエータがロボットアームの一部を相互に関して回転又は並進移動させることができる。ロボットアームは、回転ジョイントを含むことができ、アクチュエータは、ロボットアームの一部、及び/又は直動ジョイントを回転させるように構成され、アクチュエータはロボットアームの一部を並進移動させるように構成される。典型的に、ロボットアームは、ロボットアームの取付土台としての役割を果たすロボット基部と、各種のツールに取り付けることができるロボットツールフランジとを含み、複数のロボットジョイント及びロボットリンクがロボット基部とロボットツールフランジに接続される。ロボットコントローラは、ロボットツールフランジを基部に関して移動させるためにロボットジョイントを制御するように構成される。例えば、ロボットアームに複数の動作命令を実行するように命令するために。
【0003】
典型的に、ロボットコントローラは、ロボットジョイントをロボットアームの動的模型に基づいて制御するように構成され、動的模型はロボットアームに作用する力とその結果として生じるロボットアームの加速度との間の関係を規定する。多くの場合、動的模型はロボットアームの運動模型、ロボットアームの慣性に関する知識、及びロボットアームの運動に影響を与えるその他のパラメータを含む。運動モデルは、ロボットアームの異なる部分間の関係を規定し、ジョイント及びリンクの長さ、大きさ等のロボットアームの情報を含んでいてよく、例えばデナビット・ハーテンバーグパラメータ又はその他によって記述できる。動的モデルによって、コントローラは、ロボットジョイントを、例えば特定の速度、加速度で移動させるために、又はロボットアームを静止姿勢に保持するために、ジョイントモータがどの程度のトルクを提供すべきかを特定することが可能となる。
【0004】
典型的に、ロボットツールフランジには各種のエンドエフェクタを取り付けることができ、これは、例えばグリッパ、真空グリッパ、磁気グリッパ、ねじ切り盤、溶接機器、分配装置、視覚システム、フォース/トルクセンサ等であり、これらはロボットアームと共に使用して様々なタスクを実行できる。ロボットアームは、ユーザ又は、所定の移動パターン等のロボットアームのための各種の命令及び把持、待機、釈放、検査、ねじ止め命令等の作業命令を規定するロボットインテグレータによってプログラムされる必要がある。ロボット制御ソフトウェアへのソフトウェア拡張が、ロボットアームに取り付けられるエンドエフェクタをプログラムできるようにするために提供されてよく、エンドエフェクタ提供企業はこのようなソフトウェア拡張をエンドエフェクタと共に提供してよい。例えば、ロボットアームは、参照によって本明細書に援用される国際公開第2017/005272号パンフレットにおいて開示されているように、サードパーティ製品を用いて産業用ロボットのエンドユーザプログラミングを拡張する方法を実行するように構成されていてよい。
【0005】
それに加えて、命令は各種のセンサ又は入力信号に基づくことができ、これは典型的にある命令を停止又は開始させるために使用されるトリガ信号を提供する。トリガ信号は、安全カーテン、ビジョンシステム、位置インディケータ等の様々な指示手段により提供できる。
【0006】
人体に沿った、又はその付近でのロボットアームの使用は増えており、ロボットが人を助けることのできる作業プロセスを多様化するために、ロボットの安全性、価格、及びフレキシビリティにより重点を置くことが要求されている。ロボットアームはそれゆえ、ロボットアームの動作をモニタし、人が負傷し得る危険な状況が発生する前に、ロボットアームを安全停止モードにするように構成された安全システムが提供される。安全性を高めるために、ロボット安全コントローラとロボットプロセスコントローラは異なるハードウェアに提供される。ロボット安全コントローラは、ロボットアームに関する各種のセンサ信号をモニタし、ロボットアームの複数の安全機能(例えば、参照によって本明細書に援用される国際公開第2015/131904号パンフレットに記載されている通り)を実行するように構成され、それによって安全システムは、安全でない状態が登録されるとロボットを安全状態にする。既知の安全システムは、ロボットアームの動作を最終的なエンドエフェクタとは関係なくモニタするため、その結果、安全システムは、例えばエンドエフェクタが安全でない状態になってもロボットアームを安全な状態にすることができない。
【発明の概要】
【課題を解決するための手段】
【0007】
本発明の目的は、先行技術での上述の限界又は先行技術のその他の問題に対処することである。それはロボットシステムにより達成され、これは:
・ロボット基部及びロボットツールフランジに接続される複数のロボットジョイントを含むロボットアームと、
・ロボットアームの動作を基本制御ソフトウェアとプロセス制御ソフトウェアの組合せにしたがって制御するように構成されるロボットプロセスコントローラと、
・ロボットアームの動作をモニタし、評価するように構成されたロボット安全コントローラと、
を含み、
基本制御ソフトウェアは安全限界群に関連付けられ、その各々は、ロボットプロセスコントローラによって基本制御ソフトウェアにしたがって制御されるときにロボットアームの動作を限定する正常値を有し、プロセス制御ソフトウェアは、安全限界群のうち、正常値とは異なるプロセス値を有する少なくとも1つの安全限界に関連付けられ、少なくとも1つの安全限界のプロセス値は、ロボットシステムがランタイムモードにある間に変更されるように構成され、ロボット安全コントローラは、1つ又は複数の動作パラメータについて行われた評価の結果が、少なくとも1つの安全限界の正常値とプロセス値のうち、より制約的であるほうが超過されるというものである場合に、ロボットアームを限界超過停止モードにするように構成される。これは、それが、ロボットプロセス及びロボット安全コントローラがランタイムモードにあるとき、すなわちロボットアームの動作中に安全限界を変化し、評価できるという効果を有するという点で有利である。これはさらに、それが、ロボットアームの動作を限定しているのは常に正常値とプロセス値のうち、より制約的であるほうであることでロボットシステムの安全を損なわずに安全限界の値を更新できるという効果を有するという点で有利である。したがって、ロボットシステムの追加的な認証又は再認証を回避できる。これはさらに、それが、ロボットアームのユーザ及び/又はプロセス制御ソフトウェアの提供業者は安全限界を変化させ、それによってロボットアームの制御及び動作をさらにフレキシブルなものにできるという効果を有するという点で有利である。
【0008】
ロボットプロセスコントローラは、ロボットアームの動作を制御するコントローラとして理解すべきであり、例えばPLC(Programmable Logic Controller)、CPU(中央処理ユニット)、複数の処理ユニット、マイクロコントローラ等の何れの処理装置としても実装できる。
【0009】
ロボット安全コントローラは、ロボットアームの動作をモニタするコントローラとして理解すべきであり、規定されたモニタ対象動作パラメータの値が安全限界等の規定の閾値を超えたときに、ロボット安全コントローラはロボットアームを限界超過停止モードにする。ロボット安全コントローラは、例えばPLC(Programmable Logic Controller)、CPU(中央処理ユニット)、複数の処理ユニット、マイクロコントローラ等の何れの処理装置としても実装できる。
【0010】
基本制御ソフトウェアは、プロセスコントローラによってロボットアームの、すなわち個々のジョイントの、したがってロボットフランジ及びそこに取り付けられた何れかのロボットツールの運動を制御するために使用されるソフトウェアとして理解すべきである。基本制御ソフトウェアは典型的に、ロボットアームの数学模型に基づいて開発され、ロボットアームと一緒に引き渡される。ロボットアームのユーザが特定のプログラミング技能をまったく持たなくてもロボットアームを動かすことができるようにするために。特筆すべき点として、基本制御ソフトウェアは、異なる安全限界のためのデフォルト値を規定する。デフォルト値はまた、正常値とも呼ばれてよく、ロボットアームの電源がオフであれば、所定の範囲内でしか変化させることができない。
【0011】
プロセス制御ソフトウェアは、その上でこのようなプロセス制御ソフトウェアが記憶され、又は開発されるデータ処理ユニット、サーバ、コンピュータ、又はタブレット等の外部ソースからロボットシステムに提供されるソフトウェアとして理解すべきである。プロセス制御ソフトウェアはまた、ロボットシステムを直接プログラムすることによってユーザインタフェースを介して提供することもできる。プロセス制御ソフトウェアは、ロボットアームの運動のウェイポイントを規定する3次元デカルト座標系の単純な座標、ロボットフランジに取り付けられるロボットツールの動作を規定するプログラムコード、デカルト座標系内の点を特定する高等数学とすることができ、例えば運動、センサシステム等における正確さを最適化することができる。したがって、プロセスコントローラは、ロボットアーム及びツールの運動をプロセス及び基本制御ソフトウェアの組合せに基づいて制御し、プロセス制御ソフトウェアは基本制御ソフトウェアにより規定される少なくとも1つの安全限界にプロセス値を提供する。
【0012】
基本及びプロセス制御ソフトウェアで使用される動作パラメータの値は、ロボットアームの動作に関する位置、運動、フォース、距離、時間、例えば極限電力又はトルク、方向等を反映する。したがって、例えばロボットジョイントの測定から測定され、又は推論される速度、加速度、フォース等は動作パラメータの例である。
【0013】
安全限界は、動作パラメータの限界値として理解すべきである。安全限界の例は、0度/sで始まり、400度/sで終わる動作ウィンドウ内の値とすることができ、典型的に最大値(安全限界)は手首ジョイントについて15~360度/s及び基部/肩部/肘部ジョイントについては15~120度であるロボットジョイント速度、0m/sで始まり、5m/sで終わる動作ウィンドウ内の値とすることができ、典型的に最大値(安全限界)が1~2m/sであるツールフランジ速度、10wで始まり、1000wで終わる動作ウィンドウ内の値とすることができるロボットアームの電力消費量、1/4sで始まり、1sで終わる動作ウィンドウ内の値とすることができる停止時間、1cmで始まり、2mで終了する動作ウィンドウ内の値とすることができる停止距離とすることができる。動作パラメータのリアルタイム値は、計算又は測定、例えばロボットジョイントで行われる直接測定又はそこからの導出に基づいて確定される。
【0014】
安定限界のプロセス値は、ロボットアームにより行われるあるプロセスを最適化するために提供される。プロセス値は典型的に、ロボットアームの動作ウィンドウを正常値により規定される動作ウィウィンドウより小さくする。典型的に、これはロボットアームをより低速で、より正確に移動させる、より少ないモータトルクを生成させる、等である。
【0015】
ロボットアームは、デフォルトにより、安全限界の正常値にしたがって制御することができる。しかしながら、1つ又は複数の安全限界の値がプロセス値に更新又は変更されると、これらの限界のうち、より制約的であるほうが制御パラメータとして使用される。実際に、プロセス制御ソフトウェアは、ロボットアームがランタイムモードにある時にユーザがその中でプロセス値を調整できる範囲を明示できる。ランタイム中に、すなわちロボットが動作中である、例えばそれが移動しているときに安全限界の値を変更できることは、それが、現場でのロボットアームの実装及び慣らしを、ロボットアームの電源がオフであるときにしか安全限界値の変更を提供しない先行技術のロボットシステムと比較して、より高速にすることができるという効果を有する点で有利である。さらに、電源をオフにせずに値を変更できる(動的安全限界値調整)ため、動的調整によって、サイクルタイムを短縮でき、特に刺激の根源が取り除かれる。
【0016】
限界超過停止モードは、評価の結果が安全限界の1つの超過であると、すなわちロボットシステムがロボットシステム内で何かがおかしいことを自動的に検出すると、自動的に適用される安全停止機構と理解すべきである。典型的に、ロボットプロセスコントローラは、安全限界の超過のリスクがあることを予測すると、ロボットアームを予防モードにする。これが停止時間内に行われなければ、安全コントローラはロボットアームを限界超過停止モードにする。安全限界の超過に起因する限界超過停止モードは、緊急停止ボタンのマニュアルでの作動に起因する緊急停止モードと同様である。限界超過停止モードと緊急停止モードの何れにおいても、個々のジョイントの機械的ブレーキがかかり、ロボットアームの電源がオフにされる。限界超過停止及び緊急停止をリセットするにはどちらも、物理的な緊急ボタンにおいて、又はプロセス及び/又は安全制御ソフトウェアを介したマニュアルでのリセットが必要である。
【0017】
評価は、安全限界、例えば安全限界の値(正常値及び/又はプロセス値)に照らしたリアルタイム動作値の評価として理解すべきである。評価は、完全に、又は部分的にロボット安全コントローラによって、又はロボットプロセスコントローラによって行われてよい。評価は、安全限界と関連する動作パラメータのリアルタイム値との単純な比較であってもよい。
【0018】
ある実施形態において、ロボットシステムは、ロボットプロセスコントローラが動作パラメータはその少なくとも1つの安全限界の正常値とプロセス値のうちのより制約的なほうを超過すると推定した場合に、ロボットアームを予防停止モードにするように構成される。これは、それが、安全限界が超過された、又は超過されると予想される場合に、ロボットアームが電源オフ及び機械的ブレーキの作動を含まないソフト停止モードに入るという効果を有するという点で有利である。したがって、ロボットアームのリセット及び連続動作は、基本/プロセス制御ソフトウェアの実行の単純なリセット又は単純な再スタートの後で継続することができる。特筆すべき点として、安全限界の超過の推定は予測に基づいていてよく、その場合、プロセスコントローラは、現在の状態(速度、方向、フォース等)に基づいて将来の動作と、これが何れかの安全限界を超過することになるか否かを計算する。代替的に、それは、測定又は、それから導出される値であって、その後安全限界の値と比較されるものに基づいていてもよい。最後に、特筆すべき点として、例示的な実施形態における推定/比較は、安全限界の値からオフセットを引いたものに対して行われる。
【0019】
プロセスコントローラは、ロボットプロセスコントローラによって行われた1つ又は複数の動作パラメータの評価の結果が、その少なくとも1つの安全限界の、正常値からオフセットを差し引いたものとプロセス値からオフセットを差し引いたもののうち、より制約的であるほうの超過である場合に、ロボットアームを限界超過停止モードにするように構成される。これは、それが、ロボット安全及びプロセスコントローラの両方がロボットアームを限界超過停止モードにすることができるという効果を有するという点で有利である。オフセットは、安全限界の公称値から差し引かれる値として理解すべきである。このようにして、ロボットプロセスコントローラとロボット安全コントローラは、同じ安全限界について異なる値を有し、したがって、2つのコントローラ間で、限界超過停止等の停止モードを最初にどちらが作動させるかに関して矛盾が生じない。オフセットの値は、できるだけ安全限界の公称値に近い値に設定して、ロボットアームの動作ウィンドウの全体が確保されるようにすることができる。このことにより、センサ、コンタクタ、トランジスタ等のヒステリシス等の前記要素が実際にオフセット値を規定する。したがって、オフセット値は、安全限界の公称値の所定のパーセンテージとすることができ、又は1つ又は複数の安全限界について個別に特定することもできる。特筆すべき点として、ロボットプロセスコントローラはまた、評価の結果がまずオフセットを差し引かずに正常及びプロセス値のうち、より制約的なほうの超過である場合に、ロボットアームを限界超過停止モードにするために使用されてもよい。
【0020】
ロボットシステムのある実施形態において、ロボットプロセスコントローラは、安全限界の正常値を同じ安全限界のプロセス値と比較して、それら2つのうちの、より制約的なほうを決定するように構成される。これは、それが、ロボットアームの制御中に使用される安全限界の値が識別され、それによって、例えばロボットアームを限界超過停止モードにするために、ロボットアームを制御するために使用されるべき安全限界のどの限界かが識別されるという効果を有するという点で有利である。
【0021】
ロボットシステムのある実施形態において、ロボットプロセスコントローラは、1つ又は複数の安全限界の正常値の低減に基づいて、ロボットアームを減少動作モードに制御するように構成される。これは、それが、例えばロボットフランジを移動させる速度に関する限界を、ロボットアームがどこにあるか、又は人若しくは壊れやすい物体がロボットアームに関してどこにあるかに応じて低減させることができるという効果を有するという点で有利である。
【0022】
ロボットシステムのある実施形態において、安全限界の値は、プロセスソフトウェアがメモリにアップロードされ、そこからロボットプロセスコントローラが基本制御ソフトウェア及びプロセス制御ソフトウェアを実行できる場合、プロセス値で更新される。プロセス制御ソフトウェアが安全及びプロセスコントローラに提供されると、プロセス値はランタイム中に調整でき、いかなるソフトウェアの更新も不要であり、ロボットアームの電源はオフにされない。
【0023】
ロボットシステムのある実施形態において、安全限界群が安全メモリに記憶される。この状況では、ロボット安全コントローラは、ロボットプロセスコントローラのための安全限界群へのアクセスを提供するか、又はロボットプロセスコントローラに安全限界群を提供する。
【0024】
ロボットシステムのある実施形態において、安全限界は、ツール中心点速度、ツール中心点フォース、肘部速度、肘部フォース、ジョイント速度、ジョイント位置、停止距離、停止時間、極限電源、極限トルク、及びツール方向を含むリストから選択される。
【0025】
ロボットシステムのある実施形態において、評価は、1つ又は複数の動作パラメータの値を確定し、確定された値を関連する安全限界と比較することを含む。動作パラメータの値は、ロボットプロセス/安全コントローラへの入力を提供するセンサ、又はセンサからの入力を読み出すロボットプロセス/安全コントローラによって確定されてよい。代替的に、動作パラメータの値は、2つ又はそれ以上の異なる動作パラメータの測定から導出されてもよい。評価は、冗長計算又は測定を行う2つの独立したコントローラ/センサから計算又は測定された動作値の計算/測定の結果の比較を含んでいてよい。評価の少なくとも一部は、例えば個々のジョイントに配置された適当な機器によって行われてよい。その例は、少なくとも2つのプロセッサ及び/又はセンサによって行われるジョイントの冗長計算/測定であり得る。
【0026】
ロボットシステムのある実施形態において、ロボット安全コントローラの安全等級はロボットプロセスコントローラの安全等級より高い。これは、それが、このような安全適合コントローラを使用することにより、ロボット安全コントローラが安全度水準(SIL;Safety Integrity Level)2又は3の要求事項に適合する、及び/又は機能安全規格(IEC61508)の要求事項に適合することから、危険状況の発生可能性が低減するという効果を有するという点で有利である。
【0027】
ロボットシステムのある実施形態において、ロボット安全コントローラは、ロボットプロセスコントローラに確認を提供するように構成され、この確認は、ロボット安全コントローラが少なくとも1つの安全限界のプロセス値を受け取ったことを示す。
【0028】
ロボットシステムのある実施形態において、ロボットシステムは異なるハードウェア上で提供される少なくとも2つの独立したロボット安全コントローラを含み、独立したロボット安全コントローラは各々、少なくとも2つのロボット安全コントローラのうちの一方によって行われた1つ又は複数の動作パラメータの評価の結果がその少なくとも1つの安全限界の正常値とプロセス値のうちの、より制約的なほうの超過である場合に、ロボットアームを限界超過停止モードにするように構成される。これは、それが、1つ又は複数のロボット安全コントローラの一方が故障しても、ロボットアームは残っているロボット安全コントローラに基づいて動作を継続できるためにロボットアームの動作に関する安全性が向上するという効果を有するという点で有利である。また、残りのロボット安全コントローラは、他方のロボット安全コントローラが故障した場合にロボットアームを限界超過停止モードにするように構成でき、これはロボットシステムの安全度を向上させる。
【0029】
ロボットシステムのある実施形態において、ロボットシステムは、ユーザがロボットシステムと通信できるようにするユーザインタフェースを含み、ユーザインタフェースは、ロボットアームがランタイムモードにあるときに1つ又は複数の安全限界のプロセス値の値を変更するためのユーザインタフェース手段を含む。これは、安全限界の値をプロセス値で更新又は変更するための追加のハードウェアが不要であるという点で有利である。ユーザインタフェース手段は、例えば、ディスプレイ上のグラフィカルユーザインタフェースとして提供されてよく、ユーザはそれを通じてロボットシステムと通信できる。例えば、調整はタッチディスプレイ上のスライディングバーによって確定されてよい。
【0030】
それに加えて、本発明の目的はまた、
・ロボット基部(105)とロボットツールフランジに接続される複数のロボットジョイントを含むロボットアームと、
・ロボットアームを基本制御ソフトウェアにしたがって動作させるように構成されたロボットプロセスコントローラであって、基本制御ソフトウェアにしたがうロボットアームの動作は、複数の動作パラメータの各々に関する安全限界の正常値により限定されるロボットプロセスコントローラと、
・ロボットアームの動作をモニタし、評価するように構成されたロボット安全コントローラと、
を含み、ロボットプロセスコントローラとロボット安全コントローラは異なるハードウェアに提供されるロボットシステムをモニタする方法によっても対処でき、方法は、
・データ処理ユニットを介して、複数の安全限界の少なくとも1つのためのプロセス制御ソフトウェア及び関連するプロセス値を確定するステップと、
・少なくとも1つのプロセス値を含むプロセス制御ソフトウェアをロボットシステムメモリに記憶するステップと、
・ロボットプロセスコントローラによって、ロボットアームの動作を基本制御ソフトウェアとプロセス制御ソフトウェアの組合せに基づいて制御するステップと、
・ロボットアームの動作中に、少なくとも1つの動作パラメータのリアルタイム値を確定するステップと、
・ロボット安全コントローラによって、少なくとも1つの動作パラメータのリアルタイム値の評価がその少なくとも1つの動作パラメータの安全限界の正常値とプロセス値のうちの、より制約的なほうを超過する場合に、ロボットアームを限界超過停止モードにするステップと、を含む。
【0031】
データ処理ユニットは、ソフトウェア開発ツール又はそのようなソフトウェアのストレージ、例えばロボットコントローラ自体又は外部データ処理ユニットとして理解すべきである。したがって、プロセス制御ソフトウェアは、それがパラメータセットであるか、又はロボットアームに取り付けられたロボットツール(センサを含む)の統合と制御を可能にするプログラムであるかを問わず、ロボットコントローラの外部で開発され、ロボットプロセスコントローラ又はロボット安全コントローラに関連付けられるロボットシステムメモリにアップロードされると、これはこれらのコントローラによってアクセス可能であり、それによって、少なくとも一部にロボットアームとそのツールを制御するために使用されることができる。
【0032】
方法のある実施形態において、少なくとも1つの動作パラメータのリアルタイム値は1つ又は複数のジョイントコントローラによって確定される。
【0033】
方法のある実施形態において、評価は1つ又は複数のジョイントコントローラによって行われる。これは、それが、エラーに対してより速いシステム応答が得られるという効果を有するという点で有利である。さらに、プロセス及び安全コントローラはこの評価にプロセッサのパワーを使用する必要がない。その代わりに、信号が単純にジョイントコントローラからプロセス及び/又は安全コントローラに提供される。代替的に、評価はロボットプロセスコントローラによって、又はロボット安全コントローラによって行われる。
【0034】
方法のある実施形態において、評価の結果を示す信号がプロセスコントローラ及び/又は安全コントローラに提供され、それに基づいて、プロセスコントローラ及び/又は安全コントローラは、ロボットアームの動作モードの変更が必要か否かを特定する。
【0035】
方法のある実施形態において、方法は、ロボットシステムがランタイムモードにある間にプロセス値を調整するステップをさらに含む。
【0036】
方法のある実施形態において、ロボットプロセスコントローラは、ロボットプロセスコントローラによって行われた1つ又は複数の動作パラメータの評価の結果がその少なくとも1つの安全限界の、正常値からオフセットを差し引いたものとプロセス値からオフセットを差し引いたもののうち、より制約的なほうの超過である場合に、ロボットアームを限界超過停止モードにする。代替的に、ロボットプロセスコントローラは、ロボットアームを予防停止モードにする。
【図面の簡単な説明】
【0037】
【
図2】本発明のロボットアームによるロボットシステムの簡略構造図を示す。
【
図3】本発明のロボットアームによるロボットシステムの簡略構造図を示す。
【
図4】本発明の例示的な実施形態による速度グラフを示す。
【
図5】本発明の例示的な実施形態によるロボットシステムのモニタ方法のフローチャートを示す。
【発明を実施するための形態】
【0038】
本発明の原理を図解するためだけにすぎない例示的な実施形態を参照しながら本発明を説明する。当業者であれば、特許請求の範囲内で幾つかの実施形態を提供することができるであろう。説明文の全体を通じて、同様の効果を提供する同様の要素の参照番号は、少なくとも最後の2桁が同じである。さらに、ある実施形態が同じ特徴を複数含んでいる場合、その特徴の幾つかのみに参照番号が付されているかもしれないと理解されたい。
【0039】
図1は、ロボット基部105及びロボットツールフランジ107に接続される複数のロボットジョイント103a、103b、103c、103d、103e、103fを含むロボットアーム101を示している。基部ジョイント103aは、ロボットアームを基部軸111a(一点鎖線で示される)の周囲で回転矢印113aに示されるように回転させるように構成され、肩部ジョイント103bは、ロボットアームを肩部軸111b(この軸を示す十字として示される)の周囲で回転矢印113bにより示されるように回転させるように構成され、肘部ジョイント103cは、ロボットアームを肘部軸111c(この軸を示す十字として示される)の周囲で回転矢印113cにより示されるように回転させるように構成され、第一の手首ジョイント103dは、第一の手首軸111d(この軸を示す十字として示される)の周囲で回転矢印113dにより示されるように回転させるように構成され、第二の手首ジョイント103eは、ロボットアームを第二の手首軸111e(一点鎖線で示される)の周囲で回転矢印113eにより示されるように回転させるように構成される。ロボットジョイント103fは、ロボットツールフランジ107を含むツールジョイントであり、これはツール軸111f(一転鎖線で示される)の周囲で回転矢印113fにより示されるように回転可能である。図のロボットアームはそれゆえ、6軸ロボットアームであり、6自由度を有するが、本発明はより少ない、又はそれより多いロボットジョイントを含むロボットアームにおいても提供できる点に留意されたく、さらに、ロボットジョイントはまた、直動ジョイント又は、回転ジョイントと直動ジョイントの両方の組合せを含んでいてもよいと理解されたい。
【0040】
ジョイントの各々は、ロボットジョイントに関して回転可能な出力フランジを含み、出力フランジは当技術分野で知られているように、隣接するロボットジョイントに直接、又はアーム部を介して接続される。ロボットジョイントはジョイントモータを含み、これはモータシャフトに伝動装置を介して、又は直接接続される出力フランジを回転させるように構成される。それに加えて、ロボットジョイントは少なくとも1つのジョイントセンサを含み、これは以下のパラメータの少なくとも1つを示すセンサ信号を提供する:出力フランジの角度位置、ジョイントモータのモータシャフトの角度位置、ジョイントモータのモータ電流、又は出力フランジ若しくはモータシャフトを回転させようとする外的力。例えば、出力フランジの角度位置は、ロボットジョイントに関する出力フランジの角度位置を示すことのできる光学エンコーダ、磁気エンコーダ等の出力エンコーダにより示すことができる。同様に、ジョイントモータシャフトの角度位置は、ロボットジョイントに関するモータシャフトの角度位置を示すことのできる光学エンコーダ、磁気エンコーダ等の入力エンコーダにより提供できる。出力フランジの角度位置を示す出力エンコーダとモータシャフトの角度位置を示す入力エンコーダの両方を提供できることに留意されたく、それにより、伝導装置が提供されている実施形態において、伝導装置の入力及び出力側間の関係を特定することが可能となる。ジョイントセンサはまた、ジョイントモータを通る電流を示す電流センサとしても提供でき、それゆえ、モータにより提供されるトルクを得るために使用できる。例えば多相モータに関して、多相モータの各相を通じた電流を取得するために複数の電流センサを提供できる。
【0041】
ある例示的な実施形態において、1つ又は複数のジョイントの各々は、2つのセンサと2つのジョイントコントローラを含む。このようにして、ロボットコントローラに影響を与えずにジョイントごとの計算及び測定を確定でき、それによってその、及びジョイントとロボットコントローラとの間のデータ通信の誤動作のリスクが低減し、一般的に分散した測定及び処理を実行することによってシステム応答時間が高速化する。さらに、ジョイントの冗長性によって故障のリスクが減り、すなわち1つのセンサ又はジョイントコントローラが故障しても、使用可能な追加のセンサ又はジョイントコントローラがある。
【0042】
ロボットアームは少なくとも1つのロボットコントローラを含み、これは、ロボット制御ボックス109内に配置され、ジョイントモータに提供されるモータトルクをロボットアームの動的モデル、重量作用方向112、及びジョイントセンサ信号に基づいて制御することによってロボットジョイントを制御するように構成される。ロボットコントローラは、ユーザがロボットと通信して、例えばロボットアームを制御し、プログラムすることができるようにするインタフェース装置104を含むコンピュータとして提供できる。コントローラは、例えば
図1に示されるようにロボット制御ボックス109内に配置された外部装置として、ロボットアームに内蔵された装置として、又はそれらの組合せとして提供できる。インタフェース装置は、例えば、産業ロボットの分野で知られているティーチペンダントとして提供でき、これはロボットコントローラと有線又は無線通信プロトコルを介して通信できる。インタフェース装置は、例えば、ディスプレイ106と、ボタン、スライダ、タッチパッド、ジョイスティック、トラックボール、姿勢認識装置、キーボード等の複数の入力装置108とを含むことができる。ディスプレイは、ディスプレイ及び入力装置の両方として機能するタッチスクリーンとして提供されてもよい。
【0043】
図2は、
図1に示されるロボットアームの簡略構造図を示す。ロボットジョイント103a、103b、及び103fは構造的形態で示されており、ロボットジョイント103c、103d、103eは図を簡素化するために省略されている。さらに、ロボットジョイントは別々の要素として示されているが、これらは
図1に示されるように相互接続されていると理解されたい。ロボットジョイントは出力フランジ216a、216b、216f及びジョイントモータ217a、217b、217fを含み、出力フランジ216a、216b、216fはロボットジョイントに関して回転可能であり、ジョイントモータ217a、217b、217fは、出力アクスル218a、218b、218fを介して出力フランジを回転させるように構成される。この実施形態において、ツールジョイント103fの出力フランジ216fはツールフランジ107を含む。それぞれのジョイントの少なくとも1つのジョイントセンサパラメータJ
sensor,a、J
sensor,b、J
sensor,fを示すセンサ信号222a、222b、222fを提供する少なくとも1つのジョイントセンサ219a、219b、219f。ジョイントセンサパラメータ(総括的に動作パラメータとも呼ばれる)は少なくとも、例えばロボットジョイントに関する出力フランジの位置と方位、出力フランジの角度位置、ジョイントモータのシャフトの角度位置、ジョイントモータのモータ電流を示す姿勢パラメータの少なくとも1つを示す。例えば、出力フランジの角度位置は、ロボットジョイントに関する出力フランジの角度位置を示すことのできる光学エンコーダ、磁気エンコーダ等の出力エンコーダによって示すことができる。同様に、ジョイントモータシャフトの角度位置は、ロボットジョイントに関するモータシャフトのフランジの角度位置を示すことのできる光学エンコーダ、磁気エンコーダ等の入力エンコーダによって提供できる。
【0044】
ロボットコントローラ202は、ロボットプロセスコントローラとも呼ばれ、コントローラプロセッサ220とコントローラメモリ221を含み、モータ制御信号223a、223b、223fをジョイントモータに提供することによってロボットジョイントのジョイントモータを制御するように構成される。モータ制御信号223a、223b、223fは、各ジョイントモータが出力フランジに提供すべきモータトルクTmotor,a、Tmotor,b、及びTmotor,fを示し、ロボットコントローラは先行技術で知られているように、ロボットアームの動的模型に基づいてモータトルクを特定するように構成される。動的模型により、コントローラはジョイントモータがロボットアームに所望の運動を行わせるためにジョイントモータの各々に提供すべきトルクを計算することが可能となる。ロボットアームの動的模型はコントローラメモリ221に記憶でき、ジョイントセンサパラメータJsensor,a、Jsensor,b、Jsensor,fに基づいて調整できる。例えば、ジョイントモータは多相電気モータとして提供でき、ロボットコントローラは、モータ調整技術において知られているように、多相モータの相を通じた電流を調整することによって、ジョイントモータにより提供されるモータトルクを調整するように構成できる。
【0045】
ロボットシステムは、ロボットアームをモニタする安全システム225を含み、ロボット安全コントローラとも呼ばれる安全プロセッサ227と安全メモリ228を含む。安全システムは、安全システムにより評価される少なくとも1つの安全機能に基づいてロボットアームを安全状態226にするように構成される。安全状態はSTOP記号により示され、これは、1つの安全モードが、例えばロボットアームの可動部品を制動するように構成されたブレーキシステムを作動させることによって、ロボットアームの電源をオフにすることによって等、ロボットアームが停止させられるモードとし得ることを示す。しかしながら、安全モードは、ロボットアームが人に関して安全と考えられる何れの動作モードとすることもできると理解すべきであり、例えば、ロボットは、より低速で移動し、エラーが発生したことを人に警告する表示信号(視覚的、聴覚的、触覚的等、又はそれらの組合せ)を提供するように命令されてよい。
【0046】
前述のように、ロボットアームは幾つかの異なる停止モードにすることができる。ロボット安全コントローラの主目的は、ロボットアームの動作をモニタして、1つ又は複数の安全限界が超過される状況が発生し、このような状況がロボットプロセスコントローラによって扱われない場合に、ロボットアームを安全モードにすることである。このような状況が生じ、プロセスコントローラによって扱われないと、安全コントローラがロボットアームを切り替える先の安全モードの1つは、いわゆる限界超過停止モードである。限界超過停止は、ジョイント内のブレーキが作動されるほか、ロボットジョイントへの電源スイッチもオフとされる緊急停止と対照的である。しかしながら、緊急停止は、I/Oを介したボタンによって外からでも、ソフトウェアコマンドをプロセスコントローラに送信することによってコントローラの内部からでもトリガできる。プロセスコントローラがロボットアームを停止させると、ロボットアームは、ジョイントモータにロボットアームを固定位置に保持するように命令することによって、ジョイントモータの電源をオフにすることによって、及び/又は機械的ブレーキをかけることによって停止させることができる。しかしながら、安全コントローラは依然として通常モードで動作しており、ユーザは素早くロボットアームを再び再始動させて、ロボットアームの使用を継続できる。これは、安全コントローラが安全限界の超過を検出したとき、例えばTCP(TCP;Tool Center Point(ツール中心点))の速度が安全限界(「TCP速度」)より高い場合に安全コントローラによって内部でトリガされる限界超過停止と反対である。すると、プロセスコントローラはロボットアームを停止させ、ロボットアームの電源をオフにし、機械的ブレーキがかけられ、安全コントローラが限界超過モードとなり、ユーザが安全コントローラをリセットしなければ(GUIにより行う)、ユーザはロボットアームの電源を再びオンにすることができず、これについては後述する。
【0047】
安全システム225はインタフェース装置104とも直接通信してよい点に留意すべきである。このような通信は、安全限界、状態信号等の更新を含むことができる。
【0048】
さらに、留意すべき点として、安全性を高めるために、安全システム225のロボット安全プロセッサ227は独立した2つの安全プロセッサとして実装されてよい。このような独立した2つの安全コントローラのためのタスクの少なくとも一部は同じであってよく、すなわち安全システムにおける冗長性が得られる。独立した2つの安全コントローラを有する本発明の、より具体的な例示的実施形態について、
図3を参照しながら説明する。
【0049】
ロボットコントローラ202と安全システム225は異なるハードウェア上に、例えば異なるコンピュータマザボード、マイクロコントローラ、プロセッサ、コンピュータサーバ及び/又は集積回路の形態で提供される。
【0050】
ここで、本発明の例示的な実施形態を
図3に関して説明する。
図3は、
図1及び
図2に関して前述したロボットアーム301を示しており、同様の要素及び特徴には
図1及び2と同じ参照番号が付与されており、それ以上説明しない。
【0051】
図3では、ロボットアーム301にロボットツールフランジ107に取り付けられたロボットツール314が備えられている。ロボットツール314は、所定のタスクを実行するように構成された各種のアクチュエータ及びセンサ315を含んでいてよい。留意すべき点として、ある例示的実施形態において、ロボットツール315は独立センサであってよく、すなわち、必ずしも物体と物理的に相互作用していなくてもよい。
【0052】
前述のように、ロボットアーム301の基本動作は基本制御ソフトウェアによって制御される。これは、ユーザがウェイポイント及び移動コマンドをロボットコントローラ302に(例えば、インタフェース装置104を介して)提供し得ることを意味し、その後、この入力に基づいてロボットコントローラは基本制御ソフトウェアに基づき、ロボットアームのジョイントを制御して提供された命令にしたがってウェイポイント間で移動させることができる。基本制御ソフトウェアはロボットの全体的な動作を容易にするために開発されるため、例えばロボットツールフランジ104に接続されたロボットツール315を制御することはできない。それは、このようなロボットツール315を移動させることはできるが、これを動作させることはできない。したがって、ロボットツール314がグリッパである場合、把持動作は基本制御ソフトウェアによっては制御できない。このようなツール動作を制御できるようにするためには、追加のソフトウェアが必要であり、この追加のソフトウェアは本明細書中でプロセス制御ソフトウェアと呼ぶ。
【0053】
プロセス制御ソフトウェアは基本制御ソフトウェアに対する何れの追加とすることもでき、これはウェイポイント座標から、例えば基本制御ソフトウェアにしたがって実行されるロボットアーム301の動作の精度を最適化するためのソフトウェアを含む複雑なソフトウェアプログラムまでに及ぶ。プロセス制御ソフトウェアは、外部データ処理ユニット324で開発し、その後ロボットコントローラ202と安全システム325の両方を含むロボット制御システム334にアップロードして、基本制御ソフトウェアと共に実行されるようにすることができる。典型的に、プロセス制御ソフトウェアは、提供される追加のソフトウェアレイヤであり、これは基本制御ソフトウェアの中で利用可能な機能又は、前述のように、ロボットアーム301の動作のためのウェイポイント座標若しくは限界等の動作パラメータを利用する。
【0054】
前述のように、制御ソフトウェア(基本又はプロセス)は、ロボットアームの動作及び、そのため、いつ動作パラメータを安全限界の正常値又はプロセス値にしたがって評価すべきであるかを制御する。正常及びプロセス値の何れをいつ使用するかの非限定的な例は、追加の安全性が必要か否か、すなわち、例えば、ロボットアームがランタイムモード中であるときに人がそこにいることができるエリアにおいてロボットをより低速で、若しくはより小さいモータトルクで動かす必要があるか否か、又はロボットアームが壊れやすい物体を扱う必要があるか否かである。それを超えるとロボットが低減正常値にしたがってしか動作できないような仮想壁を確立することができる。代替的に、仮想壁を超えると、プロセス値がこの例では速度とトルクの安全限界のための値として使用される。
【0055】
他の非限定的な例において、センサによって第一の仮想壁をロボットアームから3メートルの位置に、及び第二の壁をルートアームから1メートルの位置に確立できる。ある人が第一の仮想壁を超えると、安全限界の値は正常から低減正常値に変更され、その人が第二の仮想壁を超えると、ロボットアームは停止すべきである。したがって、プロセス制御ソフトウェアは、その人が第一の仮想壁の外にいるとき、安全限界のための正常値にしたがってロボットアームを動作させる。第一及び第二の仮想壁間で、ロボットアームは低減正常値とプロセス値のうち、最も制約的なものにしたがって動作させられ、ユーザが第二の仮想壁を超えると、プロセスコントローラは緊急停止を作動させる。前述のように、プロセス値を使用することによって、ロボットアームの動作は、これらがランタイム中に調整できるという点でフレキシブルとなり、また、ロボットアームが最も制約的な値にしたがって制御されるのを確実にするために正常値/低減正常値と比較されるという点で安全となる。したがって、ロボット装置の安全性は、追加の安全限界を既存の安全承認及び認証済み安全システムに追加でき、これを、安全限界が変更されるたびにシステムの承認を受ける複雑なプロセスを経ずに行われるという点で向上する。
【0056】
正常値、低減正常値、又はプロセス値の何れが使用されるかを問わず、ロボットコントローラ及び/又は安全コントローラは、ロボットアームを確実に限界超過停止モードにする。限界超過停止モードは、評価の結果が安全限界の1つの超過である場合、すなわちロボットシステムが何かがおかしいと自動的に検出した場合に、自動的に適用される安全停止機構として理解すべきである。典型的に、プロセスコントローラが安全限界の超過に反応しない場合に、ロボットアームを限界超過モードにするのは安全コントローラである。それに加えて、例えばある人が仮想壁を越えて出現したことを検出するセンサ若しくはスイッチ又は緊急停止も、ロボットアームを停止モードにするのをトリガできる。例えば、緊急停止ボタン335が押されると、ロボットコントローラはロボットの動きを明示された期間内で停止すべきであり、これはある例において100ms~1000ms、例えば200ms、300ms、400ms、又は500msである。留意すべき点として、停止時間はユーザにより規定され、したがって、ロボットアームの用途に依存するため、この範囲の中又は外の何れの値とすることもできるが、好ましくは1000ms以内である。安全コントローラが、ロボットアームがこの期間が経過した後も依然として動いていることを検出した場合、安全コントローラはロボットを限界超過停止モードにし、この場合、ロボットアームの電源をオフにして、機械的ブレーキがかかるようにする。
【0057】
特筆すべき点として、本発明によれば、緊急停止(限界超過停止と同様に、ロボットアームのモータの電源がオフにされ、機械的ブレーキがかけられる)と予防停止(ロボットアームは動きを止めるが、電源はオンのままである)の作動は、外部入力に基づいて基本及び/又はプロセス制御ソフトウェアによってトリガできる。典型的に、これらの停止モードはバイナリ限界と呼ばれ、これは先行技術においては、ボタンを押すことによりI/Oモジュール上の入力を変更するか、又はセンサを作動させることによって作動させられる。本発明により、これらの停止モードは、減少モードでの動作と共に、プロセッサによって内部でトリガでき、すなわちI/Oモジュールからの入力に基づくだけではない。さらに、これらのモードをトリガするための値はランタイム中に変化させることができる。
【0058】
前述のように、プロセス値の値だけがリアルタイムで変更可能である。例示的な実施形態において、距離センサがロボットアームに追加され、これはロボットツールからある物体までの距離を特定するように構成される。ロボットアームは、その物体に向かって最大速度(安全限界の正常値)で移動できるが、物体に近付くと(仮想壁を越えると)、速度を下げなければならない(安全限界の低減正常値)。安全上の理由により、ユーザは仮想壁を越えたら減速し、ただし確実に時間内に減速されることを望み、仮想壁はその物体からの安全マージンを含む距離の位置に確立される。できるだけ長時間にわたりできるだけ高速で動作できるようにするために、ユーザはプロセス制御ソフトウェアの中で、物体から特定の距離で仮想壁が通過されると明示し、この距離は距離センサにより測定される。距離が測定されるため、安全マージンを追加する必要がなくなり、したがって、ロボットアームは物体のより近くで正常速度値で動作することができる。
【0059】
この例では、ユーザは距離を、したがって壁の位置を変更できることを望む。さらに、壁を越えたら、ユーザはロボットアームの速度を調整できることを望む。これは、本発明によれば、ユーザがプロセス制御ソフトウェアの中で、例えばプロセス値を変更するために、例えばスライディングバーを使用する可能性をプログラムしたという点で、ランタイム中に可能となる。値が安全限界のための正常又は低減正常値より制約的でなくなることがあり得なくなるのを確実にするために、プロセス値は正常値と比較され、ユーザが誤って、動作パラメータのための正常値より制約的でないプロセス値を選択した場合、ロボットコントローラは正常値を使用している。したがって、ロボットアームのよりフレキシブルな制御とより速いサイクルタイムが得られる。これは、それが、ロボットアームの設計限界をよく知らなくても、ユーザは安全限界のプロセス値を安全に明示し、調整できるという効果を有するという点で有利である。速度を規定するプロセス値が、例えば正常値より高い場合に、ロボットアームの動作は正常値にしたがって行われる危険な状況は発生しない。
【0060】
所定の限界の集合は、本明細書の中では安全限界として明示される。これらの限界の値は、正常値又はプロセス値の何れとも呼ばれ、基本及び/又はプロセス制御ソフトウェア中で明示される。典型的に、限界は許容される最大の速度、フォース、方向、距離、位置、タイマ等を規定している。したがって、ロボットアーム301を動作させるとき、これらの安全限界の値はロボットアーム301の動作を限定している。基本制御ソフトウェア内に明示される安全限界が超過されると、ロボット制御システム334はロボットアーム301の動作を中断し、確実にロボットアーム301がいわゆる限界超過停止モードとされるようにする。
【0061】
しかしながら、ロボットアーム301が最終的に限界超過停止モードにならないことが有利であり得、なぜなら、その結果として電源がオフにされ、ロボットにブレーキがかけられ、安全コントローラのリセットが必要となるからである。ロボットの動作を担当するのはプロセスコントローラであり、このコントローラが、安全限界は間もなく超過されると推定した場合、これはロボットアームを予防停止モードにすべきである。何らかの理由でロボットコントローラプロセッサ220がこのような超過を観察できず、ロボットアームが安全限界を超過すると、ロボット安全システム225が引き継いで、確実にロボットアームが安全モード、例えば限界超過停止モードにされるようにする。
【0062】
より具体的には、例示的実施形態において、ロボットコントローラは安全限界に従うように最善を尽くす。それがその現在の速度及び軌道に基づいて安全限界の1つに従えないことを算出すると、それは事前対応的に「予防停止」を行い、これは基本的にロボットが動くのを停止させて、インタフェース104を介してユーザに対する警告を表示するだけであり、モータの電源は依然としてオンであり、ブレーキはかけられない。それが実際に安全限界の1つを超過した場合(予防停止が故障したか、又は例えば外的な力がロボットを予想より速く移動させたことによる)、ロボット安全コントローラはロボットアームを限界超過停止モードにする。ロボット安全コントローラがロボットアームを限界超過停止モードにすると、それはロボットコントローラに知らせ、これはロボットを(ある時間限界内で)完全に停止させるための軌道を計算し、電源オフコマンドを発出する。ロボットコントローラがロボットを限界内に停止させられない場合、ロボット安全コントローラは、アームが依然として移動中か否かに関係なく、機械的ブレーキをかける。
【0063】
例示的な実施形態において、ロボットコントローラ220はロボットアーム301のセンサから入力を受け取り、及び/又は例えば電流消費の測定に基づいて、ロボットアーム301のリアルタイムの動作を説明する動作パラメータを計算する。確定された動作パラメータに基づき、ロボットコントローラ202は、その動作パラメータについて、この値が関連する安全限界の値からオフセットを差し引いたものを超過するか否かを評価する。安全限界からは、ロボットコントローラ220と安全プロセッサ227のどちらがロボットアームを限界超過停止モードにしなければならないかの点での矛盾を回避するために、オフセットが差し引かれる。
【0064】
代替的な例示的実施形態において、ロボットコントローラは、安全限界からオフセットを差し引いたものが超過される、又は超過されそうであると評価又は推定された場合、ロボットアームを予防停止モードにする。
【0065】
代替的な例示的実施形態において、ジョイントコントローラ336a、336bは、冗長計算、冗長測定等を実行し、これらの冗長計算/測定間に完全な一致がない場合、ジョイントコントローラはこれを示す信号をロボットコントローラ及び/又はロボット安全コントローラに送信する。この信号を受け取ると、ロボットコントローラはロボットアームが停止モードなるようにし始める。特筆すべき点として、完全にという用語が使用される場合、タイミング、測定ノイズ、センサ分解能等によって特定の測定誤差が容認されると理解されたい。
【0066】
上述の例に関して、ロボットコントローラがある期間内にロボットアームを停止させることができない場合、ロボット安全コントローラは、ロボット安全コントローラからの直接の通信に基づいて、又はプロセスコントローラを介して、ロボットアームを強制的に限界超過停止させる。限界超過停止は、機械的ブレーキを解除してロボットアームの電源をオフにすることによって行われる。
【0067】
安全コントローラをプロセスコントローラのバックアップとして使用することは、ロボットアームのための認証された安全システムが、ロボットアームの安全な動作、すなわち危険な状況が発生する前、又は少なくとも危険な状況によってロボットアームの周囲の人や物に深刻な損害が生じる前にロボットアームが安全モードにされるのを確実にすることの一部である。安全システムの認証によれば、その安全限界の何れも、また何れのハードウェア構成も、ロボットアームの電源をオフにし、安全システムを再スタートしなければ変更できない。したがって、典型的にユーザはランタイム中、すなわちロボットアームの動作中に安全限界を変更することができない。先行技術においては、ユーザは、非バイナリ値を変更するために、またこれが新しいプロセス制御ソフトウェアのアップロードを介して行われる場合も、ロボットアームの電源をオフにしなければならない。特筆すべき点として、1つの実施形態におけるロボット安全コントローラは、ロボットコントローラより少なくとも1段階高い安全レベルとすることかでき、さらに安全性を高めるために、安全コントローラは、安全コントローラのタスクの冗長性を確保する独立した2つのコントローラとして実装されてよい。
【0068】
安全レベルへの言及は、ハードウェア、すなわちコントローラの故障の平均確率を指してよい。したがって、高レベルの安全コントローラはプロセスコントローラより故障の平均確率が低い。ハードウェアとソフトウェアの両方を含んでいてよい高レベルの安全システムは、SIL(SIL;Safety Integrity Levels)レベル1~4にしたがって分類されてよく、4が最も高い。
【0069】
したがって、説明したように、プロセス制御ソフトウェアをロボットコントローラにアップロードする際、それに関連する安全限界が基本制御ソフトウェアと共に使用されてロボットアームが制御される。例えば肘部の速度又はフォースを明示する限界は基本制御ソフトウェアの中で提供されるが、様々な理由により、ロボットアームのユーザはこれらの限界を調整して、ロボットアームをより低速で移動させ、又はより小さいトルクとすることができるようにしたいかもしれない。したがって、基本制御ソフトウェアの安全限界により規定されるロボットツールの2m/sの速度を許容する代わりに、許容された速度はプロセス制御ソフトウェアの安全限界によって1m/sまで低下されてよい。
【0070】
例示的な実施形態において、基本制御ソフトウェアはコントローラメモリ221に記憶され、そこからそれはロボットコントローラによって実行され、そこから安全コントローラも少なくとも安全限界にアクセスできる。特筆すべき点として、ロボット安全コントローラはまた、プロセスコントローラがそうできない場合ロボットアームを安全モードにすることができるようにするために、非バイナリ限界にアクセスできる。代替的に、又はそれに加えて、基本制御ソフトウェア及びプロセス制御ソフトウェアの一部は、安全メモリ228上にある。多くの場合、この部分は安全限界を含むであろう。
【0071】
プロセス制御ソフトウェアがロボットツールを制御している状況では、アクチュエータ及びセンサはロボットコントローラに関連付けられるI/Oポートに電気的に接続される。これが行われ、プロセス制御ソフトウェアがロボットコントローラにアップロードされると、基本制御ソフトウェアとプロセス制御ソフトウェアの組合せに基づくロボットコントローラは最終的なロボットツールを含むロボットアームを制御することができる。アップロードされると、プロセス制御ソフトウェアの安全限界を含む動作値の少なくとも一部は、ロボットアームのモードを電源オフモードに切り替えることなく変更可能である。
【0072】
ロボットアームがプロセス制御ソフトウェアの安全限界にしたがって制御されるとき、これらの限界はロボットアームの動作が基本制御ソフトウェアの変更不能な安全限界を超過し得ないようにすることが確実にされる。これは、ある動作パラメータの確定された値を、基本制御ソフトウェアとプロセス制御ソフトウェアによって提供されたその動作パラメータのための安全限界の値のうち最も制約的なもので評価することによって行われる。このようにして、プロセス制御ソフトウェアによって明示された安全限界の値が、例えば高すぎる場合に、ロボットアームの動作は基本制御ソフトウェア内で明示された安全限界の値にしたがって行われることが確実となる。このようにして、プロセス制御ソフトウェアがそれに関連する安全限界の値を変更できても、ロボットアームの動作は認証された安全システムの安全要求事項に適合することが常に確実となる。
【0073】
ジョイント速度及びフォース、TCP速度及びフォース、肘部速度及びフォース、停止距離及び時間、パワー、トルク、並びにツールの方向等の動作パラメータは、直接測定されるか、又は測定に基づいて導出される。安全限界に照らして評価されるのはこれらの値であり、これらが超過されると、ロボットアームは限界超過停止モードとされる。評価結果に鑑みて必要なアクション、すなわちロボットアームを予防停止モード又は限界超過停止モードにすることは、ロボットプロセスコントローラ又はロボット安全コントローラの何れかによって行われる。しかしながら、評価は、例えばジョイントコントローラ等の局所ジョイントコントローラで行うことかでき、すると、その結果はプロセス及び安全コントローラに送信される。
【0074】
例示的な実施形態において、対応する安全限界の値での動作パラメータの値の評価は、ロボットコントローラと比べてプロセスコントローラでは異なるように行われる。これは、必要な場合に2つのコントローラのうちロボットアームを限界超過モードにすべきなのは何れかという点での矛盾を回避するためである。これを回避するために、プロセスコントローラは動作パラメータの確定された値を対応する安全限界からオフセットを差し引いたもので評価している。オフセットは、プロセスコントローラが反応するのに十分に大きく、しかもできるだけ大きい動作ウィンドウ内でのロボットアームの動作を容易にするのに十分に小さくすべきである。オフセットは、安全限界の種類に依存し、固定値として、又は安全限界のパーセンテージとして提供されてよい。例えば、ジョイント角速度に関連して、安全限界オフセットは固定値12.5rad/秒であってよく、安全限界は192rad/秒であってよい。これによって、概算のオフセットは安全限界の値の1~15%の範囲内となる。
【0075】
例示的な実施形態において、プロセス制御ソフトウェアがこれを認める場合、ユーザは安全限界のプロセス値を、インタフェース装置104を介して変更することができる。このような変更は、特定のプロセス制御ソフトウェアに応じて、ロボットアームの動作中、すなわち動いている間か、又は停止モードにあるときの何れかに行うことができる。代替的に、このロボットツール又はセンサは、安全限界の値を変更するために使用できる。ロボットツールと物体との間の最小距離に関する安全限界は、ツールセンサから読み取られる値で更新できる。これには、ロボットアームがティーチモードにあることが必要かもしれず、そこでは安全限界値のこのような更新が可能である。
【0076】
図4は、ロボットアームの動作の曲線451(実線)を示す。曲線は、動作パラメータのリアルタイムの確定された値を表し、その値は正常値452(破線)、低減正常値453(一点鎖線)、及びプロセス値454(点線)により規定される安全限界値によって限定される。動作パラメータはフォース、距離、速度等とすることができる。例示的な実施形態において前述したように、動作パラメータの値はロボットコントローラによって安全限界の明示された値より下のオフセット455となるように制御されることに留意されたい。したがって、安全限界について異なる値の超過がないかぎり、ロボットアームの動作は継続する。値からオフセットを差し引いたものが超過されると、プロセスコントローラはロボットアームを停止モードにすべきであり、これが行われない場合、安全コントローラがロボットアームを限界超過モードにすべきである。
【0077】
図のように、ロボットアームは安全限界の正常値及びプロセス値のうちの最も制約的なものにしたがって制御される。正常値452と低減正常値453は変化せず、それに対してプロセス値454の値は図の動作サイクル部分中に数回変化する。さらに、プロセスコントローラはロボットアームの速度を、実線及び、同じく先に説明したその上のハッチング付き領域により示されるようにアクティブ安全限界値456a~456iより下のオフセットに制御することが示されている。ロボットアームは、正常値より高いプロセス値を有する正常モードで始動し、したがって、
図4に示されるシーケンスの初期には、プロセスコントローラは正常値により規定されるアクティブ安全限界値456aにしたがってロボットアームを制御する。プロセス値の正常値及び低減正常値との評価又は比較は、動作中継続的に行われ、プロセス値の調整、制御ソフトウェアの状態変化、オペレータのモード変更、又はその他によりトリガされる。
【0078】
曲線451がロボットアームの速度を反映しているかもしれない場合、前述のように、ロボットアームは時間T1まで正常速度(アクティブ安全限界456により示される)で動作させられる。
【0079】
時間T1で、減少モード(影付き領域として示される)はロボットツールからの入力によって、外部センサ、又は制御ソフトウェアによっての何れかでトリガされる。したがって、アクティブ安全限界456bは低減正常値に変化し、時間T1~T2の間、ロボットアームはそれに基づいて制御される。低減正常値はまた、プロセス値454より低く(より制約的)、したがって、ロボットアームは低減正常値453により規定されるアクティブ安全限界456bにしたがって制御される。
【0080】
時間T2で、ロボットアームは再び正常モードに切り替わり、したがってアクティブ安全限界456cの値は、これがプロセス値454と比較して依然としてより制約的であるという点で、再び正常値452となる。
【0081】
時間T3で、ロボットアームは依然として正常モードにあり、プロセス値が調整される。プロセス値454の新しい値を正常値452と評価した結果、新しいアクティブ安全限界456dはより制約的であり、したがって、時間T3~T4間ではこれが速度を限定するために使用される。
【0082】
時間T4で、プロセス値は再び新しい値に更新される。正常値452と新しいプロセス値454の評価の結果、依然として同じであり、したがってロボットアームはプロセス値454にしたがって引き続き制御され、アクティブ安全値456eは新しいプロセス値に更新される。
【0083】
時間T5で、ロボットアームの動作モードは減少モード(影付き領域として示される)に変化し、すなわち安全限界に関する値の新たな評価が、今回は低減正常値453とプロセス値454との間で行われる。評価により、プロセス値454が最も制約的であるいう結果となり、したがってプロセスコントローラは引き続き、アクティブ安全値456eにしたがって制御する。
【0084】
時間T6で、プロセス値は再び新しい値454に調整され、動作モードは依然として減少モードであり、低減正常値453は変化しないままである。安全限界値の評価により、依然としてプロセス値454が最も制約的であるとの結果が得られ、したがってアクティブ安全値456fは新しいプロセス値に更新される。
【0085】
時間T7で、プロセス値は再び新しい値に調整され、動作モードは依然として減少モードであり、低減正常値453は変化しないままである。評価の結果、今度は新しいプロセス値が低減正常値より高いという点で変化している。したがって、アクティブ安全値456gは低減正常モード値に更新される。
【0086】
時間T8で、動作モードは再び正常モードに変わり、したがって評価では今度は正常値をプロセス値と比較する。それによって、プロセス値が最も制約的であるという結果が得られ、したがってアクティブ安全限界546hはプロセス値に更新される。
【0087】
時間T9で、プロセス値は再び新しい値に調整され、その間、動作モードは正常モードのままである。評価の結果は今度は、正常値が新しいプロセス値より制約的であることを示しており、したがって、アクティブ安全限界546iは正常値に更新される。
【0088】
時間T10で、アクティブ安全限界456iによる正常値452の超過が観察される。より具体的には、プロセスコントローラによって時間内に観察又は反応されず、したがって安全コントローラによって扱われる超過。これは、曲線451により示される動作パラメータの値が正常値からオフセットを差し引いたものより高い値まで上昇することにおいて示されている。正常値に到達すると、安全コントローラの限界超過停止へのモード変化が、前述のようにロボットアームの動作を停止させる。この例示的な実施形態において、安全コントローラは瞬時に機械的ブレーキをかけ、ロボットの電源をオフにする。ほとんどの場合、安全コントローラがロボットアームを限界超過停止モードにする前にロボットアームを予防停止にするのはプロセスコントローラである。
【0089】
安全限界の値の評価は少なくとも正常値対プロセス値、又は低減正常値対プロセス値のいずれか2つの値間の比較である。前述のように、1つ又は複数の安全限界のために幾つかのプロセス値を有することが可能であり、したがって、評価は正常値/低減正常値対プロセス値の複数のペアを比較することを含んでいてよい。
【0090】
図4からわかるように、ランタイム中はプロセス値だけを調整できる。正常値及び低減正常値の調整はランタイム中は行われず、それには動作を停止する必要がある。説明したように、本発明はこの問題を、ユーザがプロセス値を導入し、その後調整することができ、これらがそれぞれ正常値及び低減正常値より制約的であれば、ロボットアームは確実にこれらにしたがってのみ制御されるようにすることによって解決する。
【0091】
特筆すべき点として、ロボットアームの1つの動作サイクル中、各々が安全限界のために独自のプロセス値を有する複数の異なるプロセス制御ソフトウェアが同時に、及び/又は逐次的に実行してよい。これを示すために、下の表1は基本制御ソフトウェア及び異なるプロセス制御ソフトウェアのための異なる値を有する幾つかの安全限界を示す。
【0092】
【0093】
図5は、本発明の例示的な実施形態による前述のロボットシステムのモニタ方法のフローチャートを示す。方法は、基本制御ソフトウェアにしたがって制御可能なロボットアームを確立する初期ステップS1を含む。例えば基本制御ソフトウェアの移動コマンドに基づいて、ロボットコントローラはロボットアームをデカルト座標系の中で移動させることができる。移動シーケンスは、ロボットアームのプログラマ又はユーザによって特定され、典型的に反復的シーケンスである。
【0094】
少なくとも幾つかのロボットツールは、ロボットコントローラにより制御されるために専用の制御ソフトウェアを必要とする。このツール特定制御ソフトウェアはプロセス制御ソフトウェアと呼ばれ、ステップ2 S2で確立される。プロセス制御ソフトウェアは、ロボットに取り付けられたセンサから入力を受け取り、出力をロボットツールの種類に応じてアクチュエータ、バルブ、又はその他に提供してよい。したがって、基本及びプロセス制御ソフトウェアの組合せに基づき、ロボットコントローラは、ロボットツールを含むロボットアームを制御して、特定の動作を実行することができる。
【0095】
プロセス制御ソフトウェアは、ロボットコントローラ202を使用して直接開発され、したがってコントローラメモリ221に記憶できる。代替的に、プロセス制御ソフトウェアの少なくとも一部はロボットコントローラの外部で開発され、その後、コントローラメモリ221にアップロードされ、そこからこれはロボットコントローラにとって、及びおそらく安全プロセッサ227にとってアクセス可能である。典型的に、プロセス制御ソフトウェアが主としてロボットコントローラから独立して開発される場合、メモリにアップロードされ、ロボットアームがインストールされると、ロボットアームはそれが動作することになる環境中に統合される必要がある。プロセス制御ソフトウェアがどのように開発されるかを問わず、これはステップ3 S3でコントローラメモリ221に記憶される。
【0096】
前述のように、ロボットアームは基本制御ソフトウェアと共に製作され、これには所定の安全限界が含まれ、例えば速度、フォース、停止距離、ツール方向等(これより多くの例を表1に示す)の動作を限定する。安全限界の各々について、ロボットアームの動作を限定する正常値と呼ばれるデフォルト値が明示される。ロボットツールと、ロボットアームが実行する必要のある動作タスクに応じて、これらの限界は正常値とは異なっている必要があり、これに対応するために、プロセス制御ソフトウェアは安全限界の1つ又は複数のためのプロセス値を導入する。これらのプロセス値の値は、ロボットアームが動作モードにある間のランタイム中に調整されてよく、それに対して正常値はロボットアームの電源がオフである時にしか変更できない。
【0097】
電源がオフの間に正常値しか変更できない理由は、これらの値が、ロボットアームにより扱われる物体と人を含むその周囲の両方に関するロボットアームの安全な動作を確実にする、ロボットの認証された安全システムの一部であるからである。したがって、正常値が変更されるたびに、ロボットコントローラは新しい値を承認して、設計限界等が超過されないことを確実にする必要がある。そうでなければ、新しい値が容認され、すると、ロボットアームは安全限界の新しい値にしたがって制御される。
【0098】
ステップ4 S4で、ロボットアームはその局所的環境の中で統合され、動作する準備が行われるとして示され、統合後、専用の動作タスクを実行するための複数の安全限界の正常値及びプロセス値を含め、基本及びプロセス制御ソフトウェアの組合せにしたがって制御されることができる。
【0099】
ステップ5 S5で、ロボットアームの動作中に、ロボットコントローラは動作パラメータのリアルタイム値を確定する。動作パラメータはロボットのセンサから直接提供することも、又はセンサ入力から導出することもできる。
【0100】
前述のように、プロセス値はロボットアームの動作中リアルタイムで調整することができる。これは、例えばロボットアームの統合が、ロボットアームが動作モードにある間に安全限界の値に対する変更をリアルタイムで調整できるために、より迅速にできるという点で有利である。
【0101】
しかしながら、安全限界は安全システムの一部であるため、したがって値の境界があり、許容される範囲外でプロセス値を調整することによって安全性が損なわれることがないようにするために、その変更は正常値と比較され、最も安全なもの、すなわち典型的には、現在及び正常値のうち最も制約的なものがロボットアームの動作のための限界として選択される。この比較又は評価は、ステップ6 S6においてロボットコントローラによってリアルタイムで行われ、安全コントローラもまた、ロボットアームの動作をモニタしている。動作値が安全限界を超過する場合、ロボットコントローラは所定の時間内にロボットアームを停止モードにする。
【0102】
特筆すべき点として、さらに、又は代替的に、ロボットジョイントコントローラが計算又は比較を含む評価を行ってよく、例えば2つのジョイントコントローラがセンサ入力、計算、又は比較において一致しない場合、これを反映する信号がロボット及び安全コントローラに提供される。このような信号を受信すると、ロボットコントローラはロボットアームを停止モードにすべきであり、それが再び安全コントローラによってモニタされる。
【0103】
安全コントローラにより行われるモニタには、動作パラメータを確定すること、例えば計算、受信等することと、それを関連する安全限界の値と比較することが含まれてよい。さらに、安全コントローラは、ロボットコントローラがロボットアームを所定の停止時間内に停止モードにするか否かをモニタしてよい。これが当てはまらない場合、安全コントローラは、ロボットアームを限界超過停止モードにする。
【符号の説明】
【0104】
101、301 ロボットアーム
202、302 ロボットコントローラ
103a~103f ロボットジョイント
104 インタフェース装置
105 ロボット基部
106 ディスプレイ
107 ロボットツールフランジ
108 入力装置
109 ロボット制御ボックス
111a~111f ロボットジョイントの軸
112 重力の方向
113a~113f ロボットジョイントの回転矢印
314 ロボットツール
315 ツールアクチュエータ及びセンサ
216a;216b;216f 出力フランジ
217a;217b;2179f ジョイントモータ
218a;218B;218f 出力アクスル
219a;219b;219f ジョイントセンサ
220 コントローラプロセッサ
221 コントローラメモリ
222a;222b;222f ジョイントセンサ信号
223a、223b、223f モータ制御信号
324 外部データ処理ユニット
225、325 安全システム
226 安全モード
227 安全プロセッサ
228 安全メモリ
229 追加の安全ソフトウェアコード
334 ロボット制御システム
335 緊急停止ボタン
336a、336b ジョイントコントローラ
451 動作パラメータの曲線
452 安全限界正常値
453 安全限界低減正常値
454 プロセス値
455 オフセット
456a~456i アクティブ安全限界値
S1 基本ソフトウェアと共にロボットアームを確立
S2 プロセス制御ソフトウェアを確立
S3 プロセス制御ソフトウェアをメモリに記憶
S4 ロボットコントローラをモニタ
S5 追加の安全パラメータの受信を確認
S6 追加の安全パラメータの試験