JP4763614B2 - タスクを実行するロボットに対するタスクのロケイションを最適化するための方法及びシステム - Google Patents

タスクを実行するロボットに対するタスクのロケイションを最適化するための方法及びシステム Download PDF

Info

Publication number
JP4763614B2
JP4763614B2 JP2006541095A JP2006541095A JP4763614B2 JP 4763614 B2 JP4763614 B2 JP 4763614B2 JP 2006541095 A JP2006541095 A JP 2006541095A JP 2006541095 A JP2006541095 A JP 2006541095A JP 4763614 B2 JP4763614 B2 JP 4763614B2
Authority
JP
Japan
Prior art keywords
robot
task
location
test
rokeishon
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2006541095A
Other languages
English (en)
Other versions
JP2007512153A (ja
Inventor
カムラニ、ベーナム
ベルブユク、ビクター
ベップリング、ダニエル
フェング、シャオロング
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Abb Research Ltd
Original Assignee
Abb Research Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Abb Research Ltd filed Critical Abb Research Ltd
Publication of JP2007512153A publication Critical patent/JP2007512153A/ja
Application granted granted Critical
Publication of JP4763614B2 publication Critical patent/JP4763614B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1661Programme controls characterised by programming, planning systems for manipulators characterised by task planning, object-oriented languages
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM]
    • G05B19/4188Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS], computer integrated manufacturing [CIM] characterised by CIM planning or realisation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31076Controller for cell, for robot motion, for supervision
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40336Optimize multiple constraints or subtasks
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/42Servomotor, servo controller kind till VSS
    • G05B2219/42217Time optimal position control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/42Servomotor, servo controller kind till VSS
    • G05B2219/42224Process received reference to adapt it to range of servo
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/42Servomotor, servo controller kind till VSS
    • G05B2219/42337Tracking control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49071Cycle time reduction
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/50Machine tool, machine tool null till machine tool work handling
    • G05B2219/50118Select as function of position of tool during cycle, optimum path
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Description

この発明は、ロボット・マニピュレータ及び製造自動化の分野の技術に係る。
本発明は更に、特定のタスク(task:作業)を実行するときにロボット・マニピュレータのサイクルタイムを短縮することに係る。
より具体的には、本発明は、ロボット・マニピュレータの作業スペースの中のロボット・マニピュレータに対する、タスクのロケイション(location)/プレイスメント(placement)、即ち位置及び向き、を最適化するための方法に係る。
更に、本発明はまた、ロボット・プログラム及びタスクの実行の最適化に係る。
(発明の背景)
以下において、“ロボット”と言う単語は、ロボット・マニピュレータの代わりに使用される。典型的には、ロボットは、製造自動化の分野のための産業用ロボットである。
ロボットが使用される、典型的な産業的タスクの分野は、溶接、切断、塗装、接着、材料ハンドリング、及び材料の除去、などである。ロボットは、動きの反復的なシーケンスを、予め定められた経路に沿って実行する。特定のタイム・スパン(例えば一年)の間に行われるタスクの回数が多いことから、サイクルタイムを削減することは、非常に重要である。特定のロボットのタスクのために最小のサイクルタイムを設定することは、従って、生産現場へロボットを適用する際の、不可欠なステップである。サイクルタイムの僅かなパーセントの減少であっても、生産ラインの生産性を相当適度増大させる。
ロボットに、経路上での動きをできるだけ速く実行させることは、一般的な関心事項である動きの時間を最小にすることにより、サイクルタイムを大幅に縮めることが可能になり、マシンの利用率を改善し、その結果、生産性及びコスト効率が主要な関心事項となるような生産現場でのオートメイションの適用を、採算性が有るものにする。
動きの時間を減らすことは、異なるロボット技術領域における最適化により、実現することができる。関係する領域は、例えば、一般的なロボット・デザインの方法論、運動学、動力学、構造またはアーム形状、ロボット コントローラ、時間の最適なコントロール、タスクに基づくデザイン、及びロボット・セル・デザイン若しくはロボットの最適な配置などである。所与のロボットについて、サイクルタイムは、多くのパラメータに依存する。それらのパラメータは、例えば、タスクに対するロボットの位置、各ポイントを通過するシーケンス、当該アクチュエータの最大速度及び加速度、各ポイントの相対位置、または、トラックに沿ったアームの形状、などである。
タスクの実行の間のロボットのパフォーマンスは、ロボット及びタスクの相対位置に依存する。このようにして、その作業ステイションで悪い位置に配置されたロボットは、作業効率の低下と言うリスクを招き、時には特異点(singularities)となってしまうこともある。
ロボット・セルは、製造自動化のための基本的要素であり、一台または数台の産業用ロボット、そのロボットタスクを実行することになる一つまたは複数の作業対象物、及び他のセル装置からなる。複数のロボットを含むロボット・セルにおいて、それらのロボットは、独立または共同でのいずれかで、働くことができる。“ロボットが共同で働く”と言う表現は、例えば、一つのロボットが作業対象物を保持し、これと同時に、もう一つのロボットが、その作業対象物に対してタスクを実行することを意味している。
通常“ワールド座標系”と呼ばれている座標系は、ロボット、作業対象物、及び他のロボット・セル内でのセル装置の相対ロケイション(relative location)を規定し且つ管理するために使用される。実際、ロボットに固定された座標系(通常“ロボット座標系”と呼ばれている)が、そのワールド座標系の中での、ロボットのロケイションを特定するために規定される。作業対象物に固定された座標系(通常“オブジェクト座標系”と呼ばれている)は、ユーザ座標系、ロボット座標系、またはワールド座標系の何れかの中での、作業対象物のロケイションを特定するために規定される。ロボット・セルを規定するために使用される異なる座標系の例が、図1及び2に示されている。
(従来の技術)
特定のタスクのためのパフォーマンスを最大化するための、ロボット・セルのデザインの最適化と言う問題に関して、多くの仕事が文献に報告されている。論じられている例を挙げると、次の通りである:
・作業対象物に対するロボットの配置
・どの順序で、異なるタスクを実行すべきか
・一つのロボットの、もう一つロボットに対する配置
・外部軸の、ロボットに対する及び相互の配置
・ロボット・ツールのデザイン
・マルチ−ロボット・システムにおける、作業対象物の最適なポジショニング、及びタスクのシーケンス
・その他。
文献中に記載されている一つのアプローチは、ロボットの運動学を用いて、セル・デザインを最適化することである。Nelson and Donath は、ロボットの操作可能性が最大になるように、ロボット作業スペース内でタスクに配置を決定するための方法を提案している(“Optimizing the location of assembly tasks in a manipulators workspace”, Journal of Robotic Systems, Vol.7, No 6,1990)。彼らの方法は、組み立てのタスクを、ロボット作業スペース内の特異点から離れた位置に、自動的に位置させる。
また、Pamanes and Zeehloul は、ロボット作業スペース内でのタスクのロケイションを最適化するために、運動学的判断規準を使用する(“Optimal placement of Robot manipulators using multiple kinematic criteria”, in Proceedings of the 1991 IEEE International Conference on Robotics and Automation, Sacramento, California, April 1991 )。
運動学的判断規準に基づくアプローチは、そのロボットの動力学が考慮されていないと言う弱点を抱えている。マニピュレータの慣性、重力の影響、及び速度依存項は、そのロボットの位置に依存する。従って、パフォーマンス(例えば加速)は、作業スペース内の異なる位置において、異なる。
Benhabib, Tabarah, and Fenton の文献には、幾つかの異なるパフォーマンスの最適化のケース・スタディが、“ポイント・ツー・ポイント”モード及び“連続的な経路上での動き”で運転される産業用ロボットに関して、報告されている(“Robot performance optimisation under specified dynamic conditions”, Mech. Mach. Theory, Vol. 26, No. 3, 1991 )。エンド・エフェクタでの最大の力/モメントのための、及び最小のサイクルタイムのためのロボットの最適なロケイションが、研究されている。
従来の最適化方法は、大量の計算、高度な知識、及び長い時間が必要になるので、しばしば、取扱いが面倒なものであった。これに対して、レスポンス・サーフェス法(RSM:Response surface method)においては、シミュレイションの数が限られ、収束が問題とならず、且つ、容易に使用することができる。レスポンス・サーフェス法は、問題のモデル化及び分析のために有用な数学的及び統計学的技術を集めたものである(更に、Box, Hunter and Hunter, 1978, Khuri and Cornell, 1987, Myers and Montgomery, 1995 and Montgomery 1976 も参照方)。その中において、関心の対象となるレスポンスが、幾つかの変数により影響され、そして、その目的は、このレスポンスを最適化することである
現在のロボットの問題の中で、決定変数(decision variables)を、例えば、所与のロボット・ベースに対する予め定められた経路のリファレンス・ポイントのxyz座標から構成することが可能であり、そして、最小化されるべき関心の対象となるレスポンスは、そのタスクのサイクルタイムである。レスポンス(サイクルタイム)と独立変数(xyz座標)の間の関係の形態は、未知である。このようにして、第一のステップは、サイクルタイムとxyz座標の間の真の関数的関係に対する適切な近似式を見つけ出すことである。
一般的に、一次または二次の近似式が、大半のRSM問題において、適切な結果をもたらす。二次形態は、相互作用及び純粋の二次項からなる。両方のタイプの項を含む式は、“フル二次式”と呼ばれ、それは、以下の形態を有している:
f(x,y,z)=b0 +bl x+b2 y+b3 z+ (一次項)
4 xy+b5 yz+b6 xz+ (相互作用項)
7 +b8 +b9 (二次項) ・・・(0.1)
式(0.1)の中のモデル・パラメータ{b0 ,b1 ,b2 ,... ,b9 }は、異なる方向について、合理的な量の実験を行うことによって、評価することができる。
レスポンス・サーフェスに適合させるためのデザインは、レスポンス・サーフェス・デザインと呼ばれている。3変数問題においては、少なくとも、2+1=9回の実験が、二次モデルに適合させるために、必要になる。
実験の数が増える程、レスポンスの式がより正確であると評価されることになる。しかしながら、実験を行うには、非常に時間がかかり、従って、多数の実験を計画すると、そのプログラムの実施のために必要となるCPU時間の増加を招く。
一つの問題は、オリジナルのタスクのロケイションの周りでの、x,y,及びz方向についてのタスク動作可能域の境界を見つけ出すことである。これは、テスト・キューブを規定することによって実施され、このテスト・キューブのサイズは、xyz座標における変化量の大きさをコントロールし、このテスト・キューブのテスト・ポイント座標は、オリジナルのタスク・ロケイションでの参照フレームの中で規定され、タスクのシフト方向をコントロールする(図4参照)。これらのテスト・ポイント座標は、“−1,0,及び1”の3つの値の内のいずれかを取らなければならない。
例えば、(1,1,1)の方向のタスク・ロケイション・テストは、X、Y及びZについての正方向へ √3/2*立方体サイズ シフトさせた場合の、動作可能域の境界を与えることになる。また、(−1,−1,0)の方向の実験は、Zレベルを固定してX及びYについて負方向へ √2/2*立方体サイズ シフトさせた場合の、動作可能域の境界を与えることになる。
シフト調査の実験における、いわゆる “フル・ファクトリアル・デザイン(full factorial design;全因子計画)”は、27のテストを含む。図5は、境界を見つけ出すために使用される方向を表わしており、また、図4は、これらのロケイション・テストのシフト・ベクトルを図に示している(シフト・ベクトルは、オリジナルのタスク・ロケイションからロケイション・テスト・ポイントを指し示すベクトルとして規定される)。オリジナルのタスクのロケイションは、この立方体の中央の大きい黒い丸(または点)であり、小さな丸(または点)は、境界を見つけ出すために選択される方向を表わしている。
しかしながら、もし、CPU時間を減らすことが非常に重要である場合には、より少ない数の実験であっても、容認可能である。例えば、12のテストからなるボックス・ベーンケン(Box-Behnken)デザインを、考慮することも可能である。しかし、一方向のみの6つのテスト即ち、(1,0,0),(−1,0,0),(0,1,0),(0,−1,0),(0,0,1),及び(0,0,−1)は、通常、有用性が低く、従って、無視することが可能である。
Nelson and Donath;"Optimizing the location of assembly tasks in a manipulators workspace", Journal of Robotic Systems, Vol.7, No 6,1990 Pamanes and Zeehloul; "Optimal placement of Robot manipulators using multiple kinematic criteria", in Proceedings of the 1991 IEEE International Conference on Robotics and Automation, Sacramento, California, April 1991 Benhabib, Tabarah, and Fenton; "Robot performance optimisation under specified dynamic conditions", Mech. Mach. Theory, Vol. 26, No. 3, 1991 )
(解決すべき最も重要な問題)
一般的且つ重要な問題は、ロボット及び特定のタスクの最適な相対ロケイションを、そのタスクに対してロボットのパフォーマンスが最適化されるように、特定する/決定することである。今日のロボット・プログラミング・システムは、ロボット作業スペース内で効率良く作業を実行するために、ロボット及びそのタスクの最適なロケイションを、効率良く且つ自動的に決定する能力に欠けている。
ロボットは、正確且つ効率的なやり方でモデル化するにためは、複雑なシステムである。今日でも、ロボットのパフォーマンスを最適化するために必要とされる数多くのシミュレイションには、長過ぎるシミュレイション及びCPU時間がかかる。この時間を減らさなければならない。
ロボットをシミュレイトするために使用されるモデルは、また、高度に非線形であり、そして、ロボットのパフォーマンスの最適化の問題は、非常に複雑である。従って、受入れ可能なソリューションを常にもたらす最適化方法を見つけ出すことは、非常に難しい。
最適化問題は、非常に複雑なので、それは、ユーザによる最適化理論の知識を必要とする。ユーザは、例えば、変数を正規化し、重み付けファクター及び許容範囲その他を選択する必要があり、そして、このことは、当然、既知の方法における問題である。
(本発明の目的)
この発明の目的は、以上で挙げた問題を解決することにあり、且つ、特定のタスクに対するロボットの最適なロケイション、少なくとも位置及び向き、を効率良く見つけ出すための方法を提供することにある。
本発明の他の目的は、ロボットが特定のタスクを実行するための、サイクルタイムが最小になるロケイションを見つけ出すことにある。
本発明の更に他の目的は、ロボットが特定のタスクを実行するための、最適な経路を決定することにある。
本発明の更に他の目的は、ロボットのコンポーネントの寿命を最大にすること、及び、最もバランスの取れた“コンポーネント寿命”を見つけ出すことにある。
本発明の他の目的は、ロボット・システムの電力消費を最小化することであり、および/または、ロボット・システムの熱管理を最適化することにある。
本発明の更なる目的は、ロボットに基づくプロセスの質を最適化することにある。
本発明の目的は、タスクのロボットに対するロケイション(location)、即ち、位置(position)および/または向き(orientation)、を最適化するための方法によって実現される。
この方法は、下記のステップを有している:
少なくとも二つのテストからなる少なくとも一つの実験を計画する、ここで、各テストは、その実験の中の少なくとも一つの他のテストと、ロボットに対するタスクのロケイションに関して、異なっている;
許容可能なタスクのロケイションについて境界を計算/決定する;
その実験の中の少なくとも一つのテストについての最適化の効果を計算/決定する;
その実験データをアルゴリズムに適合させる;
そのタスクの最適なロケイション、即ち位置及び向き、を計算/決定する。
本発明による方法は、シミュレイション時間を短縮する。それは、シミュレイションの数が前もって分かり、そして、適切な実験を選択することにより最小化されるからである。
この方法はまた、強固であって、且つ、ロボットの挙動を近似するシンプルな式を特定する。この方法は、シンプルな式の最適なポイントを常に見つけ出し、いつでも、最適化問題に対するソリューションを常に見つけ出し、且つ、サイクルタイムを大幅に縮める。
この方法はまた、使用することが容易で、ロボットは、通常と同じように(オフラインでまたはオンラインで)プログラムされることが可能である。最適化手順へのインプットは、ロボット・プログラム及びロボットのタイプである。ユーザは、最適化理論について、知識を有している必要がない。その理由は、変数を正規化し、重み付けファクター及び許容範囲を選択する必要がないからである。
この方法はまた、実施に実施することができ、そのためのコストは、シミュレイション時間及びソフトウエアのみとなる。
本発明をより良く理解するため、図面を参照しながら説明する。
典型的なロボットは、以下の構成を備えている:
メイン・アーム・システム及び関係するジョイント(関節)(通常、回転タイプまたは他のタイプのジョイント);
ツール・アタッチメントのためのプラットフォームを備えたメイン・アーム・システムに対して、通常、2または3回転自由度のリスト(手首);
ロボット メイン・アーム・システム及びリスト(手首)の動きを行わせるための、ギアボックス及びモータのドライブ・トレイン・システム;
このロボットは、制御システムを備え、この制御システムは、リスト(手首)のプラットフォームに取り付けられたツールの位置及び向きをコントロールする。そのツールに関する位置及び向きの両方の、一つのクリティカルなリファレンス・ポイントは、通常、“ツール・センター・ポイント”、TCP、と呼ばれている。
アームの長さ、隣接するアームとの間のオフセット、及び許容されるアーム回転角度に関する一組のロボット・パラメータは、通常、ロボット運動学的パラメータと呼ばれている。ロボットがその中でタスクを実行することができる、ロボットの作業スペース(または、ボリューム/スペース)を決定するのは、この一組のロボット・パラメータである。
ロボットのタスクは、ターゲットを用いて規定される。ここで、ターゲットとは、無限に小さなオブジェクトと考えることが可能であり、このオブジェクトは、三次元のデカルト空間の中で、その位置を規定する3つの座標、及びその向きを規定する3つの角度を有している(もし、オイラー角により定められる場合)。図9に示されているように、ターゲットがその中で位置し/規定される複数の異なる座標系を定めることができる。
タスクのロケイションを変更することは、そのタスクを規定するために使用される全てのターゲットのロケイションを変更することと同じ事である。ロボットの位置及び向きに対する、一組のターゲットの位置及び向きは、複数のやり方で変更することができる。それらの例は、以下の通りである:
− 一組のターゲットの位置及び向きを変更することにより;
− ロボットの位置及び向きを変更することにより;
− ターゲットがその中で規定される座標系の一つの位置及び向きを変更することにより;
− ロボットがその中で規定される座標系の一つの位置及び向きを変更することにより。
そのセルを規定するためにどの座標系が使用されるか、及びそのセルがどのように規定されるかに依存して、ロボットに対する一組のターゲット(即ちタスク)の位置及び向きを変更するための上記のアプローチの一つまたはそれ以上が、機能する。
以下の条件が満足されるとき、ロボットのタスクが実現可能と判断される:
(1) ロボットのTCPが、全てのターゲット(位置及び向き)に“到達”することが可能であり;且つ、
(2) ロボットのTCPが、ターゲットの間で規定される動きを実現可能であるとき。
二つの隣接するターゲットの間のロボットのTCPの典型的な動きには、二つのタイプがある。第一のタイプは、予め規定されたライン(曲線または直線)に沿っての動きである。第二のタイプは、ジョイント(関節)の動きによるものである。ターゲット、ターゲット間での動きのタイプ、及び、ターゲット間でのTCPの動きのために要求されるスピードを用いて、ロボットが実行することが可能なタスクが、完全に規定される。
ターゲットの規定を含むファイル、ターゲットの間でのTCPの動き、及び隣接するターゲットの間で要求されるスピードは、通常、ロボット・プログラムと呼ばれている。
ロボット・プログラムの中で規定されたタスクをロボットが実行することができると決定するためには、そのプログラムの中で規定された全てのターゲットにロボットのTCPが“到達”できることが必要である。これは、必要条件である。もう一つの条件(十分条件)は、そのプログラムの中で規定されたターゲットの間でのTCPの動きが、完結されなければならないことである。
ロボット・プログラムの中で規定されたタスクをロボットが実行可能であるかを調べるために、二つの判断規準が使用される。
その第一の判断規準は、“可能なタスク配置についての判断規準(Possible task placement criterion)”であり、この判断規準は、以上で論じた必要条件を使用する。タスクのロケイションは、もし、ロボット・プログラムの中で規定された全てのターゲットがロボットのTCPにより到達できる場合の、可能な配置であると考えられる。これは、そのロボットの運動学的モデルを用いて、ジョイント角度を計算することにより、チェックされる。もし、ソリューションが存在し、且つ、そのジョイント角度がジョイント角度の許容可能な範囲の内側であるならば、そのターゲットに到達することができる。通常、幾つかの異なるやり方で、軸角度の異なる組合わせを用いて、同一の位置及び向きを実現することが可能である。我々は、これらを、異なるロボット・コンフィギュレイション(robot configurations)と呼ぶ。ロボット・コンフィギュレイションに対する要求を、“可能なタスク配置についての判断規準”に付け加えることが、可能である。例えば、経路が、オリジナルのロケイションからシフトされたときには、我々は、そのロボット・コンフィギュレイションを変更することを要求することができる。
可能なタスク・ロケイションは、ロボット・プログラムの中で規定されたタスクが許容可能であることを、保証しないが、可能なタスク・ロケイションが許容可能なものである可能性が高い。可能なタスク配置についての判断規準の優位性は、その評価のための時間的効率が良いことである。
その第二の判断規準は、“許容可能なタスク配置についての判断規準(Admissible task placement criterion)” であり、この判断規準は、以上で論じた十分条件を使用する。そのタスクの配置は、もし、ロボットのTCPが、ロボット・プログラムの中で規定されたターゲットの全てに到達し、且つ、一連の全てのターゲットの間の動きを実行することが可能な場合に、運動学的に許容可能であると考えられる。これは、基本的には、二つのターゲットの間でロボットが辿ることになる経路上に、運動学的な特異点が無いことを確認することが必要であることを意味している。
経路上の十分な数のポイントを、運動学的モデルを用いて調べることにより、これを行うことができる。この判断規準は、例えば、仮想コントローラ(即ち、シミュレイトされたロボット制御システム)の中でロボット・プログラムを実行することによって、評価することが可能である。非常に大量のポイントを調べる必要があるので、この判断規準は、可能なタスク配置についての判断規準と比べて、遥かに時間がかかることが明らかである。
上記の規定は、最適なタスク・ポジショニングに関して、特に、ロボット作業スペースの中で、タスクのロケイション/配置についての境界を見つけ出すときに、非常に重要である。
図3に、本発明の好ましい実施形態のフローチャートが示されている。この実施形態において、産業用ロボットに対するタスクのロケイション(即ち位置および/または向き)は、サイクルタイムに関して最適化される。本発明の好ましい実施形態は、以下のステップからなる:
(1) タスク・ロケイション・テストのための一組のテストから構成される実験を計画する;
(2) “許容可能なタスク・ロケイション判断規準”がその中で満足される一組のタスク・ロケイション・テストを用いて、境界を見つけ出す;
(3) 各許容可能なタスク・ロケイションで、サイクルタイムを計算する;
(4) タスク・ロケイション・テスト結果(許容可能なタスク・ロケイションの関数としてのサイクルタイム)を、多項式(または、他の適切な式)に適合させる;
(5) その適合された多項式を用いて、最適なタスク・ロケイションを見つけ出す;
(6) 正確さを増すために、ステップ(2)から(5)までを、決定された最適なタスク・ロケイションで、より小さい寸法のテスト・キューブ(図4参照)を用いて、繰り返しても良い。
この概略的に説明されたステップは、以下のパラグラフにおいて詳細に説明される。
他の実施形態において、産業用ロボットに対する最適なタスクのロケイションは、ロボット・コンポーネントの寿命が最大になること、または、ロボット・コンポーネントの寿命が最大限バランスすること、または、ロボット・システムの電力消費が最小になること、または、ロボットのドライブ・トレインのコンポーネント(ギアボックス、モータ及びドライブ)の内の温度が最適化されること、または、上記結果の何れかの組み合わせが実現されること、などを意味している。プロセス・モデルはまた、ロボットに基づくプロセスの質を最適化することができる。プロセス・モデルは、それから、例えば、最適化の効果を計算するための仮想コントローラとともに使用される。以下に、塗装へ適用するケースを用いて、上記アイデアの例を示す。
プロセス・モデル(単純化された)は、次のように表わされる:
dt=f(dv,x1,x2,... ,xn)
ここで、
dtは、塗装の厚みの変動量、
dvは、ロボットのTCPの速度の変動量(これは、タスクのロケイションの関数である)、
x1,... ,xnは、当該ロボットにより影響されない他のプロセス・パラメータ。
上記の方法論及びプロセス・モデルを用いて、塗装の厚みの変動量ついての最適なタスクのロケイションを見つけ出すことができる。
この実施形態においては、一つロボット及び一つタスクがあるが、数台のロボットおよび/または幾つかのタスクがあっても良い。更に、注意すべきことは、必ずしも、位置及び向きの両方が最適化されることまでは要求されず、位置のみであっても、向きのみであってもよく、あるいは、位置および/または向きの個別の成分のみであっても構わない。
本発明によれば、方法の第一のステップは、実験が計画されること、即ち、複数のテストが規定されることである。各テストにおいて、そのタスクの位置および/または向きが、変更される。これらのテストは、後に、サイクルタイムとロボットに対するタスクの位置及び向きの間の関係の近似式を見出すために使用される。
この実験は、従って、注意深く計画されなければならない。もし、多数のテストから構成される実験が計画された場合には、良い近似式を見つけ出すことができる。しかしながら、その実験の中の各テストについてサイクルタイムを計算するには、時間がかかり、多数のテストを計画することは、必要となるCPU時間の増大を招く。正確さとCPU時間の満足できる組み合わせをもたらすような実験が、選択されなければならない。いわゆるフル・ファクトリアル・デザイン(full-factorial design;全因子計画法)は、27のテストを含む。
図5の中に、そのタスクの位置のみの、3変数のケースについてフル・ファクトリアル・デザインの例が示されている。2変数(そのタスクの位置のみ)のケースについての、フル・ファクトリアル・デザインを図に表わした例が、図4に示されている。図4において、オリジナルのタスク・ロケイションは、立方体の中央の大きな黒い丸(または点)で示されており、これに対して、小さな丸(または点)は、異なるテストを表わしている。必要となるテストの数が少ない実験の例は、ボックス−ベーンケン(Box-Behnken)デザインで、それは12のテストからなる。
実験計画の他のタイプを用いることも可能であり、それらは、例えば、“セントラル・コンポジット・デザイン(central composite design;中心要素計画法)”、“フェイスセンタード・コンポジット・デザイン(face-centered composite design;面心要素計画法)”及び“プラケット−バーマン・デザイン(Plackett-Burman design)”などである。適応性に優れた実験計画を用いることも可能であり、それは、例えば、運動学的な特異点の近傍でより多くのテスト ポイントが使用される実験計画である。
この方法の第二のステップは、図3に示された許容可能なタスク・ロケイションについての境界を見つけ出すことである。この第二のステップは、図6に示されているアルゴリズムのフローチャートを用いて、以下で詳細に説明される。
このアルゴリズムは、以下のステップから構成される:
(1) タスク・ロケイションを、図4に示されたロケイション・テスト・ポイントの内の一つにシフトさせる;
(2) そのタスクを規定するための使用された全てのターゲットが、可能なターゲットであるか否を、“可能なタスク配置についての判断規準”を用いて、チェックする;
(3) もし、ステップ(2)の条件が満足されている場合には、ステップ(8)へ進む;
(4) もし、ステップ(2)の条件が満足されていない場合には、その“シフト・ベクトル”の逆のシフト方向を使用する(なお、シフト・ベクトルは、オリジナルのタスク・ロケイションからロケイション・テスト・ポイント)へ向かうベクトルとして定義される;
(5) 前回のシフトの半分を、今回のシフト値として、使用する;
(6) ステップ(2)を実行する;
(7) もし、ステップ(2)の条件が満足されている場合には、ステップ(8)へ進む;
(8) そのシフト値が、予め定められている正確さの規準よりも大きいかチェックする;
(9) もし、ステップ(8)の条件が、満足されていない場合には、同じシフト・方向を使用し、ステップ(5)へ進み、ステップ(2)を実行する;
(10) ステップ(8)の条件が、満足されている場合には、“許容可能なタスク配置についての判断規準”を用いて、そのロケイション・テスト・ポイントで、そのタスクを実行することが可能であるかをチェックする;
(11) もし、ステップ(10)の条件が満足されている場合には、このロケイション・テスト・ポイントは、境界を構成するポイントとして、含まれることになる;
(12) もし、ステップ(10)の条件が満足されていない場合には、このロケイション・テスト・ポイントは、無視されることになる;
(13) 全てのロケイション・テストが行われたかどうかチェックする;
(14) もし、ステップ(13)の条件が満足されていない場合には、ステップ(1)に進み、タスクを新しいロケイション・テスト・ポイントへシフトさせる;
(15) もし、ステップ(13)の条件が満足されている場合には、そのアルゴリズムが完了し、境界が見つけ出される。
境界が決定される方向は、好ましくは、実験の方向に一致する。しかし、境界を、他のやり方で見つけ出すことも可能である(例えば、一つのパラメータを一時に変化させることによって)。
このアルゴリズムへのインプットは、考慮される変数、及び、境界を見つけ出す必要がある方向である。第一のステップにおいて、変数は、それらのオリジナルの値からシフトされ、次に、そのシフトの効果が、“可能なタスク配置についての判断規準”を用いて、評価される。二つの判断規準が、そのシフトがOKであるかどうか決定するための使用される:
(1) 可能なタスク配置についての判断規準;及び、
(2) 境界のどの程度近くで実験が行われるべきかについて示す許容範囲;
もし、どちらの判断規準も満足されていない場合には、新しいシフト値が計算される。
実験方向(2Dのケース、位置のみ)が、図7に示されている。この図は、二つの異なる作業位置にある産業用ロボットを示している。ロボットの作業スペースは、複数の異なる領域からなり、それは、全体の“動作可能領域”及び“特定のタスクについての動作可能領域”である。“特定のタスクについての動作可能領域”の内側は、ブラックボックスで示されている。そのブラックボックス上の小さな黒い丸(または点)(2)は、特定のタスクについての実験ポイント(テスト)を表わしている。矢印は、実験方向を示している。
経路のオリジナルのロケイションは、実験の方向に、若干の初期量だけ、一時にシフトされる。全てのターゲットは、この最初のシフトの後で、ロボットの作業スペースの内側になければならない。可能なタスク配置についての判断規準が、そのタスクの位置及び向きが、シフトの後でOKであるかどうかをチェックするために用いられる。
可能なタスク配置についての判断規準は、ジョイント角度を、そのロボットの運動学的モデルを用いて計算することにより、評価される。もし、ソリューションが存在し、且つ、そのジョイント角度がジョイント角度の許容可能な範囲の内側である場合には、判断規準が満足される。もし、その位置及び向きが許容可能でない場合には、次回のシフトは、反対方向に“α*最後のシフト”のシフト量で行われる。但し、0<α<1である。
もし、そのタスクの位置及び向きがOKであるが、最後のシフトが、境界のどの程度近くでテストが行われるべきかについて規定する許容範囲と比べて大きい場合には、次回のシフトは、同一方向に“α*最後のシフト”のシフト量で行われる。
もし、そのタスクの位置及び向きがOKで、且つ、最後のシフトが、境界のどの程度近くでテストが行われるべきかについて規定する許容範囲と比べて小さい場合には、その実験を実行することが望ましく、それにより境界が見つけ出される。
動作可能領域(即ち、特定の経路についてタスクをどの程度変位させることができるかを示す範囲)が、図7に示されている。注意すべきことは、付加的な判断規準を、可能なタスク配置についての判断規準に、付け加えることができることである。その幾つかの例は、下記の通りである:
* ロボット・セル幾つかの部分を、占有されているとして規定することができる、即ち、これらの部分においてタスクを実行することができない。これは、衝突の危険、または安全上の理由、またはセルの設計者が想定するであろう他の理由によるものである;
* セル内の他のロボット、または他のデバイスとの衝突を、チェックすることができる。
各方向についての境界を見つけ出した後、その実験の中のテストのそれぞれについてサイクルタイムを計算するために、経路のシミュレイションが実行されることになる。タスクは、仮想コントローラを用いて、即ち、正確なサイクルタイム・シミュレイションを与えるシミュレイトされたロボット制御システムを用いて、シミュレイトされ、そのシミュレイションの間に、時間が測定される。この仮想コントローラは、シミュレイトされた制御システムであるので、真のコントローラの中に存在している情報の大部分にアクセスすることが可能である。
このように、仮想コントローラを、そのタスクの位置及び向きの最適化の他のアスペクトを評価するために使用することが可能である。サイクルタイムを計算することに加えて、ロボットがターゲット間の動きを実行することが可能であるかも、自動的にチェックされる。即ち、タスクの許容可能性がチェックされる。もし、ロボットが、そのタスクを実行することができないとき、その対応するテストは、実験から取り除かれる。
この“タスクの許容可能性”を、運動学的モデルを用いて、経路上に運動学的な特異点が無いことを確認することによって、チェックすることも、可能であろう。このタスクの許容可能性は、その場合、サイクルタイムが計算される前に、チェックされることになる。このことは、サイクルタイムの計算に長い時間がかかるケースにおいては、有益であろう。
以下のステップにおいて、実験データ、位置、向き、及び各テストについて計算されたサイクルタイムが、例えば、多項式に、適合される。この例を、以下において、二次の多項式のケースで、且つ位置のみが変化する場合について示す。
高次の多項式および/または回転のみが考慮されるケース、あるいは、位置及び回転が考慮されるケース、あるいは、位置および/または向きの少なくとも一つの成分が考慮されるケースも、同様なやり方で取り扱うことができる。サイクルタイム“f(x,y,z)”は、そのとき、以下の式で近似される:
f(x,y,z)=bo +b1 x+b2 y+b3 z+ (一次項)
4 xy+b5 yz+b6 xz+ (相互作用項)
7 +b8 +b9 (二次項) ・・・(1)
この式を実験データに適合させることは、最小二乗法のセンスで、最小の誤差を与える係数(bO からb9 まで)を見つけ出すことからなる。これを行うために、先ず、式(1)が、一次の形で表わされように、以下のマッピングにより変形される:
x=x1 , xy=x4 , x=x7
y=x2 , xz=x5 , y=x8
z=x3 , yz=x6 , z=x9 ・・・(2)
式(2)を用いて、式(1)は、マトリクス表示により以下のように表わされる:
Y=X・B+e ・・・(3)
ここで、
Yは、サイクルタイムのベクトル、
Xは、デザイン・マトリクス、
B={b0 ,b1 ,b2 ,... ,b9 }、及び
eは、誤差のベクトル。
上記のデザイン・マトリクスは、マトリクスの形の形で表わされた実験計画である。Bは、最小二乗法を用いることにより評価することが可能であり、 L=e・e の最小化は、次の式のようになる:
B=(X・X)−1・X・Y ・・・(4)
多項式の代わりに、スプライン関数またはフーリエ級数を使用することもできる。
本発明による方法の最後のステップは、今や、最小のサイクルタイムをもたらすそのタスクの位置及び向きを、サイクルタイムについての近似式を用いて、見つけ出すことである。多項式の極値点を見つけ出すことは、簡単に行われる。(内部の)極値点のための必要条件は、全ての偏微分がゼロであること、即ち、そのポイントが、安定点であることである。
我々が、微分可能な式:
f(x1,x2,... ,xn)
−を持っているとして、その式に極値点を求めようとしているとすると。更に、f(P)を、P={a1,a2,... ,an}が安定点であるとする。マトリクス:
A=(aij)
−を定める。ここで、
aij={∂/(∂xi・∂Xj)}・f(P)
−である。そのとき、もし、
Q={x1,x2,... ,xn}tA{x1,x2,... ,xn}
が正(負)で有限な値である場合には、Pはローカルな最小点(最大点)である。
内側の極値点を見つけ出すことに加えて、境界を調べる必要がある。
たとえ、特定のタスクについての動作可能領域が先行のステップで決定されていた場合であっても、最適化のための幾つかの制約条件を付け加えることが、好ましいであろう。その一例として、動作可能領域の特定の部分を、安全上の理由のために、あるいは、他のオブジェクトとの衝突の危険のために、除外したいと思うケースがあるであろう。半径Rの円筒を除外することは、センターが(x1,y1)にあるとして、以下の制約条件により表わすことができる:
(x−x1)+(y−y1)>R2
どの程度複雑な制約条件が設定されるかに依存して、異なる種類の最適化方法を用いることができる。それらは、例えば、複合法、SQP法、グラディエント法などである。
サイクルタイムの近似式の最小値は、必ずしも、実際の最小のサイクルタイムを与えるとは限らない。更に、最適なロケイションが、境界の内側で見つけ出されたとしても、その最適なロケイションが、許容可能なタスク配置についての判断規準を満足することが、保証されるとは限らない。これらの理由のために、サイクルタイムの式の最小値は、最適化のための候補または最適な候補と考えることができるだけである。換言すれば、上記の式により予想される最適なロケイションは、経路シミュレイションを行うことにより、テストされなければならない。
もし、その経路が、成功裏にシミュレイトされれば、サイクルタイムの測定が行われる。そうでない場合には、最適ベクトルの方向での最も近い可能なタスク・ロケイションが、最適な候補として選択される。この手順は、シーケンシャルな後方へのシフトと呼ぶことができる。許容不可能なロケイションを最適な候補として見つけ出す可能性があるため、このアルゴリズムは、異なるサーチ領域の中で幾つかの最適な候補を決定することができる。
オリジナルの経路ロケイションの周囲の異なるサーチ領域が、幾つかの最適な候補を見つけ出すために考慮される。このコンセプトは、図8に示されている。図8において、オリジナルの経路ロケイションの周囲で、3つの異なるサーチ領域が使用され、最適な点(このケースでは最小の点)が、それぞれのサーチ領域について、見つけ出される。
図8の2次元の模式図から分かるように、より小さいサーチ領域を仮定することによって、異なる最適な候補が得られる。この方策を採用することは、オリジナルのロケイションから異なる距離にある幾つかの最適な候補を導入するという優位性がある。全ての候補ポイントが調べられ、サイクルタイムが測定されることになる。もし、タスクが、候補ロケイションの一つで実行できない場合には、即ち、もし、そのロケイションが許容不可能なロケイションである場合には、そのロケイションは、最適な候補のリストの中から取り除かれる。候補の全てを調べた後、実際のテストの最小値が、現実の最適として、選択される。上記の手順を用いて、最適なポイントが見つけ出されるが、それでもなお、幾つかの他の可能性があるケースについて考慮する必要がある。
考慮に入れるべき第一のケースは、最適な候補のいずれもが、許容可能でないケースである。 即ち、最適な候補が許容可能でなく、且つオリジナルのロケイションへのシーケンシャルな後方へのシフトの間であっても、可能なロケイションを、見つけ出すことができないか、あるいは、可能なソリューションが存在するケースにおいて、ロボットが経路とターゲットの間のどこかでジョイント(関節)のリミットに到達する。そのときには、実験の最短のサイクルタイムが最適として選択される。
注意すべきことは、実験のロケイションの許容性は、前もって、経路シミュレイションを実行することによりチェックされることである。最適なロケイションが許容可能な場合であっても、最適化されたサイクルタイムが、実験のサイクルタイムの全てよりも小さいかどうかについてチェックすることが、なお合理的である。もし、実験のサイクルタイムが、最適なロケイションにおけるサイクルタイムよりも小さい場合には、そのロケイションが、最適として考慮されることになる。
そのタスクの最適位置及び回転が見つけ出された後で、上記のステップを繰り返すこともできるが、そのときには、最適なポイント(位置及び向き)の周りの小さな領域で、実験がデザインされる。より小さな領域でステップを繰り返すことによって、最適なポイントの正確さが、通常、改善され、それにより、サイクルタイム(最適化の幾つかの他の目安)が減らされる。
一部のケースにおいては、第一の近似式を見つけ出すために、低次の多項式を使用することが有利になることもある、(比較的少数のテストからなる実験が行われる)。その後、第二のステップとして、第一の近似式の周囲のより小さな領域で、高次の多項式を使用することができる。先の実験により予想される最適なポイントの周りで、新しい実験を計画するプロセスを、数回繰り返すこともできる。
最適なロボット・ポジショニングのために、以上で述べた方法論は、他の最適化目標を実現するために、適用することが可能である。それは、例えば、コンポーネント寿命の最大化、エネルギ消費の最小化、ロボット・システムの熱管理の最適化、ロボットに基づくプロセスの質の最適化などである。
本発明による方法を適用するために、ロボットのタイプに関して何の制限もない。即ち、いかなる種類のロボットも考慮の対象とし使用することが可能である。そのタスクも、広範囲に渡り、いかなる種類のタスクも考慮の対象とし使用することが可能である。
本発明による方法はまた、コンピュータまたはプロセッサに上記方法のステップのいずれかを実行させるため、一組のコンピュータ読込み可能な指示、あるいは、コンピュータ・プログラム記憶手段に含まれるコード手段のコントロール下で、少なくとも部分的に、実行される。
本発明はまた、本発明による方法を実行するために、コンピュータ読込み可能な製品を使用することもできる。
本発明について、好ましい実施形態を用いて説明したが、本発明は、それらのみに限定されることはなく、添付されたクレームにより規定される本発明の原理から外れることなく、様々なやり方で実施することができる。
図1は、可能性のある異なる座標系を示す。 図2は、ロボット・アームの外部での座標系を示す。 図3は、本発明による方法の全体像を示すフローチャートである。 図4は、ロケイション・テスト・キューブを示しており、このキューブは、27のテストが行われるフル・ファクトリアル実験、及び関係するタスク・シフト・ベクトルを示している。 図5は、3変数を含む“フル・ファクトリアル実験 デザイン”を示す表である。 図6は、図3の中の“境界を見つけ出す” ステップの、より詳細なフローチャートである。 図7は、特定のタスクのための動作可能領域/スペースを示し;更に、この図は、動作可能領域/スペースを見つけ出すために、実験方向がどのように用いられるかを示している。 図8は、異なる領域で最小のレスポンスの式をサーチすることが、異なる結果をもたらすことがあることを示す、2次元の図である。 図9は、ターゲットが置かれ/規定される異なる座標系を示している。 図10は、オブジェクト座標系が、他の座標系に対してどのように規定されるかについて示している。 図11は、レスポンスのサイクルタイムの相互作用のプロットを、xyz座標の関数として示した図であり、また、どのモデル・タイプが、最良の結果をもたらすかを示している。 図12は、本発明による方法の可能性のあるアルゴリズムの詳細なフローチャートである。 図13は、本発明による方法の可能性のあるアルゴリズムの詳細なフローチャートである。 図14は、本発明による方法の可能性のあるアルゴリズムの詳細なフローチャートである。 図15は、回転ブロック・アルゴリズムの詳細なフローチャートである。

