(57)【要約】  ロボット装置（１）のための制御装置において、ロボット装置（１）は、少なくとも１つのロボット（２）を含み、ロボット（２）は、作業領域（３）内において動作可能であって、かつ、エンドエフェクタ（４）を有し、エンドエフェクタ（４）は、プロセスシーケンス（１２）を実行するために作業領域（３）内において移動可能であり、制御装置は、プロセスシーケンス（１２）を入力、規定及び／又は設定するための制御手段（７）を有し、制御手段（７）は、プロセスシーケンス（１２）を実行するための軌道（６）を計画し、プロセスシーケンス（１２）を実行するための軌道（６）に基づいてロボット（２）を制御するように構成されており、制御手段（７）は、チェック機能を有していて、ロボット（２）を制御する前に軌道（６）に衝突がないかどうかをチェックするように構成されている。
2022500260.tif 000002
【特許請求の範囲】
【請求項１】
ロボット装置（１）のための制御装置であって、
前記ロボット装置（１）は、少なくとも１つのロボット（２）を含み、
前記ロボット（２）は、作業領域（３）内において動作可能であって、かつ、エンドエフェクタ（４）を有し、
前記エンドエフェクタ（４）は、プロセスシーケンス（１２）を実行するために前記作業領域（３）内において移動可能であり、
前記制御装置は、前記プロセスシーケンス（１２）を入力、規定及び／又は設定するための制御手段（７）を有し、
前記制御手段（７）は、前記プロセスシーケンス（１２）を実行するための軌道（６）を計画し、前記プロセスシーケンス（１２）を実行するための前記軌道（６）に基づいて前記ロボット（２）を制御するように構成されている、
制御装置において、
前記制御手段（７）は、チェック機能を有していて、前記ロボット（２）を制御する前に前記軌道（６）に衝突がないかどうかをチェックするように構成されている、
ことを特徴とする制御装置。
【請求項２】
前記チェック機能は、ユーザによって入力手段（１０）を用いて選択可能である、
請求項１に記載の制御装置。
【請求項３】
前記制御手段（７）は、前記軌道（６）を、前記プロセスシーケンス（１２）に基づいて衝突がないように計画するように構成されている、
請求項１又は２に記載の制御装置。
【請求項４】
前記制御手段（７）は、前記プロセスシーケンス（１２）及び／又は前記軌道（６）から開始点及び終了点を抽出するように構成されており、
前記衝突がないかどうかのチェック、及び／又は、前記衝突のない軌道（６）の計画は、前記開始点及び前記終了点に基づいている、
請求項１乃至３のいずれか一項に記載の制御装置。
【請求項５】
周囲データを検出するためのセンサ装置（１１）が設けられており、
前記制御手段（７）は、前記周囲データに基づいて前記衝突がないかどうかのチェックを実行するように構成されている、
請求項１乃至４のいずれか一項に記載の制御装置。
【請求項６】
前記制御手段（７）は、プロセスモジュール（８）及び軌道チェックモジュール（９）を有し、
前記軌道チェックモジュール（９）は、上位のユニットを形成していて、かつ、衝突がないかどうかをチェックするように構成されており、
前記プロセスモジュール（８）は、前記プロセスシーケンス（１２）を入力、規定及び／又は設定するように構成されており、
前記軌道チェックモジュール（９）と前記プロセスモジュール（８）とは、データ技術的に接続されており、前記チェック機能は、前記プロセスモジュール（８）によって呼出可能及び／又は使用可能である、
請求項１乃至５のいずれか一項に記載の制御装置。
【請求項７】
前記プロセスシーケンス（１２）の入力、規定及び／又は設定、並びに、前記衝突がないかどうかのチェックは、１つの共通のプログラミング環境内において実装されており及び／又は使用可能である、
請求項１乃至６のいずれか一項に記載の制御装置。
【請求項８】
前記制御手段（７）は、プロセスシーケンス（１２）及び／又はプロセスシーケンスコンポーネントを有する機能データベースを含む、
請求項１乃至７のいずれか一項に記載の制御装置。
【請求項９】
前記制御手段（７）を介してロボット位置を入力可能であり、
前記制御手段（７）は、前記チェック機能の選択時及び／又は実行時に、前記ロボット位置（２２）に衝突があるかどうかをチェックするように構成されている、
請求項１乃至８のいずれか一項に記載の制御装置。
【請求項１０】
前記制御手段（７）を介して軌道種類、特に線形進路又は曲線進路を設定可能であり、
前記制御手段（７）は、対応する前記軌道種類の軌道（１９）を決定するように構成されている、
請求項１乃至９のいずれか一項に記載の制御装置。
【請求項１１】
少なくとも１つのロボット（２）を有するロボット装置（１）であって、
請求項１乃至１０のいずれか一項に記載の制御装置が設けられている
ことを特徴とするロボット装置（１）。
【請求項１２】
特に請求項１乃至１０のいずれか一項に記載の制御手段（７）によって、ロボット装置（１）を制御するための方法であって、
ユーザにより、プロセスシーケンス（１２）が規定、入力及び／又は設定され、
前記ユーザにより、チェック機能が選択され、
前記チェック機能の選択時に、前記軌道（１９）に衝突がないかどうかがチェックされ、
前記チェック機能の規定、入力及び／又は設定、並びに、選択は、１つの共通のモジュールにおいて実施される、
方法。
【請求項１３】
請求項１２に記載の方法を実施するための、特にデータ担体上の、コンピュータプログラム。
【請求項１４】
請求項１３に記載のコンピュータプログラムが記憶されている機械可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
従来技術
本発明は、ロボット装置のための制御装置であって、ロボット装置は、少なくとも１つのロボットを含み、ロボットは、作業領域内において動作可能であって、かつ、エンドエフェクタを有し、エンドエフェクタは、プロセスシーケンスを実行するために作業領域内において移動可能であり、制御装置は、プロセスシーケンスを入力、規定及び／又は設定するための制御手段を有し、制御手段は、プロセスシーケンスを実行するための軌道を計画し、プロセスシーケンスを実行するための軌道に基づいてロボットを制御するように構成されている、制御装置に関する。
【背景技術】
【０００２】
例えば、ロジスティクス及びその他のシステムのような生産システムにおいては、例えば部品の搬送及び／又は組立てのために、しばしばキネマティクス（ロボット）が使用される。ロボットが処理すべき動作又は作業は、通常、ユーザによって事前にプログラミングされる。このために、ユーザは、ロボットと周囲との間、及び／又は、ロボットとロボットとの間の衝突を回避するために、ロボットがどのように挙動及び／又は移動するかを正確に把握する必要がある。特に、例えば、センサによって指定される動的な開始点及び／又は目標点が追加される場合には、問題が発生する。その場合には、あらゆる時点におけるロボットの衝突のない動作を保証することは、ユーザにとって不定に複雑になる。
【０００３】
おそらく最も近い従来技術である独国特許出願公開第１０２０１３２０３５４７号明細書は、作業動作及び協調動作において動作可能であって、かつ、検出領域内にいる人間を検出するための検出手段を有するロボットを備えた、ロボットワークステーション装置を記載している。さらに、ロボットワークステーション装置は、ロボットを制御するための制御手段を含み、制御手段は、検出領域内にいる人間が検出されたときに、ロボットを作業動作から協調動作に切り替えるように制御する。検出領域の区域から人間が退出しても、依然としてロボットは、ブロック期間の間、ブロックされる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】独国特許出願公開第１０２０１３２０３５４７号明細書
【発明の概要】
【課題を解決するための手段】
【０００５】
発明の開示
本発明によれば、請求項１に記載の特徴を有するロボット装置のための制御装置が提案される。さらに、ロボット装置、方法、コンピュータプログラム及び機械可読記憶媒体が提案される。好適な及び／又は有利な実施形態は、以下の説明、従属請求項及び添付図面から明らかになる。
【０００６】
ロボット装置のための制御装置が提案される。特に、制御装置は、ロボット装置内に組込可能であるものとしてもよいし、及び／又は、組み込まれているものとしてもよい。制御装置は、好ましくはハードウェアモジュールとして構成されており、代替的に、制御装置を、ソフトウェアモジュールとして構成するものとしてもよい。ロボット装置は、例えば、生産、測定技術又はロジスティクスにおけるロボット装置である。ロボット装置によって対象物を処理、搬送及び／又は測定することができる。例えば、ロボット装置は、製造ライン又はロジスティクスラインの一部である。特に、制御装置を、複数のロボット装置のために構成することができ、この場合、制御装置は、１つのロボット装置及び／又は複数のロボット装置にデータ技術的に接続されている。
【０００７】
ロボット装置は、少なくとも１つのロボットを含む。好ましくは、ロボット装置は、複数のロボット、例えば、少なくとも５個又は１０個のロボットを含む。ロボットは、デカルトロボット、スカラロボット又は多関節アームロボットであり得る。特に、ロボットを、線形軸線として構成するものとしてもよい。ロボット装置が複数のロボットを含む場合には、これらのロボットを、それぞれ同等に又は異なるように構成することができる。さらに、ロボット装置のロボット同士は、互いに相互作用することができ、協調動作のために構成されている。
【０００８】
ロボットは、作業領域内において動作可能であり、及び／又は、作業領域内に配置可能である。作業領域は、例えば、生産ライン、ロジスティクスライン又は製造システムの一区域である。作業領域は、特に空間領域である。ロボットは、エンドエフェクタを有する。エンドエフェクタは、特に、グリッパ及び／又はツールとして構成されている。エンドエフェクタによって、オブジェクト、対象物及び／又は被加工物を、把持、保持、処理及び／又は測定することができる。特に、ロボットは、２つ以上のエフェクタを有することができ、これらのエンドエフェクタは、好ましくは、互いに協調するように構成されており、例えば、オブジェクトを、１つのアクチュエータから次のアクチュエータに移し替えることができる。ロボットは、例えば、ロボットアームを有し、ロボットアームが、エンドエフェクタを含む。エンドエフェクタは、作業領域内において移動可能である。例えば、エンドエフェクタは、作業領域内において旋回可能、移動可能及び／又は回転可能である。
【０００９】
ロボットは、プロセスシーケンスを実行するように構成されている。プロセスシーケンスは、例えば、被加工物、オブジェクト及び／又は対象物を製造、処理、搬送及び／又は測定するための部分ステップ又はシーケンス全体である。プロセスシーケンスは、特に複数のプロセスステップ、例えば、搬送ステップ、把持ステップ、処理ステップ及び／又は保持ステップを含み得る。プロセスシーケンスは、特に、複数のプロセスステップのシーケンス計画を有し、このシーケンス計画において、これらのプロセスステップを実行すべきである。特に、ロボット及び／又はロボット装置によって、複数の異なるプロセスシーケンスを表現可能、動作可能及び／又は実行可能である。
【００１０】
制御装置は、制御手段を有する。制御手段は、好ましくはハードウェアモジュールである。代替的に、制御手段を、例えば、コンピュータユニット上、プロセッサ上又はマイクロチップ上のソフトウェアモジュールとして構成するものとしてもよい。制御手段は、好ましくは、１つのロボット及び／又は複数のロボットのための中央の制御手段である。ロボットと制御手段とは、例えば、ケーブル線路によって、又は、ケーブルレス接続によって、互いにデータ技術的に接続されている。
【００１１】
制御手段上において、ユーザによってプロセスシーケンスを設定、入力及び／又は規定することができる。例えば、このために制御手段は、入力手段を有する。ユーザは、入力手段を用いて、プロセスシーケンスを構成、入力及び／又は規定することができる。例えば、プロセスシーケンスの入力及び／又は規定は、個々のプロセスステップの編成であり、特に時間的なシーケンスである。さらに、プロセスシーケンスの入力及び／又は規定は、プロセスステップへのロボットの割当ても含み得る。例えば、プロセスシーケンスの第１のプロセスステップを、第１のロボットによって実行すべきであり、他のプロセスステップを、ロボット装置の他のロボットによって同時に及び／又はその後に実行すべきであるということが、ユーザによって規定される。好ましくは、プロセスシーケンスの入力、規定及び／又は設定は、プログラミング環境内において実施される。プログラミング環境は、例えば、プロセスシーケンスのグラフィカルな入力、規定及び／又は設定を可能にする。代替的に、プログラミング環境は、コマンドラインに基づく入力方式を可能にしてもよい。特に、制御手段により、プロセスシーケンスを入力、規定及び／又は設定する際に、プロセスステップ及び／又はプロセスシーケンスの開始点及び／又は終了点を規定することができる。
【００１２】
制御手段は、プロセスシーケンスを実行するための軌道を計画し、プロセスシーケンスを実行するための軌道に基づいてロボットを制御するように構成されている。特に、制御手段は、プロセスシーケンスを実行するための経路を計画するように構成可能である。特に、以下においては、軌道とは、一般的に経路であるとも理解することができる。経路とは、特に道筋の関数、例えば進路の関数であると理解される。軌道とは、好ましくは、時間の関数であると理解され、特に、ロボットの加速度及び／又は運動学的制限が考慮される。好ましくは、軌道及び／又は経路の計画と、ロボットの制御とが、１つの共通のモジュール内及び／又は共通のプログラミング環境内において実施される。軌道は、特に、作業領域内のエンドエフェクタの移動の進路及び／又は記述である。軌道は、例えば、位置ベクトルの形態における進路として実現可能であり、位置ベクトルは、時間依存性であって、かつ、それぞれの時点ｔをエンドエフェクタの位置ベクトルに割り当てるものであり、この割当ては、基準系又は重心系において実施される。さらに、軌道は、任意の時点におけるロボットの、特に多関節アームロボットの軸線区分の割当てとしても形成可能である。
【００１３】
制御手段は、チェック機能を有する。チェック機能は、モジュール、ソフトウェアコンポーネント又は方法ステップを形成することができる。例えば、チェック機能は、方法ステップ及び／又はプログラムステップである。制御手段、特にチェック機能は、軌道に衝突がないかどうかをチェックするように構成されている。軌道に衝突がないかどうかのチェックは、特に、プロセスシーケンスを実行するようにロボットを制御する前に実施される。好ましくは、まず始めに、プロセスシーケンスの設定及び／又は規定と、例えば、プロセスシーケンスを実行するための軌道の計画とが実施され、続いて、衝突がないかどうかのチェックが実施され、その後、制御が実施される。衝突がないかどうかのチェックは、特に、ロボット、特にエンドエフェクタが、作業領域内及び／又は周囲内にある対象物に衝突がないかどうかのチェックであり、これらの対象物は、好ましくは、固定的に取り付けられた対象物及び／又は不動の対象物である。さらに、衝突がないかどうかのチェックは、或るロボットが、他のロボットと衝突しないかどうかのチェックであるものとしてもよく、これによって、例えば、ロボット装置の両方のロボットが、衝突することなく同時に動作することが可能となる。特に、チェック機能、及び／又は、軌道に衝突がないかどうかのチェックは、同一のプログラム及び／又はプログラミング環境内において実行可能及び／又は呼出可能である。この実施形態は、制御手段においてプロセスシーケンスの入力、規定及び／又は設定を実施するユーザが、衝突がないかどうかのチェックも実施することができるという着想に基づいている。従って、プロセスシーケンスの入力、規定及び／又は設定と、軌道の計画と、衝突がないかどうかのチェックとを、１つの共通の制御手段において実行、呼出及び／又は操作することが可能である。
【００１４】
本発明は、これまでユーザは、軌道に衝突がないかどうかをチェックしたい場合に、使い慣れたプログラミング及び／又はプログラミング環境内において作業を行うことができなかったという着想に基づいている。これまでは、例えば、プログラムシーケンスの規定及び／又は設定と、軌道の計画とをそれぞれ異なるユニットが担当しているので、ユーザは、それぞれ異なるプログラミング及び／又はロジックに取り組まなければならなかった。さらに、特に衝突を監視するためのユニットには、ロボットの機能をマッピングすること及び／又は組み込むことはできない。従って、ロボット装置の作業員及び／又はユーザのためのトレーニング労力は、これまで、非常に莫大であり、高コストを引き起こしていた。衝突チェックを、制御手段自体の機能として、特により高価値の機能として提供することにより、トレーニング労力を削減し、コストを削減することが可能となる。これにより、ロボット固有の制御に関する専門知識を有するユーザは、他のユニットのロジック及び／又はプログラミングに取り組む必要なしに、付加的に衝突チェック機能を利用することができる可能性を有することとなる。特に、従前のロボット装置を、制御装置によって追加拡張することができる。
【００１５】
従って、利点として、特に、ユーザは、従前のロボット制御部の機能範囲を引き続き利用することができ、自身の使い慣れたロボット固有のプログラミング環境内において作業を行うことができる。従って、ユーザは、軌道チェックのための上位のシステム及び／又はユニットを操作することができるようにするために、及び／又は、軌道チェックに基づいて軌道を編集することができるようにするために、新しいプログラミング言語を学習する必要がなくなる。
【００１６】
チェック機能が、ユーザによって入力手段を用いて選択可能であることが特に好ましい。特に、入力手段は、制御手段の一部である。例えば、チェック機能は、アプリケーション、ソフトウェアモジュール、又は、呼出可能なアプリケーションとして選択可能である。チェック機能の選択により、特に、軌道に衝突がないかどうかのチェックが実行される。従って、例えば、ユーザは、まず始めにプロセスシーケンスを規定して、このプロセスシーケンスのための軌道を決定することができ、プロセスシーケンスが設定されて、軌道が計画された後、チェック機能の呼出及び／又は選択により、この規定された軌道に衝突がないかどうかがチェックされる。この実施形態は、ユーザが、使い慣れたプログラミング環境内におけるロボット制御部を引き続き使用して、衝突のない軌道を計画することができ、プログラミングに関する知識、及び／又は、衝突監視の機能を有する必要なしに、チェック機能を選択することによって衝突のチェックを開始することができるという着想に基づいている。
【００１７】
任意選択的に、制御手段は、軌道を、プロセスシーケンスに基づいて衝突がないように計画及び／又は計画変更するように構成されている。例えば、プロセスシーケンスを実行するための軌道に衝突があるかどうか、及び／又は、衝突がないかどうかをチェックして、例えば、衝突することが確認された場合には、プロセスシーケンスを継続して実行可能であるが、それでもなお軌道に衝突がないように、軌道を計画変更するように制御手段を構成することができる。特に、衝突のない軌道の計画変更及び／又は計画は、計画変更された軌道及び／又は衝突のない軌道が、最短軌道から可能な限り逸脱しないように実施され、最短軌道は、特に、プロセスシーケンスを可能な限り迅速かつ低コストに実行し、及び／又は、他の二次条件を最適化するような、軌道及び／又は進路である。例えば、制御手段により、プロセスシーケンスの規定時及び／又は規定後、入力後及び／又は設定後に、プロセスシーケンスを実行するための複数の軌道を計画することができ、特に、チェック機能に基づいて、及び／又は、チェック機能の選択に応じて、軌道に衝突がないかどうかをチェックし、プロセスシーケンスを制御及び／又は実行するための軌道として、衝突のない軌道及び／又は複数の衝突のない軌道のうちの１つを選択するように、制御手段を構成することができる。例えば、ユーザは、対象物を或る位置から取り上げて他の位置に搬送することをプロセスシーケンスとして規定し、制御手段は、次いで、この対象物の取り上げ、搬送及び載置を衝突なしに実行する軌道を決定するように構成されている。
【００１８】
本発明の特に好ましい実施形態によれば、制御手段は、プロセスシーケンスから及び／又はプロセスシーケンスのための軌道から開始点及び／又は終了点を抽出するように構成されている。例えば、ユーザは、プロセスシーケンスを規定する際に開始点及び／又は開始座標を規定する必要があり、さらに、ユーザは、終了点及び／又は終了座標を規定しなければならない場合がある。制御手段は、プロセスシーケンス及び／又は軌道の中間点を抽出するようにさらに構成可能である。例えば、中間点は、処理ステップ、移し替えステップ又は保持ステップが行われるプロセスシーケンスの点である。特に、衝突がないかどうかのチェック、及び／又は、衝突のない軌道の計画、及び／又は、衝突のない軌道への軌道の計画変更は、開始点、終了点及び／又は中間点に基づいている。例えば、制御手段は、周囲及びロボットとの衝突が発生しないように、開始点と終了点との間の軌道を計画するように構成されている。
【００１９】
特に、制御装置は、１つ又は複数のセンサ装置を含む。センサ装置は、周囲データを検出するように構成されている。例えば、センサ装置は、周囲及び／又はロボットを光学的、音響的、機械的又は電気的に監視するように構成されている。周囲データは、例えば、作業領域内にある対象物の座標及び／又は位置、及び／又は、プロセスシーケンスの実行時及び／又は実行中におけるロボット及び／又はエンドエフェクタの位置である。例えば、センサ装置は、例えば、変更が行われたかどうか、及び／又は、障害物が追加若しくは除去されたかどうかを監視する作業領域を規則的な間隔で含む。制御手段は、特に、周囲データに基づいて衝突がないかどうかをチェックするように構成されている。さらに、制御手段は、周囲データに基づいて、衝突のない軌道及び／又は衝突のない軌道への計画変更を実行するように構成可能である。例えば、制御手段は、軌道及び／又は進路のそれぞれの点を周囲データと比較するように構成されている。
【００２０】
本発明の１つの実施形態によれば、制御手段は、プロセスモジュール及び軌道チェックモジュールを含み、軌道チェックモジュールは、特にチェック機能を有するように、及び／又は、軌道チェックを実行するように構成されている。軌道チェックモジュールは、特に、上位のユニットを形成する。軌道チェックモジュール及びプロセスモジュールは、好ましくは、２つの物理的に別個のモジュール及び／又はユニットを形成する。例えば、軌道チェックモジュールは、上位のモジュールであり、例えばコンピュータユニットを形成する。これら２つの、特に物理的に別個でもあるモジュールを、両方ともロボット及び／又は制御手段に含めることができる。プロセスモジュールと軌道チェックモジュールとは、論理的に別個のモジュールを形成することができ、例えば、プログラムセクションを形成することができる。
【００２１】
軌道チェックモジュールは、軌道及び／又は経路に衝突がないかどうかをチェックするように構成されている。プロセスモジュールは、ユーザによってプロセスシーケンスを入力、規定及び／又は設定するように構成されている。さらに、プロセスモジュールは、第１の軌道及び／又は軌道を計画することができる。代替的及び／又は付加的に、衝突のない軌道の計画及び／又は衝突のない軌道への軌道の計画変更は、軌道チェックモジュール上に実装されており、及び／又は、軌道チェックモジュール上において実行可能である。軌道チェックモジュールとプロセスモジュールとは、互いにデータ技術的に接続されている。特に、プロセスモジュールを介して軌道チェックモジュールに開始点、終了点及び／又は中間点を提供することができる。チェック機能は、特に、プロセスモジュールから軌道チェックモジュール上に呼出可能であり、軌道に衝突がないかどうかチェックするために使用可能である。この実施形態は、計算技術的に手間のかかる、軌道のチェック、及び／又は、衝突のない軌道の計画変更及び計画を、上位のシステムに、例えば中央のコンピュータユニットに外部委託するという着想に基づいており、この場合、衝突がないかどうかのチェック、計画及び／又は計画変更の機能は、引き続き、制御手段から、特にプロセスモジュールから呼出可能及び／又は使用可能であり、従って、ユーザは、自身の精通する環境内において作業することができ、しかも、複雑なチェック機能を使用することが可能である。
【００２２】
プロセスシーケンスの入力、規定及び／又は設定、並びに、衝突がないかどうかのチェックが、１つの共通のプログラミング環境内において実装されており、及び／又は、１つの共通のプログラミング環境内においてユーザによって使用可能であることが特に好ましい。特に、このプログラミング環境内において、衝突のない軌道への軌道の計画変更の機能を実装することもでき、衝突のない軌道の計画も、このプログラミング環境内において実装することができる。例えば、プログラミング環境は、グラフィカルな入力、規定、設定及び／又はチェックのために構成されており、従って、特に、制御手段及び／又は制御装置を操作するための明示的なプログラミング言語及び／又はプログラミング知識は、必要ない。
【００２３】
任意選択的に、制御手段は、機能データベースを有する。特に、機能データベースは、拡張可能な機能データベースである。機能データベースは、好ましくは、プログラムシーケンス、プロセスシーケンス、プロセスシーケンスコンポーネント、及び／又は、典型的な機能を有する。特に、機能データベースは、ロボット装置のそれぞれのロボットごとに格納されており及び／又は格納可能である。プロセスシーケンスコンポーネントは、例えば、ロボットの機能範囲を表し、これらのプロセスシーケンスコンポーネントは、プロセスシーケンスを実行するために選択可能であり、及び／又は、時間的な順序において使用可能である。特に、チェック機能は、制御手段内の機能コンポーネントとして実装されている。さらに、衝突のない軌道への軌道の計画変更と、衝突のない軌道の計画とを、プロセスシーケンスコンポーネントとして及び／又は機能として、機能データベースに格納することができる。この実施形態は、ロボット装置の、特に直感的に取り扱い可能な制御を可能にするという着想に基づいている。
【００２４】
本発明の１つの実施形態によれば、制御手段は、ロボット位置を特定するように構成されており、及び／又は、ロボット位置を入力可能又は抽出可能である。例えば、制御手段は、１つのロボット及び／又は複数のロボットの現在位置を抽出及び／又は特定することができる。制御手段は、特に、例えば、チェック機能の選択時及び／又は実行時に、ロボット位置に衝突があるかどうかをチェックするように、例えば、当該位置が現在又は将来の衝突につながるかどうかをチェックするように構成されている。
【００２５】
任意選択的に、制御手段を介して、ユーザによって特に入力手段を用いて軌道種類を設定可能である。軌道種類は、例えば、軌道及び／又は進路の形式である。特に、軌道種類は、線形軌道、曲線軌道、放物線軌道、又は、閉じた進路の形態の軌道である。制御手段は、軌道種類に対応するように、軌道を決定するように構成されている。特に、制御手段は、対応する軌道種類の衝突のない軌道を決定するように構成されている。
【００２６】
本発明のさらなる対象は、ロボット装置である。ロボット装置は、少なくとも１つのロボット、好ましくは複数のロボットを有する。１つのロボット及び／又は複数のロボットは、作業領域内において動作可能である。特に、複数のロボットは、１つの共通の作業領域内において動作可能である。１つのロボット及び／又は複数のロボットは、それぞれ少なくとも１つのエンドエフェクタを有し、エンドエフェクタは、例えば、アクチュエータとして構成されている。エンドエフェクタは、プロセスシーケンスを実行するためにロボットの作業領域内において、及び／又は、ロボット装置の作業領域内において移動可能である。ロボット装置は、特に、上記のような制御手段を有する。制御手段により、ロボット及び／又はロボット装置によってプロセスシーケンスを実行するための軌道を計画することができる。特に、プロセスシーケンスは、ユーザによって制御手段上において入力可能、規定可能及び／又は設定可能である。制御装置を有するロボット装置は、計画された軌道に衝突がないかどうかをチェックするように構成されており、制御手段によって、衝突のない軌道を決定することもできる。特に、ロボット装置の制御手段は、軌道チェックモジュール及びプロセスモジュールを有し、軌道チェックモジュールは、特に、複数のロボットのための１つの中央の軌道チェックモジュールであり、軌道チェックモジュールは、１つのプロセスモジュール及び／又は複数のプロセスモジュールにデータ技術的に接続されている。プロセスモジュールは、好ましくはロボットの一部である。
【００２７】
本発明のさらなる対象は、ロボット装置を制御するための方法である。特に制御手段により、ユーザによってプロセスシーケンスが規定、入力及び／又は設定される。特に、ユーザは、プロセスシーケンスコンポーネントを選択することにより、プロセスシーケンスを構成、入力及び／又は規定することができる。入力、規定又は設定は、特にプログラミング環境内において実施される。ユーザによって、チェック機能を選択可能である。チェック機能を選択すると、軌道に衝突がないかどうかがチェックされる。特に、衝突することなくプロセスシーケンスを実行するように、軌道を計画及び／又は計画変更することができる。衝突がないかどうかのチェック、及び／又は、衝突がないかどうかをチェックするためのチェック機能の選択は、特に、同一のプログラム及び／又はプログラミング環境内において実施される。従って、本方法によれば、ユーザが、プロセスシーケンスの規定と、軌道の計画と、衝突がないかどうかのチェックとを、同一のプログラミング環境内において実施することができ、複数のプログラミング言語及び／又はそれぞれ異なるモジュールを個別に制御及び／又は操作する必要がないことが企図されている。
【００２８】
本発明のさらなる対象は、コンピュータプログラムである。コンピュータプログラムは、特に、データ担体上に保存されており及び／又は保存可能である。データ担体は、好ましくは、ＣＤ、ＤＶＤ又はその他の大容量記憶装置である。コンピュータプログラムは、コンピュータ上、計算装置上、ロボット装置上及び／又は制御装置上において実行されたときに、前述の方法のステップを実行するように構成されている。
【００２９】
本発明のさらなる対象は、機械可読記憶媒体である。機械可読記憶媒体は、特にデータ担体として、特に、ＣＤ、ＤＶＤ又はＵＳＢスティックとして構成されている。機械可読記憶媒体上には、上記のようなコンピュータプログラムが記憶されている。
【００３０】
本発明のさらなる利点、効果及び実施形態は、添付された図面及びそれについての説明から明らかになる。
【図面の簡単な説明】
【００３１】
【図１】１つの実施例としてのロボット装置を示す図である。
【図２】従来技術におけるロボット装置の制御を示す図である。
【図３】制御装置による例示的な制御を示す図である。
【図４】衝突のない経路計画のための例示的なシーケンスを示す図である。
【図５】衝突のない軌道に基づいて制御するための例示的なプログラムシーケンスを示す図である。
【図６】所定のロボット位置において衝突がないかどうかをチェックするための例示的なプログラムシーケンスを示す図である。
【発明を実施するための形態】
【００３２】
図１は、ロボット装置１を示している。ロボット装置１は、例えば、製造システム、生産システム又は搬送システムの一部である。ロボット装置１は、少なくとも１つのロボット２を含む。ロボット装置１は、５個又は２０個より多くのロボット２も含み得る。ロボット２は、作業領域３内に配置されている。作業領域３は、例えば、生産ホール、ロジスティクスセンタ又は部屋の一区域によって形成される。ロボット２は、エンドエフェクタ４を有する。エンドエフェクタ４は、グリッパとしてのアクチュエータ５を有する。エンドエフェクタ４は、作業領域３内において移動可能、旋回可能及び／又は回転可能である。ロボット２は、例えば、多関節アームロボットを形成する。アクチュエータ５によってオブジェクトを把持及び／又は保持することができる。ロボット２は、エンドエフェクタ４及び／又は把持されたオブジェクトを、軌道６に沿って搬送することができるように構成されている。軌道６は、作業領域３内の進路である。ロボット２によって、プロセスシーケンス又はプロセスシーケンスのプロセスステップを実行することができる。
【００３３】
ロボット装置１は、制御手段７を含む。制御手段７は、プロセスモジュール８及び軌道チェックモジュール９を有する。軌道チェックモジュール９は、好ましくは、中央のコンピュータユニットとして構成されている。プロセスモジュール８は、コンピュータユニットとして構成可能であり、好ましくは、プロセスモジュール８は、ロボット２内に組み込まれている。プロセスモジュール８は、軌道チェックモジュール９にデータ技術的に接続されている。さらに、プロセスモジュール８、ひいては制御手段７も、ロボット２を制御するために、ロボット２にデータ技術的に接続されている。
【００３４】
プロセスモジュール８は、入力手段１０を有する。入力手段１０は、例えば、タッチパッドとして構成されており、代替的及び／又は付加的に、入力手段１０は、キーボード、マウス及び／又はジョイスティックを有する。ユーザは、入力手段１０を用いてプロセスシーケンスを入力、規定及び／又は設定することができる。このために、例えば、ユーザによって選択可能なプロセスシーケンスコンポーネントが格納されている。例えば、ユーザは、開始点及び／又は終了点、並びに、作業シーケンス、保持時間及び／又は保持点を規定することができる。プロセスシーケンスを規定することにより、１つの軌道及び／又は複数の軌道を決定することができる。プロセスモジュール８は、軌道チェックモジュール９にデータ技術的に接続されている。軌道チェックモジュール９には、ユーザによって設定及び／又は規定されたプロセスシーケンスが提供されている。軌道チェックモジュール９は、プロセスモジュール８から、特に、開始点、終了点及び／又は中間点も取得する。軌道チェックモジュール９は、プロセスシーケンスを実行するための衝突のない軌道を計画するように構成されている。特に、軌道チェックモジュール９は、計算された軌道６に衝突がないかどうかをチェックする。計算された衝突のない軌道は、プロセスモジュール８にデータ技術的に提供され、プロセスモジュール８は、プロセスシーケンスを実行するための衝突のない軌道６に基づいてロボット２を制御する。特に、軌道チェックモジュール９を制御して、衝突のない軌道６の決定、及び／又は、衝突がないかどうかのチェックを軌道チェックモジュール９に実行させる機能を、ユーザによってプロセスモジュール８上において選択することが可能である。プロセスモジュール８上におけるチェック機能の操作により、軌道チェックモジュール９は、特に、衝突のない軌道をプロセスモジュール８に提供するようにも促される。
【００３５】
ロボット装置１はさらに、センサ装置１１も有する。センサ装置１１は、例えば、作業領域３をビデオ技術的に監視するビデオカメラとして構成されている。特に、センサ装置１１によって、作業領域３内にある障害物、例えば、対象物、車両又は人間を検出することができ、検出された対象物は、周囲データとして制御手段７に提供され、この周囲データに基づいて、制御手段７、特に軌道チェックモジュール９は、軌道に衝突がないかどうかを判定及び／又はチェックすることができる。
【００３６】
図２は、例えば従来技術に見られるような、ロボット装置を制御するための概念を示している。プロセスシーケンス１２は、ロボット移動制御部１３上に実装されているわけではなく、上位のユニット、例えば上位のコンピュータユニット１４内に実装されている。ロボットは、上位のユニットによって遠隔制御として制御される。この上位のコンピュータユニット１４は、計画モジュール１５を有し、計画モジュール１５は、開始点と目標点との間における衝突のない経路を計算することができる。プロセスシーケンス１２を決定するための構成要素において、ユーザは、ロボット２の論理シーケンスをプログラミングし、モジュール１５によって、各点間における衝突のない経路を計算することができる。プロセスシーケンス１２を規定するための構成要素は、動作中にロボット移動制御部１３を制御（遠隔制御）し、今度はこのロボット移動制御部１３が、ロボット２及びロボット２のキネマティクス１６を制御して、衝突することなくロボット２を移動させる。
【００３７】
例えば、このロボット移動制御部１３により、「箱を把持する」というプロセスシーケンスが作成及び計画される。把持位置は、センサ装置、例えば３Ｄセンサによって指定され、目標位置は、例えば、オブジェクトが載置されるべきコンベヤベルトである。ここで、ユーザは、以下のようにプロセスシーケンスを実装する。１．現在位置から基本姿勢までの衝突のない経路を計算する。２．グリッパを開く。３．計算された経路に沿ってロボットを基本姿勢へと移動させる。４．基本姿勢から箱の把持位置までの衝突のない経路を計算する。５．計算された経路に沿ってロボットを箱の把持位置へと移動させる。６．グリッパを閉じる。７．箱の把持位置から載置点までの衝突のない経路を計算する。８．計算された経路に沿ってロボットを載置点へと移動させる。９．グリッパを開く。１０．載置点から箱の把持位置までの衝突のない経路を計算する。１１．計算された経路に沿ってロボットを箱の把持位置へと移動させる。１２．グリッパを閉じる。１３．項目７以降と同様に続行する。
【００３８】
このようなアプローチの主な欠点は、ユーザが、もはや使い慣れたプログラミング環境内においては作業することができなくなり、上位のシステムの新しいプログラミングに取り組んで、必要な知識を習得しなければならなくなることである。しかも、多くの場合、このような上位のプログラミングシステムは、特殊なロボット機能をマッピングすることができず、又は、部分的にしかマッピングすることができない。さらに、保守担当者及び／又はサービス担当者は、不慣れな全体システムに対処することができなければならず、このことによって、トレーニング労力の増加が引き起こされる。
【００３９】
従って、本発明の着想は、衝突のない経路計画の機能を、ロボット制御部上、ロボット移動制御部上及び／又は制御手段上において直接的に、より高価値の機能として提供することである。従って、ユーザは、ロボット制御部の固有の専門知識を引き続き使用することが可能となる。
【００４０】
図３は、ロボット装置１の１つの実施例の機能分布を示している。制御手段７は、軌道チェックモジュール９及びプロセスモジュール８を有する。プロセスモジュール８は、軌道チェックモジュール９を制御するための、及び、ロボット２を制御するためのものである。プロセスモジュール８は、入力手段１０を有し、ユーザは、プログラムシーケンス１２を入力手段１０上において規定及び／又は設定することができる。入力手段は、例えば、キーボード及び／又はマウスを有する画面として構成されている。代替的又は付加的に、入力手段１０は、タッチパッドとして構成されている。例えば、ユーザによって選択可能なプロセスシーケンスコンポーネントを有するライブラリが格納されている。特に、プロセスモジュール８は、軌道チェックモジュール９及びロボット２を制御するためのインタフェースを形成する。プロセスモジュールは、ロボット２の一部であり、入力手段１０も、好ましくはロボットの一部であり、ユーザは、入力手段１０を介してロボットをプログラミングすることができ、かつ、プログラムシーケンスを規定及び／又は設定することができる。
【００４１】
ユーザが、プロセスシーケンスをプロセスモジュール８上において設定及び／又は規定した後、衝突のない軌道を決定してもらうことを希望する場合には、ユーザは、プロセスモジュール８上において、例えば入力手段１０を用いて、対応する機能、例えばチェック機能を選択する。チェック機能が選択された後、所望の開始位置及び／又は目標位置が、軌道チェックモジュール９に伝送される。軌道チェックモジュール９は、周囲データ、開始位置及び目標位置に基づいて衝突のない軌道を決定し、この衝突のない軌道をプロセスモジュール８に伝送する。このようにして、ユーザに、衝突のない軌道が提供される。プロセスモジュール８は、次いで、提供された衝突のない軌道に基づいてロボット２を制御するように構成されている。プロセスモジュール８は、プロセスシーケンス１２を上位のユニットに、即ち、軌道チェックモジュール９に伝送し、軌道チェックモジュール９は、衝突のない軌道を計画し、この衝突のない軌道をプロセスモジュール８に伝送する。衝突のない軌道によるロボットの制御は、プロセスモジュール８によって実行され、従って、上位ユニットによる遠隔操作によって実行されるのではない。従って、特に、衝突のない経路を計画するためのロジック及び／又は計算能力だけが、軌道チェックモジュール９に搭載及び／又は外部委託されており、残余のロジック及び／又はプログラミングは、プロセスモジュール８に残存させられており、従って、ロボット２内及び／又はロボットレベルにある。
【００４２】
図４は、ロボット装置１を制御するためのシーケンスを概略的に示している。プロセスモジュール８において、ユーザは、プロセスシーケンス１２を規定及び／又は設定することができる。プロセスモジュール８は、特に、プロセスシーケンスから開始位置、終了位置及び／又は軸線構成を決定するように構成されている。さらに、開始位置、終了位置及び／又は軸線構成も、ユーザによって設定可能及び／又は指定可能であるものとしてよい。プロセスシーケンス１２、開始位置、終了位置及び／又は軸線構成は、特に、インタフェースとして機能することができる中間モジュール１７に提供される。この中間モジュール１７は、プロセスシーケンス１２、開始位置、終了位置及び／又は軸線構成を、特に、軌道チェックモジュール９によって処理可能なデータ形式において、軌道チェックモジュール９に提供する。軌道チェックモジュール９は、コンピュータユニット１８を含み、コンピュータユニット１８は、提供されたプロセスシーケンス、開始位置、終了位置及び／又は軸線構成に基づいて、衝突のない軌道１９を決定することができる。軌道１９は、プロセスモジュール８にデータ技術的に提供され、特に、中間モジュール１７によって捕捉及び／又は受信され、例えば、プロセスモジュール８において、特に、ユーザによって利用可能及び／又は使用可能なデータ形式又はプログラム形式に変換される。次いで、衝突のない軌道１９が、ユーザに提供される。特に、衝突のない軌道１９は、画面のような出力手段も含み得る入力手段１０においてユーザに提供される。
【００４３】
図５は、図４と同様の制御シーケンスを示しており、ここでは、衝突のない軌道を入力手段１０上に出力する代わりに、衝突のない軌道の変換が行われる。このために、衝突のない軌道１９は、中間モジュール１７によって移動命令２０に変換される。移動命令２０は、プロセス機能を実行し、衝突のない軌道に沿って移動するように、ロボット及び／又はアクチュエータを制御するために、プロセスモジュール８によって利用される。衝突のない軌道による実行及び／又は制御の後、中間モジュール１７によって確認命令２１が出力され、この確認命令２１は、入力手段１０上に表示され、プロセスシーケンスが完了及び／又は実行されたことをユーザに通知することを目的としている。この場合には、さらに、プロセスシーケンスの実行を行うことができなかった場合、及び／又は、キャンセルする必要がある場合には、エラーメッセージを表示することができる。
【００４４】
図６は、ロボット位置をチェックするための例示的なシーケンスを示している。ユーザによって、プロセスモジュール上において、特に入力手段１０を用いて、ロボット位置２２を入力することができる。例えば、ロボット位置は、所望位置、開始点又は終了点である。ロボット位置２２は、プロセスモジュール８内の中間モジュール１７に提供され、中間モジュール１７は、特にデータ形式の変換を実施し、変換されたロボット位置２２を軌道チェックモジュール９に提供する。軌道チェックモジュール９は、ロボット位置をチェックし、この位置において周囲との衝突が発生し得るかどうかを検査するように構成されている。衝突チェックの結果２３は、軌道チェックモジュール９によってプロセスモジュール８に提供され、中間モジュール１７は、提供された情報２３を、入力手段１０に提供可能な形式であって、かつ、入力手段１０によってユーザのための情報として出力可能な形式に変換する。例えば、その位置において衝突がない場合には、「ＯＫ」を出力することができ、又は、その位置において衝突が発生する場合には、「衝突」を出力することができる。このようにして、ユーザは、プロセスシーケンスを規定する際に、特定の点、例えば、目標点、開始点又は中間点に衝突の危険性があるかどうかを事前にチェックすることができる。
【図１】
2022500260.tif 000003
【図２】
2022500260.tif 000004
【図３】
2022500260.tif 000005
【図４】
2022500260.tif 000006
【図５】
2022500260.tif 000007
【図６】
2022500260.tif 000008
【国際調査報告】
2022500260.tif 000009
2022500260.tif 000010
2022500260.tif 000011
2022500260.tif 000012
2022500260.tif 000013