JP2020062740A - Control device, working robot, program and control method - Google Patents

Control device, working robot, program and control method Download PDF

Info

Publication number
JP2020062740A
JP2020062740A JP2019026456A JP2019026456A JP2020062740A JP 2020062740 A JP2020062740 A JP 2020062740A JP 2019026456 A JP2019026456 A JP 2019026456A JP 2019026456 A JP2019026456 A JP 2019026456A JP 2020062740 A JP2020062740 A JP 2020062740A
Authority
JP
Japan
Prior art keywords
trajectory
unit
work
information
manipulator
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
JP2019026456A
Other languages
Japanese (ja)
Other versions
JP6577686B1 (en
Inventor
ロセン デアンコウ
Diankov ROSEN
ロセン デアンコウ
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.)
Mujin Inc
Original Assignee
Mujin Inc
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 Mujin Inc filed Critical Mujin Inc
Priority to JP2019026456A priority Critical patent/JP6577686B1/en
Application granted granted Critical
Publication of JP6577686B1 publication Critical patent/JP6577686B1/en
Publication of JP2020062740A publication Critical patent/JP2020062740A/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

To provide a control device that can plan in a practical computation time a locus on which a manipulator can smoothly move between two work points even if there are comparatively many work points or target points, a working robot, a program and a control method.SOLUTION: The control device, which control operation of a working robot that executes work inside a target area using a manipulator, comprises: a locus information acquisition part that acquires N-1 or N locus information that shows N-1 or N loci respectively through which N work areas where the working robot executes a series of work are connected in order of the series of work: a classification part that classifies the N-1 or the N loci into (1) loci required to be corrected and (2) loci not required to be corrected; and a locus planning part that plans a locus for a tip of the manipulator between two work areas related to each locus, for each of one or more loci classified by the classification part into the loci required to be corrected.SELECTED DRAWING: Figure 8

Description

本発明は、制御装置、作業ロボット、プログラム、及び、制御方法に関する。   The present invention relates to a control device, a work robot, a program, and a control method.

マニピュレータを利用して、容器に収納されたワークを取り出し、当該ワークを他の容器内の特定の位置に配置するピッキングシステムが知られている(例えば、特許文献1〜3を参照されたい)。また、マニピュレータを利用して、各種の作業を実行する産業用ロボットが知られている。
[先行技術文献]
[特許文献]
[特許文献1] 特開2016−091053号公報
[特許文献2] 特開2016−147330号公報
[特許文献3] 特開2017−033429号公報
There is known a picking system that uses a manipulator to take out a work stored in a container and dispose the work at a specific position in another container (see, for example, Patent Documents 1 to 3). In addition, an industrial robot that performs various tasks using a manipulator is known.
[Prior Art Document]
[Patent Document]
[Patent Document 1] JP 2016-091053 A [Patent Document 2] JP 2016-147330 A [Patent Document 3] JP 2017-033429 A

ピッキングシステムがピッキング作業を実行する場合、作業点又は目標点は2個程度であり、ピッキングシステムは、マニピュレータが2つの作業点の間を滑らかに移動する軌道を計画することができる。一方、産業用ロボットが各種の作業を実行する場合、作業点又は目標点の数が比較的多く、マニピュレータが2つの作業点の間を滑らかに移動する軌道を、実用的な計算時間の範囲内で計画することが難しい。   When the picking system performs the picking work, there are about two work points or target points, and the picking system can plan a trajectory along which the manipulator smoothly moves between the two work points. On the other hand, when the industrial robot performs various tasks, the manipulator has a relatively large number of work points or target points, and the manipulator smoothly moves between the two work points within a practical calculation time range. Difficult to plan in.

本発明の第1の態様においては、制御装置が提供される。上記の制御装置は、例えば、作業ロボットの動作を制御する制御装置である。上記の作業ロボットは、例えば、マニピュレータを用いて対象領域の内部で作業を実行する。上記の制御装置は、例えば、(i)対象領域の内部に配置された1以上の物体の少なくとも1つに関する情報であって、少なくとも1つの物体の位置、姿勢、形状及び大きさの少なくとも1つに関する変更の発生を示す第1変更情報、及び、(ii)対象領域の内部に新たな物体が配置されることを示す第2変更情報の少なくとも一方を取得する変更情報取得部を備える。上記の制御装置は、例えば、(i)変更が生じた後の1以上の物体のぞれぞれの位置、姿勢、形状及び大きさを示す第1モデル情報、及び、(ii)新たな物体の位置、姿勢、形状及び大きさを示す第2モデル情報の少なくとも一方を取得するモデル情報取得部を備える。上記の制御装置は、例えば、作業ロボットが一連の作業を実行するN個の作業領域を、一連の作業の順番に結ぶN−1個又はN個の軌道のそれぞれを示す、N−1個又はN個の軌道情報を取得する軌道情報取得部を備える。上記の制御装置は、例えば、N−1個又はN個の軌道を、(i)第1変更情報及び第2変更情報の少なくとも一方により示される対象領域の内部の変更に応じて、修正が必要となる軌道、及び、(ii)第1変更情報及び第2変更情報の少なくとも一方により示される対象領域の内部の変更が生じても、修正が必要ではない軌道に分類する分類部を備える。上記の制御装置は、例えば、分類部が、修正が必要となる軌道に分類した1以上の軌道のそれぞれについて、第1モデル情報及び第2モデル情報の少なくとも一方に基づいて、各軌道に関連する2個の作業領域の間におけるマニピュレータの先端の軌道を計画する軌道計画部を備える。上記の制御装置において、Nは、2以上の整数であってよい。   In a first aspect of the invention, a controller is provided. The above control device is, for example, a control device that controls the operation of the work robot. The work robot described above executes a work inside a target area using, for example, a manipulator. The control device is, for example, (i) information on at least one of the one or more objects arranged inside the target region, and at least one of the position, orientation, shape, and size of the at least one object. A change information acquisition unit that acquires at least one of first change information indicating that a change has occurred and (ii) second change information indicating that a new object is placed inside the target area. For example, the control device may include (i) first model information indicating the position, orientation, shape, and size of each of the one or more objects after the change, and (ii) the new object. A model information acquisition unit that acquires at least one of the second model information indicating the position, orientation, shape, and size of the. The control device may be, for example, N-1 or N-1 or N-1 orbits that connect N work areas in which a work robot executes a series of work in order of a series of work. A trajectory information acquisition unit for acquiring N pieces of trajectory information is provided. The above-mentioned control device needs to correct N-1 or N trajectories, for example, in accordance with an internal change of the target area indicated by (i) at least one of the first change information and the second change information. And (ii) a classification unit that classifies into a trajectory that does not need to be corrected even if the inside of the target area indicated by at least one of the first change information and the second change information occurs. In the control device, for example, each of the one or more orbits classified by the classification unit into the orbits that need to be corrected is associated with each orbit based on at least one of the first model information and the second model information. A trajectory planning unit for planning the trajectory of the tip of the manipulator between the two work areas is provided. In the above control device, N may be an integer of 2 or more.

上記の制御装置は、(i)軌道計画部が計画した修正が必要となる軌道における、マニピュレータの先端の位置及び姿勢を示す情報と、(ii)軌道情報取得部が取得した修正が必要ではない軌道における、マニピュレータの先端の位置及び姿勢を示す情報とに基づいて、一連の作業を通したマニピュレータの先端の軌道を決定する軌道決定部を備えてよい。上記の制御装置は、軌道決定部が決定した軌道に基づいて、マニピュレータの動作を制御するための制御情報を出力する出力部を備えてよい。   The control device described above does not require (i) information indicating the position and orientation of the tip of the manipulator in the trajectory planned by the trajectory planning unit and requiring correction, and (ii) the correction acquired by the trajectory information acquisition unit. A trajectory determiner may be provided that determines the trajectory of the tip of the manipulator through a series of operations based on the information indicating the position and orientation of the tip of the manipulator in the trajectory. The control device may include an output unit that outputs control information for controlling the operation of the manipulator based on the trajectory determined by the trajectory determination unit.

上記の制御装置において、分類部は、(i)マニピュレータの大きさを拡大したモデル又は(ii)マニピュレータよりも大きく、マニピュレータよりも単純な形状を有するモデルである、第1拡大モデルを生成する第1拡大モデル生成部を有してよい。上記の制御装置において、分類部は、(a)N−1個又はN個の軌道のそれぞれについて、各軌道上のM個の地点において、(i)第1モデル情報及び第2モデル情報の少なくとも一方により示される各物体のモデル、並びに、(ii)第1拡大モデルの衝突の有無を判定し、(b)M個の地点の少なくとも1つの地点において、(i)各物体のモデル及び(ii)第1拡大モデルが衝突すると判定された軌道を、修正が必要となる軌道であると判定する、判定部を有してよい。上記の制御装置において、Mは、1以上の整数であってよい。   In the above control device, the classification unit generates the first enlarged model, which is (i) a model in which the size of the manipulator is enlarged or (ii) a model larger than the manipulator and having a simpler shape than the manipulator. A 1-extended model generation unit may be included. In the above control device, the classification unit (a) for each of the N-1 or N orbits, at (i) at least the first model information and the second model information at M points on each orbit. The model of each object represented by one side, and (ii) the presence or absence of collision of the first enlarged model is determined, and (b) at least one of the M points, (i) the model of each object and (ii) ) A determination unit that determines a trajectory determined to collide with the first enlarged model as a trajectory that needs to be corrected may be included. In the above control device, M may be an integer of 1 or more.

上記の制御装置は、(i)第1モデル情報及び第2モデル情報の少なくとも一方により示される各物体の大きさを拡大したモデル又は(ii)各物体よりも大きく、各物体よりも単純な形状を有するモデルである、第2拡大モデルを生成する第2拡大モデル生成部を備えてよい。上記の制御装置において、判定部は、(a)N−1個又はN個の軌道のそれぞれについて、各軌道上のM個の地点において、(i)第2拡大モデル及び(ii)第1拡大モデルの衝突の有無を判定し、(b)M個の地点の少なくとも1つの地点において、(i)第2拡大モデル及び(ii)第1拡大モデルが衝突すると判定された軌道を、修正が必要となる軌道であると判定する。   The control device described above includes (i) a model in which the size of each object indicated by at least one of the first model information and the second model information is enlarged, or (ii) a shape larger than each object and simpler than each object. A second expansion model generation unit that generates a second expansion model, which is a model having In the above control device, the determination unit (a) for each of the N-1 or N orbits at the M points on each orbit, (i) the second expansion model and (ii) the first expansion. It is necessary to correct the trajectory determined to collide with (i) the second expansion model and (ii) the first expansion model at at least one of the M points at (b) the presence or absence of collision of the model. It is determined that the trajectory is

上記の制御装置において、分類部は、(i)第1モデル情報及び第2モデル情報の少なくとも一方により示される各物体の大きさを拡大したモデル又は(ii)各物体よりも大きく、各物体よりも単純な形状を有するモデルである、第2拡大モデルを生成する第2拡大モデル生成部を有してよい。上記の制御装置において、分類部は、(a)N−1個又はN個の軌道のそれぞれについて、各軌道上のM個の地点において、(i)マニピュレータのモデル及び(ii)第2拡大モデルの衝突の有無を判定し、(b)M個の地点の少なくとも1つの地点において、(i)マニピュレータのモデル及び(ii)第2拡大モデルが衝突すると判定された軌道を、修正が必要となる軌道であると判定する、判定部を有してよい。上記の制御装置において、Mは、1以上の整数であってよい。   In the above control device, the classification unit includes (i) a model obtained by enlarging the size of each object represented by at least one of the first model information and the second model information, or (ii) larger than each object and larger than each object. May have a second expansion model generation unit that generates a second expansion model, which is a model having a simple shape. In the above control device, the classification unit (a) for each of the N-1 or N orbits, at the M points on each orbit, (i) the model of the manipulator and (ii) the second enlarged model. It is necessary to correct the trajectory determined to collide with (b) the manipulator model and (ii) the second enlarged model at least at one of the M points. A determination unit that determines that the trajectory is a trajectory may be included. In the above control device, M may be an integer of 1 or more.

上記の制御装置において、分類部は、マニピュレータの大きさ、及び、拡大モデルの大きさの少なくとも一方に基づいて、Mの値を決定する精度決定部を有してよい。上記の制御装置において、分類部は、関節空間におけるマニピュレータの動作と、現実空間におけるマニピュレータの動作との対応関係に基づいて、Mの値を決定する精度決定部を有してよい。   In the above control device, the classification unit may include an accuracy determination unit that determines the value of M based on at least one of the size of the manipulator and the size of the enlarged model. In the above control device, the classification unit may include an accuracy determination unit that determines the value of M based on the correspondence between the operation of the manipulator in the joint space and the operation of the manipulator in the real space.

本発明の第2の態様においては、作業ロボットが提供される。上記の作業ロボットは、例えば、上記の制御装置を備える。上記の作業ロボットは、例えば、マニピュレータを備える。   In a second aspect of the present invention, a work robot is provided. The work robot described above includes, for example, the control device described above. The work robot described above includes, for example, a manipulator.

上記の作業ロボットは、マニピュレータの動作を制御する制御部を備えてよい。上記の作業ロボットにおいて、制御装置は、マニピュレータの動作を制御するための制御情報を出力してよい。上記の作業ロボットにおいて、制御部は、制御装置が出力した制御情報に基づいて、マニピュレータの動作を制御してよい。   The work robot may include a control unit that controls the operation of the manipulator. In the above work robot, the control device may output control information for controlling the operation of the manipulator. In the above work robot, the control unit may control the operation of the manipulator based on the control information output by the control device.

本発明の第3の態様においては、制御方法が提供される。上記の制御方法は、例えば、作業ロボットの動作を制御する制御方法である。上記の作業ロボットは、例えば、マニピュレータを用いて対象領域の内部で作業を実行する。上記の制御方法は、例えば、(i)対象領域の内部に配置された1以上の物体の少なくとも1つに関する情報であって、少なくとも1つの物体の位置、姿勢、形状及び大きさの少なくとも1つに関する変更の発生を示す第1変更情報、及び、(ii)対象領域の内部に新たな物体が配置されることを示す第2変更情報の少なくとも一方を取得する変更情報取得段階を有する。上記の制御方法は、例えば、(i)変更が生じた後の1以上の物体のぞれぞれの位置、姿勢、形状及び大きさを示す第1モデル情報、及び、(ii)新たな物体の位置、姿勢、形状及び大きさを示す第2モデル情報の少なくとも一方を取得するモデル情報取得段階を有する。上記の制御方法は、例えば、作業ロボットが一連の作業を実行するN個の作業領域を、一連の作業の順番に結ぶN−1個又はN個の軌道のそれぞれを示す、N−1個又はN個の軌道情報を取得する軌道情報取得段階を有する。上記の制御方法は、例えば、N−1個又はN個の軌道を、(i)第1変更情報及び第2変更情報の少なくとも一方により示される対象領域の内部の変更に応じて、修正が必要となる軌道、及び、(ii)第1変更情報及び第2変更情報の少なくとも一方により示される対象領域の内部の変更が生じても、修正が必要ではない軌道に分類する分類段階を有する。上記の制御方法は、例えば、分類段階において修正が必要となる軌道に分類された1以上の軌道のそれぞれについて、第1モデル情報及び第2モデル情報の少なくとも一方に基づいて、各軌道に関連する2個の作業領域の間におけるマニピュレータの先端の軌道を計画する軌道計画段階を有する。上記の制御方法において、Nは、2以上の整数であってよい。   In a third aspect of the invention, a control method is provided. The above control method is, for example, a control method for controlling the operation of the work robot. The work robot described above executes a work inside a target area using, for example, a manipulator. The above control method is, for example, (i) information about at least one of one or more objects arranged inside the target region, and at least one of the position, orientation, shape, and size of at least one object. Change information acquisition step of acquiring at least one of first change information indicating that a change has occurred and (ii) second change information indicating that a new object is placed inside the target area. The above control method includes, for example, (i) first model information indicating the position, orientation, shape and size of each of the one or more objects after the change, and (ii) the new object. Model information acquisition step of acquiring at least one of the second model information indicating the position, orientation, shape, and size of the. The control method described above is, for example, N-1 or N-1 or N-1 orbits, which indicate N-1 or N trajectories connecting the N work areas in which the work robot executes a series of work in the order of the series of work. There is a trajectory information acquisition step of acquiring N orbit information. In the above control method, for example, N−1 or N orbits need to be corrected according to the change inside the target area indicated by (i) at least one of the first change information and the second change information. And (ii) a classification step of classifying into a trajectory that does not need to be corrected even if the inside of the target area indicated by at least one of the first change information and the second change information occurs. The above control method relates to each trajectory based on at least one of the first model information and the second model information, for example, for each of one or more trajectories classified into trajectories that need to be corrected in the classification step. There is a trajectory planning stage for planning the trajectory of the manipulator tip between two work areas. In the above control method, N may be an integer of 2 or more.

本発明の第4の態様においては、プログラムが提供される。上記のプログラムを格納する非一時的コンピュータ可読媒体が提供されてもよい。上記のプログラムは、コンピュータを、上記の制御装置として機能させるためのプログラムであってよい。上記のプログラムは、コンピュータに、上記の制御方法を実行させるためのプログラムであってよい。   In a fourth aspect of the present invention, a program is provided. A non-transitory computer-readable medium storing the above program may be provided. The above program may be a program for causing a computer to function as the above control device. The above program may be a program for causing a computer to execute the above control method.

なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。   Note that the above summary of the invention does not enumerate all the necessary features of the invention. Further, a sub-combination of these feature groups can also be an invention.

作業システム100のシステム構成の一例を概略的に示す。1 schematically shows an example of a system configuration of a work system 100. 実行装置120のシステム構成の一例を概略的に示す。1 schematically shows an example of a system configuration of the execution device 120. 全体軌道340の一例を概略的に示す。An example of the overall trajectory 340 is schematically shown. 全体軌道340の一例を概略的に示す。An example of the overall trajectory 340 is schematically shown. 全体軌道340の一例を概略的に示す。An example of the overall trajectory 340 is schematically shown. 管理装置140のシステム構成の一例を概略的に示す。1 schematically shows an example of a system configuration of the management device 140. システム管理部640の内部構成の一例を概略的に示す。1 schematically shows an example of the internal configuration of the system management unit 640. 調整部730の内部構成の一例を概略的に示す。An example of the internal configuration of the adjusting unit 730 is schematically shown.

以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。なお、図面において、同一または類似の部分には同一の参照番号を付して、重複する説明を省く場合がある。   Hereinafter, the present invention will be described through embodiments of the invention, but the following embodiments do not limit the invention according to the claims. In addition, not all of the combinations of features described in the embodiments are essential to the solving means of the invention. In the drawings, the same or similar parts may be denoted by the same reference numerals, and redundant description may be omitted.

[作業システム100の概要]
図1は、作業システム100のシステム構成の一例を概略的に示す。本実施形態において、作業システム100は、1以上の実行装置120と、管理装置140とを備える。作業システム100は、1以上の入力端末160を備えてもよい。作業システム100の各部は、通信ネットワーク10を介して、互いに情報を送受してよい。本願明細書において、「1以上」という用語は、「1又は複数」を意味する。
[Outline of Work System 100]
FIG. 1 schematically shows an example of the system configuration of the work system 100. In the present embodiment, the work system 100 includes one or more execution devices 120 and a management device 140. The work system 100 may include one or more input terminals 160. The units of the work system 100 may send and receive information to and from each other via the communication network 10. As used herein, the term “one or more” means “one or more”.

実行装置120は、作業ロボットの一例であってよい。管理装置140は、制御装置の一例であってよい。   The execution device 120 may be an example of a work robot. The management device 140 may be an example of a control device.

本実施形態において、通信ネットワーク10は、有線通信の伝送路であってもよく、無線通信の伝送路であってもよく、無線通信の伝送路及び有線通信の伝送路の組み合わせであってもよい。通信ネットワーク10は、無線パケット通信網、インターネット、P2Pネットワーク、専用回線、VPN、電力線通信回線などを含んでもよい。通信ネットワーク10は、(i)携帯電話回線網などの移動体通信網を含んでもよく、(ii)無線MAN(例えば、WiMAX(登録商標)である。)、無線LAN(例えば、WiFi(登録商標)である。)、Bluetooth(登録商標)、Zigbee(登録商標)、NFC(Near Field Communication)などの無線通信網を含んでもよい。   In the present embodiment, the communication network 10 may be a wired communication transmission path, a wireless communication transmission path, or a combination of a wireless communication transmission path and a wired communication transmission path. . The communication network 10 may include a wireless packet communication network, the Internet, a P2P network, a dedicated line, a VPN, a power line communication line, or the like. The communication network 10 may include (i) a mobile communication network such as a mobile phone network, (ii) a wireless MAN (for example, WiMAX (registered trademark)), a wireless LAN (for example, WiFi (registered trademark)). ), Bluetooth (registered trademark), Zigbee (registered trademark), NFC (Near Field Communication), and other wireless communication networks may be included.

本実施形態において、実行装置120は、各種の作業を実行する。実行装置120は、マニピュレータを用いて各種の作業を実行するロボットを備えてよい。上記のロボットは、センサ、駆動系、及び、制御系を有する機械システムであってよい。上記のロボットは、物品を製造する産業用ロボットであってよい。作業の種類としては、ピッキング作業、穿孔作業、切断作業、旋盤作業、溶接作業、組立作業、塗装作業などが例示される。実行装置120の詳細は後述される。   In the present embodiment, the execution device 120 executes various kinds of work. The execution device 120 may include a robot that executes various tasks using a manipulator. The robot described above may be a mechanical system having a sensor, a drive system, and a control system. The robot described above may be an industrial robot that manufactures articles. Examples of types of work include picking work, punching work, cutting work, lathe work, welding work, assembly work, painting work, and the like. Details of the execution device 120 will be described later.

本実施形態において、管理装置140は、実行装置120を管理する。例えば、管理装置140は、実行装置120の動作を制御する。管理装置140は、実行装置120の動作を制御するためのパラメータ(制御パラメータと称される場合がある。)を決定することで、実行装置120の動作を制御してよい。管理装置140は、実行装置120の動作を制御するための各種の設定情報を管理してよい。   In this embodiment, the management device 140 manages the execution device 120. For example, the management device 140 controls the operation of the execution device 120. The management device 140 may control the operation of the execution device 120 by determining a parameter (may be referred to as a control parameter) for controlling the operation of the execution device 120. The management device 140 may manage various setting information for controlling the operation of the execution device 120.

ここで、実行装置120のロボットは、プログラムによって自動制御され、作業の対象となる物品(作業対象と称される場合がある)の指定された領域(作業領域と称される場合がある)において、指定された作業を実行する。単一の物品に複数の作業領域が指定される場合、ロボットは、複数の作業領域の間を順番に移動しながら、各作業領域において指定された作業を実行する。   Here, the robot of the execution device 120 is automatically controlled by a program and operates in a designated area (may be referred to as a work area) of an article to be operated (sometimes referred to as a work target). , Perform the specified task. When a plurality of work areas are designated for a single article, the robot executes the designated work in each work area while moving in sequence between the plurality of work areas.

実行装置120の作業効率を向上させることを目的として、作業の種類ごとに、ロボットの動作が詳細にプログラミングされる場合がある。また、同一種類の作業に関して、物品の種類ごとに、ロボットの動作が詳細にプログラミングされる場合がある。これらの作業は、ティーチング作業と称される場合がある。   For the purpose of improving the work efficiency of the execution device 120, the operation of the robot may be programmed in detail for each work type. In addition, for the same type of work, the operation of the robot may be programmed in detail for each type of article. These operations are sometimes called teaching operations.

例えば、2つの作業領域の間を移動する場合において、ロボットが、他の物体に干渉することを防止することを目的として、撮像装置がロボットの移動軌道の周辺を撮像し、ロボットが、当該撮像装置からの画像データを解析しながら、当該2つの作業領域の間を移動することが考えられる。しかしながら、この場合、画像処理が実行されている間、実行装置120は、移動を停止したり、移動速度を低下させたりすることになる。その結果、実行装置120の作業速度が低下し、製品のスループットが低下する。   For example, when the robot moves between two work areas, the imaging device images the periphery of the movement trajectory of the robot, and the robot captures the image in order to prevent the robot from interfering with another object. It is conceivable to move between the two work areas while analyzing the image data from the device. However, in this case, the execution device 120 may stop moving or reduce the moving speed while the image processing is being executed. As a result, the work speed of the execution device 120 decreases, and the product throughput decreases.

一方、特定の種類の物品に対して特定の種類の作業が実行される前に、実行装置120に対するティーチング作業が実行されることで、実行装置120は、ロボットの移動軌道の周辺が撮像された画像を解析することなく、2つの作業領域の間を移動することができる。これにより、実行装置120の作業効率が向上する。なお、実行装置120は、作業領域を観察するための作業用のカメラを備えてもよい。また、作業効率に及ぼす影響が軽微な範囲で、実行装置120の動作を決定する際に、ロボットの移動軌道の周辺が撮像された画像の解析処理が実行されてもよい。   On the other hand, by performing the teaching work on the execution device 120 before the specific type of work is performed on the specific type of article, the execution device 120 is imaged around the movement trajectory of the robot. It is possible to move between two work areas without analyzing the image. This improves the work efficiency of the execution device 120. The execution device 120 may include a work camera for observing the work area. Further, when determining the operation of the execution device 120, the analysis processing of the image of the periphery of the movement trajectory of the robot may be executed within a range in which the influence on the work efficiency is slight.

ティーチングにおいては、まず、仮想的な3次元空間に干渉判定用のシミュレーションモデルが構築される。そして、構築されたシミュレーションモデルを用いて、ロボットが他の物体と干渉することなく一連の作業を実行するように、ロボットの動作がプログラミングされる。次に、現実のロボットを用いた試験及び微調整が繰り返されて、ロボットの動作が精密にプログラミングされる。このように、ティーチング作業には多大な労力と時間が要求される。そのため、ティーチング作業の負担を軽減することが望まれている。   In teaching, first, a simulation model for interference determination is constructed in a virtual three-dimensional space. Then, using the constructed simulation model, the operation of the robot is programmed so that the robot performs a series of tasks without interfering with other objects. Then, the test and the fine adjustment using the real robot are repeated to precisely program the motion of the robot. Thus, teaching work requires a great deal of labor and time. Therefore, it is desired to reduce the burden of teaching work.

本実施形態によれば、実行装置120の構造に変更が生じた場合、実行装置120の設定に変更が生じた場合、実行装置120の対象物品が変更された場合、又は、実行装置120の周辺環境に変更が生じた場合に、管理装置140は、ロボットが他の物体と干渉することなく一連の作業を実行するように、ロボットの動作を計画する。管理装置140は、例えば、逆運動学的手法及び逆動力学的手法を用いて、ロボットのマニピュレータの軌道を計画する。   According to this embodiment, the structure of the execution device 120 is changed, the setting of the execution device 120 is changed, the target article of the execution device 120 is changed, or the periphery of the execution device 120. When a change occurs in the environment, the management device 140 plans the operation of the robot so that the robot performs a series of tasks without interfering with other objects. The management device 140 plans the trajectory of the manipulator of the robot using, for example, the inverse kinematics method and the inverse dynamics method.

しかしながら、ロボットの動作を計画するには、膨大な計算量が要求され、計算時間が長くなる可能性がある。そこで、本実施形態によれば、管理装置140は、マニピュレータの軌道のうち、上記の変更に伴い、精緻な計算が要求される領域を絞り込む。これにより、ロボットの動作を計画するための計算量が削減され、計算時間が短縮される。その結果、実行装置120のユーザが、各種の変更の内容を管理装置140に入力すると、管理装置140は、実用的な時間内に、当該変更の内容が反映されたマニピュレータの軌道を出力する。このように、本実施形態によれば、ティーチング作業の負担が大幅に削減される。管理装置140の詳細は後述される。   However, a huge amount of calculation is required to plan the movement of the robot, and the calculation time may be long. Therefore, according to the present embodiment, the management device 140 narrows down the region of the trajectory of the manipulator, which requires a precise calculation due to the above change. As a result, the amount of calculation for planning the motion of the robot is reduced, and the calculation time is shortened. As a result, when the user of the execution device 120 inputs the contents of various changes into the management device 140, the management device 140 outputs the trajectory of the manipulator in which the contents of the change are reflected within a practical time. As described above, according to the present embodiment, the burden of teaching work is significantly reduced. Details of the management device 140 will be described later.

本実施形態において、入力端末160は、例えば、作業システム100のユーザが利用する通信端末であり、その詳細については特に限定されない。入力端末160としては、パーソナルコンピュータ、携帯端末などが例示される。携帯端末としては、携帯電話、スマートフォン、PDA、タブレット、ノートブック・コンピュータ又はラップトップ・コンピュータ、ウエアラブル・コンピュータなどが例示される。入力端末160は、実行装置120及び管理装置140の少なくとも一方のユーザインタフェースとして使用されてよい。   In the present embodiment, the input terminal 160 is, for example, a communication terminal used by a user of the work system 100, and the details thereof are not particularly limited. Examples of the input terminal 160 include a personal computer and a mobile terminal. Examples of the mobile terminal include a mobile phone, a smartphone, a PDA, a tablet, a notebook computer or a laptop computer, and a wearable computer. The input terminal 160 may be used as a user interface of at least one of the execution device 120 and the management device 140.

なお、本実施形態においては、管理装置140が実行装置120を管理する場合を例として、作業システム100の詳細が説明される。しかしながら、作業システム100は、本実施形態に限定されない。管理装置140の機能の少なくとも一部が、実行装置120及び入力端末160の少なくとも一方により実現されてもよい。この場合、実行装置120は、制御装置の一例であってよい。また、入力端末160は、制御装置の一例であってよい。   In the present embodiment, the details of the work system 100 will be described by taking the case where the management device 140 manages the execution device 120 as an example. However, the work system 100 is not limited to this embodiment. At least a part of the functions of the management device 140 may be realized by at least one of the execution device 120 and the input terminal 160. In this case, the execution device 120 may be an example of a control device. Moreover, the input terminal 160 may be an example of a control device.

[作業システム100の各部の具体的な構成]
作業システム100の各部は、ハードウエアにより実現されてもよく、ソフトウエアにより実現されてもよく、ハードウエア及びソフトウエアにより実現されてもよい。作業システム100の各部は、その少なくとも一部が、単一のサーバによって実現されてもよく、複数のサーバによって実現されてもよい。作業システム100の各部は、その少なくとも一部が、仮想サーバ上又はクラウドシステム上で実現されてもよい。作業システム100の各部は、その少なくとも一部が、パーソナルコンピュータ又は携帯端末によって実現されてもよい。携帯端末としては、携帯電話、スマートフォン、PDA、タブレット、ノートブック・コンピュータ又はラップトップ・コンピュータ、ウエアラブル・コンピュータなどを例示することができる。作業システム100の各部は、ブロックチェーンなどの分散型台帳技術又は分散型ネットワークを利用して、情報を格納してもよい。
[Specific Configuration of Each Part of Work System 100]
Each unit of the work system 100 may be realized by hardware, software, or hardware and software. At least a part of each part of the work system 100 may be realized by a single server, or may be realized by a plurality of servers. At least a part of each unit of the work system 100 may be realized on a virtual server or a cloud system. At least a part of each unit of the work system 100 may be realized by a personal computer or a mobile terminal. Examples of the mobile terminal include a mobile phone, a smartphone, a PDA, a tablet, a notebook computer or a laptop computer, a wearable computer, and the like. Each unit of the work system 100 may store information using a distributed ledger technology such as a block chain or a distributed network.

作業システム100を構成する構成要素の少なくとも一部がソフトウエアにより実現される場合、当該ソフトウエアにより実現される構成要素は、一般的な構成の情報処理装置において、当該構成要素に関する動作を規定したプログラムを起動することにより実現されてよい。上記の一般的な構成の情報処理装置は、(i)CPU、GPUなどのプロセッサ、ROM、RAM、通信インタフェースなどを有するデータ処理装置と、(ii)キーボード、ポインティングデバイス、タッチパネル、カメラ、音声入力装置、ジェスチャ入力装置、各種センサ、GPS受信機などの入力装置と、(iii)表示装置、音声出力装置、振動装置などの出力装置と、(iv)メモリ、HDD、SSDなどの記憶装置(外部記憶装置を含む。)とを備えてよい。   When at least a part of the constituent elements of the work system 100 is realized by software, the constituent elements realized by the software define the operation related to the constituent elements in an information processing apparatus having a general configuration. It may be realized by starting a program. The information processing apparatus having the above-described general configuration includes (i) a data processing apparatus having a processor such as a CPU and a GPU, a ROM, a RAM, and a communication interface, and (ii) a keyboard, a pointing device, a touch panel, a camera, and voice input. Device, gesture input device, various sensors, input device such as GPS receiver, (iii) display device, voice output device, output device such as vibration device, and (iv) storage device such as memory, HDD, SSD (external (Including a storage device).

上記の一般的な構成の情報処理装置において、上記のデータ処理装置又は記憶装置は、上記のプログラムを記憶してよい。上記のプログラムは、プロセッサによって実行されることにより、上記の情報処理装置に、当該プログラムによって規定された動作を実行させる。上記のプログラムは、非一時的なコンピュータ可読記録媒体に格納されていてもよい。上記のプログラムは、CD−ROM、DVD−ROM、メモリ、ハードディスクなどのコンピュータ読み取り可能な媒体に記憶されていてもよく、ネットワークに接続された記憶装置に記憶されていてもよい。   In the information processing device having the above general configuration, the data processing device or the storage device may store the program. The above program causes the information processing apparatus to execute the operation defined by the program when executed by the processor. The above program may be stored in a non-transitory computer-readable recording medium. The above program may be stored in a computer-readable medium such as a CD-ROM, a DVD-ROM, a memory, or a hard disk, or may be stored in a storage device connected to a network.

上記のプログラムは、コンピュータを、作業システム100又はその一部として機能させるためのプログラムであってよい。上記のプログラムは、作業システム100の各部の動作を規定したモジュールを備えてよい。これらのプログラム又はモジュールは、データ処理装置、入力装置、出力装置、記憶装置等に働きかけて、コンピュータを作業システム100の各部として機能させたり、コンピュータに作業システム100の各部における情報処理方法を実行させたりする。   The above program may be a program for causing a computer to function as the work system 100 or a part thereof. The above program may include a module that defines the operation of each unit of the work system 100. These programs or modules work on a data processing device, an input device, an output device, a storage device, or the like to cause a computer to function as each unit of the work system 100, or cause the computer to execute an information processing method in each unit of the work system 100. Or

上記のプログラムは、コンピュータ読み取り可能な媒体又はネットワークに接続された記憶装置から、作業システム100の少なくとも一部を構成するコンピュータにインストールされてよい。上記のプログラムが実行されることにより、コンピュータが、作業システム100の各部の少なくとも一部として機能してもよい。上記のプログラムに記述された情報処理は、当該プログラムがコンピュータに読み込まれることにより、当該プログラムに関連するソフトウエアと、作業システム100又はその一部の各種のハードウエア資源とが協働した具体的手段として機能する。そして、上記の具体的手段が、本実施形態におけるコンピュータの使用目的に応じた情報の演算又は加工を実現することにより、当該使用目的に応じた作業システム100が構築される。   The above program may be installed in a computer forming at least a part of the work system 100 from a computer-readable medium or a storage device connected to a network. The computer may function as at least a part of each unit of the work system 100 by executing the above program. The information processing described in the above program is a concrete example in which the software related to the program and the various hardware resources of the work system 100 or a part thereof cooperate with each other when the program is read by the computer. Functions as a means. Then, the above-mentioned specific means realizes the calculation or processing of information according to the purpose of use of the computer in the present embodiment, whereby the work system 100 according to the purpose of use is constructed.

上記のプログラムは、コンピュータに、作業システム100又はその一部における情報処理方法を実行させるためのプログラムであってもよい。上記の情報処理方法は、作業ロボットの動作を制御する制御方法であってよい。上記の作業ロボットは、例えば、マニピュレータを用いて対象領域の内部で作業を実行する。   The above program may be a program for causing a computer to execute the information processing method in the work system 100 or a part thereof. The above information processing method may be a control method for controlling the operation of the work robot. The work robot described above executes a work inside a target area using, for example, a manipulator.

上記の制御方法は、例えば、(i)対象領域の内部に配置された1以上の物体の少なくとも1つに関する情報であって、少なくとも1つの物体の位置、姿勢、形状及び大きさの少なくとも1つに関する変更の発生を示す第1変更情報、及び、(ii)対象領域の内部に新たな物体が配置されることを示す第2変更情報の少なくとも一方を取得する変更情報取得段階を有する。上記の制御方法は、例えば、(i)変更が生じた後の1以上の物体のぞれぞれの位置、姿勢、形状及び大きさを示す第1モデル情報、及び、(ii)新たな物体の位置、姿勢、形状及び大きさを示す第2モデル情報の少なくとも一方を取得するモデル情報取得段階を有する。   The above control method is, for example, (i) information about at least one of one or more objects arranged inside the target region, and at least one of the position, orientation, shape, and size of at least one object. Change information acquisition step of acquiring at least one of first change information indicating that a change has occurred and (ii) second change information indicating that a new object is placed inside the target area. The above control method includes, for example, (i) first model information indicating the position, orientation, shape and size of each of the one or more objects after the change, and (ii) the new object. Model information acquisition step of acquiring at least one of the second model information indicating the position, orientation, shape, and size of the.

上記の制御方法は、例えば、作業ロボットが一連の作業を実行するN個の作業領域を、一連の作業の順番に結ぶN−1個又はN個の軌道のそれぞれを示す、N−1個又はN個の軌道情報を取得する軌道情報取得段階を有する。上記の制御方法は、例えば、N−1個又はN個の軌道を、(i)第1変更情報及び第2変更情報の少なくとも一方により示される対象領域の内部の変更に応じて、修正が必要となる軌道、及び、(ii)第1変更情報及び第2変更情報の少なくとも一方により示される対象領域の内部の変更が生じても、修正が必要ではない軌道に分類する分類段階を有する。上記の制御方法は、例えば、分類段階において修正が必要となる軌道に分類された1以上の軌道のそれぞれについて、第1モデル情報及び第2モデル情報の少なくとも一方に基づいて、各軌道に関連する2個の作業領域の間におけるマニピュレータの先端の軌道を計画する軌道計画段階を有する。上記の制御方法において、Nは、2以上の整数であってよい。   The control method described above is, for example, N-1 or N-1 or N-1 orbits, which indicate N-1 or N trajectories connecting the N work areas in which the work robot executes a series of work in the order of the series of work. There is a trajectory information acquisition step of acquiring N orbit information. In the above control method, for example, N−1 or N orbits need to be corrected according to the change inside the target area indicated by (i) at least one of the first change information and the second change information. And (ii) a classification step of classifying into a trajectory that does not need to be corrected even if the inside of the target area indicated by at least one of the first change information and the second change information occurs. The above control method relates to each trajectory based on at least one of the first model information and the second model information, for example, for each of one or more trajectories classified into trajectories that need to be corrected in the classification step. There is a trajectory planning stage for planning the trajectory of the manipulator tip between two work areas. In the above control method, N may be an integer of 2 or more.

図2は、実行装置120のシステム構成の一例を概略的に示す。本実施形態において、実行装置120は、コンベア212と、ロボット214とを備える。本実施形態において、ロボット214は、マニピュレータ220と、台座230と、レール232と、駆動部240と、駆動制御部250とを備える。本実施形態において、マニピュレータ220は、作業ツール222と、ロボットアーム224とを有する。   FIG. 2 schematically shows an example of the system configuration of the execution device 120. In the present embodiment, the execution device 120 includes a conveyor 212 and a robot 214. In the present embodiment, the robot 214 includes a manipulator 220, a pedestal 230, a rail 232, a drive unit 240, and a drive control unit 250. In the present embodiment, the manipulator 220 has a work tool 222 and a robot arm 224.

なお、ロボット214は、単一のマニピュレータ220を備えてもよく、複数のマニピュレータ220を備えてもよい。ロボット214は、単一のマニピュレータ220を用いて単一のワーク20に対する作業を実行してもよく、複数のマニピュレータ220を用いて単一のワーク20に対する作業を実行してもよい。ロボット214は、単一のマニピュレータ220を用いて、一度に複数のワーク20に対する作業を実行してもよい。   The robot 214 may include a single manipulator 220 or a plurality of manipulators 220. The robot 214 may use a single manipulator 220 to perform a work on a single work 20, or may use a plurality of manipulators 220 to perform a work on a single work 20. The robot 214 may use a single manipulator 220 to perform work on a plurality of works 20 at a time.

ロボット214は、作業ロボットの一例であってよい。作業ツール222は、マニピュレータ220の先端の一例であってよい。作業ツール222の軌道は、マニピュレータ220の先端の軌道の一例であってよい。作業ツール222の位置及び姿勢は、マニピュレータ220の先端の位置及び姿勢の一例であってよい。   The robot 214 may be an example of a work robot. The work tool 222 may be an example of the tip of the manipulator 220. The trajectory of the work tool 222 may be an example of the trajectory of the tip of the manipulator 220. The position and orientation of the work tool 222 may be an example of the position and orientation of the tip of the manipulator 220.

本実施形態において、実行装置120は、対象領域202の内部に配されたワーク20に対して、予め定められた作業を実行する。対象領域202は、実行装置120が作業を実行することのできる領域であってよい。ワーク20は、1又は複数の凸部22を有してよい。作業の種類としては、ピッキング作業、穿孔作業、旋盤作業、溶接作業、組立作業、塗装作業などが例示される。   In the present embodiment, the execution device 120 executes a predetermined work on the work 20 arranged inside the target area 202. The target area 202 may be an area in which the execution device 120 can execute work. The work 20 may have one or a plurality of convex portions 22. Examples of work types include picking work, punching work, lathe work, welding work, assembly work, and painting work.

本実施形態において、コンベア212は、ワーク20を搬送する。例えば、コンベア212は、ワーク20を、対象領域202の外部から、対象領域202の内部の予め定められた位置まで搬送する。ロボット214によるワーク20に対する作業が終了すると、コンベア212は、ワーク20を、対象領域202の外部に搬送する。   In the present embodiment, the conveyor 212 conveys the work 20. For example, the conveyor 212 conveys the work 20 from outside the target area 202 to a predetermined position inside the target area 202. When the work on the work 20 by the robot 214 is completed, the conveyor 212 conveys the work 20 to the outside of the target area 202.

本実施形態において、ロボット214は、ワーク20に対する各種の作業を実行する。例えば、ロボット214は、マニピュレータ220を用いて対象領域202の内部で作業を実施する。ロボット214の動作の少なくとも一部は、管理装置140により制御される。   In the present embodiment, the robot 214 executes various works on the work 20. For example, the robot 214 uses the manipulator 220 to perform work inside the target area 202. At least a part of the operation of the robot 214 is controlled by the management device 140.

本実施形態において、作業ツール222は、特定の作業に対応する治具、機材又は器具である。作業ツール222の詳細は特に限定されない。作業ツール222は、対応する作業に応じた形状、構造及び機能を有してよい。作業ツール222は、各種のセンサを有してよい。作業ツール222は、カメラなどの撮像装置を有してよい。作業ツール222は、例えば、ロボットアーム224の先端に取り付けられる。ロボット214は、作業ツール222を取り換えることで、各種の作業に対応することができる。   In the present embodiment, the work tool 222 is a jig, equipment, or tool corresponding to a specific work. The details of the work tool 222 are not particularly limited. The work tool 222 may have a shape, a structure, and a function according to the corresponding work. The work tool 222 may include various sensors. The work tool 222 may include an imaging device such as a camera. The work tool 222 is attached to the tip of the robot arm 224, for example. The robot 214 can deal with various works by replacing the work tool 222.

本実施形態において、ロボットアーム224は、作業ツール222に連結され、作業ツール222の位置及び姿勢を調整する。ロボットアーム224の構造は特に限定されるものではないが、例えば、複数の関節を有する多関節ロボットアームが用いられる。ロボットアーム224は、質量計測センサ、負荷計測センサなどの各種センサを有してよい。負荷計測センサは、ロボットアーム224の各関節を駆動する駆動部240のトルク、電流値又は電圧値を計測するセンサであってよい。   In this embodiment, the robot arm 224 is connected to the work tool 222 and adjusts the position and posture of the work tool 222. The structure of the robot arm 224 is not particularly limited, but, for example, a multi-joint robot arm having a plurality of joints is used. The robot arm 224 may have various sensors such as a mass measurement sensor and a load measurement sensor. The load measurement sensor may be a sensor that measures the torque, current value, or voltage value of the drive unit 240 that drives each joint of the robot arm 224.

本実施形態において、台座230は、マニピュレータ220を支持する。台座230は、固定式の台座であってもよく、可動式の台座であってもよい。本実施形態において、台座230は、レール232の延伸方向に沿って、レール232の上を移動することができる。これにより、作業ツール222が、対象領域202の任意の位置まで到達し得る。台座230は、その内部に、駆動部240の少なくとも一部を収容してよい。台座230は、その内部に、駆動制御部250の少なくとも一部を収容してよい。   In the present embodiment, the pedestal 230 supports the manipulator 220. The pedestal 230 may be a fixed pedestal or a movable pedestal. In the present embodiment, the pedestal 230 can move on the rail 232 along the extending direction of the rail 232. Thereby, the work tool 222 can reach an arbitrary position in the target area 202. The pedestal 230 may house at least a part of the driving unit 240 therein. The pedestal 230 may house at least a part of the drive control unit 250 therein.

本実施形態において、駆動部240は、マニピュレータ220を駆動する。一実施形態において、駆動部240は、作業ツール222を駆動する。一実施形態において、駆動部240は、作業ツール222に流体を供給したり、作業ツール222から流体を吸引したりする。駆動部240は、ポンプであってよい。駆動部240は、1以上のポンプを有してよい。流体は、溶接用又は溶断用のガスであってもよく、冷却用又は洗浄用の流体であってもよい。他の実施形態において、駆動部240は、作業ツール222に電力を供給してもよい。例えば、駆動部240は、作業ツール222への電力の供給を制御する素子であってよい。   In the present embodiment, the drive unit 240 drives the manipulator 220. In one embodiment, the drive unit 240 drives the work tool 222. In one embodiment, the drive unit 240 supplies the fluid to the work tool 222 or sucks the fluid from the work tool 222. The drive unit 240 may be a pump. The driver 240 may have one or more pumps. The fluid may be a welding or fusing gas, or a cooling or cleaning fluid. In other embodiments, the drive 240 may power the work tool 222. For example, the driving unit 240 may be an element that controls the supply of electric power to the work tool 222.

さらに他の実施形態において、駆動部240は、ロボットアーム224を駆動する。例えば、駆動部240は、ロボットアーム224の各関節の角度を調整する。駆動部240は、モータであってよい。駆動部240は、1以上のモータを有してよい。さらに他の実施形態において、駆動部240は、台座230を駆動する。例えば、駆動部240は、ワーク20と、台座230との相対位置を調整する。駆動部240は、モータであってよい。駆動部240は、1以上のモータを有してよい。   In yet another embodiment, the drive unit 240 drives the robot arm 224. For example, the drive unit 240 adjusts the angle of each joint of the robot arm 224. The driving unit 240 may be a motor. The drive unit 240 may include one or more motors. In still another embodiment, the driving unit 240 drives the pedestal 230. For example, the drive unit 240 adjusts the relative position between the work 20 and the pedestal 230. The driving unit 240 may be a motor. The drive unit 240 may include one or more motors.

駆動制御部250は、駆動部240を制御する。例えば、駆動制御部250は、管理装置140から、ロボット214のワーク20に対する作業を制御するための命令を受信する。駆動制御部250は、管理装置140からの命令に基づいて、駆動部240を制御する。   The drive control unit 250 controls the drive unit 240. For example, the drive controller 250 receives a command from the management device 140 to control the work of the robot 214 on the work 20. The drive control unit 250 controls the drive unit 240 based on a command from the management device 140.

ワーク20に対する作業を制御するための命令は、作業ツール222の軌道を示す情報であってよい。作業ツール222の軌道を示す情報としては、(i)作業ツール222の初期配置、通過配置及び最終配置、並びに、移動時間を示す情報、(ii)初期配置、通過配置及び最終配置における作業ツール222の各関節の角度、並びに、移動時間を示す情報、(iii)移動時間中の各時刻における作業ツール222の配置を示す情報、(iv)移動時間中の各時刻における作業ツール222の各関節の角度を示す情報などを例示することができる。作業ツール222の配置は、例えば、作業ツール222の位置及び姿勢により特定される。   The command for controlling the work on the work 20 may be information indicating the trajectory of the work tool 222. As the information indicating the trajectory of the work tool 222, (i) information indicating the initial arrangement, passage arrangement and final arrangement of the work tool 222, and movement time, (ii) work tool 222 in the initial arrangement, passage arrangement and final arrangement Of each joint, and information indicating the moving time, (iii) information indicating the arrangement of the work tool 222 at each time during the moving time, (iv) information indicating each joint of the work tool 222 at each time during the moving time. Information indicating an angle can be exemplified. The arrangement of the work tool 222 is specified by, for example, the position and posture of the work tool 222.

図3、図4及び図5を用いて、実行装置120の周辺環境の変化、又は、ワーク20の変化に伴う、全体軌道340の変化が説明される。図3は、対象領域202の内部に障害物320が存在する場合における、全体軌道340の一例を概略的に示す。図4は、図3において、対象領域202の内部に障害物420が追加された場合における、全体軌道340の一例を概略的に示す。図5は、図4において、対象領域202の内部から障害物320が除去された場合における、全体軌道340の一例を概略的に示す。   A change in the entire trajectory 340 due to a change in the surrounding environment of the execution device 120 or a change in the work 20 will be described with reference to FIGS. 3, 4, and 5. FIG. 3 schematically illustrates an example of the entire trajectory 340 when the obstacle 320 exists inside the target area 202. FIG. 4 schematically shows an example of the entire trajectory 340 when the obstacle 420 is added inside the target area 202 in FIG. FIG. 5 schematically shows an example of the entire trajectory 340 when the obstacle 320 is removed from the inside of the target area 202 in FIG.

図3に関連して説明される実施形態において、ロボット214は、作業点32、作業点34、作業点36及び作業点38のそれぞれにおいて、ユーザにより指定された一連の作業を実行する。本実施形態において、ロボット214は、作業点32で作業を実行した後、作業ツール222を単位軌道342に沿って作業点34へと移動させる。同様に、ロボット214は、作業点34で作業を実行した後、作業ツール222を単位軌道344に沿って作業点36へと移動させる。また、ロボット214は、作業点36で作業を実行した後、作業ツール222を単位軌道346に沿って作業点38へと移動させる。   In the embodiment described in connection with FIG. 3, the robot 214 performs a series of tasks specified by the user at each of the work points 32, 34, 36 and 38. In the present embodiment, the robot 214 performs the work at the work point 32 and then moves the work tool 222 to the work point 34 along the unit trajectory 342. Similarly, the robot 214 performs the work at the work point 34 and then moves the work tool 222 to the work point 36 along the unit trajectory 344. In addition, the robot 214 moves the work tool 222 to the work point 38 along the unit trajectory 346 after performing the work at the work point 36.

単位軌道342、単位軌道344、及び、単位軌道346のそれぞれは、マニピュレータ220と、対象領域202の内部に配置された他の物体との距離が、予め定められた値(干渉マージンと称される場合がある。)よりも大きくなるように計画される。これにより、マニピュレータ220が、上記の他の物体と干渉することが防止される。例えば、本実施形態において、単位軌道344は、障害物320及びワーク20の凸部22と干渉しないように計画される。   In each of the unit trajectory 342, the unit trajectory 344, and the unit trajectory 346, the distance between the manipulator 220 and another object arranged inside the target area 202 is a predetermined value (referred to as an interference margin). Sometimes it is planned to be larger than. This prevents the manipulator 220 from interfering with the other objects mentioned above. For example, in the present embodiment, the unit trajectory 344 is planned so as not to interfere with the obstacle 320 and the convex portion 22 of the work 20.

作業点32、作業点34、作業点36及び作業点38は、作業ロボットが一連の作業を実行するN個の作業領域(Nは、2以上の整数である。Nは、3以上の整数であってもよく、Nは、4以上の整数であってもよい。)の一例であってよい。作業点32、作業点34、作業点36及び作業点38のそれぞれは、作業領域の一例であってよい。なお、作業の種類によっては、ロボット214は、作業領域の内部で、作業ツール222を規定の経路に沿って移動させる場合がある。この場合、作業点32、作業点34、作業点36及び作業点38のそれぞれは、作業領域内の任意の地点であって、各作業領域における作業が開始されるときに作業ツール222が配される地点であってよい。   The work point 32, the work point 34, the work point 36 and the work point 38 are N work areas (N is an integer of 2 or more. N is an integer of 3 or more. May be present, and N may be an integer of 4 or more.). Each of the work point 32, the work point 34, the work point 36, and the work point 38 may be an example of a work area. Depending on the type of work, the robot 214 may move the work tool 222 along a prescribed path inside the work area. In this case, each of the work point 32, the work point 34, the work point 36, and the work point 38 is an arbitrary point in the work area, and the work tool 222 is arranged when the work in each work area is started. It may be a point.

単位軌道342、単位軌道344、及び、単位軌道346は、一連の作業を通した作業ツール222の軌道を示す全体軌道340を構成する。単位軌道342、単位軌道344、及び、単位軌道346は、一連の作業が実行されるN個の作業領域を、当該一連の作業の順番に結ぶN−1個又はN個の軌道の一例であってよい。   The unit orbit 342, the unit orbit 344, and the unit orbit 346 form a whole orbit 340 indicating the orbit of the work tool 222 through a series of operations. The unit orbit 342, the unit orbit 344, and the unit orbit 346 are examples of N-1 or N orbits that connect N work areas in which a series of work is executed in the order of the series of work. You may

なお、作業ツール222のホームポジションが設定されている場合、ロボット214は、作業点32における作業を開始する前に、作業ツール222をホームポジションから、作業点32へと移動させてよい。また、作業点38における作業が完了した後、ロボット214は、作業ツール222をホームポジションへと移動させてよい。この場合、作業ツール222の全体軌道340は、ホームポジションと、一連の作業が実行されるN個の作業領域とを当該一連の作業の順番に結ぶ、N個又はN+1個の軌道により構成される。   When the home position of the work tool 222 is set, the robot 214 may move the work tool 222 from the home position to the work point 32 before starting the work at the work point 32. Also, after the work at the work point 38 is completed, the robot 214 may move the work tool 222 to the home position. In this case, the entire trajectory 340 of the work tool 222 is configured by N or N + 1 trajectories that connect the home position and the N work areas in which a series of work is executed in the order of the series of work. .

また、本実施形態においては、作業点32及び作業点38が対象領域202の内部の異なる地点又は領域である場合を例として、作業ツール222の軌道が説明された。しかしながら、作業ツール222の軌道は本実施形態に限定されない。他の実施形態において、作業点32及び作業点38が同一の地点又は領域であってもよい。この場合、作業ツール222の全体軌道340は、(i)単位軌道342、単位軌道344及び単位軌道346と、(ii)作業点38及び作業点32を結ぶ単位軌道とを含む。   Further, in the present embodiment, the trajectory of the work tool 222 has been described by taking the case where the work point 32 and the work point 38 are different points or areas inside the target area 202 as an example. However, the trajectory of the work tool 222 is not limited to this embodiment. In other embodiments, work point 32 and work point 38 may be the same point or area. In this case, the entire trajectory 340 of the work tool 222 includes (i) a unit trajectory 342, a unit trajectory 344 and a unit trajectory 346, and (ii) a unit trajectory connecting the work point 38 and the work point 32.

図4に関連して説明される実施形態によれば、ロボット214が、作業ツール222を図3に示された全体軌道340に沿って移動させながら、一連の作業を実行している状態において、単位軌道346の近傍に障害物420が追加される。障害物420は、例えば、単位軌道346においてマニピュレータ220と干渉する位置に配される。   According to the embodiment described with reference to FIG. 4, while the robot 214 is performing a series of tasks while moving the work tool 222 along the overall trajectory 340 shown in FIG. An obstacle 420 is added near the unit trajectory 346. The obstacle 420 is arranged, for example, at a position where it interferes with the manipulator 220 in the unit trajectory 346.

本実施形態によれば、ユーザは、入力端末160を操作して、単位軌道346の近傍に障害物420が追加されることを示す情報(変更情報と称される場合がある。)を、管理装置140に送信する。管理装置140は、上記の変更情報を受信すると、まず、新たな全体軌道340を計画する必要があるか否かを判定する。   According to the present embodiment, the user operates the input terminal 160 to manage information (which may be referred to as change information) indicating that the obstacle 420 is added near the unit trajectory 346. To the device 140. Upon receiving the change information, the management device 140 first determines whether or not it is necessary to plan a new overall trajectory 340.

より具体的には、管理装置140は、単位軌道342、単位軌道344及び単位軌道346のそれぞれについて、障害物420が追加されることにより、当該単位軌道を計画し直す必要性が高いか否かを判定する。管理装置140は、単位軌道342、単位軌道344及び単位軌道346のそれぞれと、障害物420との関連具合に基づいて、当該単位軌道を計画し直す必要性が高いか否かを判定してよい。管理装置140は、軌道を計画し直す必要性の高い単位軌道を抽出してもよい。   More specifically, whether the management device 140 needs to re-plan the unit trajectory by adding the obstacle 420 to each of the unit trajectory 342, the unit trajectory 344, and the unit trajectory 346. To judge. The management device 140 may determine whether it is highly necessary to re-plan the unit trajectory based on the degree of association with each of the unit trajectory 342, the unit trajectory 344, and the unit trajectory 346 and the obstacle 420. . The management device 140 may extract a unit trajectory that is highly necessary to replan the trajectory.

特定の単位軌道と、障害物420との関連具合が予め定められた程度よりも大きい場合、管理装置140は、当該特定の単位軌道を計画し直す必要性が高いと判定してよい。特定の単位軌道と、障害物420との関連具合が予め定められた程度よりも小さい場合、管理装置140は、当該特定の単位軌道を計画し直す必要性が高くないと判定してよい。例えば、特定の単位軌道と、障害物420とが干渉する可能性が高い場合、管理装置140は、特定の単位軌道と、障害物420との関連具合が予め定められた程度よりも大きいと判定する。   When the degree of association between the specific unit trajectory and the obstacle 420 is larger than a predetermined degree, the management device 140 may determine that it is highly necessary to re-plan the specific unit trajectory. When the degree of association between the specific unit trajectory and the obstacle 420 is smaller than a predetermined degree, the management device 140 may determine that it is not necessary to replan the specific unit trajectory. For example, when there is a high possibility that the specific unit trajectory and the obstacle 420 interfere with each other, the management device 140 determines that the degree of association between the specific unit trajectory and the obstacle 420 is greater than a predetermined degree. To do.

軌道を計画し直す必要性の高い単位軌道が抽出された場合、管理装置140は、新たな全体軌道340を計画する必要があると判定する。そして、管理装置140は、障害物420の位置、姿勢、形状及び大きさを考慮に入れて、抽出された単位軌道の軌道を計画し直す。また、管理装置140は、その他の単位軌道について、現在の軌道に関する情報を再利用する。一方、軌道を計画し直す必要性の高い単位軌道が1つも抽出されなかった場合、管理装置140は、新たな全体軌道340を計画する必要がないと判定する。   When a unit trajectory for which it is highly necessary to replan the trajectory is extracted, the management device 140 determines that it is necessary to plan a new overall trajectory 340. Then, the management device 140 replans the trajectory of the extracted unit trajectory in consideration of the position, posture, shape, and size of the obstacle 420. Further, the management device 140 reuses the information regarding the current orbit regarding the other unit orbits. On the other hand, if none of the unit trajectories for which it is highly necessary to replan the trajectory is extracted, the management device 140 determines that it is not necessary to plan a new overall trajectory 340.

例えば、本実施形態によれば、単位軌道342及び単位軌道344は、軌道を計画し直す必要性の高い単位軌道ではないと判断され、単位軌道346は、軌道を計画し直す必要性の高い単位軌道であると判断される。そこで、管理装置140は、現在の単位軌道342、現在の単位軌道344、及び、変更後の単位軌道346に基づいて、変更後の全体軌道340を計画する。   For example, according to the present embodiment, it is determined that the unit trajectory 342 and the unit trajectory 344 are not the unit trajectories for which the trajectory replanning is highly necessary, and the unit trajectory 346 is the unit for which the trajectory replanning is highly necessary. It is judged to be in orbit. Therefore, the management device 140 plans the changed overall trajectory 340 based on the current unit trajectory 342, the current unit trajectory 344, and the changed unit trajectory 346.

これにより、対象領域202の内部に障害物420が追加された場合であっても、変更後の全体軌道340を短時間で計画することができる。なお、軌道を計画し直す必要性が高いと判定された単位軌道346のうち、障害物420と干渉する領域のみを計画し直すことで、変更後の全体軌道340を計画するための計算量を削減することも考えられる。   Thereby, even when the obstacle 420 is added inside the target area 202, the changed entire trajectory 340 can be planned in a short time. It should be noted that, among the unit trajectories 346 that are determined to have a high necessity for re-planning the trajectory, only the area that interferes with the obstacle 420 is re-planned to reduce the calculation amount for planning the changed overall trajectory 340. It is also possible to reduce.

しかしながら、この場合、障害物420の位置によっては、軌道の形状が滑らかではなく、ロボット214が作業を再開した後、マニピュレータ220の関節に過度の負担がかかることも考えられる。また、変更前の単位軌道346は、障害物420が存在しない場合に最適化されている。そのため、単位軌道346のうち障害物420と干渉する領域のみを変更して得られた軌道が、単位軌道346の始点及び終点を結ぶために適切な軌道でるとは限らず、より適切な他の軌道が存在する可能性もある。   However, in this case, the shape of the trajectory may not be smooth depending on the position of the obstacle 420, and an excessive load may be applied to the joint of the manipulator 220 after the robot 214 resumes work. Moreover, the unit trajectory 346 before the change is optimized when the obstacle 420 does not exist. Therefore, the trajectory obtained by changing only the region of the unit trajectory 346 that interferes with the obstacle 420 is not necessarily an appropriate trajectory for connecting the start point and the end point of the unit trajectory 346, and a more appropriate other trajectory. Orbits may exist.

一方、本実施形態によれば、単位軌道346を全体的に計画し直す。これにより、単位軌道346のうち障害物420と干渉する領域のみを計画し直す場合と比較して、より適切な軌道を導出することができる。   On the other hand, according to this embodiment, the unit trajectory 346 is re-planned as a whole. As a result, a more appropriate trajectory can be derived as compared with the case where only the area of the unit trajectory 346 that interferes with the obstacle 420 is re-planned.

図5に関連して説明される実施形態によれば、ロボット214が、作業ツール222を図4に示された全体軌道340に沿って移動させながら、一連の作業を実行している状態において、単位軌道344の近傍に配置されていた障害物320が、対象領域202から除去される。なお、障害物320は、対象領域202の内部の地点であって、現在位置と比較して、単位軌道344からより離れた地点へと移動してもよい。   According to the embodiment described in connection with FIG. 5, while the robot 214 is performing a series of tasks while moving the work tool 222 along the overall trajectory 340 shown in FIG. The obstacle 320 located near the unit trajectory 344 is removed from the target area 202. The obstacle 320 may move to a point inside the target area 202, which is farther from the unit trajectory 344 than the current position.

本実施形態によれば、ユーザは、入力端末160を操作して、障害物320が除去されること又は移動することを示す情報(変更情報と称される場合がある。)を、管理装置140に送信する。管理装置140は、上記の変更情報を受信すると、まず、新たな全体軌道340を計画する必要があるか否かを判定する。   According to the present embodiment, the user operates the input terminal 160 to provide information indicating that the obstacle 320 is removed or moved (may be referred to as change information), to the management device 140. Send to. Upon receiving the change information, the management device 140 first determines whether or not it is necessary to plan a new overall trajectory 340.

より具体的には、管理装置140は、単位軌道342、単位軌道344及び単位軌道346のそれぞれについて、障害物320が除去される又は移動することにより、当該単位軌道を計画し直す必要性が高いか否かを判定する。管理装置140は、単位軌道342、単位軌道344及び単位軌道346のそれぞれと、障害物320との関連具合に基づいて、当該単位軌道を計画し直す必要性が高いか否かを判定してよい。管理装置140は、軌道を計画し直す必要性の高い単位軌道を抽出してもよい。   More specifically, the management device 140 needs to re-plan the unit orbit by removing or moving the obstacle 320 for each of the unit orbit 342, the unit orbit 344, and the unit orbit 346. Or not. The management device 140 may determine whether it is highly necessary to re-plan the unit trajectory based on the degree of association with each of the unit trajectory 342, the unit trajectory 344, and the unit trajectory 346 and the obstacle 320. . The management device 140 may extract a unit trajectory that is highly necessary to replan the trajectory.

特定の単位軌道と、障害物320との関連具合が予め定められた程度よりも大きい場合、管理装置140は、当該特定の単位軌道を計画し直す必要性が高いと判定してよい。特定の単位軌道と、障害物320との関連具合が予め定められた程度よりも小さい場合、管理装置140は、当該特定の単位軌道を計画し直す必要性が高くないと判定してよい。例えば、特定の単位軌道につき、現在の軌道が障害物320を回避するように計画されている可能性が高い場合、管理装置140は、特定の単位軌道と、障害物320との関連具合が予め定められた程度よりも大きいと判定する。   When the degree of association between the specific unit trajectory and the obstacle 320 is larger than a predetermined degree, the management device 140 may determine that it is highly necessary to re-plan the specific unit trajectory. When the degree of association between the specific unit trajectory and the obstacle 320 is smaller than a predetermined degree, the management device 140 may determine that it is not necessary to re-plan the specific unit trajectory. For example, when it is highly possible that the current trajectory is planned to avoid the obstacle 320 for a specific unit trajectory, the management device 140 determines in advance that the degree of association between the specific unit trajectory and the obstacle 320. It is judged to be larger than the specified level.

軌道を計画し直す必要性の高い単位軌道が抽出された場合、管理装置140は、新たな全体軌道340を計画する必要があると判定する。そして、管理装置140は、障害物320が除去されること、又は、障害物320が移動することを考慮に入れて、抽出された単位軌道の軌道を計画し直す。また、管理装置140は、その他の単位軌道について、現在の軌道に関する情報を再利用する。一方、軌道を計画し直す必要性の高い単位軌道が1つも抽出されなかった場合、管理装置140は、新たな全体軌道340を計画する必要がないと判定する。   When a unit trajectory for which it is highly necessary to replan the trajectory is extracted, the management device 140 determines that it is necessary to plan a new overall trajectory 340. Then, the management device 140 re-plans the trajectory of the extracted unit trajectory in consideration of the removal of the obstacle 320 or the movement of the obstacle 320. Further, the management device 140 reuses the information regarding the current orbit regarding the other unit orbits. On the other hand, if none of the unit trajectories for which it is highly necessary to replan the trajectory is extracted, the management device 140 determines that it is not necessary to plan a new overall trajectory 340.

例えば、本実施形態によれば、単位軌道342及び単位軌道346は、軌道を計画し直す必要性の高い単位軌道ではないと判断され、単位軌道344は、軌道を計画し直す必要性の高い単位軌道であると判断される。そこで、管理装置140は、現在の単位軌道342、変更後の単位軌道344、及び、現在の単位軌道346に基づいて、変更後の全体軌道340を計画する。   For example, according to the present embodiment, it is determined that the unit trajectory 342 and the unit trajectory 346 are not the unit trajectories for which it is highly necessary to re-plan the trajectory, and the unit trajectory 344 is the unit for which it is highly necessary to re-plan the trajectory. It is judged to be in orbit. Therefore, the management device 140 plans the changed overall trajectory 340 based on the current unit trajectory 342, the changed unit trajectory 344, and the current unit trajectory 346.

これにより、障害物320が対象領域202の内部から除去されたり、全体軌道340から離れた位置へと移動したりした場合であっても、より適切な全体軌道340を短時間で計画することができる。なお、変更後の全体軌道340を計画するための計算量を削減することを目的として、障害物320が対象領域202の内部から除去されたり、全体軌道340から離れた位置へと移動したりした場合には、軌道を計画し直さないことも考えられる。   As a result, even when the obstacle 320 is removed from the inside of the target area 202 or moves to a position away from the overall trajectory 340, a more appropriate overall trajectory 340 can be planned in a short time. it can. Note that the obstacle 320 is removed from the inside of the target area 202 or moved to a position away from the entire trajectory 340 for the purpose of reducing the amount of calculation for planning the changed overall trajectory 340. In some cases, the trajectory may not be replanned.

しかしながら、現在の軌道は、障害物320の存在を前提として計画されており、障害物320が存在しない場合や、障害物320がより離れた位置に存在する場合には、より適切な他の軌道が存在することも考えられる。一方、本実施形態によれば、障害物320が対象領域202の内部から除去されたり、全体軌道340から離れた位置へと移動したりした場合であっても、障害物320と関連性の高い単位軌道を計画し直すので、軌道を計画し直さない場合と比較して、より適切な軌道を導出することができる。   However, the current trajectory is planned on the assumption that the obstacle 320 exists, and if the obstacle 320 does not exist or the obstacle 320 exists at a farther position, another trajectory that is more appropriate. May exist. On the other hand, according to the present embodiment, even if the obstacle 320 is removed from the inside of the target area 202 or moved to a position away from the entire trajectory 340, the obstacle 320 is highly relevant to the obstacle 320. Since the unit trajectory is re-planned, it is possible to derive a more appropriate trajectory as compared with the case where the trajectory is not re-planned.

図6は、管理装置140のシステム構成の一例を概略的に示す。本実施形態において、管理装置140は、通信制御部620と、モデル管理部630と、システム管理部640と、格納部650とを備える。   FIG. 6 schematically shows an example of the system configuration of the management device 140. In the present embodiment, the management device 140 includes a communication control unit 620, a model management unit 630, a system management unit 640, and a storage unit 650.

モデル管理部630は、変更情報取得部及びモデル情報取得部の一例であってよい。システム管理部640は、制御装置の一例であってよい。   The model management unit 630 may be an example of a change information acquisition unit and a model information acquisition unit. The system management unit 640 may be an example of a control device.

本実施形態において、通信制御部620は、実行装置120及び入力端末160の少なくとも一方との間の通信を制御する。通信制御部620は、通信インタフェースであってよい。通信制御部620は、複数の種類の通信方式に対応してよい。   In the present embodiment, the communication control unit 620 controls communication with at least one of the execution device 120 and the input terminal 160. The communication control unit 620 may be a communication interface. The communication control unit 620 may support a plurality of types of communication schemes.

本実施形態において、モデル管理部630は、対象領域202の内部に配置された1以上の物体に関する情報を管理する。対象領域202の内部に配置され得る1以上の物体に関する情報を管理してよい。モデル管理部630は、上記の1以上の物体のそれぞれのシミュレーションモデルを管理してよい。モデル管理部630は、上記の1以上の物体のそれぞれの位置、姿勢、形状及び大きさを示す情報を管理してよい。上記の物体としては、ワーク20、コンベア212、ロボット214、障害物320、障害物420、及び、これらの一部などが例示される。   In the present embodiment, the model management unit 630 manages information regarding one or more objects arranged inside the target area 202. Information about one or more objects that may be located within the target area 202 may be managed. The model management unit 630 may manage each simulation model of the one or more objects. The model management unit 630 may manage information indicating the position, orientation, shape, and size of each of the one or more objects. Examples of the above-mentioned object include the work 20, the conveyor 212, the robot 214, the obstacle 320, the obstacle 420, and some of these.

一実施形態において、ユーザは、入力端末160を操作して、対象領域202の内部に配置される1以上の物体の位置、姿勢、形状及び大きさを示す情報を入力し、当該情報を管理装置140に送信する。管理装置140は、ユーザが入力した情報を取得し、格納部650に格納してよい。   In one embodiment, the user operates the input terminal 160 to input information indicating the position, orientation, shape, and size of one or more objects arranged inside the target area 202, and the information is input to the management device. Send to 140. The management device 140 may acquire the information input by the user and store it in the storage unit 650.

他の実施形態において、ユーザは、入力端末160を操作して、対象領域202の内部に配置された1以上の物体の位置、姿勢、形状及び大きさの少なくとも1つに関する変更の発生を示す情報(変更情報と称される場合がある。)を入力し、当該情報を管理装置140に送信する。上記の変更は、対象領域202の内部から物体が削除されることを含む。上記の変更は、物体の動作に伴い、当該物体の位置、姿勢、形状及び大きさの少なくとも1つが変動することを含む。   In another embodiment, the user operates the input terminal 160 to display information indicating occurrence of a change regarding at least one of position, orientation, shape, and size of one or more objects arranged inside the target area 202. (Sometimes referred to as change information) is input and the information is transmitted to the management device 140. The above modification includes deleting the object from the inside of the target area 202. The above change includes that at least one of the position, the posture, the shape, and the size of the object changes with the movement of the object.

変更の発生を示す情報は、変更が発生したことを示す情報であってもよく、将来の近い時期に変更が発生することを示す情報であってもよい。上記の変更情報は、第1変更情報の一例であってよい。管理装置140は、上記の変更情報を取得し、格納部650に格納してよい。   The information indicating that a change has occurred may be information indicating that a change has occurred, or may be information indicating that a change will occur in the near future. The change information described above may be an example of the first change information. The management device 140 may acquire the change information and store it in the storage unit 650.

ユーザは、入力端末160を操作して、変更が生じた後の1以上の物体の位置、姿勢、形状及び大きさを示す情報を入力し、当該情報を管理装置140に送信する。変更が生じた後の1以上の物体の位置、姿勢、形状及び大きさを示す情報は、1以上の物体の位置、姿勢、形状及び大きさのうち、変更された事項に関する情報であってもよい。上記の情報は、第1モデル情報の一例であってよい。管理装置140は、上記の情報を取得し、格納部650に格納してよい。   The user operates the input terminal 160 to input information indicating the position, posture, shape, and size of one or more objects after the change occurs, and transmits the information to the management device 140. The information indicating the position, orientation, shape and size of one or more objects after the change has occurred may be information regarding the changed item among the position, orientation, shape and size of the one or more objects. Good. The above information may be an example of the first model information. The management device 140 may acquire the above information and store it in the storage unit 650.

さらに他の実施形態において、ユーザは、入力端末160を操作して、対象領域202の内部に新たな物体が配置されることを示す情報を入力し、当該情報を管理装置140に送信する。上記の情報は、変更情報の一例であってよい。対象領域202の内部に新たな物体が配置されることを示す情報は、対象領域202の内部に新たな物体が配置されたことを示す情報であってもよく、将来の近い時期に、対象領域202の内部に新たな物体が配置されることを示す情報であってもよい。上記の変更情報は、第2変更情報の一例であってよい。管理装置140は、上記の変更情報を取得し、格納部650に格納してよい。   In yet another embodiment, the user operates the input terminal 160 to input information indicating that a new object is arranged inside the target area 202, and transmits the information to the management device 140. The above information may be an example of change information. The information indicating that a new object is placed inside the target area 202 may be information indicating that a new object is placed inside the target area 202. It may be information indicating that a new object is placed inside 202. The change information described above may be an example of the second change information. The management device 140 may acquire the change information and store it in the storage unit 650.

ユーザは、入力端末160を操作して、上記の新たな物体の位置、姿勢、形状及び大きさを示す情報を入力し、当該情報を管理装置140に送信する。上記の情報は、第2モデル情報の一例であってよい。管理装置140は、上記の情報を取得し、格納部650に格納してよい。   The user operates the input terminal 160 to input the information indicating the position, orientation, shape, and size of the new object, and transmits the information to the management device 140. The above information may be an example of the second model information. The management device 140 may acquire the above information and store it in the storage unit 650.

本実施形態において、システム管理部640は、実行装置120を管理する。例えば、システム管理部640は、実行装置120の動作を制御する。システム管理部640は、実行装置120の制御パラメータを決定することで、実行装置120の動作を制御してよい。システム管理部640は、実行装置120の動作を制御するための各種の設定情報を管理してよい。システム管理部640の詳細は後述される。   In this embodiment, the system management unit 640 manages the execution device 120. For example, the system management unit 640 controls the operation of the execution device 120. The system management unit 640 may control the operation of the execution device 120 by determining the control parameter of the execution device 120. The system management unit 640 may manage various setting information for controlling the operation of the execution device 120. Details of the system management unit 640 will be described later.

本実施形態において、格納部650は、各種の情報を取得する。一実施形態において、格納部650は、シミュレーションモデルに関する情報を格納する。格納部650は、対象領域202の内部に配置される1以上の物体の位置、姿勢、形状及び大きさを示す情報を格納してよい。格納部650は、対象領域202の内部に配置される1以上の物体のうち、その位置、姿勢、形状及び大きさの少なくとも1つが変更される物体に関する情報であって、変更後の位置、姿勢、形状及び大きさの少なくとも1つを示す情報を格納してよい。格納部650は、対象領域202から削除される物体に関する情報を格納してもよい。格納部650は、対象領域202に新たに追加される物体の位置、姿勢、形状及び大きさを示す情報を格納してよい。   In the present embodiment, the storage unit 650 acquires various types of information. In one embodiment, the storage unit 650 stores information regarding the simulation model. The storage unit 650 may store information indicating the position, orientation, shape, and size of one or more objects arranged inside the target area 202. The storage unit 650 is information regarding an object whose at least one of the position, orientation, shape, and size is changed among the one or more objects arranged inside the target area 202, and the changed position and orientation. , Information indicating at least one of shape and size may be stored. The storage unit 650 may store information regarding the object deleted from the target area 202. The storage unit 650 may store information indicating the position, orientation, shape, and size of an object newly added to the target area 202.

他の実施形態において、格納部650は、ロボット214の作業に関する情報を格納する。格納部650は、作業スケジュールを示す情報を格納する。例えば、格納部650は、1又は複数の作業のそれぞれについて、作業の識別情報と、作業対象の識別情報と、作業が実行される時刻を示す情報と、作業が実行される地点を示す情報と、作業の内容を示す情報とを対応付けて格納する。   In another embodiment, the storage unit 650 stores information regarding the work of the robot 214. The storage unit 650 stores information indicating a work schedule. For example, the storage unit 650 stores, for each of one or a plurality of works, work identification information, work identification information, information indicating a time at which the work is executed, and information indicating a point at which the work is executed. , And the information indicating the content of the work are stored in association with each other.

格納部650は、一連の作業に関する作業ツール222の軌道を示す情報を格納してよい。格納部650は、作業ツール222の全体軌道を示す情報を格納してもよく、当該全体軌道を構成する複数の単位軌道のそれぞれを示す情報を格納してもよい。作業ツール222の軌道を示す情報は、作業ツール222の位置及び姿勢を示す情報の集合であってよい。作業ツール222の全体軌道又は単位軌道を示す情報は、作業ツール222の移動が開始されてからの経過時間を示す情報と、作業ツール222の位置及び姿勢を示す情報とが対応付けられた情報であってよい。   The storage unit 650 may store information indicating the trajectory of the work tool 222 regarding a series of works. The storage unit 650 may store information indicating the entire trajectory of the work tool 222, or may store information indicating each of a plurality of unit trajectories forming the overall trajectory. The information indicating the trajectory of the work tool 222 may be a set of information indicating the position and orientation of the work tool 222. The information indicating the entire trajectory or unit trajectory of the work tool 222 is information in which information indicating the elapsed time from the start of movement of the work tool 222 and information indicating the position and orientation of the work tool 222 are associated with each other. You can

図7は、システム管理部640の内部構成の一例を概略的に示す。本実施形態において、システム管理部640は、検出部720と、調整部730と、システム制御部740とを備える。   FIG. 7 schematically shows an example of the internal configuration of the system management unit 640. In this embodiment, the system management unit 640 includes a detection unit 720, an adjustment unit 730, and a system control unit 740.

検出部720は、変更情報取得部の一例であってよい。調整部730は、制御装置、分類部、軌道情報取得部、軌道計画部及び軌道決定部の一例であってよい。システム制御部740は、出力部の一例であってよい。   The detection unit 720 may be an example of a change information acquisition unit. The adjustment unit 730 may be an example of a control device, a classification unit, a trajectory information acquisition unit, a trajectory planning unit, and a trajectory determination unit. The system control unit 740 may be an example of an output unit.

本実施形態において、検出部720は、(i)実行装置120の構造に変更が生じたこと、(ii)実行装置120の設定に変更が生じたこと、(iii)実行装置120の対象物品が変更されたこと、又は、(iv)実行装置120の周辺環境に変更が生じたことを検出する。例えば、検出部720は、モデル管理部630が各種の変更情報を取得した場合に、当該変更情報に対応する事項に変更が発生したこと、又は、将来の近い時期に変更が発生することを検出する。検出部720は、対象領域202の内部に配された各種のセンサの出力を取得することで、上記の変更を検出してよい。検出部720は、各種の変更が検出されたことを示す情報を、調整部730に出力してよい。   In the present embodiment, the detection unit 720 determines that (i) the structure of the execution device 120 is changed, (ii) the setting of the execution device 120 is changed, and (iii) the target article of the execution device 120 is changed. The change is detected, or (iv) the change occurs in the environment around the execution device 120. For example, when the model management unit 630 acquires various kinds of change information, the detection unit 720 detects that a change has occurred in an item corresponding to the change information, or that a change will occur in the near future. To do. The detection unit 720 may detect the above-mentioned change by acquiring outputs of various sensors arranged inside the target area 202. The detection unit 720 may output information indicating that various changes have been detected to the adjustment unit 730.

実行装置120の構造に関する変更としては、ロボットアーム224の位置、姿勢、形状、大きさ、運動学パラメータ、及び、動力学パラメータの少なくとも1つに関する変更が例示される。実行装置120の設定に関する変更としては、作業ツール222の始点、終点、移動速度及び加速度少なくとも1つに関する変更、干渉マージンに関する変更などが例示される。   Examples of the change regarding the structure of the execution device 120 include a change regarding at least one of the position, posture, shape, size, kinematics parameter, and dynamics parameter of the robot arm 224. Examples of the change regarding the setting of the execution device 120 include a change regarding the start point, the end point, the moving speed and at least one of the work tool 222, a change regarding the interference margin, and the like.

本実施形態において、調整部730は、検出部720が各種の変更を検出した場合に、ロボット214の設定を調整する。例えば、調整部730は、検出された変更の内容に応じて、ロボット214の作業ツール222の軌道に関する設定を変更する。調整部730の詳細は後述される。   In the present embodiment, the adjustment unit 730 adjusts the settings of the robot 214 when the detection unit 720 detects various changes. For example, the adjustment unit 730 changes the setting related to the trajectory of the work tool 222 of the robot 214 according to the detected change content. Details of the adjusting unit 730 will be described later.

本実施形態において、システム制御部740は、ロボット214を制御する。例えば、システム制御部740は、マニピュレータ220の動作を制御するための制御情報を出力する。システム制御部740は、調整部730が決定した作業ツール222の軌道に基づいてマニピュレータ220の動作を制御するための制御情報を、ロボット214の駆動制御部250に出力する。   In this embodiment, the system control unit 740 controls the robot 214. For example, the system control unit 740 outputs control information for controlling the operation of the manipulator 220. The system control unit 740 outputs control information for controlling the operation of the manipulator 220 based on the trajectory of the work tool 222 determined by the adjustment unit 730 to the drive control unit 250 of the robot 214.

図8は、調整部730の内部構成の一例を概略的に示す。本実施形態において、調整部730は、基本情報取得部820と、シミュレーションモデル生成部830と、抽出部840と、軌道計画部850と、軌道決定部860とを備える。本実施形態において、抽出部840は、判定用モデル生成部842と、判定精度決定部844と、衝突判定部846と、区分判定部848とを有する。   FIG. 8 schematically shows an example of the internal configuration of the adjusting unit 730. In the present embodiment, the adjustment unit 730 includes a basic information acquisition unit 820, a simulation model generation unit 830, an extraction unit 840, a trajectory planning unit 850, and a trajectory determination unit 860. In the present embodiment, the extraction unit 840 includes a determination model generation unit 842, a determination accuracy determination unit 844, a collision determination unit 846, and a classification determination unit 848.

本実施形態において、基本情報取得部820は、ロボット214の設定を調整するために必要な情報(基本情報と称される場合がある。)を取得する。基本情報取得部820は、検出部720から、変更が検出されたことを示す情報と、当該変更の内容を示す情報とを取得してよい。例えば、検出部720が、特定の物体の位置、姿勢、形状及び大きさの少なくとも1つが変更されることを検出した場合、基本情報取得部820は、当該特定の物体の変更後の位置、姿勢、形状及び大きさを示す情報を取得する。   In the present embodiment, the basic information acquisition unit 820 acquires information necessary for adjusting the settings of the robot 214 (may be referred to as basic information). The basic information acquisition unit 820 may acquire, from the detection unit 720, information indicating that a change has been detected and information indicating the content of the change. For example, when the detection unit 720 detects that at least one of the position, posture, shape, and size of the specific object is changed, the basic information acquisition unit 820 determines that the position and posture of the specific object after the change are changed. , To obtain information indicating the shape and size.

基本情報取得部820は、格納部650を参照して、対象領域202の内部に配置された1以上の物体のぞれぞれの位置、姿勢、形状及び大きさを示す情報を取得してよい。基本情報取得部820は、格納部650を参照して、対象領域202の内部から削除される物体を識別する情報を取得してよい。基本情報取得部820は、格納部650を参照して、対象領域202の内部に追加される新たな物体の位置、姿勢、形状及び大きさを示す情報を取得してよい。基本情報取得部820は、格納部650を参照して、作業ツール222の軌道に関する情報を取得してよい。例えば、最新の全体軌道を構成する1又は複数の単位軌道を示す情報を取得する。   The basic information acquisition unit 820 may refer to the storage unit 650 to acquire information indicating the position, orientation, shape, and size of each of the one or more objects arranged inside the target region 202. . The basic information acquisition unit 820 may refer to the storage unit 650 to acquire information for identifying an object to be deleted from the inside of the target area 202. The basic information acquisition unit 820 may refer to the storage unit 650 to acquire information indicating the position, orientation, shape, and size of a new object added inside the target area 202. The basic information acquisition unit 820 may acquire the information regarding the trajectory of the work tool 222 by referring to the storage unit 650. For example, information indicating one or a plurality of unit trajectories forming the latest whole trajectory is acquired.

基本情報取得部820は、格納部650を参照して、干渉マージンの大きさを示す情報を取得してよい。基本情報取得部820は、格納部650を参照して、抽出部840における情報処理において使用される各種の設定に関する情報を取得してよい。例えば、基本情報取得部820は、(i)判定用モデル生成部842が、判定用モデルの大きさを決定するためのパラメータ、及び、(ii)判定精度決定部844が、判定精度を決定するためのパラメータの少なくとも一方を取得する。基本情報取得部820は、これらの基本情報を入力端末160から取得してもよい。   The basic information acquisition unit 820 may acquire the information indicating the size of the interference margin by referring to the storage unit 650. The basic information acquisition unit 820 may refer to the storage unit 650 to acquire information regarding various settings used in information processing in the extraction unit 840. For example, in the basic information acquisition unit 820, (i) the parameter for the determination model generation unit 842 to determine the size of the determination model, and (ii) the determination accuracy determination unit 844 determines the determination accuracy. To get at least one of the parameters. The basic information acquisition unit 820 may acquire these basic information from the input terminal 160.

本実施形態において、シミュレーションモデル生成部830は、作業ツール222の軌道を計画するためのシミュレーションモデルを生成する。一実施形態において、シミュレーションモデル生成部830は、(i)基本情報取得部820が取得した、対象領域202の内部に配置された1以上の物品のそれぞれのモデルと、(ii)判定用モデル生成部842が生成したマニピュレータ220のモデルとに基づいて、シミュレーションモデルを生成する。上記の1以上の物品は、対象領域202に新たに追加される物品を含んでよい。   In the present embodiment, the simulation model generation unit 830 generates a simulation model for planning the trajectory of the work tool 222. In one embodiment, the simulation model generation unit 830 includes (i) respective models of one or more articles arranged inside the target region 202 acquired by the basic information acquisition unit 820, and (ii) determination model generation. A simulation model is generated based on the model of the manipulator 220 generated by the unit 842. The one or more articles described above may include an article newly added to the target area 202.

他の実施形態において、シミュレーションモデル生成部830は、(i)基本情報取得部820が取得したマニピュレータ220のモデルと、(ii)判定用モデル生成部842が生成した、対象領域202の内部に配置された1以上の物品のそれぞれのモデルとに基づいて、シミュレーションモデルを生成する。上記の1以上の物品は、対象領域202に新たに追加される物品を含んでよい。   In another embodiment, the simulation model generation unit 830 arranges (i) the model of the manipulator 220 acquired by the basic information acquisition unit 820 and (ii) the target model 202 generated by the determination model generation unit 842. A simulation model is generated based on the created model of each of the one or more articles. The one or more articles described above may include an article newly added to the target area 202.

さらに他の実施形態において、シミュレーションモデル生成部830は、(i)判定用モデル生成部842が生成したマニピュレータ220のモデルと、(ii)対象領域202の内部に配置された1以上の物品の少なくとも一部に関する、判定用モデル生成部842が生成したモデルと、(iii)対象領域202の内部に配置された1以上の物品の残りの部分に関する、基本情報取得部820が取得したモデルと、に基づいて、シミュレーションモデルを生成する。上記の1以上の物品は、対象領域202に新たに追加される物品を含んでよい。   In yet another embodiment, the simulation model generation unit 830 includes (i) at least the model of the manipulator 220 generated by the determination model generation unit 842 and (ii) at least one of the articles arranged inside the target region 202. For some, the model generated by the determination model generation unit 842 and (iii) the model acquired by the basic information acquisition unit 820 for the remaining part of the one or more articles arranged inside the target region 202. Based on this, a simulation model is generated. The one or more articles described above may include an article newly added to the target area 202.

本実施形態において、抽出部840は、変更前の1又は複数の単位軌道を、(i)検出部720が検出した対象領域202の内部の変更に応じて、修正が必要となる単位軌道と、(ii)検出部720が検出した対象領域202の内部の変更が生じても、修正が必要ではない単位軌道とに分類する。抽出部840は、修正が必要となる単位軌道を示す情報を、軌道計画部850に出力してよい。一方、抽出部840は、修正が必要ではない単位軌道を示す情報を、軌道決定部860に出力してよい。   In the present embodiment, the extraction unit 840 selects one or more unit trajectories before the change as a unit orbit that needs to be corrected according to the change inside the target area 202 detected by the (i) detection unit 720, (Ii) Even if the inside of the target area 202 detected by the detection unit 720 is changed, it is classified into a unit trajectory that does not need to be corrected. The extraction unit 840 may output information indicating a unit trajectory that needs correction to the trajectory planning unit 850. On the other hand, the extraction unit 840 may output information indicating a unit trajectory that does not need to be corrected to the trajectory determination unit 860.

本実施形態において、判定用モデル生成部842は、基本情報取得部820が取得したモデルの一部を、その形状及び大きさの少なくとも一方をデフォルメした判定用モデルを生成する。判定用モデル生成部842は、生成された判定用モデルの位置、姿勢、形状及び大きさを示す情報を、シミュレーションモデル生成部830に出力してよい。判定用モデルの形状は、基本情報取得部820が取得したモデルの形状よりも簡略化されていてよい。   In the present embodiment, the determination model generation unit 842 generates a determination model in which at least one of the shape and size of a part of the model acquired by the basic information acquisition unit 820 is deformed. The determination model generation unit 842 may output information indicating the position, orientation, shape, and size of the generated determination model to the simulation model generation unit 830. The shape of the determination model may be simpler than the shape of the model acquired by the basic information acquisition unit 820.

一実施形態において、判定用モデル生成部842は、マニピュレータ220の大きさを拡大して、マニピュレータ220の判定用モデルを生成する。判定用モデル生成部842は、マニピュレータ220よりも大きく、マニピュレータ220よりも単純な形状を有するモデルを生成し、当該モデルを、マニピュレータ220の判定用モデルとして出力してもよい。   In one embodiment, the determination model generation unit 842 expands the size of the manipulator 220 to generate the determination model of the manipulator 220. The determination model generation unit 842 may generate a model that is larger than the manipulator 220 and has a simpler shape than the manipulator 220, and output the model as the determination model of the manipulator 220.

判定用モデル生成部842は、例えば、円柱形状、多角柱形状、球体形状、及び、これらの組み合わせであって、その内部に、マニピュレータ220の全体が収まるようなモデルを、マニピュレータ220の判定用モデルとして出力する。多角柱形としては、三角柱、四角柱、六角柱などが例示される。マニピュレータ220の判定用モデルは、第1拡大モデルの一例であってよい。   The determination model generation unit 842 uses, for example, a determination model of the manipulator 220 that has a cylindrical shape, a polygonal prism shape, a spherical shape, or a combination thereof, in which the entire manipulator 220 fits. Output as. Examples of polygonal prisms include triangular prisms, quadrangular prisms, and hexagonal prisms. The determination model of the manipulator 220 may be an example of the first enlarged model.

判定用モデル生成部842は、例えば、基本情報取得部820から、マニピュレータ220の大きさと、判定用モデルの大きさとの関係を示すパラメータを取得する。上記のパラメータは、マニピュレータ220の大きさに対する判定用モデルの大きさ(拡大率と称される場合がある。)を示すパラメータであってよい。判定用モデル生成部842は、上記のパラメータに基づいて、判定用モデルを生成してよい。上記のパラメータは、マニピュレータ220の外形と、判定用モデルの外形との距離の最小値が、干渉マージンよりも大きくなるように設定される。これにより、例えば、基本情報取得部820が取得したモデルの形状よりも簡略化された形状を有し、基本情報取得部820が取得したモデルよりも大きな判定用モデルが、ほぼリアルタイムに生成される。その結果、衝突判定部846が、少ない計算量で、比較的精度よく、衝突判定処理を実行することができる。   The determination model generation unit 842 acquires, for example, the parameter indicating the relationship between the size of the manipulator 220 and the determination model size from the basic information acquisition unit 820. The above parameter may be a parameter indicating the size of the determination model with respect to the size of the manipulator 220 (sometimes referred to as the enlargement ratio). The determination model generation unit 842 may generate the determination model based on the above parameters. The above parameters are set so that the minimum value of the distance between the outer shape of the manipulator 220 and the outer shape of the determination model is larger than the interference margin. As a result, for example, a determination model having a shape that is simpler than the shape of the model acquired by the basic information acquisition unit 820 and larger than the model acquired by the basic information acquisition unit 820 is generated in substantially real time. . As a result, the collision determination unit 846 can execute the collision determination processing with a small amount of calculation and relatively accurately.

また、上記のパラメータは、任意のタイミングで変更され得る。例えば、判定用モデル生成部842は、検出部720が対象領域202の内部の変更を検出したときに、上記のパラメータを決定する。判定用モデル生成部842は、変更の種類に応じて、上記のパラメータを決定してよい。変更の種類としては、マニピュレータ220の位置の変更、マニピュレータ220の姿勢の変更、マニピュレータ220の形状の変更、マニピュレータ220の大きさの変更、及び、これらの組み合わせが例示される。変更の種類は、対象領域202の内部へのマニピュレータ220の追加、対象領域202の内部からのマニピュレータ220の削除などが例示される。これにより、環境の変化に応じて、判定用モデルの大きさが適切に変更される。その結果、軌道の再計算により、環境の変化に応じた適切な軌道が得られる。   Further, the above parameters can be changed at any timing. For example, the determination model generation unit 842 determines the above parameters when the detection unit 720 detects a change inside the target area 202. The determination model generation unit 842 may determine the above parameters according to the type of change. Examples of the type of change include changing the position of the manipulator 220, changing the posture of the manipulator 220, changing the shape of the manipulator 220, changing the size of the manipulator 220, and combinations thereof. Examples of the type of change include addition of the manipulator 220 to the inside of the target area 202 and deletion of the manipulator 220 from the inside of the target area 202. As a result, the size of the determination model is appropriately changed according to changes in the environment. As a result, by recalculating the trajectory, an appropriate trajectory according to the change in the environment can be obtained.

他の実施形態において、判定用モデル生成部842は、対象領域202に配置される1以上の物体の少なくとも一部の大きさを拡大して、当該物体の判定用モデルを生成する。上記の物体は、マニピュレータ220以外の物体であってよい。上記の物体は、変更が検出された物体であってよい。上記の物体は、対象領域202に新たに配置される物体であってよい。上記の物体は、対象領域202から削除される物体であってよい。判定用モデル生成部842は、上記の物体よりも大きく、当該物体よりも単純な形状を有するモデルを生成し、当該モデルを、当該物体の判定用モデルとして出力してもよい。   In another embodiment, the determination model generation unit 842 expands the size of at least a part of one or more objects arranged in the target area 202 to generate a determination model of the object. The above-mentioned object may be an object other than the manipulator 220. The object may be an object whose change has been detected. The above-mentioned object may be an object newly arranged in the target area 202. The above-mentioned object may be an object deleted from the target area 202. The determination model generation unit 842 may generate a model that is larger than the object and has a simpler shape than the object, and outputs the model as a determination model for the object.

判定用モデル生成部842は、例えば、円柱形状、多角柱形状、球体形状、及び、これらの組み合わせであって、その内部に、上記の物体の全体が収まるようなモデルを、当該物体の判定用モデルとして出力する。多角柱形としては、三角柱、四角柱、六角柱などが例示される。対象領域202に配置された物体の判定用モデルは、第2拡大モデルの一例であってよい。   The determination model generation unit 842 uses, for example, a model having a cylindrical shape, a polygonal prism shape, a spherical shape, or a combination thereof, in which the whole of the above-mentioned object fits, for the determination of the object. Output as a model. Examples of polygonal prisms include triangular prisms, quadrangular prisms, and hexagonal prisms. The determination model of the object placed in the target area 202 may be an example of the second enlarged model.

判定用モデル生成部842は、例えば、基本情報取得部820から、対象領域202に配置される各物体の大きさと、判定用モデルの大きさとの関係を示すパラメータを取得する。上記のパラメータは、各物体の大きさに対する判定用モデルの大きさ(拡大率と称される場合がある。)を示すパラメータであってよい。判定用モデル生成部842は、上記のパラメータに基づいて、判定用モデルを生成してよい。上記のパラメータは、各物体の外形と、判定用モデルの外形との距離の最小値が、干渉マージンよりも大きくなるように設定される。これにより、例えば、基本情報取得部820が取得したモデルの形状よりも簡略化された形状を有し、基本情報取得部820が取得したモデルよりも大きな判定用モデルが、ほぼリアルタイムに生成される。その結果、衝突判定部846が、少ない計算量で、比較的精度よく、衝突判定処理を実行することができる。   The determination model generation unit 842 acquires, for example, from the basic information acquisition unit 820, a parameter indicating the relationship between the size of each object placed in the target region 202 and the size of the determination model. The above parameters may be parameters indicating the size of the determination model with respect to the size of each object (sometimes referred to as the enlargement ratio). The determination model generation unit 842 may generate the determination model based on the above parameters. The above parameters are set so that the minimum value of the distance between the outer shape of each object and the outer shape of the determination model is larger than the interference margin. As a result, for example, a determination model having a shape that is simpler than the shape of the model acquired by the basic information acquisition unit 820 and larger than the model acquired by the basic information acquisition unit 820 is generated in substantially real time. . As a result, the collision determination unit 846 can execute the collision determination processing with a small amount of calculation and relatively accurately.

また、上記のパラメータは、任意のタイミングで変更され得る。例えば、判定用モデル生成部842は、検出部720が対象領域202の内部の変更を検出したときに、上記のパラメータを決定する。判定用モデル生成部842は、変更の種類に応じて、上記のパラメータを決定してよい。変更の種類としては、物体の位置の変更、物体の姿勢の変更、物体の形状の変更、物体の大きさの変更、及び、これらの組み合わせが例示される。変更の種類は、対象領域202の内部への物体の追加、対象領域202の内部からの物体の削除などが例示される。これにより、環境の変化に応じて、判定用モデルの大きさが適切に変更される。その結果、軌道の再計算により、環境の変化に応じた適切な軌道が得られる。   Further, the above parameters can be changed at any timing. For example, the determination model generation unit 842 determines the above parameters when the detection unit 720 detects a change inside the target area 202. The determination model generation unit 842 may determine the above parameters according to the type of change. Examples of the type of change include changing the position of the object, changing the posture of the object, changing the shape of the object, changing the size of the object, and combinations thereof. Examples of the type of change include addition of an object to the inside of the target area 202 and deletion of an object from the inside of the target area 202. As a result, the size of the determination model is appropriately changed according to changes in the environment. As a result, by recalculating the trajectory, an appropriate trajectory according to the change in the environment can be obtained.

本実施形態において、判定精度決定部844は、衝突判定部846における判定精度を示すパラメータの値を決定する。後述のとおり、衝突判定部846は、単位軌道上のM個(Mは、1以上の整数である。)の地点において、衝突判定処理を実行する。つまり、1つの単位軌道について、M回の衝突判定処理が実行される。判定精度を示すパラメータは、各単位軌道について衝突判定処理が実行される間隔であってもよく、各単位軌道について衝突判定処理が実行される回数Mであってもよい。   In the present embodiment, the determination accuracy determination unit 844 determines the value of the parameter indicating the determination accuracy in the collision determination unit 846. As described below, the collision determination unit 846 executes the collision determination process at M points (M is an integer of 1 or more) on the unit trajectory. That is, the collision determination process is performed M times for one unit trajectory. The parameter indicating the determination accuracy may be the interval at which the collision determination process is performed for each unit trajectory, or the number M of times the collision determination process is performed for each unit trajectory.

一実施形態において、判定精度決定部844は、マニピュレータ220の大きさ、及び、マニピュレータ220の判定用モデルの大きさの少なくとも一方に基づいて、判定精度を示すパラメータの値を決定する。判定精度決定部844は、マニピュレータ220の大きさと、判定用モデルの大きさとの関係を示すパラメータの値に基づいて、判定精度を示すパラメータの値を決定してよい。   In one embodiment, the determination accuracy determination unit 844 determines the value of the parameter indicating the determination accuracy based on at least one of the size of the manipulator 220 and the size of the determination model of the manipulator 220. The determination accuracy determination unit 844 may determine the value of the parameter indicating the determination accuracy based on the value of the parameter indicating the relationship between the size of the manipulator 220 and the size of the determination model.

例えば、判定精度決定部844は、マニピュレータ220の大きさが大きいほど、上記のMの値が大きくなるように、判定精度を示すパラメータの値を決定する。判定精度決定部844は、マニピュレータ220の大きさが大きいほど、上記のMの値が小さくなるように、判定精度を示すパラメータの値を決定してもよい。   For example, the determination accuracy determination unit 844 determines the value of the parameter indicating the determination accuracy such that the larger the size of the manipulator 220, the larger the value of M described above. The determination accuracy determination unit 844 may determine the value of the parameter indicating the determination accuracy such that the larger the size of the manipulator 220, the smaller the value of M described above.

例えば、判定精度決定部844は、マニピュレータ220の大きさに対する、マニピュレータ220の判定用モデルの大きさが大きいほど(つまり、判定用モデルの拡大率が大きいほど)、上記のMの値が大きくなるように、判定精度を示すパラメータの値を決定してよい。判定精度決定部844は、マニピュレータ220の大きさに対する、マニピュレータ220の判定用モデルの大きさが大きいほど、上記のMの値が小さくなるように、判定精度を示すパラメータの値を決定してもよい。   For example, the determination accuracy determination unit 844 increases the value of M as the size of the determination model of the manipulator 220 with respect to the size of the manipulator 220 increases (that is, the expansion rate of the determination model increases). Thus, the value of the parameter indicating the determination accuracy may be determined. The determination accuracy determination unit 844 determines the value of the parameter indicating the determination accuracy such that the larger the size of the determination model of the manipulator 220 with respect to the size of the manipulator 220, the smaller the value of M described above. Good.

他の実施形態において、判定精度決定部844は、対象領域202に配置された物体の大きさ、及び、当該物体の判定用モデルの大きさの少なくとも一方に基づいて、判定精度を示すパラメータの値を決定する。判定精度決定部844は、上記の物体の大きさと、判定用モデルの大きさとの関係を示すパラメータの値に基づいて、判定精度を示すパラメータの値を決定してもよい。   In another embodiment, the determination accuracy determination unit 844 sets the value of the parameter indicating the determination accuracy based on at least one of the size of the object placed in the target area 202 and the size of the determination model of the object. To decide. The determination accuracy determination unit 844 may determine the value of the parameter indicating the determination accuracy based on the value of the parameter indicating the relationship between the size of the object and the size of the determination model.

例えば、判定精度決定部844は、上記の物体の大きさが大きいほど、上記のMの値が大きくなるように、判定精度を示すパラメータの値を決定する。判定精度決定部844は、上記の物体の大きさが大きいほど、上記のMの値が小さくなるように、判定精度を示すパラメータの値を決定してもよい。   For example, the determination accuracy determination unit 844 determines the value of the parameter indicating the determination accuracy such that the larger the size of the object, the larger the value of M described above. The determination accuracy determination unit 844 may determine the value of the parameter indicating the determination accuracy such that the larger the size of the object is, the smaller the value of M is.

例えば、判定精度決定部844は、上記の物体の大きさに対する、当該物体の判定用モデルの大きさが大きいほど(つまり、判定用モデルの拡大率が大きいほど)、上記のMの値が大きくなるように、判定精度を示すパラメータの値を決定する。判定精度決定部844は、上記の物体の大きさに対する、当該物体の判定用モデルの大きさが大きいほど(つまり、判定用モデルの拡大率が大きいほど)、上記のMの値が小さくなるように、判定精度を示すパラメータの値を決定してもよい。   For example, the determination accuracy determination unit 844 increases the value of M as the size of the determination model of the object is larger than the size of the object (that is, the enlargement ratio of the determination model is larger). Therefore, the value of the parameter indicating the determination accuracy is determined. The determination accuracy determination unit 844 reduces the value of M as the size of the determination model of the object with respect to the size of the object is larger (that is, as the enlargement ratio of the determination model is larger). Alternatively, the value of the parameter indicating the determination accuracy may be determined.

他の実施形態において、判定精度決定部844は、関節空間におけるマニピュレータ220の動作と、現実空間におけるマニピュレータ220の動作との対応関係に基づいて、判定精度を示すパラメータの値を決定する。例えば、判定精度決定部844は、マニピュレータ220の自由度が大きいほど、上記のMの値が大きくなるように、判定精度を示すパラメータの値を決定する。判定精度決定部844は、マニピュレータ220の自由度が大きいほど、上記のMの値が小さくなるように、判定精度を示すパラメータの値を決定してもよい。   In another embodiment, the determination accuracy determination unit 844 determines the value of the parameter indicating the determination accuracy based on the correspondence between the operation of the manipulator 220 in the joint space and the operation of the manipulator 220 in the real space. For example, the determination accuracy determination unit 844 determines the value of the parameter indicating the determination accuracy such that the greater the degree of freedom of the manipulator 220, the greater the value of M described above. The determination accuracy determination unit 844 may determine the value of the parameter indicating the determination accuracy such that the value of M becomes smaller as the degree of freedom of the manipulator 220 increases.

本実施形態において、衝突判定部846は、シミュレーションモデル生成部830が生成したシミュレーションモデルを利用して、1又は複数の単位軌道のそれぞれについて、衝突判定処理を実行する。衝突判定処理では、いくつかの不等式の成否を判定することで、2つの物体の衝突を判定することができる。これにより、比較的少ない計算量で干渉の有無を判定することができる。   In the present embodiment, the collision determination unit 846 uses the simulation model generated by the simulation model generation unit 830 to execute the collision determination process for each of one or more unit trajectories. In the collision determination process, the collision of two objects can be determined by determining the success or failure of some inequalities. As a result, the presence or absence of interference can be determined with a relatively small amount of calculation.

干渉の有無を判定する他の方法としては、2つの物体の最短距離を算出して、当該最短距離に基づいて、干渉の有無を判定することが考えられる(距離判定と称される場合がある)。しかしながら、距離判定においては、一方の物体の外形上の複数の点のそれぞれについて、他方の物体の外形上の複数の点のそれぞれとの距離を計算する必要があり、計算量が膨大になる。   As another method for determining the presence / absence of interference, it is possible to calculate the shortest distance between two objects and determine the presence / absence of interference based on the shortest distance (sometimes referred to as distance determination). ). However, in the distance determination, it is necessary to calculate the distance between each of the plurality of points on the outer shape of one object and each of the plurality of points on the outer shape of the other object, which results in an enormous amount of calculation.

本実施形態によれば、衝突判定部846は、マニピュレータ220、及び、対象領域202の内部に配されたマニピュレータ220以外の物体の少なくとも一方がデフォルメされたモデルを利用して、衝突判定処理を実行する。これにより、マニピュレータ220及び上記の物体との距離を算出して、軌道を計算し直すか否かを決定する場合と比較して、計算量を数百分の一程度に抑制することができる。   According to the present embodiment, the collision determination unit 846 executes the collision determination process using the manipulator 220 and the model in which at least one of the objects other than the manipulator 220 arranged inside the target area 202 is deformed. To do. As a result, the amount of calculation can be suppressed to a few hundredth of that in the case where the distance between the manipulator 220 and the object is calculated and it is determined whether or not to recalculate the trajectory.

例えば、衝突判定部846は、マニピュレータ220又はその一部(例えば、作業ツール222又はロボットアーム224である。)が拡大されたモデルと、ワーク20、障害物320及び障害物420の実寸大のモデルとを利用して、衝突判定処理を実行する。衝突判定部846は、マニピュレータ220及びワーク20の実寸大モデルと、障害物320及び障害物420が拡大されたモデルとを利用して、衝突判定処理を実行してもよい。衝突判定部846は、ワーク20の実寸大モデルと、マニピュレータ220又はその一部(例えば、作業ツール222又はロボットアーム224である。)が拡大されたモデルと、障害物320及び障害物420が拡大されたモデルとを利用して、衝突判定処理を実行してもよい。衝突判定部846は、ワーク20が拡大されたモデルを利用して、衝突判定処理を実行してもよい。   For example, the collision determination unit 846 is a model in which the manipulator 220 or a part thereof (for example, the work tool 222 or the robot arm 224) is enlarged, and a full-scale model of the work 20, the obstacle 320, and the obstacle 420. And are used to execute the collision determination process. The collision determination unit 846 may execute the collision determination process by using the full-scale model of the manipulator 220 and the work 20, and the model in which the obstacle 320 and the obstacle 420 are enlarged. The collision determination unit 846 includes an actual size model of the work 20, a model in which the manipulator 220 or a part thereof (for example, the work tool 222 or the robot arm 224) is enlarged, and obstacles 320 and 420 are enlarged. The collision determination process may be executed using the created model. The collision determination unit 846 may execute the collision determination process using the model in which the work 20 is enlarged.

衝突判定部846は、全体軌道を構成する1又は複数の単位軌道のそれぞれについて、各単位軌道上のM個の地点において、(i)対象領域202に配置された1以上の物体のそれぞれのモデル又は判定用モデルと、(ii)マニピュレータ220の判定用モデルとの衝突の有無を判定してよい。衝突判定部846は、全体軌道を構成する1又は複数の単位軌道のそれぞれについて、各単位軌道上のM個の地点において、(i)対象領域202に配置された1以上の物体うち、変更が検出された物体のモデル又は判定用モデルと、(ii)マニピュレータ220の判定用モデルとの衝突の有無を判定してよい。   The collision determination unit 846, for each of one or a plurality of unit trajectories forming the entire trajectory, at (i) each model of one or more objects arranged in the target region 202 at M points on each unit trajectory. Alternatively, it may be determined whether or not there is a collision between the determination model and the determination model of the manipulator 220 (ii). The collision determination unit 846 determines, for each of one or a plurality of unit trajectories forming the entire trajectory, the change among (i) one or more objects arranged in the target region 202 at M points on each unit trajectory. The presence or absence of a collision between the detected object model or the determination model and (ii) the determination model of the manipulator 220 may be determined.

衝突判定部846は、全体軌道を構成する1又は複数の単位軌道のそれぞれについて、各単位軌道上のM個の地点において、(i)対象領域202に配置された1以上の物体のそれぞれの判定用モデルと、(ii)マニピュレータ220のモデル又は判定用モデルとの衝突の有無を判定してよい。衝突判定部846は、全体軌道を構成する1又は複数の単位軌道のそれぞれについて、各単位軌道上のM個の地点において、(i)対象領域202に配置された1以上の物体うち、変更が検出された物体の判定用モデルと、(ii)マニピュレータ220のモデル又は判定用モデルとの衝突の有無を判定してよい。   The collision determination unit 846 determines (i) each of one or more objects arranged in the target region 202 at M points on each unit trajectory for each of one or more unit trajectories forming the entire trajectory. Whether or not there is a collision between the operation model and the (ii) model of the manipulator 220 or the determination model may be determined. The collision determination unit 846 determines, for each of one or a plurality of unit trajectories forming the entire trajectory, the change among (i) one or more objects arranged in the target region 202 at M points on each unit trajectory. The presence / absence of a collision between the determination model of the detected object and (ii) the model of the manipulator 220 or the determination model may be determined.

上記の対象領域202に配置された1以上の物体には、対象領域202の内部に新たに追加される物体が含まれてよい。上記の対象領域202に配置された1以上の物体には、対象領域202の内部から除去される物体が含まれてよい。これにより、抽出部840は、図5に関連して説明された実施形態において、より適切な単位軌道が存在する可能性の高い単位軌道を抽出することができる。   The one or more objects arranged in the target area 202 may include an object newly added inside the target area 202. The one or more objects arranged in the target area 202 may include an object removed from the inside of the target area 202. Accordingly, the extraction unit 840 can extract the unit trajectory in which the more appropriate unit trajectory is likely to exist in the embodiment described with reference to FIG.

判定モデルを利用した衝突判定処理により、特定の単位軌道上において、位置、姿勢、形状及び大きさの少なくとも1つに関する変更が検出された物体と、マニピュレータ220とが衝突すると判定された場合、当該単位軌道は、例えば、上記の変更が検出された物体との関連具合が大きな単位軌道であると判定される。上記の単位軌道は、軌道を計画し直す必要性の高い単位軌道であると判定されてもよい。   When it is determined by the collision determination process using the determination model that the manipulator 220 collides with the object in which a change in at least one of the position, orientation, shape, and size is detected on a specific unit trajectory, The unit trajectory is determined to be, for example, a unit trajectory having a high degree of association with the object in which the change is detected. The above unit orbit may be determined to be a unit orbit for which it is highly necessary to replan the orbit.

上記の変更が検出された物体が、対象領域202の内部から削除される物体である場合、当該物体が削除前の位置に存在していると仮定して、上記と同様の手順により、衝突判定処理が実行されてよい。上記の衝突判定処理により、特定の単位軌道上において、削除される物体と、マニピュレータ220とが衝突すると判定された場合、当該単位軌道は、例えば、上記の削除される物体との関連具合が大きな単位軌道であると判定される。上記の単位軌道は、軌道を計画し直す必要性の高い単位軌道であると判定されてもよい。   When the object in which the change is detected is an object to be deleted from the inside of the target area 202, it is assumed that the object exists at the position before the deletion, and collision determination is performed by the same procedure as above. Processing may be performed. When it is determined by the collision determination process that the object to be deleted collides with the manipulator 220 on a specific unit trajectory, the unit trajectory has a large degree of association with the object to be deleted, for example. It is determined to be a unit orbit. The above unit orbit may be determined to be a unit orbit for which it is highly necessary to replan the orbit.

衝突判定部846は、単位軌道上のM個の地点の全てについて、衝突判定処理を実行しなくてもよい。単位軌道上の1つの地点について、衝突が発生すると判定された場合、衝突判定部846は、上記M個の地点のうち、衝突判定処理が実行されていない地点の衝突判定処理をスキップしてよい。これにより、計算量をさらに削減することができる。   The collision determination unit 846 does not have to execute the collision determination process for all M points on the unit trajectory. When it is determined that a collision will occur with respect to one point on the unit orbit, the collision determination unit 846 may skip the collision determination process of the M number of points where the collision determination process is not executed. . Thereby, the calculation amount can be further reduced.

同様にして、衝突判定部846は、1又は複数の単位軌道のそれぞれについて、各軌道上のM個の地点において、(i)対象領域202に配置された1以上の物体の少なくとも1つの判定用モデルと、(ii)マニピュレータ220の判定用モデルとの衝突の有無を判定してよい。衝突判定部846は、1又は複数の単位軌道のそれぞれについて、各軌道上のM個の地点において、(i)対象領域202に配置された1以上の物体のそれぞれの判定用モデルと、(ii)マニピュレータ220の判定用モデルとの衝突の有無を判定してよい。   Similarly, the collision determination unit 846, for each of the one or more unit trajectories, (i) for at least one determination of one or more objects arranged in the target region 202 at M points on each trajectory. Whether or not there is a collision between the model and the determination model of the (ii) manipulator 220 may be determined. The collision determination unit 846, for each of one or more unit trajectories, at (i) M points on each orbit, (i) each determination model of one or more objects arranged in the target area 202, and (ii) ) The presence or absence of a collision with the determination model of the manipulator 220 may be determined.

同様にして、衝突判定部846は、1又は複数の単位軌道のそれぞれについて、各軌道上のM個の地点において、(i)対象領域202に配置された1以上の物体の少なくとも1つの判定用モデルと、(ii)マニピュレータ220のモデルとの衝突の有無を判定してよい。衝突判定部846は、1又は複数の単位軌道のそれぞれについて、各軌道上のM個の地点において、(i)対象領域202に配置された1以上の物体のそれぞれの判定用モデルと、(ii)マニピュレータ220のモデルとの衝突の有無を判定してよい。   Similarly, the collision determination unit 846, for each of the one or more unit trajectories, (i) for at least one determination of one or more objects arranged in the target region 202 at M points on each trajectory. Whether or not there is a collision between the model and the model of the (ii) manipulator 220 may be determined. The collision determination unit 846, for each of one or more unit trajectories, at (i) M points on each orbit, (i) each determination model of one or more objects arranged in the target area 202, and (ii) ) The presence or absence of a collision with the model of the manipulator 220 may be determined.

本実施形態において、区分判定部848は、全体軌道を構成する1又は複数の単位軌道のそれぞれを、修正が必要となる単位軌道と、修正を必要ではない単位軌道とに区分けする。区分判定部848は、1又は複数の単位軌道のうち、衝突判定部846が当該単位軌道上の少なくとも1つの地点において衝突が発生すると判定した単位軌道を、修正が必要となる軌道であると判定する。衝突判定部846が当該単位軌道上の少なくとも1つの地点において衝突が発生すると判定した単位軌道は、対象領域202に配置された1以上の物体との関連具合の大きな軌道の一例であってよい。   In the present embodiment, the classification determination unit 848 classifies each of the one or more unit trajectories forming the entire trajectory into a unit trajectory that needs to be corrected and a unit trajectory that does not need to be corrected. The division determination unit 848 determines that the unit trajectory that the collision determination unit 846 has determined to cause a collision at at least one point on the unit trajectory among the one or more unit trajectories is a trajectory that needs to be corrected. To do. The unit trajectory determined by the collision determination unit 846 that a collision occurs at at least one point on the unit trajectory may be an example of a trajectory having a high degree of association with one or more objects arranged in the target area 202.

区分判定部848は、1又は複数の単位軌道のうち、衝突判定部846が当該単位軌道上のM個の地点の全てにおいて衝突が発生しないと判定した単位軌道を、修正が必要ではない軌道であると判定してもよい。修正が必要ではない単位軌道は、全体軌道を構成する1又は複数の単位軌道から、修正が必要となる単位軌道を除外することで決定されてもよい。衝突判定部846が当該単位軌道上のM個の地点の全てにおいて衝突が発生しないと判定した単位軌道は、対象領域202に配置された1以上の物体との関連具合の小さな軌道の一例であってよい。   The classification determination unit 848 determines, among the one or more unit trajectories, the unit trajectory determined by the collision determination unit 846 that collision does not occur at all of the M points on the unit trajectory with a trajectory that does not need to be corrected. It may be determined that there is. The unit trajectory that does not need to be corrected may be determined by excluding the unit trajectory that needs to be corrected from the one or more unit trajectories forming the entire trajectory. The unit trajectory determined by the collision determination unit 846 that collision does not occur at all M points on the unit trajectory is an example of a trajectory having a small degree of association with one or more objects arranged in the target area 202. You may

本実施形態において、区分判定部848は、修正が必要となる単位軌道を示す情報を、軌道計画部850に出力する。区分判定部848は、修正が必要ではない単位軌道を示す情報を、軌道決定部860に出力してもよい。   In the present embodiment, the classification determination unit 848 outputs information indicating the unit trajectory that needs to be corrected to the trajectory planning unit 850. The section determination unit 848 may output information indicating a unit trajectory that does not need to be corrected to the trajectory determination unit 860.

本実施形態において、軌道計画部850は、修正が必要となる単位軌道のそれぞれについて、作業ツール222の軌道を計画する。各単位軌道の軌道を計画する方法は、特に限定されない。例えば、軌道計画部850は、特許第6325174号に記載された手順に従って、各単位軌道の軌道を計画してよい。   In the present embodiment, the trajectory planning unit 850 plans the trajectory of the work tool 222 for each unit trajectory that needs to be corrected. The method of planning the trajectory of each unit trajectory is not particularly limited. For example, the trajectory planning unit 850 may plan the trajectory of each unit trajectory according to the procedure described in Japanese Patent No. 6325174.

軌道計画部850は、マニピュレータ220のモデルと、対象領域202に配置された1以上の物体のモデルとを用いて構築されたシミュレーションモデルを利用して、作業ツール222の軌道を計画してよい。この場合のモデルは、デフォルメされた判定用モデルではなく、現実のマニピュレータ220及び物体を再現したモデルである。また、本実施形態において、上記の1以上の物体のモデルは、対象領域202に新たに追加される物体のモデルを含む。また、上記の1以上の物体のモデルには、対象領域202から除去された物体のモデルは含まれない。   The trajectory planning unit 850 may plan the trajectory of the work tool 222 using a simulation model constructed using a model of the manipulator 220 and a model of one or more objects arranged in the target area 202. The model in this case is not a deformed determination model but a model that reproduces the actual manipulator 220 and the object. Further, in the present embodiment, the one or more object models include the object model newly added to the target area 202. Further, the model of one or more objects does not include the model of the object removed from the target area 202.

本実施形態において、軌道決定部860は、作業ツール222の全体軌道を決定する。例えば、軌道決定部860は、(i)抽出部840において修正が必要と判定された単位軌道に関して、軌道計画部850が計画し直した単位軌道の軌道を示す情報と、(ii)抽出部840において修正が必要ではないと判定された単位軌道の軌道を示す情報とに基づいて、一連の作業を通した作業ツール222の軌道を決定する。   In the present embodiment, the trajectory determination unit 860 determines the overall trajectory of the work tool 222. For example, the trajectory determination unit 860 (i) information indicating the trajectory of the unit trajectory re-planned by the trajectory planning unit 850 regarding the unit trajectory determined to be corrected by the extraction unit 840, and (ii) the extraction unit 840. The trajectory of the work tool 222 through a series of operations is determined based on the information indicating the trajectory of the unit trajectory determined not to require correction in.

以上のとおり、本実施形態によれば、調整部730が、変更が検出された物体、及び、マニピュレータ220の少なくとも一方について、現実の寸法よりも大きな判定用モデルを用いてシミュレーションモデルを構築した上で、全体軌道を構成する全ての単位軌道について、両者の衝突判定処理を実行する。その後、調整部730は、上記の衝突判定処理において両者が衝突すると判定された単位軌道を計画し直す。一方、上記の衝突判定処理において両者が衝突しないと判定された単位軌道を再利用する。これにより、極めて短時間で、変更に応じた適切な全体軌道を生成することができる。   As described above, according to the present embodiment, the adjusting unit 730 builds a simulation model using at least one of the object in which the change is detected and the manipulator 220 by using the determination model larger than the actual size. Then, the collision determination process of the both is executed for all the unit trajectories forming the entire trajectory. After that, the adjustment unit 730 replans the unit trajectory determined to collide with each other in the above collision determination processing. On the other hand, the unit orbit that is determined not to collide with each other in the above collision determination processing is reused. This makes it possible to generate an appropriate overall trajectory according to the change in an extremely short time.

以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。また、技術的に矛盾しない範囲において、特定の実施形態について説明した事項を、他の実施形態に適用することができる。また、各構成要素は、名称が同一で、参照符号が異なる他の構成要素と同様の特徴を有してもよい。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。   Although the present invention has been described using the embodiments, the technical scope of the present invention is not limited to the scope described in the above embodiments. It is apparent to those skilled in the art that various modifications and improvements can be added to the above-described embodiment. Further, the matters described in the specific embodiment can be applied to other embodiments within a technically consistent range. Further, each component may have the same characteristics as other components having the same name but different reference signs. It is apparent from the scope of the claims that the embodiments added with such modifications or improvements can be included in the technical scope of the present invention.

特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。   The execution order of each process such as operation, procedure, step, and step in the device, system, program, and method shown in the claims, the specification, and the drawings is, in particular, “before” or “prior to”. It should be noted that the output of the previous process can be realized in any order unless the output of the previous process is used in the subsequent process. Even if the operation flow in the claims, the specification, and the drawings is described by using “first,” “next,” and the like for convenience, it means that it is essential to carry out in this order. Not a thing.

10 通信ネットワーク、20 ワーク、22 凸部、32 作業点、34 作業点、36 作業点、38 作業点、100 作業システム、120 実行装置、140 管理装置、160 入力端末、202 対象領域、212 コンベア、214 ロボット、220 マニピュレータ、222 作業ツール、224 ロボットアーム、230 台座、232 レール、240 駆動部、250 駆動制御部、320 障害物、340 全体軌道、342 単位軌道、344 単位軌道、346 単位軌道、420 障害物、620 通信制御部、630 モデル管理部、640 システム管理部、650 格納部、720 検出部、730 調整部、740 システム制御部、820 基本情報取得部、830 シミュレーションモデル生成部、840 抽出部、842 判定用モデル生成部、844 判定精度決定部、846 衝突判定部、848 区分判定部、850 軌道計画部、860 軌道決定部   10 communication network, 20 work, 22 convex part, 32 work point, 34 work point, 36 work point, 38 work point, 100 work system, 120 execution device, 140 management device, 160 input terminal, 202 target area, 212 conveyor, 214 robot, 220 manipulator, 222 work tool, 224 robot arm, 230 pedestal, 232 rail, 240 drive part, 250 drive control part, 320 obstacle, 340 whole track, 342 unit track, 344 unit track, 346 unit track, 420 Obstacle, 620 communication control unit, 630 model management unit, 640 system management unit, 650 storage unit, 720 detection unit, 730 adjustment unit, 740 system control unit, 820 basic information acquisition unit, 830 simulation model generation unit, 840 extraction unit , 42 decision model generation unit, 844 determination accuracy determination unit, 846 the collision determination unit, 848 category determination unit 850 trajectory planning unit, 860 orbit determination unit

Claims (11)

マニピュレータを用いて対象領域の内部で作業を実行する作業ロボットの動作を制御する制御装置であって、
(i)前記対象領域の内部に配置された1以上の物体の少なくとも1つに関する情報であって、前記少なくとも1つの物体の位置、姿勢、形状及び大きさの少なくとも1つに関する変更の発生を示す第1変更情報、及び、(ii)前記対象領域の内部に新たな物体が配置されることを示す第2変更情報の少なくとも一方を取得する変更情報取得部と、
(i)前記変更が生じた後の前記1以上の物体のぞれぞれの位置、姿勢、形状及び大きさを示す第1モデル情報、及び、(ii)前記新たな物体の位置、姿勢、形状及び大きさを示す第2モデル情報の少なくとも一方を取得するモデル情報取得部と、
前記作業ロボットが一連の作業を実行するN個の作業領域を、前記一連の作業の順番に結ぶN−1個又はN個の軌道のそれぞれを示す、N−1個又はN個の軌道情報を取得する軌道情報取得部と、
前記N−1個又はN個の軌道を、(i)前記第1変更情報及び前記第2変更情報の少なくとも一方により示される前記対象領域の内部の変更に応じて、修正が必要となる軌道、及び、(ii)前記第1変更情報及び前記第2変更情報の少なくとも一方により示される前記対象領域の内部の変更が生じても、修正が必要ではない軌道に分類する分類部と、
前記分類部が、前記修正が必要となる軌道に分類した1以上の軌道のそれぞれについて、前記第1モデル情報及び前記第2モデル情報の少なくとも一方に基づいて、各軌道に関連する2個の作業領域の間における前記マニピュレータの先端の軌道を計画する軌道計画部と、
を備え、
前記Nは、2以上の整数である、
制御装置。
A control device for controlling the operation of a work robot that performs work inside a target area using a manipulator,
(I) Information on at least one of one or more objects arranged inside the target area, which indicates occurrence of a change in at least one of the position, orientation, shape, and size of the at least one object. A change information acquisition unit that acquires at least one of the first change information and (ii) second change information indicating that a new object is placed inside the target area;
(I) first model information indicating the position, orientation, shape and size of each of the one or more objects after the change has occurred, and (ii) the position, orientation of the new object, A model information acquisition unit that acquires at least one of the second model information indicating the shape and size;
N-1 or N trajectory information indicating N-1 or N trajectories connecting the N work areas in which the work robot executes a series of work in the order of the series of work, respectively. An orbit information acquisition unit to acquire,
The N-1 or N orbits, (i) orbits that need to be corrected according to the internal change of the target area indicated by at least one of the first change information and the second change information, And (ii) a classification unit that classifies the trajectory into a trajectory that does not need to be corrected even if the inside of the target area indicated by at least one of the first change information and the second change information occurs.
For each of the one or more trajectories classified by the classification unit into the trajectories that need to be corrected, two operations associated with each trajectory based on at least one of the first model information and the second model information. A trajectory planning unit that plans the trajectory of the tip of the manipulator between regions,
Equipped with
The N is an integer of 2 or more,
Control device.
(i)前記軌道計画部が計画した前記修正が必要となる軌道における、前記マニピュレータの先端の位置及び姿勢を示す情報と、(ii)前記軌道情報取得部が取得した前記修正が必要ではない軌道における、前記マニピュレータの先端の位置及び姿勢を示す情報とに基づいて、前記一連の作業を通した前記マニピュレータの先端の軌道を決定する軌道決定部をさらに備える、
請求項1に記載の制御装置。
(I) Information indicating the position and orientation of the tip of the manipulator in the trajectory planned by the trajectory planning unit that requires the correction, and (ii) the trajectory acquired by the trajectory information acquisition unit that does not require the correction. In, based on the information indicating the position and orientation of the tip of the manipulator, further comprising a trajectory determination unit that determines the trajectory of the tip of the manipulator through the series of operations,
The control device according to claim 1.
前記軌道決定部が決定した軌道に基づいて、前記マニピュレータの動作を制御するための制御情報を出力する出力部をさらに備える、
請求項2に記載の制御装置。
Based on the trajectory determined by the trajectory determination unit, further comprising an output unit for outputting control information for controlling the operation of the manipulator,
The control device according to claim 2.
前記軌道計画部は、前記作業ロボットが特定の種類の物品に特定の種類の作業を実行する前に、前記各軌道に関連する2個の作業領域の間における前記マニピュレータの先端の前記軌道を計画する、
請求項1から請求項3までの何れか一項に記載の制御装置。
The trajectory planning unit plans the trajectory of the tip of the manipulator between two work areas associated with each trajectory before the work robot performs a particular type of work on a particular type of article. To do
The control device according to any one of claims 1 to 3.
前記変更情報取得部は、前記作業ロボットが特定の種類の物品に特定の種類の作業を実行する前に、前記第1変更情報及び前記第2変更情報の少なくとも一方を取得し、
前記モデル情報取得部は、前記作業ロボットが特定の種類の物品に特定の種類の作業を実行する前に、前記第1モデル情報及び前記第2モデル情報の少なくとも一方を取得し、
前記軌道情報取得部は、前記作業ロボットが特定の種類の物品に特定の種類の作業を実行する前に、前記N−1個又はN個の軌道情報を取得する、
請求項1から請求項4までの何れか一項に記載の制御装置。
The change information acquisition unit acquires at least one of the first change information and the second change information before the work robot performs a specific type of work on a specific type of article,
The model information acquisition unit acquires at least one of the first model information and the second model information before the work robot performs a specific type of work on a specific type of article,
The trajectory information acquisition unit acquires the N-1 or N trajectory information before the work robot performs a specific type of work on a specific type of article,
The control device according to any one of claims 1 to 4.
前記軌道情報取得部は、前記変更が発生する前の期間又は前記新たな物体が配置される前の期間における、前記N−1個又はN個の軌道情報を取得する、
請求項1から請求項5までの何れか一項に記載の制御装置。
The trajectory information acquisition unit acquires the N-1 or N trajectory information in a period before the change occurs or a period before the new object is arranged,
The control device according to any one of claims 1 to 5.
前記分類部は、前記N−1個又はN個の軌道を、(i)前記第1変更情報により示される前記対象領域の内部の変更に応じて、修正が必要となる軌道、及び、(ii)前記第1変更情報により示される前記対象領域の内部の変更が生じても、修正が必要ではない軌道に分類し、
前記軌道計画部は、前記分類部が、前記修正が必要となる軌道に分類した1以上の軌道のそれぞれについて、前記第1モデル情報に基づいて、各軌道に関連する2個の作業領域の間における前記マニピュレータの先端の軌道を計画し、
前記第1変更情報は、(i)前記1以上の物体の少なくとも1つが、前記対象領域の内部から除去されたこと、又は、(ii)前記1以上の物体のうち、前記N−1個又はN個の軌道の何れか1つの軌道の近隣に配されていた物体が、当該軌道からより離れた地点に移動したことを示す、
請求項1から請求項6までの何れか一項に記載の制御装置。
The classifying unit revises the N-1 or N orbits according to (i) a change in the target area indicated by the first change information, and (ii) ) Even if an internal change of the target area indicated by the first change information occurs, it is classified into a trajectory that does not need to be corrected,
Based on the first model information, for each of one or more orbits that the classification unit has classified into the orbits that need to be corrected, the trajectory planning unit may provide a space between two work areas associated with each orbit. Planning the trajectory of the tip of the manipulator at
The first change information may be (i) at least one of the one or more objects has been removed from the inside of the target region, or (ii) the N-1 or more of the one or more objects. It indicates that an object arranged near any one of the N orbits has moved to a point further away from the orbit,
The control device according to any one of claims 1 to 6.
請求項1から請求項7までの何れか一項に記載の制御装置と、
前記マニピュレータと、
を備える、作業ロボット。
A control device according to any one of claims 1 to 7,
The manipulator,
A work robot equipped with.
前記マニピュレータの動作を制御する制御部をさらに備え、
前記制御装置は、前記マニピュレータの動作を制御するための制御情報を出力し、
前記制御部は、前記制御装置が出力した前記制御情報に基づいて、前記マニピュレータの動作を制御する、
請求項8に記載の作業ロボット。
Further comprising a control unit for controlling the operation of the manipulator,
The control device outputs control information for controlling the operation of the manipulator,
The control unit controls the operation of the manipulator based on the control information output by the control device,
The work robot according to claim 8.
コンピュータを、請求項1から請求項7までの何れか一項に記載の制御装置として機能させるためのプログラム。   A program for causing a computer to function as the control device according to any one of claims 1 to 7. マニピュレータを用いて対象領域の内部で作業を実行する作業ロボットの動作を制御する制御方法であって
(i)前記対象領域の内部に配置された1以上の物体の少なくとも1つに関する情報であって、前記少なくとも1つの物体の位置、姿勢、形状及び大きさの少なくとも1つに関する変更の発生を示す第1変更情報、及び、(ii)前記対象領域の内部に新たな物体が配置されることを示す第2変更情報の少なくとも一方を取得する変更情報取得段階と、
(i)前記変更が生じた後の前記1以上の物体のぞれぞれの位置、姿勢、形状及び大きさを示す第1モデル情報、及び、(ii)前記新たな物体の位置、姿勢、形状及び大きさを示す第2モデル情報の少なくとも一方を取得するモデル情報取得段階と、
前記作業ロボットが一連の作業を実行するN個の作業領域を、前記一連の作業の順番に結ぶN−1個又はN個の軌道のそれぞれを示す、N−1個又はN個の軌道情報を取得する軌道情報取得段階と、
前記N−1個又はN個の軌道を、(i)前記第1変更情報及び前記第2変更情報の少なくとも一方により示される前記対象領域の内部の変更に応じて、修正が必要となる軌道、及び、(ii)前記第1変更情報及び前記第2変更情報の少なくとも一方により示される前記対象領域の内部の変更が生じても、修正が必要ではない軌道に分類する分類段階と、
前記分類段階において前記修正が必要となる軌道に分類された1以上の軌道のそれぞれについて、前記第1モデル情報及び前記第2モデル情報の少なくとも一方に基づいて、各軌道に関連する2個の作業領域の間における前記マニピュレータの先端の軌道を計画する軌道計画段階と、
を有し、
前記Nは、2以上の整数である、
制御方法。
A control method for controlling an operation of a work robot for performing a work in a target area using a manipulator, comprising: (i) information on at least one of one or more objects arranged in the target area, First change information indicating occurrence of a change in at least one of position, orientation, shape, and size of the at least one object, and (ii) arranging a new object inside the target area. A change information acquisition step of acquiring at least one of the second change information shown,
(I) first model information indicating the position, orientation, shape and size of each of the one or more objects after the change has occurred, and (ii) the position, orientation of the new object, A model information acquisition step of acquiring at least one of second model information indicating a shape and a size;
N-1 or N trajectory information indicating N-1 or N trajectories connecting the N work areas in which the work robot executes a series of work in the order of the series of work, respectively. The orbit information acquisition stage to acquire,
The N-1 or N orbits, (i) orbits that need to be corrected according to the internal change of the target area indicated by at least one of the first change information and the second change information, And (ii) a classification step of classifying into a trajectory that does not need to be corrected even if a change inside the target area indicated by at least one of the first change information and the second change information occurs,
For each of the one or more trajectories classified into the trajectories that need to be corrected in the classification step, two tasks associated with each trajectory based on at least one of the first model information and the second model information. A trajectory planning step of planning the trajectory of the tip of the manipulator between regions,
Have
The N is an integer of 2 or more,
Control method.
JP2019026456A 2019-02-18 2019-02-18 Control device, work robot, program, and control method Active JP6577686B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019026456A JP6577686B1 (en) 2019-02-18 2019-02-18 Control device, work robot, program, and control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019026456A JP6577686B1 (en) 2019-02-18 2019-02-18 Control device, work robot, program, and control method

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2018194057A Division JP6508691B1 (en) 2018-10-15 2018-10-15 Control device, work robot, program, and control method

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2019103655A Division JP6560841B1 (en) 2019-06-03 2019-06-03 Control device, work robot, program, and control method

Publications (2)

Publication Number Publication Date
JP6577686B1 JP6577686B1 (en) 2019-09-18
JP2020062740A true JP2020062740A (en) 2020-04-23

Family

ID=67982884

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019026456A Active JP6577686B1 (en) 2019-02-18 2019-02-18 Control device, work robot, program, and control method

Country Status (1)

Country Link
JP (1) JP6577686B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210205992A1 (en) * 2020-01-05 2021-07-08 Mujin, Inc. Robotic system with dynamic motion adjustment mechanism and methods of operating same

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11347984A (en) * 1998-06-02 1999-12-21 Nissan Motor Co Ltd Robot control device
JP2010152684A (en) * 2008-12-25 2010-07-08 Toshiba Corp Method and apparatus for generating trajectory of mobile body
JP2013193194A (en) * 2012-03-22 2013-09-30 Toyota Motor Corp Track generating apparatus, moving body, track generating method, and program
JP2014024162A (en) * 2012-07-27 2014-02-06 Seiko Epson Corp Robot system, robot control device, robot control method and robot control program
JP2018134703A (en) * 2017-02-21 2018-08-30 株式会社安川電機 Robot simulator, robot system, and simulation method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11347984A (en) * 1998-06-02 1999-12-21 Nissan Motor Co Ltd Robot control device
JP2010152684A (en) * 2008-12-25 2010-07-08 Toshiba Corp Method and apparatus for generating trajectory of mobile body
JP2013193194A (en) * 2012-03-22 2013-09-30 Toyota Motor Corp Track generating apparatus, moving body, track generating method, and program
JP2014024162A (en) * 2012-07-27 2014-02-06 Seiko Epson Corp Robot system, robot control device, robot control method and robot control program
JP2018134703A (en) * 2017-02-21 2018-08-30 株式会社安川電機 Robot simulator, robot system, and simulation method

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210205992A1 (en) * 2020-01-05 2021-07-08 Mujin, Inc. Robotic system with dynamic motion adjustment mechanism and methods of operating same
US11833690B2 (en) * 2020-01-05 2023-12-05 Mujin, Inc. Robotic system with dynamic motion adjustment mechanism and methods of operating same

Also Published As

Publication number Publication date
JP6577686B1 (en) 2019-09-18

Similar Documents

Publication Publication Date Title
JP6508691B1 (en) Control device, work robot, program, and control method
US20220402132A1 (en) Trajectory generating method, and trajectory generating apparatus
US11331803B2 (en) Mixed reality assisted spatial programming of robotic systems
EP3578322A1 (en) Robot path-generating device and robot system
JP6560841B1 (en) Control device, work robot, program, and control method
US12005585B2 (en) Offline robot planning with online adaptation
US20150266182A1 (en) Method And An Apparatus For Automatically Generating A Collision Free Return Program For Returning A Robot From A Stop Position To A Predefined Restart Position
JP6485661B2 (en) Method and control system for controlling operation of a processing machine, and processing machine
EP3825075A1 (en) Parameter identifying device, method, and program
JP2019532827A (en) Method for collision avoidance motion planning
Erdős et al. Process planning and offline programming for robotic remote laser welding systems
KR101471852B1 (en) Smart Device, Apparatus for Providing Robot Information, Method for Generating Trajectory of Robot, and Method for Teaching Work of Robot
CN114080590A (en) Robotic bin picking system and method using advanced scanning techniques
WO2020104864A1 (en) Method and system for predicting motion-outcome data of a robot moving between a given pair of robotic locations
JP2015058492A (en) Control device, robot system, robot, robot operation information generation method, and program
JP6577686B1 (en) Control device, work robot, program, and control method
US11518024B2 (en) Extensible underconstrained robotic motion planning
US20180243854A1 (en) Spot position correcting method and apparatus
US20220043455A1 (en) Preparing robotic operating environments for execution of robotic control plans
US20240217099A1 (en) Robot planning for gaps
Anton et al. Optimizing trajectory points for high speed robot assembly operations
US20210187746A1 (en) Task planning accounting for occlusion of sensor observations
JP2020199571A (en) Obstacle search device of robot system
CN117001663A (en) Mechanical arm movement path planning method and system and storage medium
WO2022256402A1 (en) Workcell modeling using motion profile matching and swept profile matching

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190218

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20190218

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20190312

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190402

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190603

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190822

R150 Certificate of patent or registration of utility model

Ref document number: 6577686

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

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

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D02

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250