JP7405730B2 - Trajectory planning device, trajectory planning method, and trajectory planning program - Google Patents
Trajectory planning device, trajectory planning method, and trajectory planning program Download PDFInfo
- Publication number
- JP7405730B2 JP7405730B2 JP2020195708A JP2020195708A JP7405730B2 JP 7405730 B2 JP7405730 B2 JP 7405730B2 JP 2020195708 A JP2020195708 A JP 2020195708A JP 2020195708 A JP2020195708 A JP 2020195708A JP 7405730 B2 JP7405730 B2 JP 7405730B2
- Authority
- JP
- Japan
- Prior art keywords
- trajectory
- information
- route
- trajectory planning
- time
- 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
Links
- 238000000034 method Methods 0.000 title claims description 93
- 230000008569 process Effects 0.000 claims description 51
- 230000001133 acceleration Effects 0.000 claims description 38
- 238000005457 optimization Methods 0.000 claims description 36
- 230000008859 change Effects 0.000 claims description 32
- 238000012545 processing Methods 0.000 claims description 20
- 230000005484 gravity Effects 0.000 claims description 18
- 230000002123 temporal effect Effects 0.000 claims 2
- 238000004364 calculation method Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 17
- 230000002452 interceptive effect Effects 0.000 description 17
- 238000011156 evaluation Methods 0.000 description 14
- 230000007423 decrease Effects 0.000 description 9
- 238000004088 simulation Methods 0.000 description 8
- 239000013598 vector Substances 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 239000007787 solid Substances 0.000 description 5
- 239000011159 matrix material Substances 0.000 description 3
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 2
- 238000009795 derivation Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000032258 transport Effects 0.000 description 2
- 230000004069 differentiation Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000000843 powder Substances 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/4093—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/42—Recording and playback systems, i.e. in which the programme is recorded from a cycle of operations, e.g. the cycle of operations being manually controlled, after which this record is played back on the same machine
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Geometry (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Manipulator (AREA)
Description
本発明は軌道計画装置、軌道計画方法、及び軌道計画プログラムに関する。 The present invention relates to a trajectory planning device, a trajectory planning method, and a trajectory planning program.
本技術分野の背景技術として、特開2005-1055号公報(特許文献1)、及び特開2019-141939号公報(特許文献2)がある。 As background art in this technical field, there are Japanese Patent Application Publication No. 2005-1055 (Patent Document 1) and Japanese Patent Application Publication No. 2019-141939 (Patent Document 2).
特許文献1には、「ロボットアーム先端に装着されたハンドで容器を把持し、容器内に収容された液体、粉体等を搬送する。容器の姿勢は、搬送開始時には重力加速度ベクトルと同方向(真下)を向いているが、加速過程で加速度が増加するにつれて慣性加速度ベクトルが徐々に大きくなり、加速度の向きと逆方向に傾斜が増し、加速度が減少に転ずると慣性加速度ベクトルが徐々に小さくなり、その傾斜は減少する。加速過程が完了して速度一定となると傾斜は解消される。減速過程では、減速度が増すにつれて、加速過程とは逆方向に傾斜が増し、減速度が減少に転ずるとその傾斜は減少し、ロボットが停止すると傾斜は解消され、搬送開始時の真下方向を向く姿勢に戻る。」と記載されている。
また、特許文献2には、「シミュレーション装置10は、ワーク、ワークを保持した弾性を有する吸着パッド、及び吸着パッドが取り付けられたロボットアームを含むシミュレーションモデルを動作指令に基づいて加速度運動させるシミュレーションを実行した際、ロボットアームの加速度とワークの加速度との差により吸着パッドに発生する負荷モーメントを導出する負荷導出部105と、負荷導出部105で導出した負荷モーメントが閾値より大きい場合に、負荷導出部105で導出される負荷モーメントが閾値以下となるように、シミュレーションの実行条件を変更するための処理を行なう実行条件変更部108と、を含む。」と記載されている。
Further,
特許文献1に記載の技術は、慣性加速度ベクトルに従って把持物の姿勢を変更するが、例えば、遠心力などの慣性力が把持物にかからないように、把持物が通過する位置を変更することはできない。特許文献2に記載の技術は、シミュレーション結果に従って、吸着パッドにっ掛かるモーメントを小さくするように、加速度を調整するが、モーメントを低下させるように把持物が通る軌道を変更することはできない。
The technique described in
つまり、特許文献1に記載の技術及びと特許文献2に記載の技術は、把持物にかかる力やモーメントを考慮していないため、把持物に与えるダメージが大きくなるおそれがある。そこで本発明の一態様は、把持物に与えるダメージを抑制しつつロボットを高速に動作させる。
In other words, the technology described in
上記課題を解決するために、本発明の一態様は以下の構成を採用する。可動軸を有し、把持物を把持するロボットアーム、の前記可動軸が移動する軌道を計画する軌道計画装置は、プロセッサとメモリとを有し、前記メモリは、前記把持物の重量及び重心位置を示す把持物情報と、前記把持物にかかる把持力及びモーメントの制約を示す制約情報と、前記軌道における経路の各点の位置を示す軌道情報と、を保持し、前記プロセッサは、前記把持物情報が示す前記重量及び前記重心位置に基づいて、前記制約情報が示す前記把持力及び前記モーメントの制約を満たすように、前記軌道情報が示す経路の各点を前記可動軸が通過する時刻を付与して、前記付与した時刻を前記軌道情報に格納する時刻付与処理と、前記把持物情報が示す前記重量及び前記重心位置に基づいて、前記把持物にかかる把持力及び/又はモーメントを低下させるよう、前記軌道情報における経路に含まれる点の位置を変更する経路最適化処理と、を実行する。 In order to solve the above problems, one embodiment of the present invention employs the following configuration. A trajectory planning device that plans a trajectory of the movable axis of a robot arm that has a movable axis and that grasps an object has a processor and a memory, and the memory stores the weight and center of gravity of the object to be grasped. , constraint information indicating constraints on gripping force and moment applied to the grasped object, and trajectory information indicating the position of each point on the path on the trajectory, and the processor Based on the weight and the center of gravity position indicated by the information, assign a time at which the movable axis passes each point on the path indicated by the trajectory information so as to satisfy the constraints of the gripping force and the moment indicated by the constraint information. and a time assigning process of storing the assigned time in the trajectory information, and reducing the gripping force and/or moment applied to the grasped object based on the weight and the center of gravity position indicated by the grasped object information. , a route optimization process for changing the positions of points included in the route in the trajectory information.
本発明の一態様によれば、把持物に与えるダメージを抑制しつつロボットを高速に動作させることができる。 According to one aspect of the present invention, a robot can be operated at high speed while suppressing damage to a gripped object.
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。 Problems, configurations, and effects other than those described above will be made clear by the following description of the embodiments.
以下、本発明の実施形態を図面に基づいて詳細に説明する。本実施形態において、同一の構成には原則として同一の符号を付け、繰り返しの説明は省略する。なお、本実施形態は本発明を実現するための一例に過ぎず、本発明の技術的範囲を限定するものではないことに注意すべきである。 Hereinafter, embodiments of the present invention will be described in detail based on the drawings. In this embodiment, in principle, the same components are given the same reference numerals, and repeated explanations will be omitted. Note that this embodiment is merely an example for implementing the present invention, and does not limit the technical scope of the present invention.
[システム構成]
図1は、軌道計画装置の構成例を示すブロック図である。軌道計画装置100は、例えば、CPU(Control Processing Unit)110、メモリ120、補助記憶装置130、通信装置140、及び入出力インターフェース150を有する計算機(例えば、PC(Personal Computer)又はサーバ等)によって構成される。
[System configuration]
FIG. 1 is a block diagram showing an example of the configuration of a trajectory planning device. The
CPU110は、プロセッサを含み、メモリ120に格納されたプログラムを実行する。メモリ120は、不揮発性の記憶素子であるROM(Read Only Memory)及び揮発性の記憶素子であるRAM(Random Access Memory)を含む。ROMは、不変のプログラム(例えば、BIOS(Basic Input/Output System))などを格納する。RAMは、DRAM(Dynamic Random Access Memory)のような高速かつ揮発性の記憶素子であり、CPU110が実行するプログラム及びプログラムの実行時に使用されるデータを一時的に格納する。
補助記憶装置130は、例えば、磁気記憶装置(HDD(Hard Disk Drive))、フラッシュメモリ(SSD(Solid State Drive))等の大容量かつ不揮発性の記憶装置であり、CPU110が実行するプログラム及びプログラムの実行時に使用されるデータを格納する。すなわち、プログラムは、補助記憶装置130から読み出されて、メモリ120にロードされて、CPU110によって実行される。
The
入出力インターフェース150は、オペレータからの入力を受けるインターフェースであり、プログラムの実行結果をオペレータが視認可能な形式で出力するインターフェースでもある。入出力インターフェース150には、キーボードやマウスなどの入力装置、及びディスプレイ装置やプリンタなどの出力装置を含む入出力装置160が接続される。また、入出力インターフェース150には、把持物情報や干渉物情報を計測する3次元センサ170が接続される。3次元センサ170は、例えば、画像センサ、レーザースキャナ、及びライダーを含む。なお、スマートフォンやタブレットPC等の計算機が入出力装置160として機能してもよい。
The input/
通信装置140は、所定のプロトコルに従って、他の装置との通信を制御するネットワークインターフェース装置である。また、通信装置140は、例えば、USB(Universal Serial Bus)等のシリアルインターフェースを含んでもよい。
The
CPU110が実行するプログラムは、リムーバブルメディア(CD-ROM、フラッシュメモリなど)又はネットワークを介して軌道計画装置100に提供され、非一時的記憶媒体である不揮発性の補助記憶装置130に格納される。このため、軌道計画装置100は、リムーバブルメディアからデータを読み込むインターフェースを有するとよい。
The program executed by the
CPU110は、例えば、データ読込部201、干渉判定部202、動力学計算部203、軌道計画部204、初期経路計画部205、把持物考慮時刻付与部206、把持物考慮経路最適化部207、及び結果出力部208を含む。
The
例えば、CPU110は、メモリ120にロードされたデータ読込プログラムに従って動作することで、データ読込部201として機能し、メモリ120にロードされた干渉判定部プログラムに従って動作することで、干渉判定部202として機能する。CPU110に含まれる他の機能部についても、プログラムと機能部の関係は同様である。
For example, the
データ読込部201は、例えばユーザからの入力指示に従って、補助記憶装置130に格納された各種データを読み込む。干渉判定部202は、ロボットアーム及び把持物が干渉物と干渉するかを判定する。動力学計算部203は、把持物にかかる把持力、及び把持物にかかるモーメントを算出する。
The
軌道計画部204は、ロボットアームの軌道を計画する。初期経路計画部205は、ロボットアームの初期経路を生成する。以下、ロボットアームが通過する経路に時刻を付与したものを軌道と呼ぶ(即ち経路は時刻を問わないロボットアームの道筋を示す概念である)。把持物考慮時刻付与部206は、軌道の各点における関節角速度、関節角速度、及び制御時刻を付与又は修正する。把持物考慮経路最適化部207は、把持物にかかる把持力、及びモーメントが小さくなるよう軌道の経路を最適化する。結果出力部208は、軌道計画の結果を入出力装置160に出力する。
The
軌道計画装置100は、物理的に一つの計算機上で、又は、論理的又は物理的に構成された複数の計算機上で構成される計算機システムであり、同一の計算機上で別個のスレッドで動作してもよく、複数の物理的計算機資源上に構築された仮想計算機上で動作してもよい。
The
なお、図示しないが、軌道計画装置100は、OS(Operating Sytem)、ミドルウェア、及びアプリケーションなどの構成を有し、特にディスプレイなどの入出力装置160にGUI(Graphical User Interface)を表示するための処理機能を有する。CPU110は、当該処理機能により、所定の画面を描画し表示する処理や、ユーザが入力したデータの処理などを行うことができる。
Although not shown, the
なお、CPU110に含まれる機能部による機能の一部又は全部が、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)等のハードウェアによって実現されてもよい。
Note that some or all of the functions provided by the functional units included in the
補助記憶装置130は、例えば、ロボットアーム構成テーブル310、干渉物構成テーブル320、開始関節角度テーブル330、目標位置姿勢テーブル340、把持物・モーメント制約テーブル350、把持物情報テーブル360、把持方法情報テーブル370、及び軌道テーブル380を含む。なお、補助記憶装置130に格納されている一部又は全部の情報は、メモリ120に格納されていてもよいし、軌道計画装置100に接続されているデータベース等に格納されていてもよい。
The
ロボットアーム構成テーブル310は、軌道計画や逆運学計算、動力学計算などで用いられるロボットアーム構成の情報を保持する。干渉物構成テーブル320は、軌道計画における干渉判定で用いられる、干渉物構成の情報を保持する。開始関節角度テーブル330は、軌道計画でのロボットアームの始点となる開始関節角度の情報を保持する。 The robot arm configuration table 310 holds information on the robot arm configuration used in trajectory planning, inverse dynamics calculations, dynamic calculations, and the like. The interfering object configuration table 320 holds information on interfering object configurations used in interference determination in trajectory planning. The starting joint angle table 330 holds information on starting joint angles that are the starting points of the robot arm in trajectory planning.
目標位置姿勢テーブル340は、軌道計画でのロボットアームの終点となる目標姿勢の情報を保持する。把持力・モーメント制約テーブル350は、軌道計画の時刻付与や最適化計算に用いられる、把持物への把持力及び把持物のモーメントに関する制約の情報を保持する。 The target position and orientation table 340 holds information on the target orientation that is the end point of the robot arm in trajectory planning. The gripping force/moment constraint table 350 holds information on constraints regarding the gripping force on the gripping object and the moment of the gripping object, which is used for time assignment and optimization calculation of trajectory planning.
把持物情報テーブル360は、軌道計画において、ロボットアームが把持する把持物の情報を保持する。把持方法情報テーブル370は、軌道計画で用いる、把持方法データ407を記憶する部分である。軌道テーブル380は、結果出力部208で出力する軌道データ408を記憶する部分である。
The grasped object information table 360 holds information on grasped objects held by the robot arm in trajectory planning. The gripping method information table 370 is a portion that stores gripping method data 407 used in trajectory planning. The trajectory table 380 is a part that stores trajectory data 408 output by the
なお、本実施形態において、病院選定システムが使用する情報は、データ構造に依存せずどのようなデータ構造で表現されていてもよい。本実施形態ではテーブル形式で情報が表現されているが、例えば、リスト、データベース又はキューから適切に選択したデータ構造体が、情報を格納することができる。 In addition, in this embodiment, the information used by the hospital selection system may be expressed in any data structure without depending on the data structure. Although the information is represented in table form in this embodiment, the information may be stored in a data structure appropriately selected from, for example, a list, a database, or a queue.
[ロボットアーム構成テーブル310]
図2は、ロボットアーム構成テーブル310の一例である。ロボットアーム構成テーブル310は、例えば、ロボットごとに定義されている。ロボットアーム構成テーブル310は、例えば、項番欄311、分類欄312、項目欄313、及び値欄314を含む。項番欄311は、ロボットアーム構成テーブル310のレコードを識別する番号を保持する。分類欄312は、ロボットアームの構成が属する分類を示す情報を保持する。
[Robot arm configuration table 310]
FIG. 2 is an example of the robot arm configuration table 310. The robot arm configuration table 310 is defined for each robot, for example. The robot arm configuration table 310 includes, for example, an
ロボットアームの構成が属する分類は、例えば、関節情報及びリンク情報を含む。ロボットの可動軸は関節とリンクとを含む。項目欄313は、分類に対応する項目名を示す情報を保持する。値欄314は、各項目の値を示す情報を保持する。なお、関節情報は、ロボットアームに含まれる各関節の情報であり、例えば、関節名、関節の種類、関節の位置、関節の向き、関節の動作下限、関節の動作上限、最大加速度、及び最大速度などの情報を含む。
The classification to which the configuration of the robot arm belongs includes, for example, joint information and link information. The movable axis of the robot includes joints and links. The
リンク情報は、ロボットアームに含まれるリンクの情報であり、例えば、リンク名、親関節名、子関節名、及びリンク形状などの情報を含む。リンク形状とは、リンクの実際の形状である。STEP(Standard for the Exchange of Product model data)などのフォーマットで保存されるソリッドデータや、STL(STereoLithography)などのフォーマットで保存されるポリゴンデータ等で表現されるである。 The link information is information on links included in the robot arm, and includes information such as a link name, a parent joint name, a child joint name, and a link shape. The link shape is the actual shape of the link. It is expressed as solid data stored in a format such as STEP (Standard for the Exchange of Product model data), polygon data stored in a format such as STL (STereoLithography), etc.
[干渉物構成テーブル320]
図3は、干渉物構成テーブル320の一例である。干渉物構成テーブル320は、例えば、干渉物ID欄321、干渉物形状欄322、及び干渉物姿勢欄323を含む。干渉物ID欄321は、干渉物を識別する干渉物IDを保持する。
[Interference object configuration table 320]
FIG. 3 is an example of an interference object configuration table 320. The interference object configuration table 320 includes, for example, an interference
干渉物形状欄322は、干渉物の形状を示す情報を保持する。干渉物の形状は、例えば、STEPなどのフォーマットで保存されるソリッドデータや、STLなどのフォーマットで保存されるポリゴンデータなどで表現される。干渉物姿勢欄323は、干渉物が空間上のどの位置に置かれているかを示す情報である。干渉物の姿勢は、例えば、AFFINE変換行列や、3次元空間上での位置とそのときのRoll―Pitch-Yawなどで表現される。
The interference
[開始関節角度テーブル330]
図4は、開始関節角度テーブル330の一例である。開始関節角度テーブル330は、例えば、関節名欄331及び開始関節角度欄332を有する。関節名欄331は、関節の名称(例えばロボットアーム構成テーブル310の関節名の項目に対応する値と同じ値が含まれる)を保持する。開始関節角度欄332は、関節の動作開始時の角度(即ち初期角度)を示す情報を保持する。
[Start joint angle table 330]
FIG. 4 is an example of the starting joint angle table 330. The starting joint angle table 330 has, for example, a
[目標位置姿勢テーブル340]
図5は、目標位置姿勢テーブル340の一例である。目標位置姿勢テーブル340は、姿勢ID欄341、対象リンク名欄342、及び位置姿勢情報欄343を含む。姿勢ID欄341は、目標位置姿勢を識別する姿勢IDを保持する。
[Target position/posture table 340]
FIG. 5 is an example of the target position/orientation table 340. The target position and orientation table 340 includes an
対象リンク名欄342は、対象のリンクの名称(例えばロボットアーム構成テーブル310のリンク名の項目に対応する値と同じ値が含まれる)を保持する。また、位置姿勢情報欄343はリンクの目標位置が空間上のどの位置であるかを示す情報である。目標位置姿勢は、例えば、AFFINE変換行列や、3次元空間上での位置とそのときのRoll―Pitch-Yawなどで表現される。
The target
[把持力・モーメント制約テーブル350]
図6は、把持力・モーメント制約テーブル350の一例である。把持力・モーメント制約テーブル350は、例えば、ロボットごとに定義されていてもよいし、アーム及びリンクごとに定義されていてもよいし、把持物ごとに定義されていてもよい。把持力・モーメント制約テーブル350は、例えば、項番欄351、項目欄352、及び値欄353を含む。項番欄351は、把持力・モーメント制約テーブル350のレコードを識別する番号を保持する。
[Gripping force/moment constraint table 350]
FIG. 6 is an example of the gripping force/moment constraint table 350. The gripping force/moment constraint table 350 may be defined for each robot, each arm and link, or each gripped object, for example. The gripping force/moment constraint table 350 includes, for example, an
項番欄351は、把持力・モーメント制約テーブル350のレコードを識別する番号を保持する。項目欄352は、把持力やモーメントに関する制約を示す項目を保持する。把持力やモーメントに関する制約は、例えば、把持物にかかる最大把持力、及び把持物にかかる最大モーメントなどを含む。最大把持力は、把持物やロボットのハンドが許容できる最大の把持力であり、例えば、3次元の情報で表現される。最大モーメントは、把持物やハンドが許容できる最大のモーメントであり、例えば、3次元の情報で表現される。
The
[把持物情報テーブル360]
図7は、把持物情報テーブル360の一例である。把持物情報テーブル360は、例えば、把持物ごとに定義されている。把持物情報テーブル360は、例えば、項番欄361、項目欄362、及び値欄363を含む。項番欄361は、把持物情報テーブル360のレコードを識別する番号を保持する。
[Holded object information table 360]
FIG. 7 is an example of the held object information table 360. The held object information table 360 is defined for each held object, for example. The held object information table 360 includes, for example, an
項目欄362は、把持物に関する情報の項目を保持する。項目欄362に格納される項目は、例えば、把持物名、把持物形状、把持物の重心位置、及び把持物の質量等を含む。把持物形状は、例えば、STEPなどのフォーマットで保存されるソリッドデータや、STLなどのフォーマットで保存されるポリゴンデータなどで表現される。重心位置は、把持物形状の重心位置を示し、例えば、3次元データで表現される。質量は、把持物の質量示し、例えば、スカラー値で表現される。
The
[把持方法情報テーブル370]
図8は、把持方法情報テーブル370の一例である。把持方法情報テーブル370は、例えば、把持方法ごとに定義されている。把持方法情報テーブル370は、例えば、項番欄371、項目欄372、及び値欄373を含む。項番欄371は、把持方法情報テーブル370のレコードを識別する番号を保持する。
[Gripping method information table 370]
FIG. 8 is an example of the gripping method information table 370. The gripping method information table 370 is defined for each gripping method, for example. The gripping method information table 370 includes, for example, an
項目欄372は、把持方法に関する情報の項目を保持する。項目欄372に格納される項目は、例えば、把持方法及び把持位置等を含む。把持方法は、ロボットがどのようにして把持物を把持するかを示し、吸着を示すDIO、及び摩擦把持を示すFRICTIONなどは、いずれも把持方法の一例である。把持位置とは、把持物情報テーブル460が示す把持物がどの位置で把持されるかを示し、例えば、3次元データで表現される。
The
[軌道テーブル380]
図9は、軌道テーブル380の一例である。軌道テーブル380は、軌道計画装置100による処理によって出力されるテーブルである。軌道テーブル380は、例えば、軌道点ID欄381、関節角度情報欄382、関節角速度情報欄383、関節角加速度情報欄384、及び制御時刻欄385を含む。
[Trajectory table 380]
FIG. 9 is an example of the trajectory table 380. The trajectory table 380 is a table output by processing by the
軌道点ID欄381は、ロボットアーム(関節)の軌道の経路上の点を識別する軌道点IDを保持する。関節角度情報欄382は、制御時刻欄385が示す時刻における各関節の角度を示す情報を保持する。図9の例では、関節角度情報欄382のセルには、制御時刻欄385が示す時刻における各関節の角度を要素とするベクトルが格納されている。関節角速度情報欄383は、制御時刻欄385が示す時刻における各関節の角速度を示す情報を保持する。図9の例では、関節角速度情報欄383のセルには、制御時刻欄385が示す時刻における各関節の角速度を要素とするベクトルが格納されている。
The trajectory
関節角加速度情報欄384は、制御時刻欄385が示す時刻における各関節の角加速度を示す情報を保持する。図9の例では、関節角加速度情報欄384のセルには、制御時刻欄385が示す時刻における各関節の角加速度を要素とするベクトルが格納されている。制御時刻欄385は、把持物が各軌道点の経路を通る時刻を示す情報を保持する。
The joint angular
[フローチャート]
図10は、軌道計画処理の一例を示すフローチャートである。データ読込部201は、軌道の計画に必要な各種データを読み込む(S101)。具体的には、データ読込部201は、ユーザによって入出力装置160に入力された情報に基づいて(例えば、軌道計画の対象のロボット、把持物、関節、及び/又は把持方法等が入力され、これらに対応するテーブルを読み込む)、ロボットアーム構成テーブル310、干渉物構成テーブル320、開始関節角度テーブル330、目標位置姿勢テーブル340、及び把持力・モーメント制約テーブル350を読み込む。なお、これらのテーブルの情報はいずれも、例えば、ユーザが入出力装置160に入力することによって登録される。
[flowchart]
FIG. 10 is a flowchart illustrating an example of trajectory planning processing. The
また、データ読込部201は、(3次元センサ170を通して得られた情報である)把持物情報テーブル360及び把持方法情報テーブル370を読み込む。なお、ここではデータ読込部201が読み込んだデータが、入出力装置160や3次元センサ170を経由して取得される例を説明したが、過去の入力データをはじめとする、既に取得済みのデータが用いられてもよい。
The
初期経路計画部205は、開始関節角度テーブル330と、目標位置姿勢テーブル340と、干渉物構成テーブル320と、に基づいて、動作する関節の開始関節角度θ1から、当該関節に結ばれたリンクの目標姿勢Pnまでをロボットアーム及び把持物が干渉物と干渉しないよう繋ぐ初期経路を算出する(S102)。初期経路計画部205は、どのような手段で干渉しない初期経路を求めてもよいが、例えば、RRT(Rapidly-exproing Random Tree)法を用いて初期経路を算出する。そして、初期経路計画部205は、算出した初期経路の各点に軌道点IDを付与し、各軌道点IDに示す各点(各軌道点)おける関節角度を軌道テーブル380に格納する。
The initial
把持物考慮時刻付与部206は、軌道テーブル380に格納されている各軌道点に対して、把持力・モーメント制約テーブル350に基づいて、関節角速度、関節角速度、及び制御時刻を付与又は修正する(S103)。なお、ステップS103の詳細については図11を用いて後述する。
The grasped object consideration
軌道計画部204は、軌道テーブル380の軌道の変化が無くなったか判定する(S104)。具体的には、例えば、軌道計画部204は、直前のステップS105で更新された軌道における各軌道点における位置又は時刻と、当該更新の直前の軌道における各軌道点における位置又は時刻と、の差の合計値が所定値以下である場合に軌道の変化が無くなったと判定し、所定値を超える場合に軌道の変化があったと判定する。
The
なお、初回のステップS104においては、軌道計画部204は、例えば、必ず軌道テーブル380の値の変化があったと判定してもよいし、ステップS103で付与した各軌道点の位置又は時刻と、所定の軌道の各軌道点の位置又は時刻と、の差の合計値に基づいて軌道の変化があったかないかを判定してもよい。軌道計画部204は、軌道テーブル380の軌道の変化が無くなったと判定した場合(S104:YES)、ステップS106に遷移する。
In addition, in the first step S104, the
軌道計画部204が軌道テーブル380の軌道の変化があったと判定した場合(S104:NO)、把持物考慮経路最適化部207は、把持力・モーメント制約テーブル350に基づいて、動力学計算部203等を用いて、把持物にかかる把持力、及びモーメントが小さくなるよう軌道の経路を変更し、軌道テーブル380の関節角度、関節角速度、及び関節角速度を更新することで軌道を最適化する(S105)。なお、ステップS105の詳細については図12を用いて後述する。
If the
結果出力部208は、補助記憶装置130に格納されているデータに基づいて結果表示画面を生成し、入出力装置160に表示する(S106)。結果表示画面の一例については、図13を用いて後述する。
The
[把持物考慮時刻付与処理]
図11は、ステップS103における制御時刻付与処理の一例を示すフローチャートである。把持物考慮時刻付与部206は、本処理においては、軌道テーブル380における関節角度は変更せず、関節角速度、関節角加速度、及び制御時刻を変更する。以下、本処理について説明する。
[Gripped object consideration time assignment process]
FIG. 11 is a flowchart illustrating an example of the control time provision process in step S103. In this process, the grasped object consideration
把持物考慮時刻付与部206は、軌道テーブル380から軌道のデータを取得する(S201)。把持物考慮時刻付与部206は、ロボットアーム構成テーブル310に格納されている、各関節軸の最大速度情報に基づいて、全ての軌道点に対して時刻を付与し、付与した時刻を軌道テーブル380の制御時刻欄385に格納する。把持物考慮時刻付与部206は、この時刻Δtiを、例えば、以下の式によって決定する。
The held object consideration
なお、上記式のkは関節を識別する関節番号であり、iは軌道点IDでありθk,iは関節番号kの関節の軌道点IDがiの軌道点における関節角度である。また、Vmaxkは、関節kの最大速度情報である。 Note that k in the above formula is a joint number that identifies a joint, i is a trajectory point ID, and θ k,i is a joint angle at a trajectory point whose trajectory point ID is i of the joint with joint number k. Further, Vmax k is maximum velocity information of joint k.
把持物考慮時刻付与部206は、ステップS204からステップS208までの処理を、時刻の更新がなくなるまで繰り返す(S203)。把持物考慮時刻付与部206は、ステップS205からステップS208までの処理を、軌道テーブル380に格納されている全ての軌道点に対して順番に行う。
The held object consideration
把持物考慮時刻付与部206は、軌道点iにおける関節角速度、関節角加速度を計算し、軌道テーブル380の関節角速度、関節角加速度を修正する(S205)。なお、把持物考慮時刻付与部206は、関節角速度θ’i、及び関節角加速度θ’’iを、例えば、以下の数値微分による式によって算出する。
The grasped object consideration
動力学計算部203は、軌道点iにおいて把持物にかかる把持力、及び把持物にかかるモーメントを算出し、把持物考慮時刻付与部206は、算出された把持力、及びモーメントが、把持力・モーメント制約テーブル350に格納されている制約を満たしているかを判定する(S206)。
The
ステップS206における計算処理を、図14を用いて説明する。図14は、把持物にかかる把持力、及び把持物にかかるモーメントの計算処理の一例を示す説明図である。図14の例では、ロボットアームに装着された吸盤が把持物を吸着把持する。まず、動力学計算部203は、軌道点iにおける関節角速度θ’i及び関節角加速度θ’’iから、把持物の加速度aiを以下の式によって算出する。
The calculation process in step S206 will be explained using FIG. 14. FIG. 14 is an explanatory diagram illustrating an example of calculation processing of the gripping force applied to the gripped object and the moment applied to the gripped object. In the example of FIG. 14, a suction cup attached to a robot arm suctions and grips an object. First, the
なお、Jiは、軌道点iにおける把持物の位置及び姿勢の変化方向を表すヤコビ行列である。動力学計算部203は、上記の式を計算することで、水平方向の移動に伴う加速度だけでなく、円運動に伴う中心方向に向かう遠心加速度等をまとめて計算できる。図14の状態において、把持物の重心と一緒に動く座標系上においては、把持物は静止しているとみなせるため、重力mgと把持力Ti、及び慣性力-maiの力のつり合いより以下の式が成り立つ。
Note that J i is a Jacobian matrix representing the direction of change in the position and orientation of the object held at orbit point i. By calculating the above equation, the
また、動力学計算部203は、把持物の重心周りでのモーメントMiを、把持物の重心位置から見た把持位置rを用いて以下の式によって算出する。
Furthermore, the
把持物考慮時刻付与部206は、ステップS206で算出された把持力Ti、およびモーメントMi等が、把持力・モーメント制約テーブル350に格納されている制約を満たしているかを判定する。
The gripped object consideration
図11の説明に戻る。把持物考慮時刻付与部206は、ステップS206において制約を満たしていないと判定した場合(S206:NO)、Δtiを所定の時刻分増加させ、軌道テーブル380の制御時刻を更新する(S207)。ステップS205~ステップS207の処理のループによって制御時刻の増加が繰り返されることで、関節角速度及び関節角速度が小さくなっていくため、把持物にかかる慣性力やモーメントも小さくなり、ステップS206の判定における制約がいずれ満たされることになり、最終的にステップS203のループを抜ける条件が満たされる。
Returning to the explanation of FIG. 11. If it is determined in step S206 that the constraint is not satisfied (S206: NO), the held object consideration
そして、把持物考慮時刻付与部206がΔtiを少しずつ増加させて制御時刻を伸ばしていくことで、ステップS203のループを抜けるタイミングでは、制約を満たしつつも制約値に近い値でロボットアームが動く軌道を実現できる。
Then, the gripped object consideration
[把持物考慮経路最適化処理]
図12は、ステップS105における把持物考慮経路最適化処理の一例を示すフローチャートである。本処理では、把持物考慮経路最適化部207は、軌道テーブル380おける制御時刻は変更せず、関節角度、関節角速度、及び関節角加速度を変更する。本処理では、把持物考慮経路最適化部207は、軌道における経路を曲線σととらえ、経路に対する評価関数F(σ)を定義し、この評価関数が最小となる経路を生成することで、把持力・モーメントが小さくなるように軌道テーブル380の軌道を修正する。軌道に対する評価関数の一例を以下に示す。
[Gripped object-considering route optimization process]
FIG. 12 is a flowchart illustrating an example of the route optimization process considering the held object in step S105. In this process, the grasped object consideration
ここで、積分内の第一項は把持力に関する評価値であり、第二項はモーメントに関する評価値であり、第三項は軌道の滑らかさに関する評価値である。なお、出力される軌道が関節角度空間でも平滑化されるようにするために、上記式の第三項のような軌道の滑らかさを評価する指標が、F(σ)に含まれているとよいが、含まれていなくてもよい。また、α、β、γはそれぞれ、各評価値の重みである。φはソフトプラス関数であり、入力値が閾値以上で大きくなるほど出力の傾きが増し、入力値が閾値より小さい場合には傾きが緩やかである関数である。以下、本処理について説明する。 Here, the first term in the integral is an evaluation value regarding gripping force, the second term is an evaluation value regarding moment, and the third term is an evaluation value regarding trajectory smoothness. In addition, in order to ensure that the output trajectory is smoothed in the joint angle space, an index for evaluating the smoothness of the trajectory, such as the third term in the above equation, is included in F(σ). Yes, but it doesn't have to be included. Moreover, α, β, and γ are weights of each evaluation value, respectively. φ is a soft plus function, and the slope of the output increases as the input value becomes greater than or equal to the threshold value, and the slope becomes gentler when the input value is smaller than the threshold value. This process will be explained below.
上記積分内の第一項の把持力に関する評価値が低下することにより把持物を把持するロボットアームの吸着パッド等が外れる可能性が低下し、第二項のモーメントに関する評価値が低下することにより把持物が破損する可能性が低下し、第三項の軌道の滑らかさに関する評価値が低下することにより角加速度が低下する。 As the evaluation value related to the gripping force in the first term in the above integral decreases, the possibility that the suction pad etc. of the robot arm that grips the object will come off decreases, and the evaluation value related to the second term in the moment decreases. The possibility of the object being held being damaged is reduced, and the evaluation value regarding the smoothness of the trajectory in the third term is reduced, thereby reducing the angular acceleration.
把持物考慮経路最適化部207は、軌道テーブル380に格納されている軌道のデータを取得する(S301)。把持物考慮経路最適化部207は、最適化計算によって軌道σが収束するまでステップS303からステップS308までの処理をループ演算する(S302)。
The grasped object consideration
把持物考慮経路最適化部207は、把持力やモーメントからなる評価関数F(σ)から評価値を計算する(S303)。把持物考慮経路最適化部207は、把持力やモーメントを、ステップS206の説明で述べた手法で算出できる。
The grasped object consideration
把持物考慮経路最適化部207は、評価関数F(σ)を小さくする方向を示す汎関数微分δF(σ)/δσを計算する(S304)。把持物考慮経路最適化部207は、例えば、経路を少しずつ変更することで数値微分として汎関数微分を計算してもよいし、STOMP(Stochastic Trajectory Optimization for Motion Planning)法によって、正規分布に従ったノイズを与えた軌道を複数作成し、軌道の変化と評価関数の変化から汎関数微分を計算してもよい。
The grasped object-considering
把持物考慮経路最適化部207は、軌道σnewを以下の式で算出する(S305)。
The grasped object-considering
干渉判定部202は、ロボットアーム構成テーブル310と干渉物構成テーブル320とを参照して使い、軌道σnewにおいてロボットアーム及び把持物が干渉物と干渉していないかを判定する(S306)。
The
干渉判定部202は、干渉が発生していないと判定した場合(S306:NO)、把持物考慮経路最適化部207は、軌道σnewを新たな軌道σとして採用して、軌道テーブル380の関節角度を更新し、さらに制御時刻の情報にしたがい、各軌道点における関節速度及び関節角加速度を、ステップS205で説明した数式を用いて更新する(S307)。干渉判定部202は、干渉が発生していると判定した場合(S306:YES)、ステップS307の処理へと遷移せずにステップS302のループ判定へと遷移する。
If the
把持物考慮経路最適化部207がステップS303からステップS308の処理を繰り返すことで、把持力及び/又はモーメントが小さくなるように経路を変更することができる。
By repeating the processing from step S303 to step S308, the gripped object consideration
図15は、軌道計画処理における軌道の変化の一例を示す説明図である。図15の、横方向には把持物を平行移動する軌道に関する、最適化計算の回数と付与される時刻、およびその時の把持物の姿勢と把持物にかかるモーメントの関係を示す。ステップS102で算出された初期軌道(a)の各軌道点に対して、仮に最大速度で時刻が付与されると、モーメントが上限値を超える経由点が発生する。 FIG. 15 is an explanatory diagram illustrating an example of a trajectory change in the trajectory planning process. In FIG. 15, the horizontal direction shows the number of optimization calculations, the given time, and the relationship between the posture of the gripped object and the moment applied to the gripped object, regarding the trajectory of parallel translation of the gripped object. If time is given to each orbit point of the initial trajectory (a) calculated in step S102 at the maximum speed, a way point where the moment exceeds the upper limit value will occur.
そこで、把持物考慮時刻付与部206は、ステップS103の処理において、各軌道点に付与する時間間隔をのばすことで、角加速度を小さくし、モーメントが上限値を超えないような時刻を付与することで(b)の軌道が得られる。
Therefore, in the process of step S103, the held object consideration
次に、把持物考慮経路最適化部207は、ステップS105の処理において、モーメントが最小となるよう、把持物を傾けた経路を生成することで(c)の軌道が得られる。これにより、把持物を傾ける軌道が得られるためモーメントが上限値より小さくなり、加速度を上げることができるため、把持物考慮時刻付与部206は、再度ステップS103の処理を実行して、時間間隔を短くするような時刻を付与して(d)の軌道を得る。これらの処理が繰り返されることで、最大速度、最大加速度で把持物を移動させながら、モーメントが上限値以下となる軌道が生成される。
Next, in the process of step S105, the held object consideration
[出力画面]
図13は、結果出力画面の一例である。結果出力画面1300は、例えば、読込ボタン1301、計算開始ボタン1302、動作時間表1303、把持力変化グラフ1304、モーメント変化グラフ1305、及びシミュレート表示1306を含む。読込ボタン1301が選択されると、入出力インターフェース150を介して入力された入力データが読み込まれる。
[Output screen]
FIG. 13 is an example of a result output screen. The result output screen 1300 includes, for example, a
計算開始ボタン1302が選択されると、軌道計画計算(ステップS102以降の処理)が実行され、動作時間表1303、把持力変化グラフ1304、モーメント変化グラフ1305、及びシミュレート表示1306が表示される。把持力変化グラフ1304は、軌道の各制御時刻における把持力の変化を示し、モーメント変化グラフ1305は、軌道の各制御時刻におけるモーメントの変化を示す。なお、結果出力画面1300において、把持力変化グラフ1304又はモーメント変化グラフ1305の一方が表示されなくてもよい。
When the
動作時間表1303には、例えば、把持力・モーメント制約テーブル350、把持物情報テーブル360、及び把持方法情報テーブル370等の条件や制約に従って軌道計画を行った場合の動作時間が表示される。また、これらのテーブルの条件が変更されることで、把持力変化グラフ1304やモーメント変化グラフ1305も変化する。また、動作時間表1303内の動作再生ボタンが選択されると、シミュレート表示領域においてロボットアームの動作が再生表示される。
The operation time table 1303 displays, for example, the operation time when the trajectory is planned according to the conditions and constraints of the gripping force/moment constraint table 350, the gripping object information table 360, the gripping method information table 370, and the like. Moreover, by changing the conditions of these tables, the gripping
[効果等]
以上に説明したように本実施例の軌道計画装置100は、把持物にかかる把持力やモーメントの制約を満たしつつ、始点から終点までを高速に繋ぐ軌道を生成することができる。
[Effects etc.]
As described above, the
なお、本発した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。 Note that the present invention is not limited to the present embodiment, and includes various modifications. For example, the embodiments described above are described in detail to explain the present invention in an easy-to-understand manner, and the present invention is not necessarily limited to having all the configurations described. Furthermore, it is possible to replace a part of the configuration of one embodiment with the configuration of another embodiment, and it is also possible to add the configuration of another embodiment to the configuration of one embodiment. Further, it is possible to add, delete, or replace a part of the configuration of each embodiment with other configurations.
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。 Further, each of the above-mentioned configurations, functions, processing units, processing means, etc. may be partially or entirely realized in hardware by designing, for example, an integrated circuit. Further, each of the above-mentioned configurations, functions, etc. may be realized by software by a processor interpreting and executing a program for realizing each function. Information such as programs, tables, files, etc. that implement each function can be stored in a memory, a recording device such as a hard disk, an SSD (Solid State Drive), or a recording medium such as an IC card, an SD card, or a DVD.
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。 Further, the control lines and information lines are shown to be necessary for explanation purposes, and not all control lines and information lines are necessarily shown in the product. In reality, almost all components may be considered to be interconnected.
100 軌道計画装置、110 CPU、120 メモリ、130 補助記憶装置、140 通信装置、150 入出力インターフェース、160 入出力装置、150 3次元センサ、201 データ読込部、202 干渉判定部、203 動力学計算部、204 軌道計画部、205 初期経路探索部、206 把持物考慮時刻付与部、207 把持物考慮経路最適化部、208 結果出力部、310 ロボットアーム構成テーブル、320 干渉物構成テーブル、330 開始関節角度テーブル、340 目標位置姿勢テーブル、350 把持力・モーメント制約テーブル、360 把持物情報テーブル、370 把持方法情報テーブル、380 軌道テーブル 100 trajectory planning device, 110 CPU, 120 memory, 130 auxiliary storage device, 140 communication device, 150 input/output interface, 160 input/output device, 150 three-dimensional sensor, 201 data reading unit, 202 interference determination unit, 203 dynamics calculation unit , 204 Trajectory Planning Unit, 205 Initial Path Search Unit, 206 Grasped Object Consideration Time Adding Unit, 207 Grasped Object Consideration Path Optimization Unit, 208 Result Output Unit, 310 Robot Arm Configuration Table, 320 Interfering Object Configuration Table, 330 Start Joint Angle table, 340 target position/posture table, 350 gripping force/moment constraint table, 360 gripped object information table, 370 gripping method information table, 380 trajectory table
Claims (13)
プロセッサとメモリとを有し、
前記メモリは、
前記把持物の重量及び重心位置を示す把持物情報と、
前記把持物にかかる把持力及びモーメントの制約を示す制約情報と、
前記軌道における経路の各点の位置を示す軌道情報と、を保持し、
前記プロセッサは、
前記把持物情報が示す前記重量及び前記重心位置に基づいて、前記制約情報が示す前記把持力及び前記モーメントの制約を満たすように、前記軌道情報が示す経路の各点を前記可動軸が通過する時刻を付与して、前記付与した時刻を前記軌道情報に格納する時刻付与処理と、
前記把持物情報が示す前記重量及び前記重心位置に基づいて、前記把持物にかかる把持力及び/又はモーメントを低下させるよう、前記軌道情報における経路に含まれる点の位置を変更する経路最適化処理と、を実行する軌道計画装置。 A trajectory planning device that plans a trajectory along which a movable axis of a robot arm that has a movable axis and grasps an object,
has a processor and memory;
The memory is
gripped object information indicating the weight and center of gravity of the gripped object;
constraint information indicating constraints on the gripping force and moment applied to the gripped object;
and trajectory information indicating the position of each point on the route on the trajectory,
The processor includes:
Based on the weight and the center of gravity position indicated by the grasped object information, the movable axis passes through each point on the path indicated by the trajectory information so as to satisfy the constraints of the grasping force and the moment indicated by the constraint information. a time assignment process of assigning a time and storing the assigned time in the orbit information;
Route optimization processing for changing the positions of points included in the route in the trajectory information so as to reduce the gripping force and/or moment applied to the grasped object, based on the weight and the center of gravity position indicated by the grasped object information. and a trajectory planning device that executes.
前記プロセッサは、
前記時刻付与処理と、前記経路最適化処理と、を交互に繰り返して実行し、
前記時刻付与処理の直後に、前記軌道の経路又は当該経路の各点に付与された時刻と、前回の時刻付与処理の直後の前記軌道の経路又は当該経路の各点に付与された時刻と、の変化量に基づいて、前記時刻付与処理と、前記経路最適化処理と、を終了する、軌道計画装置。 The trajectory planning device according to claim 1,
The processor includes:
Alternately repeating the time assigning process and the route optimization process,
a time assigned to the route of the trajectory or each point on the route immediately after the time assignment process; a time assigned to the route of the trajectory or each point on the route immediately after the previous time assignment process; A trajectory planning device that terminates the time assignment process and the route optimization process based on the amount of change.
前記メモリは、前記可動軸の角速度及び角加速度の制約を示すロボットアーム情報を保持し、
前記プロセッサは、前記時刻付与処理において、前記ロボットアーム情報が示す前記角速度及び前記角加速度の制約を満たすように、前記軌道情報が示す経路の各点を前記可動軸が通過する時刻を付与する、軌道計画装置。 The trajectory planning device according to claim 1,
the memory holds robot arm information indicating constraints on angular velocity and angular acceleration of the movable axis;
In the time assigning process, the processor assigns a time at which the movable axis passes through each point on the path indicated by the trajectory information so as to satisfy constraints on the angular velocity and the angular acceleration indicated by the robot arm information. Trajectory planning device.
前記プロセッサは、前記経路最適化処理において、前記軌道情報が示す経路が滑らかになるよう前記軌道情報における経路に含まれる点の位置を変更する、軌道計画装置。 The trajectory planning device according to claim 1,
In the route optimization process, the processor changes the positions of points included in the route in the trajectory information so that the route indicated by the trajectory information becomes smooth.
前記メモリは、干渉物の位置を示す干渉物情報を保持し、
前記プロセッサは、前記経路最適化処理において、前記干渉物情報が示す前記干渉物の位置に基づいて、前記軌道情報における経路に含まれる点の位置を変更する、軌道計画装置。 The trajectory planning device according to claim 1,
The memory holds interference object information indicating the position of the interference object,
A trajectory planning device, wherein, in the route optimization process, the processor changes the position of a point included in the route in the trajectory information based on the position of the interference object indicated by the interference object information.
表示装置に接続され、
前記プロセッサは、前記時刻付与処理と前記経路最適化処理とが実行された後の前記軌道情報における軌道を前記可動軸が移動する場合において前記把持物にかかる把持力及び/又はモーメントの時間変化を示す情報を、前記表示装置に表示する、軌道計画装置。 The trajectory planning device according to claim 1,
connected to a display device,
The processor is configured to calculate temporal changes in gripping force and/or moment applied to the gripped object when the movable axis moves along a trajectory in the trajectory information after the time assigning process and the route optimization process are executed. A trajectory planning device that displays information on the display device.
前記軌道計画装置は、プロセッサとメモリとを有し、
前記メモリは、
前記把持物の重量及び重心位置を示す把持物情報と、
前記把持物にかかる把持力及びモーメントの制約を示す制約情報と、
前記軌道における経路の各点の位置を示す軌道情報と、を保持し、
前記軌道計画方法は、
前記プロセッサが、
前記把持物情報が示す前記重量及び前記重心位置に基づいて、前記制約情報が示す前記把持力及び前記モーメントの制約を満たすように、前記軌道情報が示す経路の各点を前記可動軸が通過する時刻を付与して、前記付与した時刻を前記軌道情報に格納する時刻付与処理と、
前記把持物情報が示す前記重量及び前記重心位置に基づいて、前記把持物にかかる把持力及び/又はモーメントを低下させるよう、前記軌道情報における経路に含まれる点の位置を変更する経路最適化処理と、を実行する軌道計画方法。 A trajectory planning method using a trajectory planning device for planning a trajectory of a movable axis of a robot arm having a movable axis and grasping an object, the method comprising:
The trajectory planning device has a processor and a memory,
The memory is
gripped object information indicating the weight and center of gravity of the gripped object;
constraint information indicating constraints on the gripping force and moment applied to the gripped object;
and trajectory information indicating the position of each point on the route on the trajectory,
The trajectory planning method includes:
The processor,
Based on the weight and the center of gravity position indicated by the grasped object information, the movable axis passes through each point on the path indicated by the trajectory information so as to satisfy the constraints of the grasping force and the moment indicated by the constraint information. a time assignment process of assigning a time and storing the assigned time in the orbit information;
Route optimization processing for changing the positions of points included in the route in the trajectory information so as to reduce the gripping force and/or moment applied to the grasped object, based on the weight and the center of gravity position indicated by the grasped object information. and a trajectory planning method for executing.
前記プロセッサが、前記時刻付与処理と、前記経路最適化処理と、を交互に繰り返して実行し、
前記プロセッサが、前記時刻付与処理の直後に、前記軌道の経路又は当該経路の各点に付与された時刻と、前回の時刻付与処理の直後の前記軌道の経路又は当該経路の各点に付与された時刻と、の変化量に基づいて、前記時刻付与処理と、前記経路最適化処理と、を終了する、軌道計画方法。 The trajectory planning method according to claim 7,
the processor alternately and repeatedly executes the time assigning process and the route optimization process;
Immediately after the time assignment process, the processor includes a time assigned to the route of the trajectory or each point on the route, and a time assigned to the route of the trajectory or each point on the route immediately after the previous time assignment process. A trajectory planning method, wherein the time assigning process and the route optimization process are terminated based on the amount of change in the time.
前記メモリは、前記可動軸の角速度及び角加速度の制約を示すロボットアーム情報を保持し、
前記軌道計画方法は、前記プロセッサが、前記時刻付与処理において、前記ロボットアーム情報が示す前記角速度及び前記角加速度の制約を満たすように、前記軌道情報が示す経路の各点を前記可動軸が通過する時刻を付与する、軌道計画方法。 The trajectory planning method according to claim 7,
the memory holds robot arm information indicating constraints on angular velocity and angular acceleration of the movable axis;
In the trajectory planning method, the processor, in the time assigning process, causes the movable axis to pass through each point on the path indicated by the trajectory information so as to satisfy the constraints of the angular velocity and the angular acceleration indicated by the robot arm information. A trajectory planning method that assigns a time.
前記プロセッサが、前記経路最適化処理において、前記軌道情報が示す経路が滑らかになるよう前記軌道情報における経路に含まれる点の位置を変更する、軌道計画方法。 The trajectory planning method according to claim 7,
A trajectory planning method, wherein the processor changes the positions of points included in the route in the trajectory information so that the route indicated by the trajectory information becomes smooth in the route optimization process.
前記メモリは、干渉物の位置を示す干渉物情報を保持し、
前記軌道計画方法は、前記プロセッサが、前記経路最適化処理において、前記干渉物情報が示す前記干渉物の位置に基づいて、前記軌道情報における経路に含まれる点の位置を変更する、軌道計画方法。 The trajectory planning method according to claim 7,
The memory holds interference object information indicating the position of the interference object,
In the trajectory planning method, the processor changes the position of a point included in the route in the trajectory information based on the position of the interferer indicated by the interferer information in the route optimization process. .
前記軌道計画装置は、表示装置に接続され、
前記軌道計画方法は、前記プロセッサが、前記時刻付与処理と前記経路最適化処理とが実行された後の前記軌道情報における軌道を前記可動軸が移動する場合において前記把持物にかかる把持力及び/又はモーメントの時間変化を示す情報を、前記表示装置に表示する、軌道計画方法。 The trajectory planning method according to claim 7,
The trajectory planning device is connected to a display device,
In the trajectory planning method, the processor calculates the gripping force and/or Or a trajectory planning method, in which information indicating a temporal change in moment is displayed on the display device.
前記軌道計画装置は、プロセッサとメモリとを有し、
前記メモリは、
前記把持物の重量及び重心位置を示す把持物情報と、
前記把持物にかかる把持力及びモーメントの制約を示す制約情報と、
前記軌道における経路の各点の位置を示す軌道情報と、を保持し、
前記軌道計画プログラムは、
前記把持物情報が示す前記重量及び前記重心位置に基づいて、前記制約情報が示す前記把持力及び前記モーメントの制約を満たすように、前記軌道情報が示す経路の各点を前記可動軸が通過する時刻を付与して、前記付与した時刻を前記軌道情報に格納する時刻付与処理と、
前記把持物情報が示す前記重量及び前記重心位置に基づいて、前記把持物にかかる把持力及び/又はモーメントを低下させるよう、前記軌道情報における経路に含まれる点の位置を変更する経路最適化処理と、を前記プロセッサに実行させる軌道計画プログラム。 A trajectory planning program that causes a trajectory planning device to plan a trajectory along which a movable axis of a robot arm that grasps an object has a movable axis, the program comprising:
The trajectory planning device has a processor and a memory,
The memory is
gripped object information indicating the weight and center of gravity of the gripped object;
constraint information indicating constraints on the gripping force and moment applied to the gripped object;
and trajectory information indicating the position of each point on the route on the trajectory,
The trajectory planning program is
Based on the weight and the center of gravity position indicated by the grasped object information, the movable axis passes through each point on the path indicated by the trajectory information so as to satisfy the constraints of the grasping force and the moment indicated by the constraint information. a time assignment process of assigning a time and storing the assigned time in the orbit information;
Route optimization processing for changing the positions of points included in the route in the trajectory information so as to reduce the gripping force and/or moment applied to the grasped object, based on the weight and the center of gravity position indicated by the grasped object information. and a trajectory planning program that causes the processor to execute the following.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020195708A JP7405730B2 (en) | 2020-11-26 | 2020-11-26 | Trajectory planning device, trajectory planning method, and trajectory planning program |
PCT/JP2021/037231 WO2022113538A1 (en) | 2020-11-26 | 2021-10-07 | Trajectory planning device, trajectory planning method, and non-temporary recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020195708A JP7405730B2 (en) | 2020-11-26 | 2020-11-26 | Trajectory planning device, trajectory planning method, and trajectory planning program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022084092A JP2022084092A (en) | 2022-06-07 |
JP7405730B2 true JP7405730B2 (en) | 2023-12-26 |
Family
ID=81755778
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020195708A Active JP7405730B2 (en) | 2020-11-26 | 2020-11-26 | Trajectory planning device, trajectory planning method, and trajectory planning program |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP7405730B2 (en) |
WO (1) | WO2022113538A1 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040265110A1 (en) | 2002-05-28 | 2004-12-30 | Bernd Schnoor | Method and apparatus for moving a handling system |
JP2019141939A (en) | 2018-02-19 | 2019-08-29 | オムロン株式会社 | Simulation device, simulation method and simulation program |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3442221B2 (en) * | 1996-05-21 | 2003-09-02 | 株式会社リコー | Robot control method |
JP7145700B2 (en) * | 2018-09-06 | 2022-10-03 | 株式会社東芝 | hand control device |
US10369701B1 (en) * | 2018-10-30 | 2019-08-06 | Mujin, Inc. | Automated package registration systems, devices, and methods |
JP2021091013A (en) * | 2019-12-06 | 2021-06-17 | キヤノン株式会社 | Control device, robot device, simulation device, control method, simulation method, article manufacturing method, program, and recording medium |
-
2020
- 2020-11-26 JP JP2020195708A patent/JP7405730B2/en active Active
-
2021
- 2021-10-07 WO PCT/JP2021/037231 patent/WO2022113538A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040265110A1 (en) | 2002-05-28 | 2004-12-30 | Bernd Schnoor | Method and apparatus for moving a handling system |
JP2019141939A (en) | 2018-02-19 | 2019-08-29 | オムロン株式会社 | Simulation device, simulation method and simulation program |
Also Published As
Publication number | Publication date |
---|---|
JP2022084092A (en) | 2022-06-07 |
WO2022113538A1 (en) | 2022-06-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9811074B1 (en) | Optimization of robot control programs in physics-based simulated environment | |
JP6036662B2 (en) | Robot simulation apparatus, program, recording medium and method | |
US11090807B2 (en) | Motion generation method, motion generation device, system, and computer program | |
Cruciani et al. | Benchmarking in-hand manipulation | |
JP7459372B2 (en) | Apparatus and method for planning contact interaction trajectories - Patents.com | |
WO2019167765A1 (en) | Simulation device, method, and program | |
Tian et al. | Realtime hand-object interaction using learned grasp space for virtual environments | |
JP2009099082A (en) | Dynamics simulation device, dynamics simulation method, and computer program | |
WO2020075423A1 (en) | Robot control device, robot control method and robot control program | |
CN114641375A (en) | Dynamic programming controller | |
JP2019171501A (en) | Robot interference determination device, robot interference determination method and program | |
JP2019152971A (en) | Simulation device, simulation method and simulation program | |
JP2021146434A (en) | Handling device, control device and program | |
JP7405730B2 (en) | Trajectory planning device, trajectory planning method, and trajectory planning program | |
CN112236272B (en) | Gripping posture evaluation device and gripping posture evaluation program | |
JP2017202549A (en) | Robot control device, robot, and robot system | |
JP5404516B2 (en) | Neighborhood determination method and system in computer-aided engineering analysis | |
JP7263217B2 (en) | CONTROL DEVICE, CONTROL METHOD, AND ROBOT SYSTEM | |
WO2018180300A1 (en) | Robot task management system and robot task management program | |
Badrikouhi et al. | Smooth trajectory planning based on direct collocation method for cable-driven parallel robots with central spine | |
US20230256596A1 (en) | Information processing device, method, and program | |
US20230202026A1 (en) | Robot Training System | |
WO2024134801A1 (en) | Processing device, control device, simulation system, processing method, control method, and recording medium | |
WO2023199456A1 (en) | Control device, robot system, control method, and recording medium | |
WO2023137272A1 (en) | Computationally generated grippers |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230519 |
|
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: 20231205 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20231214 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7405730 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |