JP2019018272A - モーション生成方法、モーション生成装置、システム及びコンピュータプログラム - Google Patents

モーション生成方法、モーション生成装置、システム及びコンピュータプログラム Download PDF

Info

Publication number
JP2019018272A
JP2019018272A JP2017137963A JP2017137963A JP2019018272A JP 2019018272 A JP2019018272 A JP 2019018272A JP 2017137963 A JP2017137963 A JP 2017137963A JP 2017137963 A JP2017137963 A JP 2017137963A JP 2019018272 A JP2019018272 A JP 2019018272A
Authority
JP
Japan
Prior art keywords
posture
robot
motion
information
priority
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.)
Granted
Application number
JP2017137963A
Other languages
English (en)
Other versions
JP6931457B2 (ja
Inventor
岳史 小島
Takeshi Kojima
岳史 小島
茜 中島
Akane Nakajima
茜 中島
剣之介 林
Kennosuke Hayashi
剣之介 林
春香 藤井
Haruka Fujii
春香 藤井
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.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
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 Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Priority to JP2017137963A priority Critical patent/JP6931457B2/ja
Priority to CN201810593603.5A priority patent/CN109249388A/zh
Priority to EP18178216.0A priority patent/EP3427905A1/en
Priority to US16/012,886 priority patent/US11090807B2/en
Publication of JP2019018272A publication Critical patent/JP2019018272A/ja
Application granted granted Critical
Publication of JP6931457B2 publication Critical patent/JP6931457B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • B25J9/1666Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/1605Simulation of manipulator lay-out, design, modelling of manipulator
    • 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/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • 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/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39217Keep constant orientation of handled object while moving manipulator
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39357Execute motion of path in minimum of time
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39358Time optimal control along path for singular points, having veloctiy constraints
    • 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/39Robotics, robotics to robotics hand
    • G05B2219/39361Minimize time-energy cost
    • 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/40073Carry container with liquid, compensate liquid vibration, swinging effect

Abstract

【課題】作業内容等に応じて、ロボットの適切なモーションを生成することができるモーション生成装置を提供する。【解決手段】ロボットRを第1の姿勢から第2の姿勢に変化させるための動作を生成するモーション生成装置10において、第1の姿勢を特定する第1姿勢情報と第2の姿勢を特定する第2姿勢情報を取得する第1取得手段18と、第1の姿勢から第2の姿勢に変化する動作に関する少なくとも1つの優先項目を取得する第2取得手段18と、取得された第1姿勢情報、第2姿勢情報及び優先項目に基づいて、第1の姿勢から第2の姿勢に移動するロボットの動作経路を含むロボットのモーションを生成する動作生成手段22とを備えるモーション生成装置10。【選択図】図2

Description

本発明は、ロボットの動作を生成するためのモーション生成方法、モーション生成装置、システム及びコンピュータプログラムに関する。
従来から、ロボットのモーションを自動的に生成するための経路計画と呼ばれるアルゴリズムが知られている。経路計画アルゴリズムは、一般的には、動作時間が最短となるようなモーションを生成する。
特許文献1は、グリッパが候補ワークWCに至るまでの所要時間Tが小さいほど、評価値Evを高いスコアとするロボットピッキングシステムを開示している。このロボットピッキングシステムは、複数のピッキング対象候補の候補ワークWCについて候補データを生成し、その候補データに基づいて、実際にピッキングする対象ワークWOを選択し、ピッキングする。
特開2014−180704号公報
しかしながら、動作時間が最短となるようなモーションが常に最適なモーションであるとは限らない。たとえば天地無用のワークにもかかわらず、動作時間が最短となるモーションを生成した場合、ワークの姿勢を考慮しないため天地無用のワークをひっくり返してしまう問題や、ワークにかかる加速度を考慮しないため把持しているワークに固定されていない部品がはずれてばらまかれてしまうという問題が発生しうる。こうした問題が発生する都度、ユーザが手動で、その制御点間における最適なモーションをティーチングして、生成されたモーションの再生成や修正をしていては、作業効率の低下を招く。
そこで本発明は、作業内容等に応じて、ロボットの適切なモーションを生成することができるモーション生成方法、モーション生成装置、システム及びコンピュータプログラムを提供することを目的とする。
本発明の一態様に係るモーション生成方法は、ロボットを第1の姿勢から第2の姿勢に変化させるための動作を生成するモーション生成方法において、第1の姿勢を特定する第1姿勢情報と、第2の姿勢を特定する第2姿勢情報を取得するステップと、第1の姿勢から第2の姿勢に変化する動作に関する少なくとも1つの優先項目を取得するステップと、取得された第1姿勢情報、第2姿勢情報及び優先項目に基づいて、第1の姿勢から第2の姿勢に移動するロボットの動作経路を含むロボットのモーションを生成するステップを含む。
この態様によれば、第1の姿勢及び第2の姿勢を特定する情報のみならず、第1の姿勢から第2の姿勢に変化する動作に関する少なくとも1つの優先項目に基づいて、ロボットのモーションを生成するため、入力された優先項目も加味した適切なモーションを生成することが可能になる。
上記態様において、ロボットの作業内容または作業対象を選択させるステップと、選択された作業内容または作業対象に基づいて優先項目を生成するステップと、をさらに含んでも良い。
この態様によれば、作業内容または作業対象を選択するだけで、優先項目を生成することができるため、ロボットに詳しくないユーザであっても、適切なモーションを生成することが可能になる。
上記態様において、作業内容または作業対象と、優先項目を関連付けさせるステップをさらに含んでも良い。
この態様によれば、ユーザ等に作業内容または作業対象と優先項目を関連付けさせることができるため、過去の実績等に基づく作業内容または作業対象と優先項目を予め関連付けることにより、適切なモーションを生成することが可能になるとともに、その生成に要する時間を短縮することが可能になる。
上記態様において、優先項目を取得するステップは、動作に関連する複数の優先項目と、その複数の優先項目間の優先度を取得するように構成され、モーションを生成するステップは、取得された優先度に基づいて、モーションを生成するように構成されていても良い。
この態様によれば、複数の優先項目に基づいて、より適切なモーションを生成することが可能になるため、多様なユーザのニーズに柔軟に対応することが可能になる。
上記態様において、ロボットの周辺環境情報を取得するステップをさらに含み、モーションを生成するステップは、取得された周辺環境情報に基づいて、モーションを生成するようにしても良い。
この態様によれば、障害物等の周辺環境に関する情報を加味して、たとえば障害物を自動的に回避するようなモーションを生成することが可能になる。
上記態様において、周辺環境情報は、ロボットの周辺の情報を取得するセンサまたは入力手段を用いて取得されてもよいし、ロボットの周辺の情報を含む電子データから取得されるようにしても良い。
この態様によれば、センサの計測結果等を用いて、周辺環境情報を容易に取得できるようになる。
上記態様において、第1姿勢情報は、ロボットの姿勢に基づいて取得されるようにしても良い。
この態様によれば、ユーザ等による第1姿勢情報の入力を省略または簡略化することが可能になるので、ユーザ等の入力の負担を軽減することが可能になるとともに、実用性を向上することが可能になる。
上記態様において、ロボットは、手先部を備えるロボットアームであり、第1姿勢情報又は第2姿勢情報は、手先部の位置及び姿勢に基づいて取得されていても良い。
この態様によれば、手先部の位置及び姿勢に基づいて、例えば、逆キネマティクス(Inverse Kinematics)等の手法を用いて、姿勢情報を取得することが可能になるので、実用性を損ねることなくユーザの入力の負担を軽減することが可能になる。
上記態様において、生成される動作は、ワークを取り扱うための動作であり、第2姿勢情報は、ワークの空間位置情報に基づいて取得されていても良い。
この態様によれば、例えばピッキング等のワーク把持動作の際に、実用性を損ねることなくユーザの入力の負担を軽減することが可能になる。
上記態様において、ロボットは、仮想的に動作を検証するためのシミュレータ装置であっても良い。
この態様によれば、実際の作業に使用されるロボットを用いることなく、モーションを生成することができる。
上記態様において、優先項目は、動作に関する制約条件であってもよい。
この態様によれば、優先項目として設定された項目に関して予め定められた条件を必ず満足するようにモーションを生成することが可能になる。
上記態様において、優先項目は、ロボットの速度、ロボットの加速度及びロボットにより取り扱われる第1の対象物の姿勢の少なくとも一つであってもよい。
この態様によれば、ロボットの速度、加速度及び取り扱われる第1の対象物の姿勢を考慮したモーションを生成することが可能になる。
上記態様において、モーションの生成は、優先項目に基づいて、第1の姿勢から第2の姿勢まで移動するときのロボットの移動時間が所定範囲内となるようにモーションを生成する第1のアルゴリズムと、第1の姿勢から第2の姿勢まで移動するときのロボットの加速度が所定の範囲内となるようにモーションを生成する第2のアルゴリズムと、第1の姿勢から第2の姿勢まで移動するときのロボットにより取り扱われる第2の対象物の姿勢が所定の範囲内となるようにモーションを生成する第3のアルゴリズムのいずれか一つを選択するステップを更に含んでもよい。
この態様によれば、速度優先のアルゴリズム、加速度優先のアルゴリズム、姿勢優先のアルゴリズムから目的に応じて選択される最適なアルゴリズムに基づいてロボットのモーションを生成することが可能になる。
本発明の一態様に係るモーション生成装置は、ロボットを第1の姿勢から第2の姿勢に変化させるための動作を生成するモーション生成装置である。そして、第1の姿勢を特定する第1姿勢情報と、第2の姿勢を特定する第2姿勢情報を取得する第1取得手段と、第1の姿勢から第2の姿勢に変化する動作に関する少なくとも1つの優先項目を取得する第2取得手段を備える。そして、取得された第1姿勢情報、第2姿勢情報及び優先項目に基づいて、第1の姿勢から第2の姿勢に移動するロボットの動作経路を含むロボットのモーションを生成する動作生成手段と、を備える。
この態様によれば、第1の姿勢及び第2の姿勢を特定する情報のみならず、第1の姿勢から第2の姿勢に変化する動作に関する少なくとも1つの優先項目に基づいて、ロボットのモーションを生成するから、入力された優先項目も加味した適切なモーションを生成することが可能になる。
上記態様において、ロボットの作業内容または作業対象を選択するための選択手段と、選択された作業内容または作業対象に基づいて優先項目を決定する優先項目決定手段と、をさらに備えていても良い。
この態様によれば、作業内容または作業対象を選択するだけで、優先項目を決定することができるため、ロボットに詳しくないユーザであっても、適切なモーションを生成することが可能になる。
上記態様において、作業内容または作業対象と、優先項目を関連付けるための登録手段をさらに備えても良い。
この態様によれば、ユーザ等に作業内容または作業対象と優先項目を関連付けさせることができるため、過去の実績等に基づく作業内容または作業対象と優先項目を予め関連付けることにより、適切なモーションを生成することが可能になるとともに、その生成に要する時間を短縮することが可能になる。
上記態様において、第2取得手段は、動作に関連する複数の優先項目と、その複数の優先項目間の優先度を取得するように構成され、動作生成手段は、取得された優先度に基づいて、モーションを生成するように構成されていても良い。
この態様によれば、複数の優先項目に基づいて、より適切なモーションを生成することが可能になるため、多様なユーザのニーズに柔軟に対応することが可能になる。
上記態様において、ロボットの周辺環境情報を取得するための環境取得手段をさらに備え、動作生成手段は、取得された周辺環境情報に基づいて、モーションを生成するように構成されていても良い。
この態様によれば、障害物等の周辺環境に関する情報を加味して、たとえば障害物を自動的に回避するようなモーションを生成することが可能になる。
本発明の一態様に係るシステムは、ロボットと、そのロボットを第1の姿勢から第2の姿勢に変化させるための動作を生成する上述したモーション生成装置を備えるものである。
この態様によれば、第1の姿勢及び第2の姿勢を特定する情報のみならず、第1の姿勢から第2の姿勢に変化する動作に関する少なくとも1つの優先項目に基づいて、ロボットのモーションを生成することができるから、入力された優先項目も加味した適切なモーションを生成し、それに基づいて適正に動作するロボットを備えるシステムを提供することが可能になる。
本発明の一態様に係るコンピュータプログラムは、ロボットを第1の姿勢から第2の姿勢に変化させるための動作を生成するためのコンピュータプログラムであって、コンピュータに、第1の姿勢を特定する第1姿勢情報と、第2の姿勢を特定する第2姿勢情報を取得するステップと、第1の姿勢から第2の姿勢に変化する動作に関する少なくとも1つの優先項目を取得するステップと、取得された第1姿勢情報、第2姿勢情報及び優先項目に基づいて、第1の姿勢から第2の姿勢に移動するロボットの動作経路を含むロボットのモーションを生成するステップと、を実行させるためのコンピュータプログラムである。
この態様によれば、第1の姿勢及び第2の姿勢を特定する情報のみならず、第1の姿勢から第2の姿勢に変化する動作に関する少なくとも1つの優先項目に基づいて、ロボットのモーションを生成することができるから、入力された優先項目も加味した適切なモーションを生成することができるコンピュータプログラムを提供することが可能になる。
本発明によれば、作業内容等に応じて、適切なモーションを生成することができるモーション生成方法、モーション生成装置、システム及びコンピュータプログラムを提供することができる。
モーション生成システム20の機能ブロック図。 モーション生成部10の内部構成図。 表示部28に表示されたロボットR。 表示部28に表示された優先項目PI。 ロボットRの模式図。 第1実施形態におけるモーション生成処理のフローチャート。 モーション生成システム40の機能ブロック図。 第2実施形態におけるモーション生成処理のフローチャート。 モーション生成システム70の機能ブロック図。 GUIとして表示されたロボットRと周辺の障害物D1及びD2 第3実施形態におけるモーション生成処理のフローチャート。 モーション生成システム90の機能ブロック図。 第4実施形態におけるモーション生成処理のフローチャート。 手先姿勢から姿勢計算処理するためのフローチャート。 ワーク位置から姿勢計算処理するためのフローチャート。
添付図面を参照して、本発明の好適な実施形態について説明する(なお、各図において、同一の符号を付したものは、同一又は同様の構成を有する)。
[第1実施形態]
図1は、本発明の第1実施形態に係るモーション生成部(モーション生成装置)10、初期/目標姿勢入力部12、優先項目入力部14、入力装置16及びロボットRから構成されるモーション生成システム20を示すブロック図である。
図2は、モーション生成部10の内部構成を示しており、外部と情報を送受信するための外部I/F18(取得手段)と、ロボットRのモーションを生成するためのコンピュータプログラムが格納される記憶装置20と、このコンピュータプログラムを実行し、モーションを生成するための演算処理を実行するためのCPU22と、処理対象となるデータやコンピュータプログラムを一時的に記憶するためのメモリ24を備え、さらに、入力されたデータや、処理結果等を表示するための表示部28を備えている。
なお、記憶装置20は、HDD(Hard Disk Drive)、SSD(Solid State Drive)、NANDフラッシュメモリ、磁気ディスク、光ディスク等から構成することができる。メモリ24は、DRAM、SRAM等から構成することができる。また、上記演算処理を行うのは、CPU22のみならずDSP(Digital Signal Processor)、GPU(Graphics Processing Unit)、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等を単独または組み合わせて構成しても良い。本実施形態では、一体的に構成されたパーソナルコンピュータを用いて、モーション生成部10を構成したが、これに限られるものではない。たとえば、モーションを生成するためのコンピュータプログラムは、ネットワーク上に存在するサーバーに記録されていたり、複数のコンピュータで処理を分散していたりしてもよい。また、本実施形態にのべる一連の処理は、記憶装置20に格納されているコンピュータプログラムにより実行されるが、ハードウェアにより、コンピュータプログラムの一部機能を満足するように構成してもよい。
初期/目標姿勢入力部12は、ロボットRの初期姿勢及び目標姿勢を入力するための手段である。本実施形態では、図3に示されるように、GUI(Graphical User Interface)により、ユーザは、入力装置16であるマウスやキーボードを用いて、表示部28に表示されるロボットRの姿勢を変化できるように構成されている。ユーザが所望の初期姿勢及び目標姿勢を設定したら、初期/目標姿勢入力部12は、モーション生成部10のハードウェア構成(記憶装置20、CPU22及びメモリ24など)を用いて、ロボットRを構成する各ジョイントの角度の集合で表現される初期姿勢情報(第1姿勢情報)及び目標姿勢情報(第2姿勢情報)を演算して、モーション生成部10に対して出力する。
なお、初期姿勢及び目標姿勢は、GUIを用いて特定しなくてもよい。たとえば、ユーザは、入力装置16であるキーボードを用いて、直接、ロボットRの各ジョイントの角度の集合を入力して、初期姿勢または目標姿勢を特定することもできる(その場合、入力情報に基づくロボットRの姿勢を、表示部28に表示するようにしてもよい)。あるいは、ユーザがGUI等により特定したロボットRの手先部の空間座標(x, y, z, roll, pitch, yaw)に基づいて、キネマティクス情報を用いて、ロボットRの各ジョイントの角度を算出することで、初期姿勢または目標姿勢に関する情報を取得するように構成してもよい。
図4は、優先項目入力部14により表示部28に示される優先項目PIを示している。ユーザは、入力装置16であるマウスまたはキーボードを用いて、ドロップダウンリストで表示される優先項目PIを選択することができる。優先項目入力部14は、選択された優先項目PIをモーション生成部10に出力する。
なお、優先項目は、入力装置16であるキーボードを用いて、IDや名前を直接入力してモーション生成部10に出力する構成や、設定ファイルの読み込みなどでモーション生成部10に取得させる構成としても良い。たとえば、ユーザがキーボードを用いて、優先したい項目をキーボードもしくはフレーズで入力すると、優先項目入力部14が該当する優先項目PIを選択してモーション生成部10に出力するように構成してもよい。
ここで、優先項目PIは、ロボットの動作に関して優先される項目のことをいい、本実施形態においては、ロボットRの速度、加速度及び姿勢が示される。しかしながら、制御対象であるロボットの動作に関して設定される項目であれば、これに限られるものではなく、たとえば、ロボットRが所定の初期姿勢から目標姿勢に移動するまでの移動距離や、移動中に発生する慣性モーメント(またはトルク)でも良い。さらには省エネモードや安全モードなどのような項目があってもよい。ただし、ロボットの動作そのものには関係しない周囲の障害物の情報は、本実施形態における項目には相当しない。
図5は、制御対象であるロボットRを示している。この図に示されるように、ロボットRは、いわゆる多関節ロボットからなるロボットアームであり、ベースBと、ワークを把持するためのエンドエフェクタEと、ベースBとエンドエフェクタEを接続するアームAから構成される。ベースBは、本実施形態では床面に固定されているが、移動可能に構成してもよい。この構成の場合、姿勢には移動可能にする機構によってとりうる空間位置や向き、またはそれらを取らせるための移動機構への入力値(サーボエンコーダ値など)も含まれる。アームAは、複数のリンク部Ln(ただしnは自然数)と、リンク部同士を連結する複数のジョイントJm(ただしmは自然数)から構成される。リンク部Lnには、ジョイントJmを駆動するための図示しないモータが内蔵され、モーション生成部10からロボットRに対して出力される制御信号に基づいて制御される。また、各ジョイントJmには、回転角度等を検出するための図示しない角度センサASが内蔵されていてもよく、計測された角度値等は、モーション生成部10に対して出力される構成となっている。エンドエフェクタEは、アームAの先端に取り付けられており、把持具を開閉させることによりワークWを把持できるように構成されている。エンドエフェクタEは複数の指の開閉による把持機構を持つもののほか、ワークWを吸着する機構を持つものやそれらの機構の組み合わせによるもの、または特別な機構を持たなくとも(たとえば針や板状のジグ)ワークWを保持できるものであってもよい。また、アームAには、カメラなどの画像取得装置を設けるようにしてもよい。
なお、ロボットRは、ワークWを把持するためのロボットアームに限られず、産業用ロボットその他のロボットであってもよい。また、実際の作業に用いられるロボットのかわりに、シミュレータの中に設定された仮想のロボットであってもよい。シミュレータを用いて、モーションを確定するための試行演習をする際に、本実施形態に係るモーション生成装置及び方法を適用して、最適なモーションを効率良く生成することが可能である。
図6は、本実施形態におけるモーション生成処理を示すフローチャートである。
まず、ユーザにより初期姿勢及び目標姿勢が入力される(ステップS30)。具体的には、GUIとして表示部28に表示されるロボットをユーザがマウス等で操作して、ロボットRの初期姿勢及び目標姿勢が定まる。すると、目標姿勢入力部12は、ロボットRの初期姿勢及び目標姿勢を定める各ジョイントの角度情報を算出し、モーション生成部10に出力する。モーション生成部10の外部I/F18(取得手段)は、ロボットRの初期姿勢を定める情報及び目標姿勢を定める情報を取得する。この情報は、たとえばメモリ24に記録される。
次いでユーザにより優先項目PIが入力される(ステップS32)。具体的には、優先項目入力部14により表示部28に表示されるプルダウンメニューから、ユーザがマウス等で、ロボットRの動作において優先したい項目を選択する。
たとえば、ワークWを把持しない状態で出来るだけ速くロボットRを所定位置まで移動させたい場合は、優先項目PIとして、「速度」を選択することができる。
一方で、正確性を求められる動作の場合は、優先項目PIとして「加速度」を選択し、加速度が所定以下となるようにモーションを生成させることが好ましい。
また、質量大のワークWを把持する必要があるが、高加速度で搬送すると、ロボットRのジョイントJm等に作用するモーメントが過大になり、ジョイントJm等を損傷する可能性がある場合も、ユーザは、優先項目PIとして「加速度」を選択し、加速度が過大にならないようにモーションを生成させることが可能になる。
また、天地無用のワークWや、互いに固定されていない複数の部品からなるワークWを把持または搬送する場合、ユーザは、優先項目PIとして「姿勢」を選択し、搬送中にロボットRの姿勢がほぼ一定となるようにモーションを生成させることが可能になる。
なお、優先項目PIとして、複数の項目を同時に選択してもよい。たとえば、天地無用で質量大のワークWを把持し搬送するようなモーションを生成する場合は、たとえば、「姿勢」と「加速度」を優先項目PIとして、所定の姿勢を維持しながら、加速度を所定以下にするようなモーションを生成させる構成としてもよい。
優先項目入力部14は、選択された項目の情報を、モーション生成部10に出力する。モーション生成部10の外部I/F18(取得手段)は、ロボットRのモーション生成において優先すべき情報(項目)を取得する。この情報は、たとえばメモリ24に記録される。
なお、この初期姿勢及び目標姿勢を取得するためのステップS32及び優先項目PIを取得するためのステップS34は、同時に行われなくても良い。たとえば、初期姿勢を取得した後、優先項目PIを取得し、最後に目標姿勢を取得するように構成されていても良い。
次いでモーション生成のステップS34が実行される。具体的には、記憶装置20に記憶されているコンピュータプログラムを実行するCPU22により、取得された初期姿勢及び目標姿勢を特定するデータ及び選択された優先項目PIに基づいて、初期姿勢から目標姿勢に至るまでのロボットRのモーションが生成される。このモーションにより、初期姿勢から目標姿勢に至るまでのロボットRまたはその部位(たとえば所定のリンク部LnまたはエンドエフェクタE)の姿勢、動作速度及び動作経路が特定される。なお、本実施形態において、モーションが生成されるとは、ロボットRの動作速度、姿勢、動作経路等を指定する情報を生成することに限られず、結果として、姿勢、速度及び経路が定まるように、ロボットを制御するための制御情報が生成される場合も含む。
本実施形態においては、コンピュータプログラムの一部として、最速で初期姿勢から目標姿勢まで移動するための速度優先アルゴリズムと、加速度が所定値以下となるように初期姿勢から目標姿勢まで移動するための加速度優先のアルゴリズムと、エンドエフェクタEにより把持されるワークWの姿勢が、把持前と比較して一定または変化量が所定値以下のまま目標位置までワークWを搬送するための姿勢優先のアルゴリズムが記憶装置20に予め記憶されている。
モーション生成部10は、外部I/F18により取得された優先項目PIに応じて、最適なアルゴリズムを選択する。そして、同じく外部I/F18から取得された初期姿勢から目標姿勢までのモーションを、選択したアルゴリズムに従って生成する(ステップS34)。
モーション生成部10は、生成されたモーションに従って、ロボットRを動作させるための制御信号をロボットRに出力し、ロボットRはこれにしたがってモーション通りに初期姿勢から目標姿勢まで移動する(ステップS36)。
以上のとおり、初期姿勢及び目標姿勢を特定する情報のみならず、初期姿勢から目標姿勢に移動する動作に関する少なくとも1つの項目に基づいて、ロボットのモーションを生成することができるようにしたことにより、入力された項目も加味した適切なモーションを生成することができる。
特に、ロボットの移動速度のみが優先すべき項目でないことに着想し、搬送対象物によっては、搬送中の搬送対象物の姿勢こそが優先すべき事項である点に着目したので、より適切なモーション生成を実現することができた。また、搬送対象物によっては、ロボットの各部位(特にジョイント部)に作用するモーメントが問題となりうる点にも着目し、優先項目PIの一つとして加速度を含めた。具体的には、アームAを大きく伸ばして搬送させるかわりに、アームAを折りたたんで搬送対象物とベースBとの距離が小さくなるようにして搬送対象物を搬送するようなモーションを生成することで、搬送中にロボットに作用するモーメントの最大値を小さくさせることが可能になる。
また、本実施形態においては、モーション生成のための複数のアルゴリズムを、優先すべき項目ごとに関連付けて記憶装置20に記憶させておき、選択された優先項目PIに関連付けられたアルゴリズムを選択してモーションを生成するように構成したが、これに限られるものではなく、たとえば、初期姿勢、目標姿勢及び複数の優先項目PIを引数とする単一のアルゴリズムに基づいて、選択された項目に応じて、異なるモーション(少なくとも、初期姿勢から目標姿勢に変化するロボットの姿勢、動作速度または動作経路のいずれか一つが異なる)が生成されるような構成としてもよい。
特に、複数の項目を重みづけ(優先度)をもってユーザ等に選択させるようにし、取得された項目情報と、その項目の優先度に従って、最適なモーションを生成するような構成としてもよい。たとえば、「速度」と「姿勢」をそれぞれ優先度30%、70%と指定可能に構成した場合、モーション生成装置は、「姿勢」のみを選択された場合のモーションと比較して、多少の把持対象のワークWの姿勢の変化を許容しつつ、より速い速度でワークWを移動させるようなモーションを生成することができる。たとえば、「姿勢」のみを優先項目として(優先度100%)ワークWを搬送していたものの、その後に、搬送中にワークWの姿勢を多少変化させても大きな影響がないと判明した場合は、「姿勢」の優先度を低下させ、かわりに、「速度」も一つの優先項目として選択することにより、より最適なモーション生成が可能となる。このような構成を実現するためには、複数の優先項目とその優先度を引数とし、たとえ優先項目が同一であっても優先度に応じて異なるモーションを生成できるようなモーション生成アルゴリズムとしてもよい。これにより、一層適切なモーション生成、ひいては、作業効率の飛躍的な向上を期待することが可能になる。
また、初期姿勢や目標姿勢は、一連の動作の最初の姿勢と最後の姿勢である必要はなく、動作途中の姿勢であってもよい。たとえば、ロボットが、所定のルーチン作業を繰り返して実施する際に、そのルーチン作業の前半は、速度を優先項目としてルーチン開始時の初期姿勢から途中姿勢を目標姿勢としてモーションを生成し、中盤は、姿勢を優先項目としてその途中姿勢を初期姿勢とし、別の途中姿勢を目標姿勢とするモーションを生成し、後半は、再び速度を優先項目として別の途中姿勢を初期姿勢とし、最初の初期姿勢を目標姿勢とするモーションを生成してもよい。このように、一連のルーチン作業において、その一部のモーションと、別の一部のモーションを、異なる優先項目に基づいて(たとえば異なるアルゴリズムを用いて)生成することも可能である。
さらに、本実施形態のハードウェア構成については様々に変形可能であり、たとえば、初期・目標姿勢入力部12と、優先項目入力部14をそれぞれ入力ポートとして、内部にモーション生成部10を備える計算機をモーション生成装置として構成することも可能である。また、外部I/F18が、初期姿勢または目標姿勢を算出するための一次情報を取得し、モーション生成部10内で、その一次情報に基づいて初期姿勢または目標姿勢を特定する姿勢情報を取得するような構成としてもよい。
また、ユーザがアルゴリズムに習熟している場合は、優先するべき項目を、その項目を表現する名前ではなく、アルゴリズム名または入力パラメータとするように構成してもよい。たとえば、STOMP(Stochastic Trajectory Optimization for Motion Planning)というアルゴリズムでは、以下の式で、ロボットの手先姿勢やトルクを制約することが可能となる。ただし、適切なコスト関数(qc, qt)を設定する必要があるため、ロボットに詳しくないユーザであっても、効率的なモーション生成が可能になる、という効果は減殺する。
[第2実施形態]
図7は、本発明の第2実施形態に係るモーション生成システム40を示す機能ブロック図である。このモーション生成システム40は、モーション生成部(モーション生成装置)10、初期/目標姿勢入力部12、入力装置16、優先項目入力部42、作業−優先項目DB44、表示装置46を備える。以下では、第1実施形態と共通の事柄についての記述を省略し、異なる点についてのみ説明する。
本実施形態におけるモーション生成システム40は、作業内容と優先項目PIを関連付けたデータベースである作業−優先項目DB44を備える点が第1実施形態におけるモーション生成システム20と異なる。このDB44は、モーション生成部10とは異なるコンピュータに設けても良いし、モーション生成部10の記憶装置20内に設けても良い。
また、表示装置46は、ロボットRが行い得る複数の作業内容と、その作業内容に関連付けられた優先項目PIを表示する。表示される作業内容は、たとえば、「手先を回転させない把持作業」や、「ワークを把持しない単純移動」といった内容であり、関連付けられた優先項目PIとして、前者について「姿勢」、後者について「速度」が表示される。作業内容によっては、複数の優先項目PIが重みづけとともに表示される。
作業−優先項目DB44は、作業内容と、優先項目PIの関連付けを記憶するデータベースである。
優先項目入力部42は、モーション生成部10のハードウェア構成(記憶装置20、CPU22及びメモリ24など)を用いて、作業−優先項目DB44にアクセスし、複数の作業内容とそれに関連づけられた優先項目PIの組合せを表示装置46に表示させる。さらに、ユーザが入力装置16を用いて選択した優先項目PIを取得し、モーション生成部10に出力する。
図8は、第2実施形態に係るモーション生成処理を示すフローチャートである。
初期・目標姿勢入力(ステップS50)については、第1実施形態と同様であることから説明を省略する。
ユーザによる初期・目標姿勢の入力を受け付けると同時に、優先項目入力部42は、作業−優先項目DB44にアクセスし、複数の作業内容とそれに関連づけられた優先項目PIの組合せを読み出し(ステップS52)、表示装置46に、読み出された作業とそれに関連付けられた優先項目PIの組合せを、選択候補として表示させる(ステップS54)。
ユーザは、所望する作業内容と、それに応じて優先されるべき項目PIの適正な組み合わせがあるか否か判断する(ステップS56)。該当する適正な組み合わせがある場合は、その優先項目PIを、入力装置16を用いて選択する(ステップS58)。
一方で、作業内容に適正な優先項目PIの登録がなされていない場合は、ユーザは、入力装置16を用いて優先項目PIを入力し(ステップS60)、作業内容と優先項目PIの組合せをDB44に登録することができる(ステップS62)。
モーション生成部10が、取得した優先項目PI、初期姿勢及び目標姿勢に基づいてモーションを生成し(ステップS64)、そのモーションに従ってロボットRが動作する(ステップS66)点については第1実施形態と同様である。
本実施の形態においては、作業内容と優先項目PIを関連付けるようにしたことにより、ユーザは、適切な優先項目を簡単に選択することが可能になる。
また、作業内容と、それに応じて優先されるべき項目PIの組合せを後から登録できるようにしたことにより、多様な作業内容に応じた優先項目PIの選択が可能になる。また、過去のユーザの登録内容を再利用することが可能になるし、また、そうした登録内容を参考にして、より適切な優先項目PIの設定が可能となる。なお、第1実施形態と同様に、作業内容と、複数の項目PIを関連付けてもよいし、項目ごとに重みづけを付けることも可能である。
なお、上述した実施形態においては、ユーザは、作業内容と優先項目PIの組合せの候補の中から、適した組み合わせを選択したが、これに替えて、優先項目入力部42が複数の候補の中から、適切な作業内容と優先項目PIの組み合わせを提案する構成としてもよい。ユーザの習熟度によっては、作業内容に応じて優先すべき項目を適切に選択することができないため、このような構成とすることにより、いっそうユーザフレンドリーなモーション生成方法を提供することが可能になる。
また、上述した実施形態においては、作業内容と優先項目を関連付けたが、作業内容の代わりに、作業対象と優先項目を関連付けるように構成してもよい。たとえば、作業対象として、(1)「液体」もしくは「溶接又ははんだ付け前の部品」、(2)「固体」もしくは「溶接又ははんだ付け後の部品」を設定し、前者に対し「姿勢」、後者に対し「速度」の優先項目PIをそれぞれ関連付けて、作業−優先項目DB44に記憶させる。ユーザは、所望する作業対象と、それに応じて優先されるべき項目PIの適正な組み合わせがあるか否か判断し、該当する適正な組み合わせがある場合は、その優先項目PIを、入力装置16を用いて選択することができる。
このような構成とすることにより、作業対象に応じた適切な優先項目を選択することが可能になる。なお、作業内容と作業対象を組み合わせて、優先項目と関連付けるようにしてもよい。
[第3実施形態]
図9は、第3実施形態に係るモーション生成システム70を示している。
このモーション生成システム70は、初期・目標姿勢入力部12、優先項目入力部14、入力装置16、ロボットRの他、センサS、周辺環境入力部72、モーション生成部74を備えている。なお、第1及び第2実施形態と共通の事柄についての記述を省略し、異なる点についてのみ説明する。
モーション生成部74は、外部と情報を送受信するための外部I/F18(取得手段)と、ロボットRのモーションを生成するためのコンピュータプログラムが格納される記憶装置20と、このコンピュータプログラムを実行し、モーションを生成するための演算処理を実行するためのCPU22と、処理対象となるデータやコンピュータプログラムを一時的に記憶するためのメモリ24、入力されたデータや処理結果等を表示するための表示部28を備え、外部I/F18を介して入力された初期・目標姿勢、優先項目及び周辺環境に基づいて、ロボットRのモーションを生成する。
周辺環境入力部は、モーション生成部74のハードウェア構成(記憶装置20、CPU22、メモリ24及び表示部28など)を用いて、ユーザに障害物情報を入力させる。
まず、周辺環境入力部72は、図10に示されるように、表示部28にGUIを表示させる。ユーザは、表示されたGUI上で、入力装置16を用いて障害物を設定することができる。このため、障害物を前提とした効率的なモーション生成ならびにそのシミュレートが可能になる。なお、ユーザによる入力に替えて、あるいは、併用させて、設定ファイルを読み込むことにより、障害物情報を設定することも可能である。
さらに、本実施形態においては、画像取得用のカメラをセンサSとして用いてロボットRの周辺の画像を取得し、計測して得られた画像情報を障害物情報の一部として周辺環境入力部72に取得できる構成としてもよい。周辺環境入力部72は、ユーザにより設定された障害物情報ならびにセンサSから取得した周辺画像情報に基づき、ロボットの周辺に存在する複数の障害物の形状、位置及び姿勢のジオメトリパラメータをモーション生成部74に出力する。
モーション生成部74は、初期・目標姿勢入力部12から取得した初期姿勢情報、目標姿勢情報、優先項目入力部14から取得した優先項目、周辺環境入力部72から取得した周辺環境情報に基づいて、障害物を回避するようなロボットRのモーションを生成する。
図11は、上述したモーション生成システム70におけるモーション生成処理のフローチャートである。
初期姿勢ならびに目標姿勢の入力(ステップS80)及び優先項目の入力(ステップS82)については、他の実施形態と同様であるため説明を省略する。
次いで、ステップS84において、周辺環境入力部72は、GUI経由またはセンサSより、周辺環境情報を取得し、ロボットの周辺に存在する障害物(たとえば図10に示される障害物D1及び障害物D2)等の形状、位置(及び姿勢)のジオメトリパラメータを算出し、モーション生成部74に出力する。
ステップS86において、モーション生成部74は、取得した初期姿勢情報、目標姿勢情報及び優先項目に基づいて、他の実施形態と同様にロボットRのモーションを生成する。そして、そのモーションと、障害物のジオメトリパラメータを比較し、これら障害物とモーションが干渉するか判定する(ステップS88)。たとえば、モーション中にロボットRがとる中間姿勢を包含する多面体の位置座標と、障害物を包含する多面体の位置座標を比較することで、干渉の有無を判定することができる。干渉が存在する場合は、再度、新たなモーションを生成し(ステップS86)、再度障害物と再生成されたモーションの干渉の有無を判断する(ステップS88)。以上のステップS86とS88を干渉がなくなるまで繰り返す。なお、障害物を回避するモーションの生成方式としては、このようなトライアンドエラーによるもののほか、モーションの中間点ごとに障害物との干渉を判定する方法や、障害物から距離のある場所を優先的に選択する方法などを使用してもよい。
生成されたモーションと障害物との干渉がないと判定された場合は、そのモーションに従ってロボットRを動作させる(ステップS89)。
以上のとおり、本実施の形態においては、初期姿勢情報、目標姿勢情報、周辺の障害物情報及び優先項目に基づいて、初期姿勢から目標姿勢に至るまでのロボットRのモーションを生成するように構成した。これにより、より実際的な作業に適用することができるモーションを効率よく生成することが可能になる。
また、周辺環境情報は、画像取得用のセンサSによる計測データだけでなく、他のセンサ(たとえばレーザレンジファインダやLIDAR)や、周辺環境に関するCADデータから取得するようにしてもよい。
[第4実施形態]
図12は、本発明の第4実施形態に係るモーション生成装置90の機能ブロック図である。このモーション生成装置90は、角度センサAS、モーション生成部10、初期・目標姿勢入力部12、優先項目入力部14、入力装置16、ロボットRに加え、他の実施形態と異なる点として、姿勢算出部92を備える。また、図13は、モーション生成装置90を用いたモーション生成処理を示すフローチャートである。
本実施形態における姿勢算出部92は、記憶装置20に格納される姿勢算出のためのコンピュータプログラムを備え、モーション生成部10のハードウェア構成(記憶装置20、CPU22及びメモリ24など)を用いて、ロボットRの現在姿勢の姿勢情報を取得することができる。したがって、ステップS100に示されるように、姿勢算出部92を用いてロボットRの現在姿勢を、初期姿勢または目標姿勢として取得することができる。具体的には、ロボットRの各ジョイントJmの回転角度を、ジョイントJmごとに設けられた複数の角度センサASを用いて計測し、計測結果である角度信号を姿勢算出部92が取得してこれに基づいてロボットRの姿勢を特定する位置情報及び姿勢情報を算出することにより、初期姿勢情報または目標姿勢情報が取得される(ステップS103)。
また、初期姿勢または目標姿勢情報は、ユーザが入力装置16またはGUIを用いて入力したロボットRの手先部分(エンドエフェクタE)の姿勢情報に基づいて姿勢算出部92が算出することもできる(ステップS101)。
具体的には、図14に示されるようなサブルーチン処理が実行される。まず、ユーザにより初期姿勢または目標姿勢として、ロボットRの手先姿勢が設定される(ステップSR10)。すると、姿勢算出部92は、IK計算(Inverse Kinematics)を実施する(ステップSR12)。ここで、IK計算とは、多関節のロボットにおける先端の位置及び姿勢情報に基づいて、その位置を実現するための各関節の角度・位置を簡易的に逆計算する計算手法のことである。このような姿勢計算処理(ステップS102)を経て、初期姿勢または目標姿勢情報が決定し、取得される(ステップS103)。
さらに、把持対象となるワークWの空間的な位置情報に基づいて姿勢情報を取得することもできる(ステップS101)。たとえば、ワークWが所定の位置に載置されておらず、ベルトコンベア等のコンベア上に載置されて移動しているワークWを把持する場合や、不規則に載置されているワークWをピッキングするような場合、または初期姿勢または目標姿勢がその都度変更するような場合は、ワークWの位置に基づいて初期姿勢または目標姿勢を決定することが望ましい。
図15は、ワークWの空間的な位置に基づいてロボットRの初期姿勢または目標姿勢を決定するためのサブルーチンを示している。まず、ロボットRに設けられた画像センサSまたはベルトコンベアの上部にある天井部に設けられた画像センサSを用いて、ワークWを撮像・計測する(ステップSR20)。そして、姿勢算出部92は、センサSから取得した画像を処理して、ワークWを認識(取得)する(ステップSR22)。ワークWの形状や、色等が既知である場合は、公知の技術を用いてワークWを認識することが可能である。
次いで、姿勢算出部92は、ワークWの把持点または把持位置を計算する(ステップSR24)。たとえば、円柱、球及び直方体などのモデル形状ごとに、エンドエフェクタEに応じた接触条件を予め記憶装置20に記憶させておき、画像センサSにより実際に認識されたワークWの形状に基づく接触点を算出することにより、ワークWの把持点を特定することができる。そして、計算された把持点においてワークWを把持するための手先部の姿勢が計算される(ステップSR26)。その後、上述したIK計算が実行され、ロボットR全体の姿勢情報が算出される(ステップSR28)。このような手順を経て、初期姿勢情報または目標姿勢情報が算出され、モーション生成部10によって取得される(ステップS103)。
上述したステップとともに、他の実施形態で説明したのと同様に、優先項目が取得され(ステップS104)、モーション生成部10に入力される。
モーション生成部10は、取得した初期及び目標姿勢情報、優先項目に基づいてモーションを生成し(ステップS105)、生成されたモーションに基づいてロボットRが制御される。
このような構成を採用することで、そのときのロボットRの現在姿勢を初期姿勢または目標姿勢として取得することが可能となり、ユーザによる煩雑な入力作業を軽減することが可能になる。
また、ワークWの位置またはロボットRの手先姿勢に基づいてロボットRの初期姿勢または目標姿勢を取得することが可能となり、ユーザによる煩雑な入力作業を軽減することが可能になる。
上記の実施形態の一部又は全部は、以下の付記のようにも記載され得るが、以下には限られない。
(付記1)
ロボットを第1の姿勢から第2の姿勢に変化させるための動作を生成するモーション生成方法において、
前記第1の姿勢を特定する第1姿勢情報と、前記第2の姿勢を特定する第2姿勢情報を取得するステップと、
前記第1の姿勢から第2の姿勢に変化する動作に関する少なくとも1つの優先項目を取得するステップと、
取得された前記第1姿勢情報、第2姿勢情報及び前記優先項目に基づいて、前記第1の姿勢から第2の姿勢に移動する前記ロボットの動作経路を含む前記ロボットのモーションを生成するステップと、
を含むモーション生成方法。
(付記2)
ロボットを第1の姿勢から第2の姿勢に変化させるための動作を生成するモーション生成装置において、
前記第1の姿勢を特定する第1姿勢情報と、前記第2の姿勢を特定する第2姿勢情報を取得する第1取得手段と、
前記第1の姿勢から第2の姿勢に変化する動作に関する少なくとも1つの優先項目を取得する第2取得手段と、
取得された前記第1姿勢情報、第2姿勢情報及び前記優先項目に基づいて、前記第1の姿勢から第2の姿勢に移動する前記ロボットの動作経路を含む前記ロボットのモーションを生成する動作生成手段と、
を備えるモーション生成装置。
(付記3)
ロボットを第1の姿勢から第2の姿勢に変化させるための動作を生成するためのコンピュータプログラムであって、
コンピュータに、
前記第1の姿勢を特定する第1姿勢情報と、前記第2の姿勢を特定する第2姿勢情報を取得するステップと、
前記第1の姿勢から第2の姿勢に変化する動作に関する少なくとも1つの優先項目を取得するステップと、
取得された前記第1姿勢情報、第2姿勢情報及び前記優先項目に基づいて、前記第1の姿勢から第2の姿勢に移動する前記ロボットの動作経路を含む前記ロボットのモーションを生成するステップと、
を実行させるためのコンピュータプログラム。
以上説明した実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。実施形態が備える各要素並びにその配置、材料、条件、形状及びサイズ等は、例示したものに限定されるわけではなく適宜変更することができる。また、異なる実施形態で示した構成同士を部分的に置換し又は組み合わせることが可能である。
10…モーション生成部、12…初期・目標姿勢入力部、14…優先項目入力部、16…入力装置、18…外部インタフェース、20…モーション生成システム、22…動作生成手段、24…メモリ、28…表示部、40…モーション生成システム、42…優先項目入力部、46…表示装置、70…モーション生成システム、72…周辺環境入力部、74…モーション生成部、90…モーション生成システム、A…アーム、AS…角度センサ、B…ベース、D1、D2…障害物、E…エンドエフェクタ、Jm…ジョイント、R…ロボット、S…センサ、W…ワーク。

Claims (19)

  1. ロボットを第1の姿勢から第2の姿勢に変化させるための動作を生成するモーション生成方法において、
    前記第1の姿勢を特定する第1姿勢情報と、前記第2の姿勢を特定する第2姿勢情報を取得するステップと、
    前記第1の姿勢から第2の姿勢に変化する動作に関する少なくとも1つの優先項目を取得するステップと、
    取得された前記第1姿勢情報、第2姿勢情報及び前記優先項目に基づいて、前記第1の姿勢から第2の姿勢に移動する前記ロボットの動作経路を含む前記ロボットのモーションを生成するステップと、
    を含むモーション生成方法。
  2. 前記ロボットの作業内容または作業対象を選択させるステップと、
    選択された前記作業内容または作業対象に基づいて前記優先項目を生成するステップと、をさらに含むことを特徴とする請求項1記載のモーション生成方法。
  3. 前記作業内容または作業対象と、前記優先項目を関連付けさせるステップをさらに含むことを特徴とする請求項2記載のモーション生成方法。
  4. 前記優先項目を取得するステップは、前記動作に関連する複数の優先項目と、その複数の優先項目間の優先度を取得するように構成され、
    前記モーションを生成するステップは、取得された前記優先度に基づいて、前記モーションを生成することを特徴とする請求項1から3のいずれか一項に記載のモーション生成方法。
  5. 前記ロボットの周辺環境情報を取得するステップをさらに含み、
    前記モーションを生成するステップは、取得された前記周辺環境情報に基づいて、前記モーションを生成することを特徴とする請求項1から4のいずれか一項に記載のモーション生成方法。
  6. 前記周辺環境情報は、前記ロボットの周辺の情報を取得するセンサを用いて取得されること、入力手段を用いて取得されること、または、前記ロボットの周辺の情報を含む電子データから取得されることを特徴とする請求項5記載のモーション生成方法。
  7. 前記第1姿勢情報は、前記ロボットの姿勢に基づいて取得されることを特徴とする請求項1から6のいずれか一項に記載のモーション生成方法。
  8. 前記ロボットは、手先部を備えるロボットアームであり、
    前記第1姿勢情報又は前記第2姿勢情報は、前記手先部の位置及び姿勢に基づいて取得されることを特徴とする請求項1から7のいずれか一項に記載のモーション生成方法。
  9. 生成される前記動作は、ワークを取り扱うための動作であり、
    前記第2姿勢情報は、前記ワークの空間位置情報に基づいて取得されることを特徴とする請求項8に記載のモーション生成方法。
  10. 前記ロボットは、仮想的に動作を検証するためのシミュレータ装置であることを特徴とする請求項1から9のいずれか一項に記載のモーション生成方法。
  11. 前記優先項目は、前記動作に関する制約条件であることを特徴とする請求項1から10のいずれか一項に記載のモーション生成方法。
  12. 前記優先項目は、前記ロボットの速度、前記ロボットの加速度及び前記ロボットにより取り扱われる第1の対象物の姿勢の少なくとも一つであることを特徴とする請求項1から11のいずれか一項に記載のモーション生成方法。
  13. 前記モーションの生成は、
    前記優先項目に基づいて、前記第1の姿勢から前記第2の姿勢まで移動するときの前記ロボットの移動時間が所定範囲内となるように前記モーションを生成する第1のアルゴリズムと、前記第1の姿勢から前記第2の姿勢まで移動するときの前記ロボットの加速度が所定の範囲内となるように前記モーションを生成する第2のアルゴリズムと、前記第1の姿勢から前記第2の姿勢まで移動するときの前記ロボットにより取り扱われる第2の対象物の姿勢が所定の範囲内となるように前記モーションを生成する第3のアルゴリズムのいずれか一つを選択するステップを更に含むことを特徴とする請求項1から12のいずれか一項に記載のモーション生成方法。
  14. ロボットを第1の姿勢から第2の姿勢に変化させるための動作を生成するモーション生成装置において、
    前記第1の姿勢を特定する第1姿勢情報と、前記第2の姿勢を特定する第2姿勢情報を取得する第1取得手段と、
    前記第1の姿勢から前記第2の姿勢に変化する動作に関する少なくとも1つの優先項目を取得する第2取得手段と、
    取得された前記第1姿勢情報、前記第2姿勢情報及び前記優先項目に基づいて、前記第1の姿勢から前記第2の姿勢に移動する前記ロボットの動作経路を含む前記ロボットのモーションを生成する動作生成手段と、
    を備えるモーション生成装置。
  15. 前記ロボットの作業内容または作業対象を選択するための選択手段と、
    選択された前記作業内容または作業対象に基づいて前記優先項目を決定する優先項目決定手段と、をさらに備えることを特徴とする請求項14記載のモーション生成装置。
  16. 前記作業内容または作業対象と、前記優先項目を関連付けるための登録手段をさらに備えることを特徴とする請求項15記載のモーション生成装置。
  17. 前記第2取得手段は、前記動作に関連する複数の優先項目と、その複数の優先項目間の優先度を取得するように構成され、
    前記動作生成手段は、取得された前記優先度に基づいて、前記モーションを生成するように構成されていることを特徴とする請求項14から16のいずれか一項に記載のモーション生成装置。
  18. ロボットと、そのロボットを第1の姿勢から第2の姿勢に変化させるための動作を生成するための請求項14から17のいずれか一項に記載のモーション生成装置とを備えるシステム。
  19. ロボットを第1の姿勢から第2の姿勢に変化させるための動作を生成するためのコンピュータプログラムであって、
    コンピュータに、
    前記第1の姿勢を特定する第1姿勢情報と、前記第2の姿勢を特定する第2姿勢情報を取得するステップと、
    前記第1の姿勢から第2の姿勢に変化する動作に関する少なくとも1つの優先項目を取得するステップと、
    取得された前記第1姿勢情報、第2姿勢情報及び前記優先項目に基づいて、前記第1の姿勢から第2の姿勢に移動する前記ロボットの動作経路を含む前記ロボットのモーションを生成するステップと、
    を実行させるためのコンピュータプログラム。
JP2017137963A 2017-07-14 2017-07-14 モーション生成方法、モーション生成装置、システム及びコンピュータプログラム Active JP6931457B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2017137963A JP6931457B2 (ja) 2017-07-14 2017-07-14 モーション生成方法、モーション生成装置、システム及びコンピュータプログラム
CN201810593603.5A CN109249388A (zh) 2017-07-14 2018-06-11 运动生成方法、运动生成装置、运动生成系统及存储介质
EP18178216.0A EP3427905A1 (en) 2017-07-14 2018-06-18 Motion generation method, motion generation device, system, and computer program
US16/012,886 US11090807B2 (en) 2017-07-14 2018-06-20 Motion generation method, motion generation device, system, and computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017137963A JP6931457B2 (ja) 2017-07-14 2017-07-14 モーション生成方法、モーション生成装置、システム及びコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2019018272A true JP2019018272A (ja) 2019-02-07
JP6931457B2 JP6931457B2 (ja) 2021-09-08

Family

ID=62705475

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017137963A Active JP6931457B2 (ja) 2017-07-14 2017-07-14 モーション生成方法、モーション生成装置、システム及びコンピュータプログラム

Country Status (4)

Country Link
US (1) US11090807B2 (ja)
EP (1) EP3427905A1 (ja)
JP (1) JP6931457B2 (ja)
CN (1) CN109249388A (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102017219407A1 (de) * 2017-10-27 2019-05-02 Robert Bosch Gmbh Erfassungsvorrichtung
WO2019130542A1 (ja) * 2017-12-28 2019-07-04 株式会社Fuji 情報提供装置、情報提供方法及びプログラム
US11745354B2 (en) 2018-08-16 2023-09-05 Mitutoyo Corporation Supplementary metrology position coordinates determination system including an alignment sensor for use with a robot
US10871366B2 (en) 2018-08-16 2020-12-22 Mitutoyo Corporation Supplementary metrology position coordinates determination system for use with a robot
US11002529B2 (en) 2018-08-16 2021-05-11 Mitutoyo Corporation Robot system with supplementary metrology position determination system
US10751883B2 (en) * 2018-08-16 2020-08-25 Mitutoyo Corporation Robot system with supplementary metrology position coordinates determination system
US10913156B2 (en) 2018-09-24 2021-02-09 Mitutoyo Corporation Robot system with end tool metrology position coordinates determination system
EP3725472A1 (de) * 2019-04-16 2020-10-21 Siemens Aktiengesellschaft Verfahren zum ermitteln einer trajektorie eines roboters
JP7316134B2 (ja) * 2019-07-22 2023-07-27 ファナック株式会社 位置姿勢特定装置、位置姿勢特定方法及び位置姿勢特定プログラム
CN110852223B (zh) * 2019-10-31 2023-05-30 塔普翊海(上海)智能科技有限公司 位姿匹配模型的强化学习方法、装置、及位姿匹配方法
CN114901441A (zh) * 2020-01-23 2022-08-12 欧姆龙株式会社 机器人系统的控制装置、机器人系统的控制方法、计算机控制程序及机器人系统
EP4326496A1 (en) * 2021-05-25 2024-02-28 Siemens Aktiengesellschaft Auto-generation of path constraints for grasp stability

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012061567A (ja) * 2010-09-16 2012-03-29 Sinfonia Technology Co Ltd 多関節ロボットアーム型搬送装置の軌道情報生成装置
JP2014058004A (ja) * 2012-09-14 2014-04-03 Yaskawa Electric Corp ロボット装置
JP2015037818A (ja) * 2013-08-17 2015-02-26 セイコーエプソン株式会社 ロボット、ロボットの制御方法、プログラム及び経路作成装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3853616T2 (de) * 1987-11-20 1995-11-30 Philips Electronics Nv Verfahren und Gerät zur Wegplanung.
JP3920317B2 (ja) * 2004-08-02 2007-05-30 松下電器産業株式会社 物品運搬用ロボット
CN102514008B (zh) * 2011-11-21 2014-03-19 中山大学 一种冗余度机械臂的不同层性能指标同时优化方法
CN103064743B (zh) * 2012-12-27 2017-09-26 深圳先进技术研究院 一种用于多机器人的资源调度方法及其资源调度系统
JP5754454B2 (ja) 2013-03-18 2015-07-29 株式会社安川電機 ロボットピッキングシステム及び被加工物の製造方法
TW201502733A (zh) * 2013-07-04 2015-01-16 鴻海精密工業股份有限公司 視覺對位元裝置、視覺對位元系統及方法
US20150277398A1 (en) * 2014-03-26 2015-10-01 Siemens Industry Software Ltd. Object manipulation driven robot offline programming for multiple robot system
US9682476B1 (en) * 2015-05-28 2017-06-20 X Development Llc Selecting robot poses to account for cost
US9707681B2 (en) * 2015-07-27 2017-07-18 Siemens Industry Software Ltd. Anti-collision management of overlapping robotic movements
CN106426164B (zh) * 2016-09-27 2019-04-09 华南理工大学 一种冗余度双机械臂的多指标协调运动规划方法
CN106335062B (zh) * 2016-11-11 2018-12-04 清研同创机器人(天津)有限公司 一种通用七轴冗余工业机器人作业规划方法
CN106625666B (zh) * 2016-12-16 2019-03-01 广州视源电子科技股份有限公司 冗余机械臂的控制方法及装置
US11396072B2 (en) * 2018-08-20 2022-07-26 Massachusetts Institute Of Technology Robotic manipulation of objects using external contacts

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012061567A (ja) * 2010-09-16 2012-03-29 Sinfonia Technology Co Ltd 多関節ロボットアーム型搬送装置の軌道情報生成装置
JP2014058004A (ja) * 2012-09-14 2014-04-03 Yaskawa Electric Corp ロボット装置
JP2015037818A (ja) * 2013-08-17 2015-02-26 セイコーエプソン株式会社 ロボット、ロボットの制御方法、プログラム及び経路作成装置

Also Published As

Publication number Publication date
US11090807B2 (en) 2021-08-17
EP3427905A1 (en) 2019-01-16
US20190015980A1 (en) 2019-01-17
CN109249388A (zh) 2019-01-22
JP6931457B2 (ja) 2021-09-08

Similar Documents

Publication Publication Date Title
JP6931457B2 (ja) モーション生成方法、モーション生成装置、システム及びコンピュータプログラム
JP6807949B2 (ja) 干渉回避装置
JP6860863B2 (ja) 経路出力方法
US9387589B2 (en) Visual debugging of robotic tasks
WO2020006071A1 (en) System and method for robotic bin picking
CN109760040B (zh) 干扰判定方法、干扰判定系统以及存储介质
JP2019171501A (ja) ロボットの干渉判定装置、ロボットの干渉判定方法、プログラム
JP7259860B2 (ja) ロボットの経路決定装置、ロボットの経路決定方法、プログラム
JPWO2019064919A1 (ja) ロボット教示装置
WO2020012712A1 (ja) 把持姿勢評価装置及び把持姿勢評価プログラム
JP6456557B1 (ja) 把持位置姿勢教示装置、把持位置姿勢教示方法及びロボットシステム
US20220193906A1 (en) User Interface for Supervised Autonomous Grasping
JP2019177434A (ja) 制御装置、ロボット、およびロボットシステム
JPH05150835A (ja) ロボツトによる組み立て装置
WO2018180300A1 (ja) ロボット作業管理システム、ロボット作業管理プログラム
JP7447568B2 (ja) シミュレーション装置およびプログラム
US20220301209A1 (en) Device and method for training a neural network for controlling a robot
JP7424122B2 (ja) シミュレーション装置およびプログラム
US20230226688A1 (en) Robot programming
WO2022153373A1 (ja) 動作生成装置、ロボットシステム、動作生成方法及び動作生成プログラム
US20220317659A1 (en) Transfer between Tasks in Different Domains
CN117885131A (zh) 一种物体抓取方法、装置及电子设备
JP2022183723A (ja) 処理装置、サーボシステム、処理方法、およびプログラム
JP2019171499A (ja) ロボットの干渉判定装置、ロボットの干渉判定方法、プログラム
JP2019171500A (ja) ロボットの干渉判定装置、ロボットの干渉判定方法、プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200310

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210330

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: 20210715

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210728

R150 Certificate of patent or registration of utility model

Ref document number: 6931457

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150