Claims (8)

  1. タスクを実行するロボットに対するタスクのロケイションを最適化するための方法であって:
    ロボットで実行されるタスクについての複数のテストを規定する、ここで、各テストは、ロボットに対するタスクの一つのロケイションを含んでいて、各テストに含まれるロケイションは、他のテストに含まれるロケイションとは異なっている
    ロボットの運動学的モデルを使用してタスクを実行することが可能なロケイションと、タスクを実行することが不可能なロケイションと間の境界を決定し
    − 前記複数のテストの中タスクのロケイションを移動して、それらのロケイションが前記決定された境界の内側にあるように調整し;
    − 最適性の一つのアスペクトに関して、前記規定されたテストのロケイションでのタスクのシミュレイションを実行することにより、最適性の一つのアスペクトについての評価の値を計算し;
    最適性の前記アスペクトについての計算値と、前記複数のテストの中でのタスクのロケイションとの間の関係を、選択された関数タイプに適合させることにより、最適性の前記アスペクトについての計算値と、ロボットに対するタスクのロケイションとの間の関係を記述する数学的関数を決定し;
    − この決定された数学的関数の極値点を計算し;
    − この数学的関数の計算された極値点を使用して、タスクの最適なロケイションを決定すること;
    を特徴とする方法。
  2. 下記特徴を有する請求項1に記載の方法:
    前記選択された関数タイプは、多項式である
  3. 下記特徴を有する請求項1に記載の方法:
    前記選択された関数タイプは、スプライン関数である
  4. 下記特徴を有する請求項1に記載の方法:
    前記選択された関数タイプは、フーリエ級数である
  5. 下記特徴を有する請求項1に記載の方法:
    前記シミュレイションは、仮想コントローラを使用することにより実行される
  6. 下記特徴を有する請求項1に記載の方法:
    当該方法は、ロボットに対する幾つかのタスクの位置および/または向きを最適化するステップを、更に有している
  7. 下記特徴を有する請求項1に記載の方法:
    当該方法は、数台のロボットに対するタスクの位置および/または向きを最適化するステップを、更に有している
  8. タスクを実行するロボットに対するタスクのロケイションを最適化するためのシステムであって:
    プロセッサを有し、このプロセッサは、
    ロボットの運動学的モデルを使用して、タスクを実行することが可能なロケイションと、タスクを実行することが不可能なロケイションと間の境界を決定し
    ロボットで実行されるタスクについて予め規定された複数のテストの中タスクのロケイションを移動して、それらのロケイションが前記決定された境界の内側にあるように調整する、ここで、各テストは、ロボットに対するタスクの一つのロケイションを含んでいて、各テストに含まれるロケイションは、他のテストに含まれるロケイションとは異なっている
    − 最適性の一つのアスペクトに関して、前記規定されたテストのロケイションでタスクのシミュレイションを実行することにより、最適性の一つのアスペクトについての評価の値を計算し;
    最適性の前記アスペクトについての計算値と、前記複数テストの中でのタスクのロケイションとの間の関係を、選択された関数タイプに適合させることにより、最適性の前記アスペクトについての計算値と、ロボットに対するタスクのロケイションとの間の関係を記述する数学的関数を決定し;
    − この数学的関数の極値点を計算し;
    − この数学的関数の計算された極値点を使用して、タスクの最適なロケイションを決定する;
    ように構成されていることを特徴とするシステム。
JP2006541095A 2003-11-23 2004-11-23 タスクを実行するロボットに対するタスクのロケイションを最適化するための方法及びシステム Active JP4763614B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
SE0303145A SE0303145D0 (sv) 2003-11-23 2003-11-23 Method for optimising the performance of a robot
SE0303145-7 2003-11-23
US52394103P 2003-11-24 2003-11-24
US60/523,941 2003-11-24
PCT/SE2004/001722 WO2005049284A1 (en) 2003-11-23 2004-11-23 Method for optimising the performance of a robot

Publications (2)

Publication Number Publication Date
JP2007512153A JP2007512153A (ja) 2007-05-17
JP4763614B2 true JP4763614B2 (ja) 2011-08-31

Family

ID=29729159

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006541095A Active JP4763614B2 (ja) 2003-11-23 2004-11-23 タスクを実行するロボットに対するタスクのロケイションを最適化するための方法及びシステム

Country Status (4)

Country Link
US (1) US8401698B2 (ja)
JP (1) JP4763614B2 (ja)
SE (1) SE0303145D0 (ja)
WO (1) WO2005049284A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140090601A (ko) * 2011-09-15 2014-07-17 컨버전트 인포메이션 테크놀로지스 게엠베하 로봇 프로그램의 자동 생성을 위한 시스템 및 방법

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008502488A (ja) * 2004-06-15 2008-01-31 エービービー エービー 複数の相互作用ロボットをオフラインでプログラミングする方法及びシステム
US9390203B2 (en) 2004-06-15 2016-07-12 Abb Ab Method and system for off-line programming of multiple interacting robots
US7546588B2 (en) * 2004-09-09 2009-06-09 International Business Machines Corporation Self-optimizable code with code path selection and efficient memory allocation
WO2009103335A1 (en) * 2008-02-20 2009-08-27 Abb Research Ltd. Method and system for optimizing the layout of a robot work cell
US9108316B2 (en) * 2008-12-10 2015-08-18 Abb Research Ltd. Method and system for in-production optimization of the parameters of a robot used for assembly
DE102010032917A1 (de) * 2010-07-30 2012-04-19 Brötje-Automation GmbH Verfahren zur Offline-Programmierung eines NC-gesteuerten Manipulators
US8700190B2 (en) * 2011-08-05 2014-04-15 Mitsubishi Electric Research Labs. Method for generating trajectories for motor controlled actuators
DE102011082800B4 (de) * 2011-09-15 2016-04-14 Convergent Information Technologies Gmbh System und Verfahren zur automatisierten Erstellung von Roboterprogrammen
EP2796249B1 (en) * 2011-09-28 2015-12-30 Universal Robots A/S Programming of robots
DE102012101497B4 (de) * 2012-02-24 2016-05-19 Convergent Information Technologies Gmbh Robotergestütztes Arbeitsverfahren
US20130343640A1 (en) 2012-06-21 2013-12-26 Rethink Robotics, Inc. Vision-guided robots and methods of training them
US9579806B2 (en) 2012-08-23 2017-02-28 Rethink Robotics, Inc. Robotic power and signal distribution using laminated cable with separator webs
US9649765B2 (en) 2013-03-11 2017-05-16 Siemens Aktiengesellschaft Reducing energy consumption of industrial robots by using new methods for motion path programming
WO2015113203A1 (en) 2014-01-28 2015-08-06 Abb Technology Ltd Method and apparatus for optimizing performance of robotic cell
US9922144B2 (en) * 2014-03-26 2018-03-20 Siemens Industry Software Ltd. Energy and cycle time efficiency based method for robot positioning
US9701011B2 (en) 2014-05-08 2017-07-11 Siemens Industry Software Ltd. Method for robotic energy saving tool search
US9815201B2 (en) 2014-07-31 2017-11-14 Siemens Industry Software Limited Method and apparatus for industrial robotic energy saving optimization using fly-by
US9469029B2 (en) 2014-07-31 2016-10-18 Siemens Industry Software Ltd. Method and apparatus for saving energy and reducing cycle time by optimal ordering of the industrial robotic path
US9298863B2 (en) * 2014-07-31 2016-03-29 Siemens Industry Software Ltd. Method and apparatus for saving energy and reducing cycle time by using optimal robotic joint configurations
US9457469B2 (en) 2014-08-14 2016-10-04 Siemens Industry Software Ltd. Method and apparatus for automatic and efficient location generation for cooperative motion
US20160085887A1 (en) * 2014-09-18 2016-03-24 Siemens Industry Software Ltd. Method for improving efficiency of industrial robotic energy consumption and cycle time by handling location orientation
CN104298865B (zh) * 2014-10-08 2018-02-09 南昌航空大学 夹紧力的变向增量递减确定算法
DE102015202616A1 (de) 2015-02-13 2015-04-16 Heidelberger Druckmaschinen Ag Verfahren zum Bearbeiten der Oberfläche eines dreidimensionalen Objekts
US9724826B1 (en) 2015-05-28 2017-08-08 X Development Llc Selecting physical arrangements for objects to be acted upon by a robot
US9682476B1 (en) 2015-05-28 2017-06-20 X Development Llc Selecting robot poses to account for cost
AU2017294796B2 (en) * 2016-07-15 2019-05-30 Fastbrick Ip Pty Ltd Brick/block laying machine incorporated in a vehicle
CN106444739A (zh) * 2016-07-15 2017-02-22 鹿龙 多工业机器人虚拟离线协同仿真系统及方法
CN106230812A (zh) * 2016-07-28 2016-12-14 腾讯科技(深圳)有限公司 资源转移方法及装置
CN111246976B (zh) 2017-08-17 2024-03-15 快砖知识产权私人有限公司 交互系统配置
EP4049168A4 (en) 2019-10-25 2023-11-01 Dexterity, Inc. ROBOTIC SYSTEM SIMULATION ENGINE
JP6819766B1 (ja) * 2019-11-27 2021-01-27 株式会社安川電機 シミュレーションシステム、シミュレーション方法、シミュレーションプログラム、ロボットの製造方法、およびロボットシステム
US20230182302A1 (en) * 2021-12-10 2023-06-15 Autodesk, Inc. Techniques for robotic workcell design

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001249961A (ja) * 1999-11-24 2001-09-14 Dassault Systemes アセンブリワークセルをレイアウトするための最適化ツール

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5341458A (en) * 1991-09-11 1994-08-23 Honda Giken Kogyo Kabushiki Kaisha Method of and system for generating teaching data for robots
US5430643A (en) * 1992-03-11 1995-07-04 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Configuration control of seven degree of freedom arms
US6216058B1 (en) * 1999-05-28 2001-04-10 Brooks Automation, Inc. System of trajectory planning for robotic manipulators based on pre-defined time-optimum trajectory shapes
US6526373B1 (en) * 1999-10-08 2003-02-25 Dassault Systemes Optimization tool for robot placement
JP4364634B2 (ja) * 2001-07-13 2009-11-18 ブルックス オートメーション インコーポレイテッド 二次元3自由度ロボットアームの軌道プラニング及び移動制御戦略

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001249961A (ja) * 1999-11-24 2001-09-14 Dassault Systemes アセンブリワークセルをレイアウトするための最適化ツール

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140090601A (ko) * 2011-09-15 2014-07-17 컨버전트 인포메이션 테크놀로지스 게엠베하 로봇 프로그램의 자동 생성을 위한 시스템 및 방법
KR102028770B1 (ko) 2011-09-15 2019-10-04 컨버전트 인포메이션 테크놀로지스 게엠베하 로봇 프로그램의 자동 생성을 위한 시스템 및 방법

Also Published As

Publication number Publication date
US20070106421A1 (en) 2007-05-10
SE0303145D0 (sv) 2003-11-23
WO2005049284A1 (en) 2005-06-02
JP2007512153A (ja) 2007-05-17
US8401698B2 (en) 2013-03-19

Similar Documents

Publication Publication Date Title
JP4763614B2 (ja) タスクを実行するロボットに対するタスクのロケイションを最適化するための方法及びシステム
Bi et al. Flexible fixture design and automation: Review, issues and future directions
Mohammed et al. Minimizing energy consumption for robot arm movement
EP2355956B1 (en) A method and a device for optimizing a programmed movement path for an industrial robot
Chen et al. Posture optimization in robotic machining based on comprehensive deformation index considering spindle weight and cutting force
Peng et al. Smoothness-oriented path optimization for robotic milling processes
Gorkavyy et al. Intelligent system for prognostication and optimization of power expenses of technological processes at robotized productions
Wang et al. Dynamic performance analysis of parallel manipulators based on two-inertia-system
Zeghloul et al. SMAR: A robot modeling and simulation system
Li et al. Vibration suppression of an industrial robot with AGV in drilling applications by configuration optimization
Liu et al. Automatic joint motion planning of 9-DOF robot based on redundancy optimization for wheel hub polishing
Ma et al. Optimal energy consumption for mobile manipulators executing door-opening task
Devi et al. Minimum jerk trajectory planning of puma560 with intelligent computation using ann
Bulej et al. Study of the workspace of hybrid mechanism Trivariant
Li et al. Inverse kinematics study for intelligent agriculture robot development via differential evolution algorithm
Izagirre et al. Torque-based methodology and experimental implementation for industrial robot standby pose optimization
Baizid et al. Industrial robotics platform for simulation design, planning and optimization based on off-line CAD programming
Bai et al. Apply fuzzy interpolation method to calibrate parallel machine tools
Fernandez et al. Multi-Surface Admittance Control Approach applied on Robotic Assembly of Large-Scale parts in Aerospace Manufacturing
Benotsmane et al. Calculation methodology for trajectory planning of a 6 axis manipulator arm
Saheb et al. Mathematical modeling and kinematic analysis of 3-RRR planar parallel manipulator
Petko et al. Mechatronic design of a parallel manipulator for milling
Lai A fast task planning system for 6R articulated robots based on inverse kinematics
Lounici et al. Cutting Forces Impact on the Spindle Path during Robotic Milling
Nunez et al. Kinematics Parallel Mechanisms Design Particularities Focused on Additive Manufacturing.

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070608

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100309

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100430

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101005

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101203

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110510

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110609

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140617

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4763614

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250