JP6921448B1 - Control program and control method for new object operation robot, and new object operation system - Google Patents
Control program and control method for new object operation robot, and new object operation system Download PDFInfo
- Publication number
- JP6921448B1 JP6921448B1 JP2020087808A JP2020087808A JP6921448B1 JP 6921448 B1 JP6921448 B1 JP 6921448B1 JP 2020087808 A JP2020087808 A JP 2020087808A JP 2020087808 A JP2020087808 A JP 2020087808A JP 6921448 B1 JP6921448 B1 JP 6921448B1
- Authority
- JP
- Japan
- Prior art keywords
- simulation
- robot
- robot body
- unit
- result
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 9
- 238000004088 simulation Methods 0.000 claims abstract description 110
- 230000004044 response Effects 0.000 claims abstract description 22
- 230000006870 function Effects 0.000 claims abstract description 10
- 230000006399 behavior Effects 0.000 claims description 35
- 230000009471 action Effects 0.000 claims description 22
- 238000010586 diagram Methods 0.000 abstract description 7
- 238000000605 extraction Methods 0.000 description 8
- 239000011521 glass Substances 0.000 description 6
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Landscapes
- Manipulator (AREA)
Abstract
【課題】新規な物体を安定的に操作できるロボットの制御プログラムおよび制御方法、ならびに、物体操作システムを提供する。【解決手段】コンピュータを、操作対象物を操作することを示す操作命令を前記コンピュータが受信した際に、操作対象物が新規に操作する物体であるか否かを判定する判定部と、前記操作対象物が新規に操作する物体であると判定された場合に、センサによって取得された情報に基づく操作環境および前記操作対象物に関する情報と、予め学習された行動データと、を用いて、前記操作命令に応じたロボット本体による前記操作対象物の操作をシミュレーションするシミュレーション部と、前記シミュレーションを行った結果に基づき、前記操作命令に応じて前記操作対象物を操作するよう前記ロボット本体を実空間で制御する実操作制御部と、として機能させる、ロボット制御プログラムが提供される。【選択図】図2BPROBLEM TO BE SOLVED: To provide a control program and a control method of a robot capable of stably operating a new object, and an object operation system. SOLUTION: When a computer receives an operation command indicating to operate an operation object, a determination unit for determining whether or not the operation object is an object to be newly operated, and the operation. When it is determined that the object is an object to be newly operated, the operation is performed by using the operation environment based on the information acquired by the sensor, the information about the operation object, and the behavior data learned in advance. A simulation unit that simulates the operation of the operation object by the robot body in response to a command, and the robot body is operated in real space so as to operate the operation object in response to the operation command based on the result of the simulation. A robot control program that functions as an actual operation control unit to be controlled is provided. [Selection diagram] FIG. 2B
Description
本発明は、新規物体を操作するロボットの制御プログラムおよび制御方法、ならびに、新規物体操作する物体操作システムに関する。 The present invention relates to a control program and a control method for a robot that operates a new object, and an object operation system that operates a new object.
一般に、特定の物体の操作に関するシミュレーションを予めオフラインで行って物理動作を予測し、その物体を操作することが行われている。例えば、工場等において、ロボットを用いて物を運搬することが広く行われている(例えば、特許文献1)。 In general, a simulation related to the operation of a specific object is performed offline in advance to predict a physical motion, and the object is operated. For example, in factories and the like, it is widely practiced to use a robot to transport an object (for example, Patent Document 1).
しかしながら、新規な物体に対して、このようなロボットが安定的に物体を操作できるとは限らない。また、近年は人工知能の発展が目覚ましいが、あらゆる物体に対して事前に学習を行っておくのは現実的ではない。 However, it is not always possible for such a robot to stably operate an object with respect to a new object. Moreover, although the development of artificial intelligence has been remarkable in recent years, it is not realistic to learn in advance for all objects.
本発明の課題は、新規な物体を安定的に操作できるロボットの制御プログラムおよび制御方法、ならびに、物体操作システムを提供することである。 An object of the present invention is to provide a control program and a control method for a robot capable of stably operating a novel object, and an object operation system.
本発明の一態様によれば、コンピュータを、操作対象物を操作することを示す操作命令を前記コンピュータが受信した際に、操作対象物が新規に操作する物体であるか否かを判定する判定部と、前記操作対象物が新規に操作する物体であると判定された場合に、センサによって取得された情報に基づく操作環境および前記操作対象物に関する情報と、予め学習された行動データと、を用いて、前記操作命令に応じたロボット本体による前記操作対象物の操作をシミュレーションするシミュレーション部と、前記シミュレーションを行った結果に基づき、前記操作命令に応じて前記操作対象物を操作するよう前記ロボット本体を実空間で制御する実操作制御部と、として機能させる、ロボット制御プログラムが提供される。 According to one aspect of the present invention, when the computer receives an operation command indicating that the operation object is operated by the computer, it is determined whether or not the operation object is an object to be newly operated. When it is determined that the operation object is an object to be newly operated, the operation environment based on the information acquired by the sensor, the information about the operation object, and the pre-learned action data are provided. The robot uses a simulation unit that simulates the operation of the operation object by the robot body in response to the operation command, and the robot so as to operate the operation object in response to the operation command based on the result of the simulation. A robot control program that functions as an actual operation control unit that controls the main body in a real space is provided.
前記コンピュータを、前記シミュレーション部による前記シミュレーションの結果を学習して新たな行動データとして登録する学習部として機能させてもよい。 The computer may function as a learning unit that learns the result of the simulation by the simulation unit and registers it as new behavior data.
前記学習部は、前記ロボット本体の実空間における操作の結果を学習して新たな行動データとして登録してもよい。 The learning unit may learn the result of the operation of the robot body in the real space and register it as new action data.
前記実操作制御部は、前記行動データを変えながら前記シミュレーションを複数回行った結果に基づき、前記命令に応じて前記操作対象物を操作するよう前記ロボット本体を制御してもよい。 The actual operation control unit may control the robot body so as to operate the operation target object in response to the command based on the result of performing the simulation a plurality of times while changing the action data.
前記実操作制御部は、前記シミュレーションの結果と、前記実操作制御部の制御によるロボット本体の状態と、が相違するか否かを所定の基準に応じて判断し、相違すると判断された場合には、前記ロボット本体による前記操作対象物の操作を停止させてもよい。 The actual operation control unit determines whether or not the result of the simulation and the state of the robot body controlled by the actual operation control unit are different according to a predetermined standard, and when it is determined that they are different. May stop the operation of the operation object by the robot body.
前記操作対象物の操作は、前記操作対象物を安定的に置くことであってもよい。 The operation of the operation object may be to stably place the operation object.
前記操作対象物の操作は、前記操作命令によって示される目的地まで前記操作対象物を運搬することであってもよい。 The operation of the operation object may be to carry the operation object to the destination indicated by the operation command.
前記シミュレーションの結果、前記目的地までの移動に成功した結果が複数ある場合、前記実操作制御部は、前記目的地までの移動時間が最も短くなるシミュレーションで用いられた前記行動データに基づいて、前記ロボット本体を移動させてもよい。 When there are a plurality of successful results of moving to the destination as a result of the simulation, the actual operation control unit is based on the action data used in the simulation in which the moving time to the destination is the shortest. The robot body may be moved.
前記シミュレーションの結果、前記目的地までの移動に成功した結果がない場合、前記シミュレーション部は、前記操作命令に応じた移動ができないと判断してもよい。 If there is no successful movement to the destination as a result of the simulation, the simulation unit may determine that the movement in response to the operation command is not possible.
前記実操作制御部は、前記ロボット本体の移動中に、前記ロボット本体の移動が前記シミュレーションの結果と相違するか否かを所定の基準に応じて判断し、相違すると判断された場合には、前記ロボットの移動を停止させてもよい。 The actual operation control unit determines whether or not the movement of the robot body differs from the result of the simulation during the movement of the robot body according to a predetermined criterion, and if it is determined that the movement differs from the result of the simulation. The movement of the robot may be stopped.
前記操作環境に関する情報は、前記目的地までの床面の情報を含み、前記操作対象物に関する情報は、前記操作対象物の重量を含んでもよい。 The information regarding the operating environment may include information on the floor surface to the destination, and the information regarding the operating object may include the weight of the operating object.
本発明の別の態様によれば、操作対象物を操作することを示す操作命令が受信された際に、操作対象物が新規に操作する物体であるか否かを判定し、シミュレーション部が、前記操作対象物が新規に操作する物体であると判定された場合に、センサによって取得された情報に基づく操作環境および前記操作対象物に関する情報と、予め学習された行動データと、を用いて、前記操作命令に応じたロボット本体による前記操作対象物の操作をシミュレーションし、実操作制御部が、前記シミュレーションを行った結果に基づき、前記操作命令に応じて前記操作対象物を操作するよう前記ロボット本体を実空間で制御する、ロボット制御方法が提供される。 According to another aspect of the present invention, when an operation command indicating that the operation object is operated is received, it is determined whether or not the operation object is a newly operated object, and the simulation unit determines whether or not the operation object is a newly operated object. When it is determined that the operation object is a newly operated object, the operation environment based on the information acquired by the sensor, the information about the operation object, and the behavior data learned in advance are used. The robot simulates the operation of the operation object by the robot body in response to the operation command, and the actual operation control unit operates the operation object in response to the operation command based on the result of the simulation. A robot control method for controlling the main body in real space is provided.
本発明の別の態様によれば、センサと、ロボット本体と、操作対象物を操作することを示す操作命令が受信された際に、操作対象物が新規に操作する物体であるか否かを判定する判定部と、前記操作対象物が新規に操作する物体であると判定された場合に、前記センサによって取得された情報に基づく操作環境および操作対象物に関する情報と、予め学習された行動データと、を用いて、前記操作命令に応じた前記ロボット本体による前記操作対象物の操作をシミュレーションするシミュレーション部と、前記シミュレーションを行った結果に基づき、前記操作命令に応じて前記操作対象物を操作するよう前記ロボット本体を実空間で移動する実操作制御部と、を備える物体操作システムが提供される。 According to another aspect of the present invention, when the sensor, the robot body, and the operation command indicating to operate the operation object are received, whether or not the operation object is an object to be newly operated. The determination unit for determining, information on the operation environment and the operation object based on the information acquired by the sensor when it is determined that the operation object is a newly operated object, and pre-learned behavior data. And, a simulation unit that simulates the operation of the operation object by the robot body in response to the operation command, and the operation object is operated in response to the operation command based on the result of the simulation. An object operation system including an actual operation control unit for moving the robot body in a real space is provided.
環境や操作対象物が変化する場合であっても安全な移動を実現できる。 Safe movement can be achieved even when the environment or the object to be operated changes.
以下、本発明に係る実施形態について、図面を参照しながら具体的に説明する。 Hereinafter, embodiments according to the present invention will be specifically described with reference to the drawings.
図1は、本発明による意思決定プロセスを説明するフローチャートである。何らかの行動を決定すべき状況になった時点で(ステップS21のYES)、十分な情報があるか否かを確認する(ステップS22)。十分な情報がある場合、物理シミュレータによる行動選択を行う(ステップS25)。一方、十分な情報がない場合(ステップS22のNO)、実世界の情報を取得する(ステップS23)。実世界の情報とは、操作対象となる物体(以下「操作対象物」という)についての情報や、操作環境についての情報である。そして、取得した情報を物理シミュレータに挿入し(ステップS24)、物理シミュレータによる行動選択を行う(ステップS25)。 FIG. 1 is a flowchart illustrating a decision-making process according to the present invention. When it becomes a situation where some action should be decided (YES in step S21), it is confirmed whether or not there is sufficient information (step S22). If there is sufficient information, the action is selected by the physics simulator (step S25). On the other hand, when there is not enough information (NO in step S22), information in the real world is acquired (step S23). The information in the real world is information about an object to be operated (hereinafter referred to as "object to be operated") and information about an operation environment. Then, the acquired information is inserted into the physics simulator (step S24), and the action is selected by the physics simulator (step S25).
本発明は、行動を決定すべき時点において十分な情報がない場合、言い換えると、予めオフラインで取得されている情報では足りない場合に、その場でリアルタイムに情報を取得する点に特徴がある。 The present invention is characterized in that information is acquired in real time on the spot when there is not enough information at the time when the action should be decided, in other words, when the information acquired offline in advance is insufficient.
本実施形態に係る物体操作システムは、主たる例として、新規な物体(すなわち、これまでに操作したことがない物体)を操作するロボットに関する。操作とは、例えば、1または複数の物体を目的地まで安定的に運搬することである。具体例として、水が入ったコップを水がこぼれないよう目的地まで運搬することや、トレイに乗ったコップをコップが倒れないよう目的地まで運搬することが挙げられる。あるいは、操作とは、例えば、物を安定的に置くことである。具体例として、任意形状の物体を倒すことなく安定状態で机上に置くことが挙げられる。 The object operation system according to the present embodiment relates to a robot that operates a new object (that is, an object that has never been operated before) as a main example. The operation is, for example, to stably transport one or more objects to a destination. Specific examples include transporting a glass containing water to a destination so that water does not spill, and transporting a glass on a tray to a destination so that the glass does not fall over. Alternatively, the operation is, for example, the stable placement of an object. As a specific example, an object having an arbitrary shape may be placed on a desk in a stable state without being tilted.
図2Aは、一実施形態に係る物体操作システムの概略ブロック図である。物体操作システムは、ロボット本体1と、センサ2と、制御コンピュータ3とを備えている。これらが一体となってロボットを構成してもよいし、ロボット本体1とは別に制御コンピュータ3が設けられてロボット本体1が遠隔操作されてもよい。
FIG. 2A is a schematic block diagram of an object manipulation system according to an embodiment. The object operation system includes a robot body 1, a
ロボット本体1は、制御コンピュータ3からの制御に応じて、物体を操作する機能、具体例として物体を保持したり、保持した物体を置いたり、移動したりする機能を有する。
The robot body 1 has a function of manipulating an object according to a control from a
センサ2は、実世界の情報として、操作環境や操作対象物に関する情報を取得し(以下、センサ2が取得した情報を「センサ取得情報」という)、制御コンピュータ3に送信する。センサ2は、ロボット本体1に取り付けられるのが望ましいが、ロボット本体1がある環境に固定されていてもよい。
The
制御コンピュータ3は、認識部42、抽出部52、学習部53、シミュレーション部60および実操作制御部70を実現するためのソフトウェア(プログラム)を有し、また、処理に用いられる物体識別データベース41および学習済み行動データベース51を有している。これらの詳細は図2を用いて詳述する。
The
制御コンピュータ3は、ロボット本体1が操作対象物を操作する際、十分な情報がない(図1のステップS22のNO)場合にその場でセンサ取得情報を受信してシミュレーションを行うことによって、ロボット本体1を制御する。具体的には、制御コンピュータ3は、操作命令およびセンサ取得情報を用いてロボット本体1による操作対象物の操作を仮想空間でシミュレーションし、シミュレーション結果に基づいてロボット本体1による操作対象物の操作を制御する。さらに、シミュレーション結果および実際のロボット本体1による操作の両方を学習し、その後のシミュレーションやロボット本体1の移動制御に活用する。
When the robot body 1 operates the operation object, the
以下、より具体的に説明する。
図2Bは、より詳細な物体操作システムのブロック図である。図示のように、制御コンピュータ3は、判定部30、物体認識部40、物理的世界モデル学習部50、シミュレーション部60および実操作制御部70を有する。
Hereinafter, a more specific description will be given.
FIG. 2B is a more detailed block diagram of the object manipulation system. As shown in the figure, the
判定部30は、外部から操作命令(操作対象物を操作することを示す命令)が入力された際、後述する物体識別データベース41を参照するなどにより、操作対象物が新規に操作する物体であるか否かを判定する。そして、操作対象物が新規である場合、十分な情報がない(図1のステップS22のNO)と判断する。
When an operation command (command indicating that the operation object is operated) is input from the outside, the
物体認識部40は、物体識別データベース41と、認識部42とを有する。また、物体認識部40には、外部から操作命令が入力されるとともに、センサ2からセンサ取得情報が入力される。
The
物体識別データベース41には、機械学習や深層学習(例えば、You only Look Once (YOLO)やSingle Shot MultiBox Detector (SSD))等によって予め学習された物体識別データが登録されている。
In the
認識部42は、機械学習や深層学習を使い、センサ取得情報および物体識別データベース41から、シミュレーションに必要となる操作環境に関する情報および操作対象物に関する情報を認識する。操作環境に関する情報および操作対象物の情報は、物理的世界モデル学習部50およびシミュレーション部60に送信される。
The
物理的世界モデル学習部50は、学習済み行動データベース51と、抽出部52と、学習部53とを有する。
The physical world
学習済み行動データベース51には、予め学習された行動データが登録されている。行動データとは、ロボット本体1を移動させるのに必要なデータであり、加速度、定速度、減速度等のパラメータを含み得る。
Pre-learned behavior data is registered in the learned
抽出部52は、認識部42からの操作環境および操作対象物に関する情報に基づいて、学習済み行動データベース51に登録された行動データのうち、操作に成功する可能性が高い行動データを複数抽出する。抽出された行動データはシミュレーション部60に送信される。
The
学習部53は、後述するシミュレーションの結果を学習し、新たな行動データを学習済み行動データベース51に登録する。また、学習部53は、後述するロボット本体1の実空間における操作の結果を学習し、新たな行動データを学習済み行動データベース51に登録する。新たに登録された行動データは、その後に抽出部52によって抽出されてシミュレーションに用いられ得る。
The
シミュレーション部60は、操作対象物が新規に操作する物体であると判定された場合に、センサ取得情報に基づき、操作命令に応じたロボット本体1による操作をシミュレーションするものであり、シミュレーション環境設定部61と、シミュレーションパラメータ設定部62と、シミュレーション実行部63と、シミュレーション観察部64と、ループ判断部65とを有する。
The
シミュレーション環境設定部61は、認識部42からの操作環境および操作対象物に関する情報に基づいて、シミュレーションを実行する仮想空間にロボット本体1、ならびに、操作環境および操作対象物についての情報を設定する。
The simulation
シミュレーションパラメータ設定部62は、抽出部52からの行動データに基づいて、仮想空間でロボット本体1を制御するためのパラメータを設定する。
The simulation
シミュレーション実行部63は、シミュレーションパラメータ設定部62によって設定されたパラメータに基づき、シミュレーション環境設定部61によってロボット本体1等が配置された仮想空間におけるロボット本体1による操作を物理演算し、ロボット本体1の状態をシミュレーションする。
Based on the parameters set by the simulation
シミュレーション観察部64は仮想空間におけるロボット本体1の状態を観察する。具体的には、シミュレーション観察部64は、安定的に操作対象物を操作できたか否かを観察し、できた場合は成功、できなかった場合は失敗と判定する。観察の結果はループ判断部65に送信される。
The
ループ判断部65は観察されたシミュレーション結果を学習部53に送信する。これにより、学習部53は、どのような操作対象物を、どのような操作環境で操作できるか否かを学習できる。学習の結果が行動データとして新たに学習済み行動データベース51に登録される。また、ループ判断部65は、シミュレーションの実行回数をカウントし、行動データを変えながらシミュレーションの実行および観察を所定回繰り返す。
The
所定回繰り返したが、成功と判定されたシミュレーション結果がない場合、ループ判断部65は操作命令に応じた操作ができないと判断し、命令を終了する。成功と判定されたシミュレーション結果がある場合、ループ判断部65は当該シミュレーションに用いられた行動データとシミュレーション結果を実操作制御部70に送信する。なお、シミュレーション結果のうち2以上が成功と判定された場合、ループ判断部65は1つを選択すればよい。
When the simulation result is determined to be successful after repeating the predetermined times, the
実操作制御部70は、シミュレーション結果に基づいて、操作命令に応じてロボット本体1に操作対象物を操作させる。実操作制御部70は、制御パラメータ設定部71と、実操作観察部72とを有する。また、実操作制御部70には、シミュレーション部60から行動データおよびシミュレーション結果が入力され、センサ2からセンサ取得情報が入力される。
Based on the simulation result, the actual
制御パラメータ設定部71は、シミュレーション部60からの行動データに基づき、ロボット本体1が操作対象物を操作するために必要な制御パラメータを設定する。この制御パラメータに応じてロボット本体1は操作対象物を操作する。操作の様子はセンサ2によって検知される。
The control
実操作観察部72は、センサ取得情報を用いて、実空間におけるロボット本体1の状態を観察する。そして、実操作観察部72は、シミュレーション部60によって観察されたシミュレーション結果と、センサ取得情報に基づく実空間におけるロボット本体1の状態とを対比し、両者が大きく相違するか否かを所定に基準に応じて判断する。具体例として、特定の時刻におけるロボット本体1の位置が、シミュレーションと実空間とで所定距離以上ずれる場合に、実操作観察部72は両者が相違すると判断する。この場合、実操作観察部72はロボット本体1による操作対象物の操作を停止させ、命令を終了する。両者が相違することなくロボット本体1が操作を完了した場合も、実操作観察部72は命令を終了する。
The actual operation observation unit 72 observes the state of the robot body 1 in the real space by using the sensor acquisition information. Then, the actual operation observation unit 72 compares the simulation result observed by the
ロボット本体1の操作対象物体を操作している途中で停止された場合であっても、操作を完了した場合であっても、実操作観察部72は実空間における操作の結果を学習部53に送信する。これにより、学習部53は、どのような操作環境において、どのような操作対象物の操作に成功するか否かを学習できる。学習の結果が行動データとして新たに学習済み行動データベース51に登録される。
Whether the robot body 1 is stopped in the middle of operating the operation target object or the operation is completed, the actual operation observation unit 72 sends the result of the operation in the real space to the
図3は、シミュレーションを実行する仮想空間における物体操作システムの概略ブロック図である。このシミュレーションは、図1に示す実空間における物体操作システムを模したものであり、仮想ロボット本体1Vと、仮想センサ2Vと、仮想制御コンピュータ3Vとを備えている。これらは、図1のロボット本体1、センサ2および制御コンピュータ3とそれぞれ対応するが、シミュレーション機能は不要である。また、仮想センサ2Vの出力が、仮想空間における仮想ロボット本体1Vによる操作の状態を観察したもの、すなわち、図2のシミュレーション観察部64の出力に相当する。
FIG. 3 is a schematic block diagram of an object manipulation system in a virtual space in which a simulation is executed. This simulation imitates the object operation system in the real space shown in FIG. 1, and includes a virtual robot
以下、操作の一例として、操作対象物を所定の目的地まで運搬することを説明する。この場合、ロボット本体1は移動機能を有する。具体的には、ロボット本体1は、2輪のタイヤで移動してもよいし、2足あるいは4足などの多足歩行で移動してもよい。より具体的には、ロボット本体1はタイヤや足を駆動するモーター(不図示)を有し、制御コンピュータ3からの制御に応じてロボット本体1は移動する。また、ロボット本体1は運搬対象物を保持する機能を有する。
Hereinafter, as an example of the operation, the transportation of the operation target to a predetermined destination will be described. In this case, the robot body 1 has a moving function. Specifically, the robot body 1 may be moved by two-wheel tires, or may be moved by multi-legged walking such as two legs or four legs. More specifically, the robot body 1 has a motor (not shown) for driving tires and feet, and the robot body 1 moves in response to control from the
また、センサ2は、ロボット本体1の現在地から目的地までの実空間(の少なくとも一部)を撮影するカメラ、床面の凹凸を計測するLiDAR(レーザーレンジファインダ)、操作対象物の重量を計測する重量センサを含み得る。その他、センサ2は、深度センサ、トラッキングカメラ、加速度センサ、ジャイロセンサ等を含んでいてもよい。
Further, the
なお、運搬を行うには、ロボットが操作対象物を持ち上げ、これを保持した状態で移動し、目的地において下ろすこととなるが、以下では保持した状態で移動する点を中心に説明する。 In order to carry out transportation, the robot lifts the operation target, moves it while holding it, and lowers it at the destination. In the following, the point of moving while holding the object will be mainly described.
図4は、制御コンピュータ3の処理動作の一例を示すフローチャートである。所定の目的地までの移動を示す操作命令の受信(ステップS1)によって制御コンピュータ3は動作を開始し、センサ取得情報が制御コンピュータ3に入力される。なお、目的地は物体操作システムが有するカメラで撮影可能な範囲内に設定されるものとする(最終的な目的地がカメラの撮影範囲内にない場合、ロボットの移動を管理する上位のシステムによって、カメラの撮影範囲において移動経路を分割すればよい)。そして、目的地までの移動経路に障害物はないが、床面は必ずしも平坦ではなく凹凸がある(例えば、部屋と部屋の境目の段差や、経年劣化によるもの)ものとする。
FIG. 4 is a flowchart showing an example of the processing operation of the
操作命令が受信されると、判定部30は、操作対象物が新規に操作する物体であるか否か、すなわち、情報が十分であるか否かを判定する(ステップS2)。情報が十分である場合(ステップS2のYES)、ステップS4に進む。
When the operation command is received, the
十分な情報がない場合(ステップS2のNO)、認識部42は、センサ2からセンサ取得情報を取得する。そして、認識部42は、センサ取得情報に基づき、物体識別データベース41から、シミュレーションに必要となる操作環境および操作対象物に関する情報を認識する(ステップS3)。操作環境に関する情報とは、床面の凹凸の位置、床面の材質(摩擦係数パラメータ)、傾斜角等である。また、操作対象物に関する情報とは、その重量、形状、重心等である。これにより、シミュレーション環境設定部61は、シミュレーションを実行する仮想空間にロボット本体1、運搬対象物、目的地までの床面を配置する。
When there is not enough information (NO in step S2), the
また、抽出部52は、認識された情報に基づき、目的地までの移動に成功する可能性が高い複数の行動データを学習済み行動データベース51から抽出する(ステップS4)。これにより、シミュレーションパラメータ設定部62は抽出部52からの行動データに基づいて、仮想空間でロボット本体1を移動させるためのパラメータを設定する。
Further, the
そして、シミュレーション部60は操作環境および操作対象物に関する情報ならびに行動データを用いてシミュレーションを実行する(ステップS5)。
Then, the
具体的には、シミュレーション実行部63は、シミュレーションパラメータ設定部62によって設定されたパラメータに基づき、シミュレーション環境設定部61によってロボット本体1等が配置された仮想空間におけるロボット本体1の移動を物理演算し、ロボット本体1の状態をシミュレーションする。
Specifically, the
そして、シミュレーション観察部64は、仮想空間における目的地まで運搬対象物を安定的に運搬できたか否か(運搬対象物が落下しないかどうか、ロボット本体1が転倒しないかどうか等)を観察し、できた場合は成功、できなかった場合は失敗と判定する。また、シミュレーション観察部64は、成功である場合、目的地までの移動時間を観察する。観察の結果はループ判断部65に送信される。
Then, the
例えば、水が入ったグラスが載ったトレイが運搬対象物である場合、シミュレーション観察部64は、グラスがトレイ上で倒れないか、グラス内の水がこぼれないか等を観察して、無事に運搬できたか否かを判定する。
For example, when the tray on which the glass containing water is placed is the object to be transported, the
シミュレーションにおいて、ロボット本体1の状態が観察され、学習部53による学習が行われて学習済み行動データベース51が更新される(ステップS6)。シミュレーション部60は以上のシミュレーションを行動データを変えながら所定回繰り返す(ステップS7)。
In the simulation, the state of the robot body 1 is observed, learning is performed by the
所定回の繰り返しが完了したが(ステップS7のYES)、シミュレーション結果が全て失敗であった場合(ステップS8のNO)、シミュレーション部60は操作命令に応じた目的地までの移動ができないと判断して命令を終了する。
When the repetition of a predetermined number of times is completed (YES in step S7), but all the simulation results are unsuccessful (NO in step S8), the
所定回の繰り返しが完了し(ステップS7のYES)、シミュレーション結果の1または複数が成功であった場合(ステップS8のYES)、シミュレーション部60は目的地までの移動時間が最短となったシミュレーションで用いられた行動データを選択する(ステップS9)。そして、この行動データに基づいて実操作制御部70はロボット本体1を実空間で移動させる(ステップS10)。ロボット本体1の移動状態はセンサ2によって取得される。
When the repetition of a predetermined number of times is completed (YES in step S7) and one or more of the simulation results are successful (YES in step S8), the
ロボット本体1の移動開始から目的地到達までの間、実操作制御部70は、センサ取得情報から得られる実空間におけるロボット本体1の状態と、シミュレーション結果とが相違するか否かを、所定の判断基準を用いて判断する(ステップS11)。なお、この判断は所定時間間隔で行ってもよいし、ロボット本体1が所定距離移動する度に行ってもよい。
From the start of movement of the robot body 1 to the arrival at the destination, the actual
相違すると判断された場合(ステップS11のYES)、実操作制御部70はロボット本体1の移動を停止する(ステップS12)。相違しない場合(ステップS11のNO)、ロボット本体1が目的地に到達するまでロボット本体1を移動させる(ステップS13)。
If it is determined that they are different (YES in step S11), the actual
そして、学習部53は、実空間におけるロボット本体1の移動の結果を学習し、学習済み行動データベース51を更新する(ステップS14)。以上により、操作命令に対する対応が終了する。
Then, the
このように、本実施形態では、新規な物体を操作する場合には、その時点において、センサ2で取得された操作環境および操作対象物の情報を用いてシミュレーションを行って行動選択を行う。そのため、これまで操作したことがない新規物体の操作が可能となる。
As described above, in the present embodiment, when operating a new object, a simulation is performed using the information of the operating environment and the operating object acquired by the
操作の一例として、操作対象物を運搬する際、センサ2で取得された目的地までの操作環境および操作対象物の情報と、学習済みの行動データを用いてミュレーションを複数回行った上でロボット本体1を移動させる。そのため、操作環境や操作対象物が変化した場合でも、操作対象物を保持したロボット本体1を目的地まで安全に移動させることができる。また、シミュレーション結果および実際の移動の結果を学習して行動データを更新するため、その後のロボット本体1の移動がより安全に行えるようになる。
As an example of the operation, when transporting the operation object, the operation environment to the destination acquired by the
また、シミュレーションを複数回行うことで、実空間でロボット本体1を移動させるための最適な行動データが得られるのに加え、今回の操作対象物および操作環境に適した行動データを学習することができる。 In addition, by performing the simulation multiple times, in addition to obtaining the optimum behavior data for moving the robot body 1 in the real space, it is possible to learn the behavior data suitable for the operation target and the operation environment this time. can.
上述した実施形態は、本発明が属する技術分野における通常の知識を有する者が本発明を実施できることを目的として記載されたものである。上記実施形態の種々の変形例は、当業者であれば当然になしうることであり、本発明の技術的思想は他の実施形態にも適用しうることである。したがって、本発明は、記載された実施形態に限定されることはなく、特許請求の範囲によって定義される技術的思想に従った最も広い範囲とすべきである。 The above-described embodiment is described for the purpose of enabling a person having ordinary knowledge in the technical field to which the present invention belongs to carry out the present invention. Various modifications of the above embodiment can be naturally made by those skilled in the art, and the technical idea of the present invention can be applied to other embodiments. Therefore, the present invention is not limited to the described embodiments and should be the broadest scope according to the technical ideas defined by the claims.
1 ロボット本体
2 センサ
3 制御コンピュータ
30 判定部
40 物体認識部
41 物体識別データベース
42 認識部
50 物理的世界モデル学習部
51 学習済み行動データベース
52 抽出部
53 学習部
60 シミュレーション部
61 シミュレーション環境設定部
62 シミュレーションパラメータ設定部
63 シミュレーション実行部
64 シミュレーション観察部
65 ループ判断部
70 実操作制御部
71 制御パラメータ設定部
72 実操作観察部
1V ロボット本体
2V センサ
3V 制御コンピュータ
70V 仮想動制御部
1
Claims (13)
操作対象物を操作することを示す操作命令を前記コンピュータが受信した際に、操作対象物が新規に操作する物体であるか否かを判定する判定部と、
前記操作対象物が新規に操作する物体であると判定された場合に、センサによって取得された情報に基づく操作環境および前記操作対象物に関する情報と、予め学習された行動データと、を用いて、前記操作命令に応じたロボット本体による前記操作対象物の操作をシミュレーションするシミュレーション部と、
前記シミュレーションを行った結果に基づき、前記操作命令に応じて前記操作対象物を操作するよう前記ロボット本体を実空間で制御する実操作制御部と、として機能させる、ロボット制御プログラム。 Computer,
When the computer receives an operation command indicating that the operation object is operated, a determination unit that determines whether or not the operation object is a newly operated object, and a determination unit.
When it is determined that the operation object is a newly operated object, the operation environment based on the information acquired by the sensor, the information about the operation object, and the behavior data learned in advance are used. A simulation unit that simulates the operation of the operation object by the robot body in response to the operation command,
A robot control program that functions as an actual operation control unit that controls the robot body in a real space so as to operate the operation object in response to the operation command based on the result of the simulation.
前記操作対象物に関する情報は、前記操作対象物の重量を含む、請求項7乃至10のいずれかに記載のロボット制御プログラム。 The information regarding the operating environment includes information on the floor surface to the destination.
The robot control program according to any one of claims 7 to 10, wherein the information about the operation object includes the weight of the operation object.
シミュレーション部が、前記操作対象物が新規に操作する物体であると判定された場合に、センサによって取得された情報に基づく操作環境および前記操作対象物に関する情報と、予め学習された行動データと、を用いて、前記操作命令に応じたロボット本体による前記操作対象物の操作をシミュレーションし、
実操作制御部が、前記シミュレーションを行った結果に基づき、前記操作命令に応じて前記操作対象物を操作するよう前記ロボット本体を実空間で制御する、ロボット制御方法。 When the determination unit receives an operation command indicating that the operation object is to be operated, the determination unit determines whether or not the operation object is a newly operated object.
When the simulation unit determines that the operation object is a newly operated object, the operation environment based on the information acquired by the sensor, information on the operation object, pre-learned behavior data, and Is used to simulate the operation of the operation object by the robot body in response to the operation command.
A robot control method in which the actual operation control unit controls the robot body in a real space so as to operate the operation object in response to the operation command based on the result of the simulation.
ロボット本体と、
操作対象物を操作することを示す操作命令が受信された際に、操作対象物が新規に操作する物体であるか否かを判定する判定部と、
前記操作対象物が新規に操作する物体であると判定された場合に、前記センサによって取得された情報に基づく操作環境および操作対象物に関する情報と、予め学習された行動データと、を用いて、前記操作命令に応じた前記ロボット本体による前記操作対象物の操作をシミュレーションするシミュレーション部と、
前記シミュレーションを行った結果に基づき、前記操作命令に応じて前記操作対象物を操作するよう前記ロボット本体を実空間で移動する実操作制御部と、を備える物体操作システム。 With the sensor
With the robot body
When an operation command indicating that the operation object is operated is received, a determination unit that determines whether or not the operation object is a newly operated object, and a determination unit.
When it is determined that the operation object is a newly operated object, the information about the operation environment and the operation object based on the information acquired by the sensor and the behavior data learned in advance are used. A simulation unit that simulates the operation of the operation object by the robot body in response to the operation command, and
An object operation system including an actual operation control unit that moves the robot body in a real space so as to operate the operation object in response to the operation command based on the result of the simulation.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020087808A JP6921448B1 (en) | 2020-05-20 | 2020-05-20 | Control program and control method for new object operation robot, and new object operation system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020087808A JP6921448B1 (en) | 2020-05-20 | 2020-05-20 | Control program and control method for new object operation robot, and new object operation system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP6921448B1 true JP6921448B1 (en) | 2021-08-18 |
JP2021181139A JP2021181139A (en) | 2021-11-25 |
Family
ID=77269530
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020087808A Active JP6921448B1 (en) | 2020-05-20 | 2020-05-20 | Control program and control method for new object operation robot, and new object operation system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6921448B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPWO2023120728A1 (en) * | 2021-12-24 | 2023-06-29 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3529049B2 (en) * | 2002-03-06 | 2004-05-24 | ソニー株式会社 | Learning device, learning method, and robot device |
US8781629B2 (en) * | 2010-09-22 | 2014-07-15 | Toyota Motor Engineering & Manufacturing North America, Inc. | Human-robot interface apparatuses and methods of controlling robots |
JP2013022705A (en) * | 2011-07-25 | 2013-02-04 | Sony Corp | Robot device, control method of the robot device, computer program, and robot system |
JP2014124735A (en) * | 2012-12-27 | 2014-07-07 | Seiko Epson Corp | Robot control method, robot control device, program, and robot |
JP6413899B2 (en) * | 2015-04-02 | 2018-10-31 | トヨタ自動車株式会社 | Goods transfer robot |
-
2020
- 2020-05-20 JP JP2020087808A patent/JP6921448B1/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2021181139A (en) | 2021-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Nguyen et al. | Help, anna! visual navigation with natural multimodal assistance via retrospective curiosity-encouraging imitation learning | |
US11724398B2 (en) | Efficient robot control based on inputs from remote client devices | |
CN111587408B (en) | Robot navigation and object tracking | |
Gandhi et al. | Learning to fly by crashing | |
RU2680791C2 (en) | Omnidirectional wheeled humanoid robot based on linear predictive position and velocity controller | |
Guérin et al. | Towards an autonomous warehouse inventory scheme | |
US20200046169A1 (en) | Robot system and control method of the same | |
EP3914424A1 (en) | Efficient adaption of robot control policy for new task using meta-learning based on meta-imitation learning and meta-reinforcement learning | |
JP2018167031A (en) | Mobile agents for manipulating, moving, and/or reorienting components | |
JP7154823B2 (en) | Information processing device, robot control device, information processing method and program | |
CN109697458A (en) | Control equipment mobile method, apparatus, storage medium and electronic equipment | |
CN113031437B (en) | Water pouring service robot control method based on dynamic model reinforcement learning | |
US11992945B2 (en) | System and methods for training robot policies in the real world | |
JP6921448B1 (en) | Control program and control method for new object operation robot, and new object operation system | |
Baca et al. | Autonomous cooperative wall building by a team of unmanned aerial vehicles in the MBZIRC 2020 competition | |
CN113076615A (en) | High-robustness mechanical arm operation method and system based on antagonistic deep reinforcement learning | |
US20220314432A1 (en) | Information processing system, information processing method, and nonvolatile storage medium capable of being read by computer that stores information processing program | |
Melnik et al. | Uniteam: Open vocabulary mobile manipulation challenge | |
CN117881506A (en) | Robot mission planning | |
Guerra et al. | Flightgoggles: A modular framework for photorealistic camera, exteroceptive sensor, and dynamics simulation | |
CN117597695A (en) | System and method for completing tasks by asynchronous multi-agent application cooperation | |
CN114571460A (en) | Robot control method, device and storage medium | |
Chen et al. | Robot control in human environment using deep reinforcement learning and convolutional neural network | |
López García et al. | A First CNN-based approach towards autonomous flight for object lifting | |
Vatcha et al. | Practical motion planning in unknown and unpredictable environments |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200520 |
|
A80 | Written request to apply exceptions to lack of novelty of invention |
Free format text: JAPANESE INTERMEDIATE CODE: A80 Effective date: 20200608 |
|
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: 20210629 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210719 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6921448 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |