JP2014184531A - Robot control method, robot control device, robot, robot control program - Google Patents

Robot control method, robot control device, robot, robot control program Download PDF

Info

Publication number
JP2014184531A
JP2014184531A JP2013062051A JP2013062051A JP2014184531A JP 2014184531 A JP2014184531 A JP 2014184531A JP 2013062051 A JP2013062051 A JP 2013062051A JP 2013062051 A JP2013062051 A JP 2013062051A JP 2014184531 A JP2014184531 A JP 2014184531A
Authority
JP
Japan
Prior art keywords
scenario
execution
robot
parameter
work
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
JP2013062051A
Other languages
Japanese (ja)
Other versions
JP6079350B2 (en
Inventor
Makoto Ouchi
真 大内
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson Corp
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 Seiko Epson Corp filed Critical Seiko Epson Corp
Priority to JP2013062051A priority Critical patent/JP6079350B2/en
Publication of JP2014184531A publication Critical patent/JP2014184531A/en
Application granted granted Critical
Publication of JP6079350B2 publication Critical patent/JP6079350B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Abstract

PROBLEM TO BE SOLVED: To allow an optimum scenario to be selected based on the past execution results when performing work such as moving an object held using a robot.SOLUTION: First execution information is acquired which includes a plurality of execution logs in which scenarios executed by a robot, a selected value of a first parameter specifying the scenarios and execution results of the scenarios are related to one another. Instruction information is acquired which includes the content of a target work executed by the robot and a selected value of a second parameter specifying the target work. From the first execution information, an execution log is extracted, as second execution information, in which the content of the work shown by the scenarios is the same as the target work and the selected value of the first parameter is similar to the selected value of the second parameter. From the scenarios included in the execution log of the second execution information, a scenario optimum to the target work is selected and the selected scenario is outputted.

Description

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

特許文献1には、従来の物体把持装置の制御方法に制御目標値の設定変更と制御系パラメーターの変更に関する学習機能を追加し、過去に把持経験のある物体と同程度の硬さの物体の把持を行う場合に把持達成までに要する時間を短縮することが記載されている。   Patent Document 1 adds a learning function for changing the setting of control target values and changing control system parameters to the control method of the conventional object gripping device, so that an object having the same degree of hardness as an object that has been gripped in the past can be obtained. It describes that the time required to achieve gripping is shortened when gripping is performed.

特開平10−249767号公報JP-A-10-249767

特許文献1に記載の発明は、過去の把持履歴を使って、把持成功までの試行回数を少なくする点に特徴がある。特許文献1に記載の発明では、把持動作のみが対象であるため、データベースに蓄えられる履歴におけるパラメーターの組み合わせは一通りである。したがって、特許文献1に記載の発明においては、学習機能においてパラメーターの比較を行うときに、データベースに蓄えらえた過去の履歴を全て使用することができる。   The invention described in Patent Document 1 is characterized in that the number of trials until successful gripping is reduced using past gripping history. In the invention described in Patent Document 1, since only the gripping operation is an object, there are only one combination of parameters in the history stored in the database. Therefore, in the invention described in Patent Document 1, all past histories stored in the database can be used when parameters are compared in the learning function.

しかしながら、ロボットを用いて把持した対象物を移動等させる場合は、単にロボットを用いて対象物を把持する場合と比較して、様々なパラメーターが存在する。例えば、対象物を移動させる場合には、移動開始位置、移動先の位置、中継点、速度等の複数のパラメーターが存在する。また、対象物に対する一連の動作は、移動開始位置、移動先の位置、中継点、速度等の複数のパラメーターの一部又は全てを組み合わせることにより規定される。そのため、過去の履歴としてデータベースに蓄えられるデータにおいては、パラメーターの組み合わせが複数存在する。   However, when moving an object gripped using a robot, there are various parameters as compared to the case of simply gripping an object using a robot. For example, when an object is moved, there are a plurality of parameters such as a movement start position, a movement destination position, a relay point, and a speed. In addition, a series of operations on the object is defined by combining some or all of a plurality of parameters such as a movement start position, a movement destination position, a relay point, and a speed. Therefore, there are a plurality of parameter combinations in the data stored in the database as the past history.

したがって、学習機能においてパラメーターの比較を行うときに、単にデータベースに蓄えられた過去の履歴を用いることはできず、ロボットを用いて把持した対象物を移動等させる場合に特許文献1に記載の発明を適用することはできない。   Therefore, when the parameters are compared in the learning function, the past history stored in the database cannot simply be used, and the invention described in Patent Document 1 is used when moving the object gripped using the robot. Cannot be applied.

本発明は、把持した対象物の移動等の作業をロボットに行わせる場合に、過去の実行結果に基づいて、作業に適したシナリオかつ成功率の高いシナリオを選択することができるロボット制御方法、ロボット制御装置、ロボット及びロボット制御プログラムを提供することを目的とする。   The present invention relates to a robot control method capable of selecting a scenario suitable for work and a scenario with a high success rate based on past execution results when causing the robot to perform work such as movement of the grasped object. An object is to provide a robot control device, a robot, and a robot control program.

上記の課題を解決するための本発明の第一の態様は、ロボットの単位動作を複数組み合わせたシナリオを用いて前記ロボットに目的の作業を行わせるロボット制御方法であって、前記ロボットが実行したシナリオと、当該シナリオを定める第1のパラメーターの選択値と、当該シナリオの実行結果と、を関連付けた実行ログが複数含まれる第1の実行情報を取得し、かつ前記目的の作業の内容と、当該目的の作業を定める第2のパラメーターの選択値と、を含む指示情報を取得する第1のステップと、前記第1の実行情報から、前記シナリオが示す作業内容が前記目的の作業の内容と同一、かつ前記第1のパラメーターの選択値が前記第2のパラメーターの選択値に類似する実行ログを第2の実行情報として抽出する第2のステップと、前記第2の実行情報に含まれるシナリオから、前記実行結果に基づいて成功率の最も高いシナリオを選出する第3のステップと、前記選出された最適なシナリオを出力する第4のステップと、を含むことを特徴とする。   A first aspect of the present invention for solving the above problem is a robot control method for causing a robot to perform a desired work using a scenario in which a plurality of robot unit operations are combined. Obtaining first execution information including a plurality of execution logs in which a scenario, a selected value of a first parameter defining the scenario, and an execution result of the scenario are associated, and the content of the target work; A first step of obtaining instruction information including a selected value of a second parameter that defines the target work; and from the first execution information, the work content indicated by the scenario is the content of the target work. A second step of extracting, as second execution information, an execution log that is the same and whose selection value of the first parameter is similar to the selection value of the second parameter; Including a third step of selecting a scenario having the highest success rate based on the execution result from a scenario included in the execution information of 2, and a fourth step of outputting the selected optimal scenario. It is characterized by.

第一の態様によれば、ロボットが実行したシナリオと、当該シナリオを定める第1のパラメーターの選択値と、当該シナリオの実行結果と、を関連付けた実行ログが複数含まれる第1の実行情報を取得する。また、ロボットの目的の作業の内容と、当該目的の作業を定める第2のパラメーターの選択値と、を含む指示情報を取得する。そして、第1の実行情報から、シナリオが示す作業内容が目的の作業の内容と同一、かつ第1のパラメーターの選択値が第2のパラメーターの選択値に類似する実行ログを第2の実行情報として抽出する。第2の実行情報の実行ログに含まれるシナリオから、目的の作業に最適なシナリオを選出し、選出されたシナリオを出力する。これにより、目的の作業をロボットに行わせる場合に、過去の実行結果のうちのシナリオが示す作業内容が目的の作業の内容と同一の実行ログに基づいて、作業に適したシナリオかつ成功率の高いシナリオを選択することができる。また、目的の作業に近い環境で、過去に成功した作業結果を選出することにより、現実的、実用的、汎用的、かつ柔軟にロボットを制御することができる。   According to the first aspect, the first execution information including a plurality of execution logs associating the scenario executed by the robot, the selected value of the first parameter defining the scenario, and the execution result of the scenario. get. In addition, instruction information including the content of the target work of the robot and the selected value of the second parameter that defines the target work is acquired. Then, from the first execution information, an execution log in which the work content indicated by the scenario is the same as the content of the target work and the selection value of the first parameter is similar to the selection value of the second parameter is obtained as the second execution information. Extract as From the scenarios included in the execution log of the second execution information, a scenario that is optimal for the target work is selected, and the selected scenario is output. As a result, when the target work is to be performed by the robot, the work content indicated by the scenario in the past execution results is based on the same execution log as the content of the target work, and the scenario suitable for the work and the success rate A high scenario can be selected. Further, by selecting work results that have been successful in the past in an environment close to the target work, the robot can be controlled realistically, practically, universally, and flexibly.

ここで、前記第1のステップでは、前記第1のパラメーター及び前記第2のパラメーターとして、前記ロボットを移動させる速度に関する情報である速度情報を取得してもよい。これにより、実行結果に大きな影響を与える速度情報を、目的の作業に近い環境の実行結果の抽出に用いることができる。   Here, in the first step, speed information that is information about a speed at which the robot is moved may be acquired as the first parameter and the second parameter. As a result, speed information that greatly affects the execution result can be used to extract an execution result in an environment close to the target work.

ここで、前記実行ログ及び前記指示情報は、前記ロボットを移動させる速度に関する情報である速度情報を含み、前記第2のステップでは、前記第1の実行情報から、前記指示情報の速度情報と同一の速度情報が関連付けられた実行ログを抽出してもよい。これにより、実行結果に大きな影響を与える速度情報が一致する実行ログのみを用いてシナリオを選出することで、より適切なシナリオを選出することができる。   Here, the execution log and the instruction information include speed information that is information related to a speed at which the robot is moved. In the second step, the speed information of the instruction information is the same as the speed information of the instruction information. An execution log associated with the speed information may be extracted. As a result, a more appropriate scenario can be selected by selecting a scenario using only the execution log that matches the speed information that greatly affects the execution result.

ここで、前記第2のステップでは、前記第1のパラメーターの選択値と前記第2のパラメーターの選択値との差が大きいほど値が小さくなる算出式を用いて算出した類似度に基づいて、第2の実行情報を抽出してもよい。これにより、目的の作業に近い環境の実行結果を抽出することができる。   Here, in the second step, based on the similarity calculated using a calculation formula that decreases as the difference between the selected value of the first parameter and the selected value of the second parameter increases. The second execution information may be extracted. As a result, it is possible to extract an execution result in an environment close to the target work.

上記の課題を解決するための本発明の第二の態様は、ロボットの単位動作を複数組み合わせたシナリオを用いて前記ロボットに目的の作業を行わせるロボット制御装置であって、前記ロボットが実行したシナリオと、当該シナリオを定める第1のパラメーターの選択値と、当該シナリオの実行結果と、を関連付けた実行ログが複数含まれる第1の実行情報を取得する第1の取得部と、前記目的の作業の内容と、当該目的の作業を定める第2のパラメーターの選択値と、を含む指示情報を取得する第2の取得部と、前記第1の実行情報から、前記シナリオが示す作業内容が前記目的の作業の内容と同一、かつ前記第1のパラメーターの選択値が前記第2のパラメーターの選択値に類似する実行ログを第2の実行情報として抽出するシナリオ群抽出部と、前記第2の実行情報に含まれるシナリオから、前記実行結果に基づいて成功率の最も高いシナリオを選出するシナリオ選出部と、前記選出された最適なシナリオを出力する出力部と、を備えることを特徴とする。これにより、把持した対象物の移動等の作業をロボットに行わせる場合に、過去の実行結果のうちのシナリオが示す作業内容が目的の作業の内容と同一の実行ログに基づいて、作業に適したシナリオかつ成功率の高いシナリオを選択することができる。また、目的の作業に近い環境で、過去に成功した作業結果を選出することにより、現実的、実用的、汎用的、かつ柔軟にロボットを制御することができる。   A second aspect of the present invention for solving the above-described problem is a robot control apparatus that causes the robot to perform a desired work using a scenario in which a plurality of unit operations of the robot are combined. A first acquisition unit that acquires first execution information including a plurality of execution logs that associate a scenario, a selected value of a first parameter that defines the scenario, and an execution result of the scenario; From the first acquisition information, the second acquisition unit that acquires the instruction information including the contents of the work and the selected value of the second parameter that defines the target work, and the work contents indicated by the scenario are A scenario group extraction that extracts, as second execution information, an execution log that is the same as the content of the target work and whose selected value of the first parameter is similar to the selected value of the second parameter. A scenario selection unit that selects a scenario with the highest success rate based on the execution result from scenarios included in the second execution information, and an output unit that outputs the selected optimal scenario. It is characterized by providing. As a result, when the robot performs an operation such as moving the gripped object, the work content indicated by the scenario in the past execution results is suitable for the work based on the same execution log as the content of the target work. Scenario with high success rate can be selected. Further, by selecting work results that have been successful in the past in an environment close to the target work, the robot can be controlled realistically, practically, universally, and flexibly.

上記の課題を解決するための本発明の第三の態様は、ロボットの単位動作を複数組み合わせたシナリオを用いて前記ロボットの可動部に目的の作業を行わせるロボットであって、前記ロボットが実行したシナリオと、当該シナリオを定める第1のパラメーターの選択値と、当該シナリオの実行結果と、を関連付けた実行ログが複数含まれる第1の実行情報を取得する第1の取得部と、前記目的の作業の内容と、当該目的の作業を定める第2のパラメーターの選択値と、を含む指示情報を取得する第2の取得部と、前記第1の実行情報から、前記シナリオが示す作業内容が前記目的の作業の内容と同一、かつ前記第1のパラメーターの選択値が前記第2のパラメーターの選択値に類似する実行ログを第2の実行情報として抽出するシナリオ群抽出部と、前記第2の実行情報に含まれるシナリオから、前記実行結果に基づいて成功率の最も高いシナリオを選出するシナリオ選出部と、前記選出された最適なシナリオを用いて前記可動部を制御する駆動制御部と、を備えることを特徴とする。これにより、把持した対象物の移動等の作業をロボットに行わせる場合に、過去の実行結果のうちのシナリオが示す作業内容が目的の作業の内容と同一の実行ログに基づいて、作業に適したシナリオかつ成功率の高いシナリオを選択することができる。また、目的の作業に近い環境で、過去に成功した作業結果を選出することにより、現実的、実用的、汎用的、かつ柔軟にロボットを制御することができる。   A third aspect of the present invention for solving the above problem is a robot that causes a movable part of the robot to perform a desired work using a scenario in which a plurality of unit operations of the robot are combined. A first acquisition unit that acquires first execution information including a plurality of execution logs in which the scenario, the selected value of the first parameter that defines the scenario, and the execution result of the scenario are associated with each other; From the first acquisition information, the second acquisition unit that acquires the instruction information including the content of the work and the selected value of the second parameter that defines the target work, the work content indicated by the scenario is A scenario group extraction that extracts, as second execution information, an execution log that is the same as the content of the target work and whose selected value of the first parameter is similar to the selected value of the second parameter. A scenario selection unit that selects a scenario with the highest success rate based on the execution result from the scenario included in the second execution information, and controls the movable unit using the selected optimal scenario. And a drive control unit. As a result, when the robot performs an operation such as moving the gripped object, the work content indicated by the scenario in the past execution results is suitable for the work based on the same execution log as the content of the target work. Scenario with high success rate can be selected. Further, by selecting work results that have been successful in the past in an environment close to the target work, the robot can be controlled realistically, practically, universally, and flexibly.

上記の課題を解決するための本発明の第四の態様は、ロボットの単位動作を複数組み合わせたシナリオを用いて前記ロボットに目的の作業を行わせるロボット制御プログラムであって、前記ロボットが実行したシナリオと、当該シナリオを定める第1のパラメーターの選択値と、当該シナリオの実行結果と、を関連付けた実行ログが複数含まれる第1の実行情報を取得し、かつ前記目的の作業の内容と、当該目的の作業を定める第2のパラメーターの選択値と、を含む指示情報を取得する第1のステップと、前記第1の実行情報から、前記シナリオが示す作業内容が前記目的の作業の内容と同一、かつ前記第1のパラメーターの選択値が前記第2のパラメーターの選択値に類似する実行ログを第2の実行情報として抽出する第2のステップと、前記第2の実行情報に含まれるシナリオから、前記実行結果に基づいて成功率の最も高いシナリオを選出する第3のステップと、前記選出された最適なシナリオを出力する第4のステップと、を演算装置に実行させることを特徴とする。これにより、把持した対象物の移動等の作業をロボットに行わせる場合に、過去の実行結果のうちのシナリオが示す作業内容が目的の作業の内容と同一の実行ログに基づいて、作業に適したシナリオかつ成功率の高いシナリオを選択することができる。また、目的の作業に近い環境で、過去に成功した作業結果を選出することにより、現実的、実用的、汎用的、かつ柔軟にロボットを制御することができる。   A fourth aspect of the present invention for solving the above-described problem is a robot control program for causing a robot to perform a desired work using a scenario in which a plurality of robot unit operations are combined. Obtaining first execution information including a plurality of execution logs in which a scenario, a selected value of a first parameter defining the scenario, and an execution result of the scenario are associated, and the content of the target work; A first step of obtaining instruction information including a selected value of a second parameter that defines the target work; and from the first execution information, the work content indicated by the scenario is the content of the target work. A second step of extracting, as second execution information, an execution log that is the same and whose selection value of the first parameter is similar to the selection value of the second parameter; A third step of selecting a scenario having the highest success rate based on the execution result from scenarios included in the second execution information; and a fourth step of outputting the selected optimal scenario. It is characterized by being executed by an arithmetic unit. As a result, when the robot performs an operation such as moving the gripped object, the work content indicated by the scenario in the past execution results is suitable for the work based on the same execution log as the content of the target work. Scenario with high success rate can be selected. Further, by selecting work results that have been successful in the past in an environment close to the target work, the robot can be controlled realistically, practically, universally, and flexibly.

本発明の第1の実施形態に係るロボットシステム1の概略構成の一例を示す図である。1 is a diagram illustrating an example of a schematic configuration of a robot system 1 according to a first embodiment of the present invention. 制御装置の機能構成の一例を示す図である。It is a figure which shows an example of a function structure of a control apparatus. ライブラリー記憶部に格納される情報の一例を示す図である。It is a figure which shows an example of the information stored in a library memory | storage part. 各シナリオに対して、パラメーターが異なる場合のハンドの移動経路を模式的に示す図である。It is a figure which shows typically the movement path | route of the hand in case a parameter differs with respect to each scenario. 実行ログテーブルの構成の一例を示す図である。It is a figure which shows an example of a structure of an execution log table. 制御装置のハードウェア構成の一例を示す図である。It is a figure which shows an example of the hardware constitutions of a control apparatus. ロボットシステム1のシナリオ決定処理の一例を示すフロー図である。It is a flowchart which shows an example of the scenario determination process of the robot system. ロボットシステム1のシナリオ群A抽出処理の一例を示すフロー図である。It is a flowchart which shows an example of the scenario group A extraction process of the robot system. シナリオS選出処理の一例を示すフロー図である。It is a flowchart which shows an example of a scenario S selection process. 本発明の第2の実施形態に係るロボットシステム2のシナリオ決定処理の一例を示すフロー図である。It is a flowchart which shows an example of the scenario determination process of the robot system 2 which concerns on the 2nd Embodiment of this invention. ロボットシステム2のシナリオ群A抽出処理の一例を示すフロー図である。It is a flowchart which shows an example of the scenario group A extraction process of the robot system.

<第1の実施の形態>
本発明の第一実施形態について、図面を参照して説明する。
<First Embodiment>
A first embodiment of the present invention will be described with reference to the drawings.

図1は、本発明の一実施形態におけるロボットシステム1の構成の一例を示すシステム構成図である。本実施形態におけるロボットシステム1は、主として、ロボット10と、制御装置20と、第1撮像部30と、第2撮像部31と、を備える。   FIG. 1 is a system configuration diagram showing an example of a configuration of a robot system 1 according to an embodiment of the present invention. The robot system 1 in this embodiment mainly includes a robot 10, a control device 20, a first imaging unit 30, and a second imaging unit 31.

ロボット10は、2本のアームを有するアーム型のロボットである。本実施の形態では、2本のアーム11を備えた双腕ロボットを例に説明するが、ロボット10のアーム11の数は1本でも構わない。
アーム11は、複数のジョイント(関節)12と、複数のリンク13と備える。
The robot 10 is an arm type robot having two arms. In the present embodiment, a dual-arm robot having two arms 11 will be described as an example, but the number of arms 11 of the robot 10 may be one.
The arm 11 includes a plurality of joints (joints) 12 and a plurality of links 13.

アーム11の先端には、ロボット10の操作対象物であるワークAを把持したり、道具を把持して対象物に対して所定の作業を行ったりすることが可能なハンド14(いわゆるエンドエフェクター又は手先効果器)が設けられる。アーム11及びハンド14は、本発明の可動部に相当する。   At the tip of the arm 11, a hand 14 (so-called end effector or so-called end effector that can hold a workpiece A that is an operation target of the robot 10 or can perform a predetermined operation on the target by holding a tool. A hand effector) is provided. The arm 11 and the hand 14 correspond to a movable part of the present invention.

ジョイント12及びハンド14には、それらを動作させるためのアクチュエーター(図示せず)が設けられる。アクチュエーターは、例えば、サーボモーターやエンコーダーなどを備える。エンコーダーが出力するエンコーダー値は、制御装置20によるロボット10のフィードバック制御に使用される。   The joint 12 and the hand 14 are provided with an actuator (not shown) for operating them. The actuator includes, for example, a servo motor and an encoder. The encoder value output by the encoder is used for feedback control of the robot 10 by the control device 20.

ハンド14の内部又はアーム11の先端等には、力覚センサー(図示せず)が設けられる。力覚センサーは、ハンド14に加わる力を検出する。力覚センサーとしては、例えば、並進3軸方向の力成分と、回転3軸回りのモーメント成分の6成分を同時に検出することができる6軸力覚センサーを用いることができる。また、力覚センサーで使用される物理量は、電流、電圧、電荷量、インダクタンス、ひずみ、抵抗、電磁誘導、磁気、空気圧、光等である。力覚センサーは、所望の物理量を電気信号に変換することにより、6成分を検出可能である。なお、力覚センサーは、6軸に限らず、例えば3軸でもよい。また、力覚センサーを設ける位置は、ハンド14に加わる力を検出できるのであれば、特に限定されるものではない。   A force sensor (not shown) is provided inside the hand 14 or the tip of the arm 11. The force sensor detects a force applied to the hand 14. As the force sensor, for example, a six-axis force sensor that can simultaneously detect six components, ie, a force component in the translational three-axis direction and a moment component around the three rotation axes, can be used. The physical quantities used in the force sensor are current, voltage, charge amount, inductance, strain, resistance, electromagnetic induction, magnetism, air pressure, light, and the like. The force sensor can detect six components by converting a desired physical quantity into an electrical signal. The force sensor is not limited to six axes, and may be, for example, three axes. The position where the force sensor is provided is not particularly limited as long as the force applied to the hand 14 can be detected.

なお、ロボット10の構成は、本実施形態の特徴を説明するにあたって主要構成を説明したのであって、上記の構成に限られない。一般的な把持ロボットが備える構成を排除するものではない。例えば、図1では6軸のアームが示されているが、軸数(ジョイント数)をさらに増加させてもよいし、減らしてもよい。リンクの数を増減させてもよい。また、アーム、ハンド、リンク、ジョイント等の各種部材の形状、大きさ、配置、構造等も適宜変更してよい。また、エンドエフェクターはハンド14に限られない。   Note that the configuration of the robot 10 is not limited to the above-described configuration because the main configuration has been described in describing the features of the present embodiment. This does not exclude the configuration of a general gripping robot. For example, although a 6-axis arm is shown in FIG. 1, the number of axes (number of joints) may be further increased or decreased. The number of links may be increased or decreased. In addition, the shape, size, arrangement, structure, and the like of various members such as the arm, hand, link, and joint may be appropriately changed. The end effector is not limited to the hand 14.

制御装置20は、ロボット10の全体を制御する処理を行う。制御装置20は、ロボット10の本体とは離れた場所に設置してもよいし、ロボット10等に内蔵してもよい。制御装置20がロボット10の本体と離れた場所に設置されている場合には、制御装置20は、有線又は無線でロボット10と接続される。   The control device 20 performs processing for controlling the entire robot 10. The control device 20 may be installed at a location away from the main body of the robot 10 or may be built in the robot 10 or the like. When the control device 20 is installed at a location away from the main body of the robot 10, the control device 20 is connected to the robot 10 by wire or wirelessly.

第1撮像部30、第2撮像部31は、ロボット10の作業領域付近をそれぞれ異なる角度から撮像して、画像データを生成するユニットである。第1撮像部30、第2撮像部31は、例えば、カメラを含み、作業台、天井、壁などに設けられる。本実施の形態では、第1撮像部30及び第2撮像部31は作業台に設けられる。第1撮像部30、第2撮像部31としては、可視光カメラ、赤外線カメラ等を採用することができる。   The first imaging unit 30 and the second imaging unit 31 are units that generate image data by imaging the vicinity of the work area of the robot 10 from different angles. The first imaging unit 30 and the second imaging unit 31 include, for example, a camera and are provided on a work table, a ceiling, a wall, or the like. In the present embodiment, the first imaging unit 30 and the second imaging unit 31 are provided on the work table. As the first imaging unit 30 and the second imaging unit 31, a visible light camera, an infrared camera, or the like can be employed.

次に、ロボットシステム1の機能構成例について説明する。図2は、制御装置20の機能ブロック図の一例である。制御装置20は、主として、情報取得部201と、シナリオ選出部202と、ロボット駆動部203と、ライブラリー記憶部204と、実行ログ記憶部205とを有する。   Next, a functional configuration example of the robot system 1 will be described. FIG. 2 is an example of a functional block diagram of the control device 20. The control device 20 mainly includes an information acquisition unit 201, a scenario selection unit 202, a robot drive unit 203, a library storage unit 204, and an execution log storage unit 205.

情報取得部201は、入力装置25(図6参照)等から入力されたゴールG及び速度レベルを取得する。ゴールGとは、ロボット10に行わせたい作業の内容を示す情報である。ゴールGは、作業内容と、作業内容を定める変数(パラメーター)とを含む。ここで、作業内容は、例えば「Move A from XS to XE」のような形式であり、「Move A from XS to XE」は、ワークAをXSからXEへ移動させることを意味する。パラメーターは、例えば、作業内容に含まれるパラメーター(ワークA、位置XS、位置XE)と、その他のパラメーターである速度レベルとを含む。なお、速度レベルとは、ハンド14を移動させる速度であり、例えばハンド14がワークAを把持している場合には、ワークAを移動させる速度である。情報取得部201は、本発明の第1の取得部に相当する。ゴールGは、本発明の指示情報に相当する。ゴールGに含まれるパラメーターは、本発明の第2のパラメーターに相当する。   The information acquisition unit 201 acquires the goal G and the speed level input from the input device 25 (see FIG. 6) or the like. The goal G is information indicating the content of work that the robot 10 wants to perform. The goal G includes work contents and variables (parameters) that define the work contents. Here, the work content has a format such as “Move A from XS to XE”, for example, and “Move A from XS to XE” means that the work A is moved from XS to XE. The parameters include, for example, parameters (work A, position XS, position XE) included in the work content and a speed level that is another parameter. The speed level is a speed at which the hand 14 is moved. For example, when the hand 14 is holding the work A, the speed level is a speed at which the work A is moved. The information acquisition unit 201 corresponds to the first acquisition unit of the present invention. The goal G corresponds to the instruction information of the present invention. The parameter included in the goal G corresponds to the second parameter of the present invention.

シナリオ選出部202は、ライブラリー記憶部204(後に詳述)に格納された情報及び実行ログ記憶部205(後に詳述)に格納された実行ログに基づいて、任意のシナリオを1個選出する。本実施形態では、ロボット駆動部203で解釈可能な動作命令群を「シナリオ」と呼ぶ。シナリオは、動作を実現するために必要なロボットの単位動作を複数組み合わせたものである。例えば、動作が「ワークAを目的位置Dに置く」である場合、動作命令群は、「ワークAに(ワークAの位置に)手先を移動する」、「ワークAを把持する」、「位置Dに手先を移動する」「ワークAを解放する」などとすることができる。シナリオ選出部202が行う処理については、後に詳述する。シナリオ選出部202は、本発明の第2の取得部、シナリオ群抽出部、及びシナリオ選出部に相当する。   The scenario selection unit 202 selects one arbitrary scenario based on the information stored in the library storage unit 204 (detailed later) and the execution log stored in the execution log storage unit 205 (detailed later). . In this embodiment, a group of operation commands that can be interpreted by the robot drive unit 203 is referred to as a “scenario”. A scenario is a combination of a plurality of robot unit motions necessary to realize the motion. For example, when the operation is “place work A at target position D”, the operation command group includes “move the hand to work A (to the position of work A)”, “hold work A”, “position “Move the hand to D”, “Release work A”, and the like. The processing performed by the scenario selection unit 202 will be described in detail later. The scenario selection unit 202 corresponds to the second acquisition unit, scenario group extraction unit, and scenario selection unit of the present invention.

ロボット駆動部203は、ロボット10の現在の状態(例えば、ジョイントの角度、手先の位置、力覚センサーなどのセンサーの出力値など)を特定する情報等をロボット10から取得し、ロボット10の周囲の環境の現在の状態(例えば、ワークAの位置及びワークAが空間を占める領域、障害物の位置及び障害物が空間を占める領域など)を特定する情報等を第1撮像部30及び第2撮像部31からを取得する。そして、ロボット駆動部203は、取得した情報に基づいて、シナリオ選出部202で選出されたシナリオでワークAを移動させるようにロボット10を制御する。ロボット駆動部203の処理は、公知の技術により実現できるので、詳細な説明は省略する。ロボット駆動部203は、本発明の駆動制御部に相当する。   The robot drive unit 203 acquires information for specifying the current state of the robot 10 (for example, the joint angle, the position of the hand, the output value of a sensor such as a force sensor) from the robot 10, and the surroundings of the robot 10 Information for specifying the current state of the environment (for example, the position of the work A and the area where the work A occupies space, the position of the obstacle, the area where the obstacle occupies space, etc.) Obtain from the imaging unit 31. Then, the robot drive unit 203 controls the robot 10 to move the workpiece A in the scenario selected by the scenario selection unit 202 based on the acquired information. Since the process of the robot drive unit 203 can be realized by a known technique, a detailed description thereof is omitted. The robot drive unit 203 corresponds to the drive control unit of the present invention.

ライブラリー記憶部204には、複数の動作命令群で構成されるシナリオが複数記憶される。図3は、ライブラリー記憶部204に記録されるデータ構成の一例を示す図である。   The library storage unit 204 stores a plurality of scenarios composed of a plurality of operation instruction groups. FIG. 3 is a diagram illustrating an example of a data configuration recorded in the library storage unit 204.

図3に示すように、ライブラリー記憶部204には、シナリオの識別情報であるシナリオ名と、作業内容と、作業内容を構成する動作命令群とが、シナリオ毎に関連付けられて記憶されている。   As illustrated in FIG. 3, the library storage unit 204 stores a scenario name, which is scenario identification information, work contents, and a group of operation commands that constitute the work contents, in association with each scenario. .

ここで、シナリオ名、作業内容及び動作命令群について、シナリオ名がシナリオ1の場合を例に説明する。シナリオ1の作業内容は、「Move A from XS to XE」であり、ワークAをXSからXEへ移動させるという内容である。作業内容は、本発明のシナリオが示す作業内容に相当する。   Here, the scenario name, work content, and operation instruction group will be described by taking the scenario name as scenario 1 as an example. The work content of scenario 1 is “Move A from XS to XE”, which is the content of moving work A from XS to XE. The work content corresponds to the work content indicated by the scenario of the present invention.

シナリオ1の作業内容「Move A from XS to XE」は、「Move to XS」、「Grasp A」、「Move from XS to X1」、「Move from X1 to XE」、及び「Release A」の複数の動作命令(動作命令群)からなる。   Work contents of scenario 1 are “Move A from XS to XE”, “Move to XS”, “Grasp A”, “Move from XS to X1”, “Move from X1 to XE”, and “Release A”. It consists of operation instructions (operation instruction group).

動作命令「Move to XS」は、ハンド14の位置を位置XSへ移動させる、という動作命令である。
動作命令「Grasp A」は、ハンド14でワークAを把持する、という動作命令である。
動作命令「Move from XS to X1」は、ハンド14の位置を位置XSから位置X1へ移動させる、という動作命令である。
動作命令「Move from X1 to XE」は、ハンド14の位置を位置X1から位置XEへ移動させる、という動作命令である。
動作命令「Release A」ハンドで把持されたワークAを解放する、という動作命令である。
The operation command “Move to XS” is an operation command to move the position of the hand 14 to the position XS.
The operation command “Grasp A” is an operation command for gripping the workpiece A with the hand 14.
The operation command “Move from XS to X1” is an operation command for moving the position of the hand 14 from the position XS to the position X1.
The operation command “Move from X1 to XE” is an operation command to move the position of the hand 14 from the position X1 to the position XE.
The operation command “Release A” is an operation command for releasing the workpiece A held by the hand.

ここで、シナリオ中、大文字で表示されたワークA、位置XS、位置X1、位置XEは、変更可能なパラメーターである。このパラメーターは、本発明の第1のパラメーターに相当する。   Here, the workpiece A, the position XS, the position X1, and the position XE displayed in capital letters in the scenario are changeable parameters. This parameter corresponds to the first parameter of the present invention.

図4(A)、(B)、(C)は、複数のシナリオに対し、パラメーターが異なる場合のハンド14の移動経路を模式的に示す図である。図4(A)、(B)、(C)における[1]、[2]等の数字は、実行ログ番号(後に詳述、図5参照)を示している。また、図4(A)、(B)、(C)においては、シナリオ1でハンド14を移動させた場合を実線で示し、シナリオ2(図3参照)でハンド14を移動させた場合を一点鎖線で示し、シナリオ3(図3参照)でハンド14を移動させた場合を二点鎖線で示す。   FIGS. 4A, 4 </ b> B, and 4 </ b> C are diagrams schematically illustrating movement paths of the hand 14 when parameters are different for a plurality of scenarios. Numbers such as [1] and [2] in FIGS. 4A, 4B, and 4C indicate execution log numbers (detailed later, see FIG. 5). 4A, 4B, and 4C, the case where the hand 14 is moved in the scenario 1 is indicated by a solid line, and the case where the hand 14 is moved in the scenario 2 (see FIG. 3) is one point. This is indicated by a chain line, and a case where the hand 14 is moved in scenario 3 (see FIG. 3) is indicated by a two-dot chain line.

図4に示すように、シナリオが異なれば、異なる経路でハンド14が移動する。例えば、図3に示すように、シナリオ1、シナリオ2、及びシナリオ3の作業内容は、全て「Move A from XS to XE」である。しかしながら、シナリオ1、シナリオ2、及びシナリオ3は動作命令群が異なるため、図4に示すように、シナリオ1でハンド14を移動させた場合と、シナリオ2でハンド14を移動させた場合と、シナリオ3でハンド14を移動させた場合とでは、異なる経路でハンド14が移動する。   As shown in FIG. 4, if the scenario is different, the hand 14 moves along a different route. For example, as shown in FIG. 3, the work contents of scenario 1, scenario 2, and scenario 3 are all “Move A from XS to XE”. However, scenario 1, scenario 2, and scenario 3 have different operation instruction groups. Therefore, as shown in FIG. 4, when hand 14 is moved in scenario 1, when hand 14 is moved in scenario 2, When the hand 14 is moved in the scenario 3, the hand 14 moves along a different route.

また、同じシナリオの場合であっても、パラメーターが異なれば、異なる経路でハンド14が移動する。例えば、シナリオ1でハンド14を移動させた場合であっても、パラメーターである位置XS、位置X1、位置XEが異なると、異なる経路でハンド14が移動する。   Even in the same scenario, if the parameters are different, the hand 14 moves along a different route. For example, even when the hand 14 is moved in the scenario 1, if the parameters XS, X1, and XE are different, the hand 14 moves along different routes.

なお、図3及び図4は、シナリオ及びハンド14の移動経路のあくまで一例を示したものであり、図3及び図4に示す場合に限られるものではない。   3 and 4 show only an example of the scenario and the movement route of the hand 14, and are not limited to the cases shown in FIGS. 3 and 4.

図2の説明に戻る。実行ログ記憶部205には、ロボット10が過去に実行した結果である実行ログが格納されている。実行ログ記憶部205には、図5に示すように、主として、実行ログを特定する実行ログ番号を格納する番号格納領域2051と、シナリオを特定するシナリオ名を格納するシナリオ名格納領域2052と、シナリオを定めるパラメーターを格納するパラメーター格納領域2053と、シナリオの実行結果を格納する実行結果格納領域2054とが互いに関連付けられた実行ログテーブルが格納されており、実行ログテーブル内に実行ログが格納されている。   Returning to the description of FIG. The execution log storage unit 205 stores an execution log that is a result of the robot 10 executing in the past. As shown in FIG. 5, the execution log storage unit 205 mainly includes a number storage area 2051 for storing an execution log number for specifying an execution log, a scenario name storage area 2052 for storing a scenario name for specifying a scenario, An execution log table is stored in which a parameter storage area 2053 for storing a parameter for defining a scenario and an execution result storage area 2054 for storing a scenario execution result are associated with each other. The execution log is stored in the execution log table. ing.

パラメーター格納領域2053は、ライブラリー記憶部204に格納されたシナリオに登場するパラメーターの全てに対して、パラメーターの情報を格納するための格納領域を有する。本実施の形態では、パラメーター格納領域2053は、主として、ワークAに関する情報が格納されるA格納領域2053aと、位置XSに関する情報が格納されるXS格納領域2053bと、位置XEに関する情報が格納されるXE格納領域2053cと、位置X1に関する情報が格納されるX1格納領域2053dと、位置X2に関する情報が格納されるX2格納領域2053eと、ハンド14の移動速度を示す速度レベルが格納される速度格納領域2053fと、を有する。他のパラメーターについては、図示を省略する。パラメーター格納領域2053に格納される値は、本発明の第1のパラメーターの選択値に相当する。速度レベルは、本発明の速度情報に相当する。   The parameter storage area 2053 has a storage area for storing parameter information for all parameters appearing in the scenario stored in the library storage unit 204. In the present embodiment, the parameter storage area 2053 mainly stores an A storage area 2053a in which information on the workpiece A is stored, an XS storage area 2053b in which information on the position XS is stored, and information on the position XE. An XE storage area 2053c, an X1 storage area 2053d for storing information about the position X1, an X2 storage area 2053e for storing information about the position X2, and a speed storage area for storing a speed level indicating the moving speed of the hand 14 2053f. Other parameters are not shown. The value stored in the parameter storage area 2053 corresponds to the selected value of the first parameter of the present invention. The speed level corresponds to the speed information of the present invention.

なお、パラメーター格納領域2053は、全てのパラメーター格納する領域を有するため、シナリオによっては使用しないパラメーターが存在する。使用しないパラメーターについては、パラメーター格納領域2053に、例えば、使用しないことを示す「‐」が格納される。   Since the parameter storage area 2053 has an area for storing all parameters, there are parameters that are not used depending on the scenario. For parameters that are not used, for example, “−” indicating that they are not used is stored in the parameter storage area 2053.

図6は、制御装置20の概略構成の一例を示すブロック図である。図示するように、例えばコンピューターなどで構成される制御装置20は、演算装置であるCPU(Central Processing Unit)21と、揮発性の記憶装置であるRAM(Random Access Memory)や不揮発性の記憶装置であるROM(Read only Memory)からなるメモリー22と、外部記憶装置23と、ロボット10等の外部の装置と通信を行う通信装置24と、マウスやキーボード等の入力装置25と、ディスプレイ等の出力装置26と、制御装置20と他のユニットを接続するインターフェイス(I/F)27とを備える。   FIG. 6 is a block diagram illustrating an example of a schematic configuration of the control device 20. As shown in the figure, a control device 20 composed of, for example, a computer includes a CPU (Central Processing Unit) 21 that is an arithmetic device, a RAM (Random Access Memory) that is a volatile storage device, and a nonvolatile storage device. A memory 22 composed of a certain ROM (Read only Memory), an external storage device 23, a communication device 24 for communicating with an external device such as the robot 10, an input device 25 such as a mouse and a keyboard, and an output device such as a display 26, and an interface (I / F) 27 for connecting the control device 20 and other units.

各機能部は、例えば、CPU21が外部記憶装置23等に格納された所定のプログラムをメモリー22等に読み出して実行すること、及びCPU21がメモリー22又は外部記憶装置23を利用することにより実現される。なお、所定のプログラムは、例えば、予め外部記憶装置23等にインストールされてもよいし、通信装置24を介してネットワークからダウンロードされてインストール又は更新されてもよい。   Each functional unit is realized, for example, when the CPU 21 reads out and executes a predetermined program stored in the external storage device 23 or the like, and the CPU 21 uses the memory 22 or the external storage device 23. . The predetermined program may be installed in advance in the external storage device 23 or the like, or may be downloaded from the network via the communication device 24 and installed or updated.

以上のロボットシステム1の構成は、本実施形態の特徴を説明するにあたって主要構成を説明したのであって、上記の構成に限られない。構成要素の分類の仕方や名称によって、本願発明が制限されることはない。制御装置20の構成は、処理内容に応じて、さらに多くの構成要素に分類することもできる。また、1つの構成要素がさらに多くの処理を実行するように分類することもできる。また、各構成要素の処理は、1つのハードウェアで実行されてもよいし、複数のハードウェアで実行されてもよい。   The configuration of the robot system 1 described above is not limited to the above-described configuration because the main configuration has been described in describing the features of the present embodiment. The present invention is not limited by the way of classification and names of the constituent elements. The configuration of the control device 20 can be classified into more components depending on the processing content. Moreover, it can also classify | categorize so that one component may perform more processes. Further, the processing of each component may be executed by one hardware or may be executed by a plurality of hardware.

また、ロボット10が制御装置20の少なくとも一部の機能や、第1撮像部30及び第2撮像部31を備えていてもよい。また、一般的なロボットシステムが備える構成を排除するものではない。   Further, the robot 10 may include at least a part of functions of the control device 20, the first imaging unit 30, and the second imaging unit 31. Further, the configuration of a general robot system is not excluded.

次に、本実施形態における、上記構成からなるロボットシステム1の特徴的な処理について説明する。   Next, a characteristic process of the robot system 1 having the above configuration in the present embodiment will be described.

図7は、シナリオ選出処理の流れを示すフローチャートである。この処理は、任意のタイミングで、例えば、図示しないボタン等を介してシナリオ選出の開始指示が入力されることにより開始される。   FIG. 7 is a flowchart showing a flow of scenario selection processing. This process is started at an arbitrary timing, for example, by inputting a scenario selection start instruction via a button or the like (not shown).

情報取得部201は、入力装置25等を介して入力されたゴールGを取得し、シナリオ選出部202に出力する(ステップS100、本発明の第1のステップに相当)。   The information acquisition unit 201 acquires the goal G input via the input device 25 or the like, and outputs it to the scenario selection unit 202 (step S100, corresponding to the first step of the present invention).

シナリオ選出部202は、ライブラリー記憶部204からシナリオの内容を取得し、かつ実行ログ記憶部205に格納されている実行ログを取得する(本発明の第1のステップに相当する)。そして、シナリオ選出部202は、実行ログ記憶部205に格納されている実行ログからシナリオ群Aを抽出する(ステップS102、本発明の第2のステップに相当する)。ここで、ステップS102の処理について、詳細に説明する。   The scenario selection unit 202 acquires the contents of the scenario from the library storage unit 204 and acquires the execution log stored in the execution log storage unit 205 (corresponding to the first step of the present invention). Then, the scenario selection unit 202 extracts the scenario group A from the execution log stored in the execution log storage unit 205 (step S102, corresponding to the second step of the present invention). Here, the process of step S102 will be described in detail.

図8は、シナリオ群A抽出処理の流れを示すフローチャートである。
シナリオ選出部202は、Jを1に設定する(ステップS1021)。なお、Jは、実行ログ記憶部205に格納された実行ログ番号を示す数値(ここでは自然数)である。
FIG. 8 is a flowchart showing the flow of the scenario group A extraction process.
The scenario selection unit 202 sets J to 1 (step S1021). J is a numerical value (here, a natural number) indicating an execution log number stored in the execution log storage unit 205.

シナリオ選出部202は、実行ログ記憶部205にJ番の実行ログがあるか否かを判断する(ステップS1022)。   The scenario selection unit 202 determines whether or not there is a Jth execution log in the execution log storage unit 205 (step S1022).

実行ログ記憶部205にJ番の実行ログがある場合(ステップS102でYES)には、シナリオ選出部202は、J番の実行ログのシナリオの作業内容が、ステップS100で取得されたゴールGの作業内容と一致するか否かを判断する(ステップS1023)。ステップS1023の処理について、J=1であり、ステップS100で取得されたゴールGの作業内容が「Move A from XS to XE」である場合を例に説明する。   If there is a Jth execution log in the execution log storage unit 205 (YES in step S102), the scenario selection unit 202 determines that the work content of the scenario in the Jth execution log is the goal G acquired in step S100. It is determined whether or not it matches the work content (step S1023). The process in step S1023 will be described by taking as an example a case where J = 1 and the work content of the goal G acquired in step S100 is “Move A from XS to XE”.

J=1であるため、シナリオ選出部202は、実行ログ記憶部205から1番の実行ログを取得する。1番の実行ログのシナリオ名はシナリオ1であるため、シナリオ選出部202は、ライブラリー記憶部204からシナリオ1の作業内容を取得する。シナリオ1の作業内容は、「Move A from XS to XE」である。   Since J = 1, the scenario selection unit 202 acquires the first execution log from the execution log storage unit 205. Since the scenario name of the first execution log is scenario 1, the scenario selection unit 202 acquires the work contents of scenario 1 from the library storage unit 204. The work content of scenario 1 is “Move A from XS to XE”.

なお、本実施の形態では、実行ログ記憶部205にシナリオ名のみが含まれ、シナリオの詳細はライブラリー記憶部204に記憶されているため、シナリオ選出部202は、ライブラリー記憶部204及び実行ログ記憶部205から情報を取得する。ただし、実行ログ記憶部205にシナリオの詳細が記憶されている場合には、シナリオ選出部202は、実行ログ記憶部205のみから情報を取得すればよく、ライブラリー記憶部204から情報を取得する必要はない。   In this embodiment, since only the scenario name is included in the execution log storage unit 205 and the details of the scenario are stored in the library storage unit 204, the scenario selection unit 202 includes the library storage unit 204 and the execution Information is acquired from the log storage unit 205. However, when the details of the scenario are stored in the execution log storage unit 205, the scenario selection unit 202 only needs to acquire information from the execution log storage unit 205, and acquires information from the library storage unit 204. There is no need.

シナリオ選出部202は、シナリオ1の作業内容「Move A from XS to XE」と、ゴールGの作業内容「Move A from XS to XE」とを比較する。この場合には、シナリオ1の作業内容「Move A from XS to XE」と、ゴールGの作業内容「Move A from XS to XE」とは一致するため、シナリオ選出部202は、1番のシナリオの作業内容が、ステップS100で取得されたゴールGの作業内容と一致すると判断する。   The scenario selection unit 202 compares the work content “Move A from XS to XE” of the scenario 1 with the work content “Move A from XS to XE” of the goal G. In this case, the work content “Move A from XS to XE” of scenario 1 matches the work content “Move A from XS to XE” of goal G. It is determined that the work content matches the work content of the goal G acquired in step S100.

J番の実行ログの作業内容が、ゴールGと一致する場合(ステップS1023でYES)には、シナリオ選出部202は、J番の実行ログとゴールGとの類似度を算出する(ステップS1024)。ステップS1024の処理について、J=1であり、ゴールGの作業内容が「Move A from XS to XE」であり、ゴールGのパラメーターが、Aが球11、XSが(15,50,0)、XEが(60,0,0)、速度レベルが2である場合を例に説明する。なお、Aの球11は、把持対象物の種類を示し、XSの(15,50,0)、XEの(60,0,0)は、3次元空間における座標を示す。なお、球11の内容等については、メモリー22等に記憶されている。ゴールGのパラメーターの値は、本発明の第2のパラメーターの選択値に相当する。   When the work content of the Jth execution log matches the goal G (YES in step S1023), the scenario selection unit 202 calculates the similarity between the Jth execution log and the goal G (step S1024). . Regarding the processing of step S1024, J = 1, the work content of the goal G is “Move A from XS to XE”, the parameters of the goal G are A for the sphere 11, XS for (15, 50, 0), A case where XE is (60, 0, 0) and the speed level is 2 will be described as an example. The sphere 11 of A indicates the type of the object to be grasped, and (15, 50, 0) of XS and (60, 0, 0) of XE indicate coordinates in a three-dimensional space. The contents of the sphere 11 are stored in the memory 22 or the like. The value of the goal G parameter corresponds to the selected value of the second parameter of the present invention.

シナリオ選出部202は、数式(1)にゴールGのパラメーターと、1番の実行ログのパラメーターとを代入することで、1番の実行ログとゴールGとの類似度を算出する。
[数1]
類似度=Σw[i]/(Goal.Param[i]−Log.Param[i]) ・・・(1)
The scenario selection unit 202 calculates the similarity between the first execution log and the goal G by substituting the parameter of the goal G and the parameter of the first execution log into Equation (1).
[Equation 1]
Similarity = Σw [i] / (Goal.Param [i] −Log.Param [i]) (1)

ここで、w[i]は、各パラメーターiの重み付け固定値であり、各パラメーターに任意の値とすることができる。Goal.Param[i]は、ゴールGのパラメーターiの値であり、Log.Param[i]は、シナリオのパラメーターiの値である。このように、数式(1)は、パラメーター毎に差の逆数をとり、これらを所定の重みづけて加算したものである。   Here, w [i] is a weighted fixed value of each parameter i, and can be an arbitrary value for each parameter. Goal. Param [i] is the value of the parameter i of the goal G, and Log. Param [i] is the value of parameter i of the scenario. Thus, Equation (1) takes the reciprocal of the difference for each parameter, and adds them with a predetermined weight.

1番の実行ログのパラメーターは、Aが球10、XSが(50,10,0)、XEが(20,50,0)、速度レベルが2(図5参照)である。本実施の形態では、w[i]を全て1とするため、球11と球10との差の逆数と、座標(15,50,0)座標(50,10,0)との距離の逆数と、座標(60,0,0)と座標(20,50,0)との逆数と、速度レベル2と速度レベル2との差の逆数(すなわち0)との和が、類似度として算出される。ここで、球10、球11の値は、例えばメモリー22等に記憶された球の大きさや、球の重さ等の値を類似度の算出に用いることができる。また、速度レベルについても、例えばメモリー22等に記憶された速度の値を用いることができる。   The parameters of the No. 1 execution log are A for sphere 10, XS (50, 10, 0), XE (20, 50, 0), and speed level 2 (see FIG. 5). In this embodiment, since all w [i] are 1, the reciprocal of the difference between the sphere 11 and the sphere 10 and the reciprocal of the distance between the coordinates (15, 50, 0) and the coordinates (50, 10, 0). And the reciprocal of coordinates (60, 0, 0) and coordinates (20, 50, 0) and the reciprocal of the difference between speed level 2 and speed level 2 (that is, 0) is calculated as the similarity. The Here, as the values of the sphere 10 and the sphere 11, for example, values such as the size of the sphere and the weight of the sphere stored in the memory 22 can be used for calculating the similarity. For the speed level, for example, a speed value stored in the memory 22 or the like can be used.

なお、数式(1)は、差が大きいほど類似度が小さくなるような数式の一例であり、類似度の計算に用いる式はこれに限られない。類似度の計算に用いる式は、パラメーターの差が大きいほど、類似度が小さくなるような数式であれば、様々な形態の式を用いることができる。   The formula (1) is an example of a formula in which the similarity decreases as the difference increases, and the formula used for calculating the similarity is not limited thereto. As the formula used for calculating the similarity, various types of formulas can be used as long as the difference in parameters is large and the similarity becomes small.

また、数式(1)において、w[i]は1に限定されない。例えば、速度レベルについては、他のパラメーターに対して重みづけが重くなるようにw[i]を設定してもよい。   In the formula (1), w [i] is not limited to 1. For example, for the speed level, w [i] may be set so that the weighting is heavy with respect to other parameters.

シナリオ選出部202は、J番の実行ログとゴールGとの類似度が閾値(任意の値)以上であるか否かを判断する(ステップS1025)。   The scenario selection unit 202 determines whether the similarity between the Jth execution log and the goal G is equal to or greater than a threshold value (arbitrary value) (step S1025).

J番の実行ログとゴールGとの類似度が閾値以上である場合(ステップS1025でYES)には、シナリオ選出部202は、J番の実行ログをシナリオ群Aに追加する(ステップS1026)。   If the similarity between the Jth execution log and the goal G is equal to or greater than the threshold (YES in step S1025), the scenario selection unit 202 adds the Jth execution log to the scenario group A (step S1026).

ステップS1026が行われた場合、J番の実行ログのシナリオの作業内容が、ゴールGと一致しない場合(ステップS1023でNO)、及びJ番の実行ログとゴールGとの類似度が閾値(任意の値)以上でない場合(ステップS1025でNO)には、シナリオ選出部202は、Jに1を追加し(ステップS1027)、再度ステップS1022を行う。   When step S1026 is performed, the work content of the scenario of the Jth execution log does not match the goal G (NO in step S1023), and the similarity between the Jth execution log and the goal G is a threshold (optional) If the value is not greater than or equal to (NO in step S1025), the scenario selection unit 202 adds 1 to J (step S1027), and performs step S1022 again.

実行ログ記憶部205にJ番の実行ログがない場合(ステップS1022でNO)には、シナリオ選出部202は、シナリオ群A抽出処理(ステップS102)を終了する。   If there is no J-th execution log in the execution log storage unit 205 (NO in step S1022), the scenario selection unit 202 ends the scenario group A extraction process (step S102).

なお、本実施の形態では、先にゴールGを取得し、次にライブラリー記憶部204及び実行ログ記憶部205の情報を取得したが、情報の取得順はこれに限定されない。先にライブラリー記憶部204及び実行ログ記憶部205の情報を取得してから、ゴールGを取得してもよいし、全ての情報を同時に取得してもよい。   In the present embodiment, the goal G is acquired first, and then the information in the library storage unit 204 and the execution log storage unit 205 is acquired. However, the information acquisition order is not limited to this. The goal G may be acquired after the information of the library storage unit 204 and the execution log storage unit 205 is acquired first, or all the information may be acquired simultaneously.

シナリオ選出部202は、ステップS102で選出されたシナリオ群Aから、シナリオSを選出する(ステップS104、本発明の第3のステップに相当)。ここで、ステップS104の処理について、詳細に説明する。   The scenario selection unit 202 selects a scenario S from the scenario group A selected in step S102 (step S104, corresponding to the third step of the present invention). Here, the process of step S104 will be described in detail.

図9は、シナリオS選出処理の流れを示すフローチャートである。
シナリオ選出部202は、Kを1に設定し、かつ最大成功率を0に設定する(ステップS1041)。ここで、Kは、ライブラリー記憶部204に格納されているシナリオのシナリオ名を示す番号である。例えば、Kが1の場合は、シナリオ1の場合である。
FIG. 9 is a flowchart showing the flow of the scenario S selection process.
The scenario selection unit 202 sets K to 1 and sets the maximum success rate to 0 (step S1041). Here, K is a number indicating the scenario name of the scenario stored in the library storage unit 204. For example, the case where K is 1 is the case of scenario 1.

シナリオ選出部202は、シナリオ群Aに含まれる実行ログの中に、シナリオ名がシナリオKであるものがあるか否かを判断する(ステップS1042)。   The scenario selection unit 202 determines whether there is a scenario whose scenario name is scenario K in the execution logs included in the scenario group A (step S1042).

シナリオ群AにシナリオKの実行ログがある場合(ステップ1042でYES)には、シナリオ選出部202は、シナリオKの成功率を算出する(ステップS1043)。ステップS1043の処理について、具体例を用いて説明する。   When there is an execution log of scenario K in scenario group A (YES in step 1042), scenario selection unit 202 calculates the success rate of scenario K (step S1043). The process of step S1043 will be described using a specific example.

例えば、Kが1であり、図5に示す実行ログテーブルのうち、番号が1〜10、32、33、87、146の実行ログがシナリオ群Aに含まれている場合には、シナリオ選出部202は、番号が1〜10、32、33、87、146の実行ログのうち、シナリオ名がシナリオ1である番号1、4、7、10をシナリオ群Aから抽出する。   For example, when K is 1 and the execution logs with numbers 1 to 10, 32, 33, 87, and 146 are included in the scenario group A in the execution log table shown in FIG. 202 extracts, from the scenario group A, numbers 1, 4, 7, and 10 whose scenario name is scenario 1 from the execution logs of numbers 1 to 10, 32, 33, 87, and 146.

シナリオ選出部202は、シナリオ群Aから抽出された番号1、4、7、10の実行ログの成功率を算出する。実行ログテーブルの実行結果格納領域2054を参照すると、番号7の実行ログは結果が成功であるが、番号1、4、10は結果が失敗である。したがって、シナリオ選出部202は、成功率を1/4と算出する。   The scenario selection unit 202 calculates the success rate of the execution logs of numbers 1, 4, 7, and 10 extracted from the scenario group A. Referring to the execution result storage area 2054 of the execution log table, the result of the execution log of number 7 is successful, but the results of numbers 1, 4, and 10 are unsuccessful. Therefore, the scenario selection unit 202 calculates the success rate as ¼.

シナリオ選出部202は、ステップS1043で算出された成功率が最大成功率より大きいか否かを判断する(ステップS1044)。   The scenario selection unit 202 determines whether or not the success rate calculated in step S1043 is larger than the maximum success rate (step S1044).

ステップS1043で算出された成功率が最大成功率より大きい場合(ステップS1044でYES)には、シナリオ選出部202は、シナリオKをシナリオSとし、シナリオKの成功率を最大成功率とする(ステップS1045)。最初にステップS1044、S1045を行う場合には、ステップS1041で最大成功率が0とされているので、シナリオ1の成功率が0でない限り、シナリオ1がシナリオSとされ、シナリオ1の成功率が最大成功率とされる。   If the success rate calculated in step S1043 is larger than the maximum success rate (YES in step S1044), the scenario selection unit 202 sets scenario K as scenario S and the success rate of scenario K as the maximum success rate (step S1044). S1045). When steps S1044 and S1045 are performed first, the maximum success rate is set to 0 in step S1041. Therefore, unless the success rate of scenario 1 is 0, scenario 1 is set as scenario S, and the success rate of scenario 1 is Maximum success rate.

ステップS1045が行われた場合、及びステップS1043で算出された成功率が最大成功率より大きくない場合(ステップS1044でNO)には、シナリオ選出部202は、Kに1を追加し(ステップS1046)、再度ステップS1042を行う。   When step S1045 is performed and when the success rate calculated in step S1043 is not greater than the maximum success rate (NO in step S1044), the scenario selection unit 202 adds 1 to K (step S1046). Step S1042 is performed again.

シナリオ群AにシナリオKの実行ログがない場合(ステップS1042でNO)には、シナリオ選出部202は、すべてのシナリオについて成功率の算出が行われたか否かを判断する(ステップS1047)。例えば、ライブラリー記憶部204に格納されたシナリオがシナリオ1〜シナリオ10である場合には、シナリオ選出部202は、Kが10より大きい場合には、全てのシナリオについて処理が行われたと判断するようにしてもよい。   If there is no execution log for scenario K in scenario group A (NO in step S1042), scenario selection unit 202 determines whether or not the success rate has been calculated for all scenarios (step S1047). For example, if the scenarios stored in the library storage unit 204 are scenarios 1 to 10, the scenario selection unit 202 determines that all scenarios have been processed when K is greater than 10. You may do it.

すべてのシナリオについて処理が終了していない場合(ステップS1047でNO)には、シナリオ選出部202は、再度ステップS1042を行う。すべてのシナリオについて処理が終了した場合(ステップS1047でYES)には、シナリオ選出部202は、シナリオS選出処理(ステップS104)を終了する。   If processing has not been completed for all scenarios (NO in step S1047), scenario selection unit 202 performs step S1042 again. When the processing is completed for all scenarios (YES in step S1047), the scenario selection unit 202 ends the scenario S selection processing (step S104).

シナリオ選出部202は、ステップS104で選出されたシナリオSをロボット駆動部203に出力する。ロボット駆動部203は、シナリオ選出部202から出力されたシナリオSでロボット10を移動させるように、ロボット10を制御する(ステップS106、本発明の第4のステップに相当)。   The scenario selection unit 202 outputs the scenario S selected in step S104 to the robot drive unit 203. The robot drive unit 203 controls the robot 10 to move the robot 10 in the scenario S output from the scenario selection unit 202 (step S106, corresponding to the fourth step of the present invention).

ロボット駆動部203は、ステップS106でロボット10を制御した結果が成功か否かを判断し、その結果とシナリオSとを関連付けて実行ログ記憶部205に記憶する(ステップS108)。ロボット駆動部203は、例えば、シナリオSの動作命令群が最後まで実行できた場合には、シナリオSの実行は成功であると判断することができる。   The robot drive unit 203 determines whether or not the result of controlling the robot 10 in step S106 is successful, and stores the result and the scenario S in association with each other in the execution log storage unit 205 (step S108). For example, when the operation command group of the scenario S can be executed to the end, the robot drive unit 203 can determine that the execution of the scenario S is successful.

本実施の形態によれば、把持した対象物の移動等の作業をロボットに行わせる場合に、過去の実行結果に基づいて、作業に適したシナリオかつ成功率の高いシナリオを選択することができる。また、過去の実行結果から状況(パラメーターとして設定されるワークのサイズや、スタート及びゴールの位置等)に合わせて、成功率の高い作業結果を選択して実行できるため、処理の信頼性を向上させることができる。   According to the present embodiment, when a robot performs a task such as movement of a grasped object, a scenario suitable for the task and a scenario with a high success rate can be selected based on a past execution result. . In addition, it is possible to select and execute work results with a high success rate according to the situation (workpiece size set as parameters, start and goal positions, etc.) from past execution results, improving process reliability. Can be made.

なお、厳密に一致した環境(ワークのサイズや、スタート及びゴールの位置等)で再度作業を行う場合というのは、実際は稀である。したがって、本実施の形態のように、より近い環境で、過去に成功した作業結果を選出することにより、現実的、実用的、汎用的、かつ柔軟にロボットを制御することができる。   In practice, it is rare that the work is performed again in an exactly matched environment (work size, start and goal positions, etc.). Therefore, the robot can be controlled realistically, practically, versatilely and flexibly by selecting work results that have been successful in the past in a closer environment as in the present embodiment.

また、本実施の形態では、実行に大きな影響を与える速度情報をパラメーターとし、類似度の算出に用いることで、目的の作業に近い環境の実行結果の抽出に用いることができる。   Further, in this embodiment, speed information that has a large influence on execution is used as a parameter, and is used for calculation of similarity, so that it can be used for extraction of execution results in an environment close to the target work.

<第2の実施の形態>
本発明の第1の実施の形態は、速度レベルを含めて類似度を算出したが、速度レベルは、他のパラメーターと比べると、作業結果に対する影響が大きい。
<Second Embodiment>
In the first embodiment of the present invention, the similarity including the speed level is calculated. However, the speed level has a greater influence on the work result than other parameters.

本発明の第2の実施の形態は、速度レベルが同じ実行ログのみを用いてシナリオSを選出する形態である。以下。第2の実施の形態のロボットシステム2について説明する。ロボットシステム2の構成は、ロボットシステム1と同一であるため、説明を省略する。また、第1の実施の形態と同一の部分については、同一の符号を付し、説明を省略する。
本実施形態における、上記構成からなるロボットシステム2の特徴的な処理について説明する。
In the second embodiment of the present invention, the scenario S is selected using only execution logs having the same speed level. Less than. A robot system 2 according to the second embodiment will be described. Since the configuration of the robot system 2 is the same as that of the robot system 1, description thereof is omitted. Further, the same parts as those of the first embodiment are denoted by the same reference numerals, and description thereof is omitted.
A characteristic process of the robot system 2 configured as described above in the present embodiment will be described.

図10は、シナリオ選出処理の流れを示すフローチャートである。この処理は、任意のタイミングで、例えば、図示しないボタン等を介してシナリオ選出の開始指示が入力されることにより開始される。   FIG. 10 is a flowchart showing the flow of scenario selection processing. This process is started at an arbitrary timing, for example, by inputting a scenario selection start instruction via a button or the like (not shown).

情報取得部201は、入力装置25等を介して入力されたゴールGを取得し、シナリオ選出部202に出力する(ステップS100)。   The information acquisition unit 201 acquires the goal G input via the input device 25 or the like, and outputs it to the scenario selection unit 202 (step S100).

シナリオ選出部202は、実行ログ記憶部205に格納されている実行ログから、シナリオ群Aを抽出する(ステップS103)。ここで、ステップS103の処理について、詳細に説明する。   The scenario selection unit 202 extracts the scenario group A from the execution log stored in the execution log storage unit 205 (step S103). Here, the process of step S103 will be described in detail.

図11は、シナリオ群A抽出処理の流れを示すフローチャートである。
シナリオ選出部202は、Jを1に設定する(ステップS1031)。シナリオ選出部202は、実行ログ記憶部205にJ番の実行ログがあるか否かを判断する(ステップS1032)。実行ログ記憶部205にJ番の実行ログがある場合(ステップS1032でYES)には、シナリオ選出部202は、J番の実行ログのシナリオの作業内容が、ステップS100で取得されたゴールGの作業内容と一致するか否かを判断する(ステップS1033)。なお、ステップS1031の処理は、ステップS1021の処理と同じであり、ステップS1032の処理は、ステップS1022の処理と同じであり、ステップS1033の処理は、ステップS1023の処理と同じである。
FIG. 11 is a flowchart showing the flow of the scenario group A extraction process.
The scenario selection unit 202 sets J to 1 (step S1031). The scenario selection unit 202 determines whether or not there is a Jth execution log in the execution log storage unit 205 (step S1032). When there is a Jth execution log in the execution log storage unit 205 (YES in step S1032), the scenario selection unit 202 determines that the work content of the scenario of the Jth execution log is the goal G acquired in step S100. It is determined whether or not the content matches the work content (step S1033). Note that the process in step S1031 is the same as the process in step S1021, the process in step S1032 is the same as the process in step S1022, and the process in step S1033 is the same as the process in step S1023.

J番の実行ログの作業内容が、ゴールGと一致する場合(ステップS1033でYES)には、シナリオ選出部202は、実行ログ記憶部205に格納された実行ログテーブルの速度格納領域2053fを参照して、J番の実行ログの速度レベルがゴールGの速度レベルと一致するか否かを判断する(ステップS1034)。   When the work content of the Jth execution log matches the goal G (YES in step S1033), the scenario selection unit 202 refers to the speed storage area 2053f of the execution log table stored in the execution log storage unit 205. Then, it is determined whether or not the speed level of the No. J execution log matches the speed level of the goal G (step S1034).

J番の実行ログの速度レベルがゴールGの速度レベルと一致する場合(ステップS1034でYES)には、シナリオ選出部202は、J番の実行ログとゴールGとの類似度を算出する(ステップS1035)。ステップS1035の処理は、ステップS1024の処理に対して、類似度の算出式(1)のパラメーターに速度レベルが含まれないだけであるため、詳細な説明は省略する。   If the speed level of the Jth execution log matches the speed level of the goal G (YES in step S1034), the scenario selection unit 202 calculates the similarity between the Jth execution log and the goal G (step S1034). S1035). The process of step S1035 is not described in detail because the speed level is not included in the parameter of the similarity calculation formula (1) with respect to the process of step S1024.

シナリオ選出部202は、J番の実行ログとゴールGとの類似度が閾値(任意の値)以上であるか否かを判断する(ステップS1036)。ステップS1036の処理は、ステップS1025の処理と同一である。   The scenario selection unit 202 determines whether the similarity between the Jth execution log and the goal G is equal to or greater than a threshold (arbitrary value) (step S1036). The process of step S1036 is the same as the process of step S1025.

J番の実行ログとゴールGとの類似度が閾値(任意の値)以上である場合(ステップS1036でYES)には、シナリオ選出部202は、J番の実行ログをシナリオ群Aに追加する(ステップS1037)。ステップS1037の処理は、ステップS1026と同一である。   If the similarity between the Jth execution log and the goal G is equal to or greater than a threshold (arbitrary value) (YES in step S1036), the scenario selection unit 202 adds the Jth execution log to the scenario group A. (Step S1037). The process of step S1037 is the same as that of step S1026.

ステップS1026が行われた場合、J番の実行ログのシナリオの作業内容が、ゴールGと一致しない場合(ステップS1033でNO)、J番の実行ログの速度レベルがゴールGの速度レベルと一致しない場合(ステップS1034でNO)、及びJ番の実行ログとゴールGとの類似度が閾値(任意の値)以上でない場合(ステップS1036でNO)には、シナリオ選出部202は、Jに1を追加し(ステップS1038)、再度ステップS1032を行う。ステップS1038の処理は、ステップS1027と同一である。   When step S1026 is performed, if the work content of the scenario of the Jth execution log does not match the goal G (NO in step S1033), the speed level of the Jth execution log does not match the speed level of the goal G If this is the case (NO in step S1034), and if the similarity between the Jth execution log and the goal G is not equal to or greater than a threshold (arbitrary value) (NO in step S1036), the scenario selection unit 202 sets 1 to J. It adds (step S1038) and performs step S1032 again. The processing in step S1038 is the same as that in step S1027.

実行ログ記憶部205にJ番の実行ログがない場合(ステップS1032でNO)には、シナリオ選出部202は、シナリオ群A抽出処理(ステップS103)を終了する。
シナリオ選出部202は、ステップS102で選出されたシナリオ群Aから、シナリオSを選出する(ステップS104)。
If there is no J-th execution log in the execution log storage unit 205 (NO in step S1032), the scenario selection unit 202 ends the scenario group A extraction process (step S103).
The scenario selection unit 202 selects a scenario S from the scenario group A selected in step S102 (step S104).

シナリオ選出部202は、ステップS104で選出されたシナリオSをロボット駆動部203に出力する。ロボット駆動部203は、シナリオ選出部202から出力されたシナリオSでロボット10を移動させるように、ロボット10を制御する(ステップS106)。   The scenario selection unit 202 outputs the scenario S selected in step S104 to the robot drive unit 203. The robot drive unit 203 controls the robot 10 to move the robot 10 in the scenario S output from the scenario selection unit 202 (step S106).

ロボット駆動部203は、ステップS106でロボット10を制御した結果が成功か否かを判断し、その結果とシナリオSとを関連付けて実行ログ記憶部205に記憶する(ステップS108)。   The robot drive unit 203 determines whether or not the result of controlling the robot 10 in step S106 is successful, and stores the result and the scenario S in association with each other in the execution log storage unit 205 (step S108).

本実施の形態によれば、実行ログのうち、速度レベルがゴールGの速度レベルと一致するもののみを用いてシナリオSを選出するため、より適切なシナリオを選出することができる。   According to the present embodiment, since the scenario S is selected using only the execution log whose speed level matches the speed level of the goal G, a more appropriate scenario can be selected.

以上、本発明を実施形態を用いて説明したが、本発明の技術的範囲は上記実施形態に記載の範囲には限定されない。上記実施形態に多様な変更または改良を加えることが可能であることが当業者には明らかである。また、そのような変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。特に、第1、第2の実施の形態では、ロボットと制御装置とが別に設けられたロボットシステムを提供する場合を例示したが、本発明は、ロボットと制御装置とが別に設けられたロボットシステムとして提供してもよいし、ロボットに制御装置等が含まれたロボットとして提供してもよいし、制御装置を備えたロボット制御装置として提供してもよい。また、本発明は、ロボット等を制御するプログラムやプログラムを記憶した記憶媒体として提供することもできる。   As mentioned above, although this invention was demonstrated using embodiment, the technical scope of this invention is not limited to the range as described in the said embodiment. It will be apparent to those skilled in the art that various modifications or improvements can be made to the above embodiment. In addition, it is apparent from the scope of the claims that the embodiments added with such changes or improvements can be included in the technical scope of the present invention. In particular, in the first and second embodiments, a case where a robot system in which a robot and a control device are separately provided is illustrated, but the present invention is a robot system in which a robot and a control device are separately provided. Or a robot including a control device or the like in the robot, or a robot control device including the control device. The present invention can also be provided as a program for controlling a robot or the like or a storage medium storing the program.

1、2:ロボットシステム、10:ロボット、11:アーム、12:ジョイント、13:リンク、14:ハンド、20:制御装置、21:CPU、22:メモリー、23:外部記憶装置、24:通信装置、25:入力装置、26:出力装置、30:第1撮像部、31:第2撮像部、201:情報取得部、202:シナリオ選出部、203:ロボット駆動部、204:ライブラリー記憶部、205:実行ログ記憶部、2051:番号格納領域、2052 :シナリオ名格納領域、2053:パラメーター格納領域、2053a:A格納領域、2053b:XS格納領域、2053c:XE格納領域、2053d:X1格納領域、2053e:X2格納領域、2053f:速度格納領域、2054:実行結果格納領域 1, 2: Robot system, 10: Robot, 11: Arm, 12: Joint, 13: Link, 14: Hand, 20: Control device, 21: CPU, 22: Memory, 23: External storage device, 24: Communication device 25: input device, 26: output device, 30: first imaging unit, 31: second imaging unit, 201: information acquisition unit, 202: scenario selection unit, 203: robot drive unit, 204: library storage unit, 205: execution log storage unit, 2051: number storage area, 2052: scenario name storage area, 2053: parameter storage area, 2053a: A storage area, 2053b: XS storage area, 2053c: XE storage area, 2053d: X1 storage area, 2053e: X2 storage area, 2053f: Speed storage area, 2054: Execution result storage area

Claims (7)

ロボットの単位動作を複数組み合わせたシナリオを用いて前記ロボットに目的の作業を行わせるロボット制御方法であって、
前記ロボットが実行したシナリオと、当該シナリオを定める第1のパラメーターの選択値と、当該シナリオの実行結果と、を関連付けた実行ログが複数含まれる第1の実行情報を取得し、かつ前記目的の作業の内容と、当該目的の作業を定める第2のパラメーターの選択値と、を含む指示情報を取得する第1のステップと、
前記第1の実行情報から、前記シナリオが示す作業内容が前記目的の作業の内容と同一、かつ前記第1のパラメーターの選択値が前記第2のパラメーターの選択値に類似する実行ログを第2の実行情報として抽出する第2のステップと、
前記第2の実行情報に含まれるシナリオから、前記実行結果に基づいて成功率の最も高いシナリオを選出する第3のステップと、
前記選出されたシナリオを出力する第4のステップと、
を含むことを特徴とするロボット制御方法。
A robot control method for causing a robot to perform a desired work using a scenario in which a plurality of robot unit operations are combined.
Obtaining first execution information including a plurality of execution logs in which a scenario executed by the robot, a selected value of a first parameter defining the scenario, and an execution result of the scenario are associated; A first step of obtaining instruction information including a content of the work and a selected value of a second parameter that defines the target work;
Based on the first execution information, an execution log in which the work content indicated by the scenario is the same as the content of the target work and the selected value of the first parameter is similar to the selected value of the second parameter is stored in the second execution log. A second step of extracting as execution information of
A third step of selecting a scenario with the highest success rate based on the execution result from the scenarios included in the second execution information;
A fourth step of outputting the selected scenario;
A robot control method comprising:
請求項1に記載のロボット制御方法であって、
前記第1のステップでは、前記第1のパラメーター及び前記第2のパラメーターとして、前記ロボットを移動させる速度に関する情報である速度情報を取得する
ことを特徴とするロボット制御方法。
The robot control method according to claim 1,
In the first step, speed information that is information about a speed at which the robot is moved is acquired as the first parameter and the second parameter.
請求項1に記載のロボット制御方法であって、
前記実行ログ及び前記指示情報は、前記ロボットを移動させる速度に関する情報である速度情報を含み、
前記第2のステップでは、前記第1の実行情報から、前記指示情報の速度情報と同一の速度情報が関連付けられた実行ログを抽出する
ことを特徴とするロボット制御方法。
The robot control method according to claim 1,
The execution log and the instruction information include speed information that is information about a speed at which the robot moves.
In the second step, an execution log associated with the same speed information as the speed information of the instruction information is extracted from the first execution information.
請求項1から3のいずれか一項に記載のロボット制御方法であって、
前記第2のステップでは、前記第1のパラメーターの選択値と前記第2のパラメーターの選択値との差が大きいほど値が小さくなる算出式を用いて算出した類似度に基づいて、第2の実行情報を抽出する
ことを特徴とするロボット制御方法。
The robot control method according to any one of claims 1 to 3,
In the second step, based on the similarity calculated using a calculation formula that decreases as the difference between the selected value of the first parameter and the selected value of the second parameter increases, A robot control method characterized by extracting execution information.
ロボットの単位動作を複数組み合わせたシナリオを用いて前記ロボットに目的の作業を行わせるロボット制御装置であって、
前記ロボットが実行したシナリオと、当該シナリオを定める第1のパラメーターの選択値と、当該シナリオの実行結果と、を関連付けた実行ログが複数含まれる第1の実行情報を取得する第1の取得部と、
前記目的の作業の内容と、当該目的の作業を定める第2のパラメーターの選択値と、を含む指示情報を取得する第2の取得部と、
前記第1の実行情報から、前記シナリオが示す作業内容が前記目的の作業の内容と同一、かつ前記第1のパラメーターの選択値が前記第2のパラメーターの選択値に類似する実行ログを第2の実行情報として抽出するシナリオ群抽出部と、
前記第2の実行情報に含まれるシナリオから、前記実行結果に基づいて成功率の最も高いシナリオを選出するシナリオ選出部と、
前記選出された最適なシナリオを出力する出力部と、
を備えることを特徴とするロボット制御装置。
A robot control device for causing the robot to perform a desired work using a scenario in which a plurality of robot unit operations are combined.
A first acquisition unit that acquires first execution information including a plurality of execution logs that associate a scenario executed by the robot, a selected value of a first parameter that defines the scenario, and an execution result of the scenario. When,
A second acquisition unit that acquires instruction information including the content of the target work and a selection value of a second parameter that defines the target work;
Based on the first execution information, an execution log in which the work content indicated by the scenario is the same as the content of the target work and the selected value of the first parameter is similar to the selected value of the second parameter is stored in the second execution log. A scenario group extraction unit that extracts the execution information of
A scenario selection unit that selects a scenario having the highest success rate based on the execution result from the scenarios included in the second execution information;
An output unit for outputting the selected optimum scenario;
A robot control device comprising:
ロボットの単位動作を複数組み合わせたシナリオを用いて前記ロボットの可動部に目的の作業を行わせるロボットであって、
前記ロボットが実行したシナリオと、当該シナリオを定める第1のパラメーターの選択値と、当該シナリオの実行結果と、を関連付けた実行ログが複数含まれる第1の実行情報を取得する第1の取得部と、
前記目的の作業の内容と、当該目的の作業を定める第2のパラメーターの選択値と、を含む指示情報を取得する第2の取得部と、
前記第1の実行情報から、前記シナリオが示す作業内容が前記目的の作業の内容と同一、かつ前記第1のパラメーターの選択値が前記第2のパラメーターの選択値に類似する実行ログを第2の実行情報として抽出するシナリオ群抽出部と、
前記第2の実行情報に含まれるシナリオから、前記実行結果に基づいて成功率の最も高いシナリオを選出するシナリオ選出部と、
前記選出された最適なシナリオを用いて前記可動部を制御する駆動制御部と、
を備えることを特徴とするロボット。
A robot that causes a movable part of the robot to perform a desired work using a scenario in which a plurality of robot unit operations are combined,
A first acquisition unit that acquires first execution information including a plurality of execution logs that associate a scenario executed by the robot, a selected value of a first parameter that defines the scenario, and an execution result of the scenario. When,
A second acquisition unit that acquires instruction information including the content of the target work and a selection value of a second parameter that defines the target work;
Based on the first execution information, an execution log in which the work content indicated by the scenario is the same as the content of the target work and the selected value of the first parameter is similar to the selected value of the second parameter is stored in the second execution log. A scenario group extraction unit that extracts the execution information of
A scenario selection unit that selects a scenario having the highest success rate based on the execution result from the scenarios included in the second execution information;
A drive control unit that controls the movable unit using the selected optimal scenario;
A robot characterized by comprising:
ロボットの単位動作を複数組み合わせたシナリオを用いて前記ロボットに目的の作業を行わせるロボット制御プログラムであって、
前記ロボットが実行したシナリオと、当該シナリオを定める第1のパラメーターの選択値と、当該シナリオの実行結果と、を関連付けた実行ログが複数含まれる第1の実行情報を取得し、かつ前記目的の作業の内容と、当該目的の作業を定める第2のパラメーターの選択値と、を含む指示情報を取得する第1のステップと、
前記第1の実行情報から、前記シナリオが示す作業内容が前記目的の作業の内容と同一、かつ前記第1のパラメーターの選択値が前記第2のパラメーターの選択値に類似する実行ログを第2の実行情報として抽出する第2のステップと、
前記第2の実行情報に含まれるシナリオから、前記実行結果に基づいて成功率の最も高いシナリオを選出する第3のステップと、
前記選出された最適なシナリオを出力する第4のステップと、
を演算装置に実行させることを特徴とするロボット制御プログラム。
A robot control program for causing a robot to perform a desired work using a scenario in which a plurality of robot unit operations are combined.
Obtaining first execution information including a plurality of execution logs in which a scenario executed by the robot, a selected value of a first parameter defining the scenario, and an execution result of the scenario are associated; A first step of obtaining instruction information including a content of the work and a selected value of a second parameter that defines the target work;
Based on the first execution information, an execution log in which the work content indicated by the scenario is the same as the content of the target work and the selected value of the first parameter is similar to the selected value of the second parameter is stored in the second execution log. A second step of extracting as execution information of
A third step of selecting a scenario with the highest success rate based on the execution result from the scenarios included in the second execution information;
A fourth step of outputting the selected optimal scenario;
A robot control program that causes an arithmetic device to execute the above.
JP2013062051A 2013-03-25 2013-03-25 Robot control method, robot control apparatus, robot, and robot control program Active JP6079350B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013062051A JP6079350B2 (en) 2013-03-25 2013-03-25 Robot control method, robot control apparatus, robot, and robot control program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013062051A JP6079350B2 (en) 2013-03-25 2013-03-25 Robot control method, robot control apparatus, robot, and robot control program

Publications (2)

Publication Number Publication Date
JP2014184531A true JP2014184531A (en) 2014-10-02
JP6079350B2 JP6079350B2 (en) 2017-02-15

Family

ID=51832596

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013062051A Active JP6079350B2 (en) 2013-03-25 2013-03-25 Robot control method, robot control apparatus, robot, and robot control program

Country Status (1)

Country Link
JP (1) JP6079350B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190079256A (en) * 2017-12-27 2019-07-05 (주) 퓨처로봇 Method for generating control scenario of service robot and device thereof
JP2021084173A (en) * 2019-11-27 2021-06-03 セイコーエプソン株式会社 Control method and robot system

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07152420A (en) * 1993-11-29 1995-06-16 Sanyo Electric Co Ltd Assembling device using robot
JP2003140744A (en) * 2001-11-07 2003-05-16 Ntt Docomo Inc Knowledge data base equipment and method for constructing the same and system controller and its automatic handling method and program
JP2005038223A (en) * 2003-07-16 2005-02-10 Nec Corp Failure restoration device, failure restoration method, and program
JP2012206219A (en) * 2011-03-30 2012-10-25 Seiko Epson Corp Robot control device and robot system
JP2013010155A (en) * 2011-06-28 2013-01-17 Canon Inc Target object gripping apparatus, method of controlling the same, and program

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07152420A (en) * 1993-11-29 1995-06-16 Sanyo Electric Co Ltd Assembling device using robot
JP2003140744A (en) * 2001-11-07 2003-05-16 Ntt Docomo Inc Knowledge data base equipment and method for constructing the same and system controller and its automatic handling method and program
JP2005038223A (en) * 2003-07-16 2005-02-10 Nec Corp Failure restoration device, failure restoration method, and program
JP2012206219A (en) * 2011-03-30 2012-10-25 Seiko Epson Corp Robot control device and robot system
JP2013010155A (en) * 2011-06-28 2013-01-17 Canon Inc Target object gripping apparatus, method of controlling the same, and program

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190079256A (en) * 2017-12-27 2019-07-05 (주) 퓨처로봇 Method for generating control scenario of service robot and device thereof
KR102108389B1 (en) 2017-12-27 2020-05-11 (주) 퓨처로봇 Method for generating control scenario of service robot and device thereof
JP2021084173A (en) * 2019-11-27 2021-06-03 セイコーエプソン株式会社 Control method and robot system
JP7384005B2 (en) 2019-11-27 2023-11-21 セイコーエプソン株式会社 Control method and robot system

Also Published As

Publication number Publication date
JP6079350B2 (en) 2017-02-15

Similar Documents

Publication Publication Date Title
US9878446B2 (en) Determination of object-related gripping regions using a robot
JP7058126B2 (en) Robot control device and automatic assembly system
US11745355B2 (en) Control device, control method, and non-transitory computer-readable storage medium
EP2931485B1 (en) Bare hand robot path teaching
US10286557B2 (en) Workpiece position/posture calculation system and handling system
JP6640060B2 (en) Robot system
US20140277731A1 (en) Robot picking system, control device, and method of manufacturing a workpiece
KR101860200B1 (en) Selection of a device or an object by means of a camera
US20150273689A1 (en) Robot control device, robot, robotic system, teaching method, and program
US12099364B2 (en) Trajectory generation system, trajectory generation method, and program
JP7264253B2 (en) Information processing device, control method and program
WO2017119088A1 (en) Robot system, and control method
JP2018153873A (en) Device for controlling manipulator, control method, program and work system
JP2009190113A (en) Robot simulation device
CN114025928A (en) End effector control system and end effector control method
JP6079350B2 (en) Robot control method, robot control apparatus, robot, and robot control program
JP7452619B2 (en) Control device, control method and program
JP7179971B2 (en) Control device, robotic device, method, computer program and machine-readable storage medium for robotic device
JP6067547B2 (en) Object recognition device, robot, and object recognition method
JP2018122376A (en) Image processing device, robot control device, and robot
JP2020082314A (en) Learning device, robot control method, and robot control system
JP7376318B2 (en) annotation device
JPWO2019069361A1 (en) Gripping position / posture teaching apparatus, gripping position / posture teaching method, and robot system
CN112533739B (en) Robot control device, robot control method, and storage medium
JP2008006518A (en) Robot control system, robot control method and robot

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160307

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161214

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20161220

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170102

R150 Certificate of patent or registration of utility model

Ref document number: 6079350

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150