JP2020097091A - Robot interference determination device, robot interference determination method, robot control device, robot control system, human movement predictor, and human movement prediction method - Google Patents
Robot interference determination device, robot interference determination method, robot control device, robot control system, human movement predictor, and human movement prediction method Download PDFInfo
- Publication number
- JP2020097091A JP2020097091A JP2019034202A JP2019034202A JP2020097091A JP 2020097091 A JP2020097091 A JP 2020097091A JP 2019034202 A JP2019034202 A JP 2019034202A JP 2019034202 A JP2019034202 A JP 2019034202A JP 2020097091 A JP2020097091 A JP 2020097091A
- Authority
- JP
- Japan
- Prior art keywords
- robot
- unit
- interference determination
- time
- predicted
- 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
Links
- 241000282414 Homo sapiens Species 0.000 title claims abstract description 198
- 238000000034 method Methods 0.000 title claims description 123
- 230000033001 locomotion Effects 0.000 title claims description 75
- 239000013598 vector Substances 0.000 claims abstract description 266
- 230000008859 change Effects 0.000 claims description 69
- 230000001133 acceleration Effects 0.000 claims description 64
- 238000005259 measurement Methods 0.000 claims description 24
- 238000011156 evaluation Methods 0.000 claims description 10
- 238000004519 manufacturing process Methods 0.000 abstract description 49
- 230000007423 decrease Effects 0.000 abstract description 19
- 230000008569 process Effects 0.000 description 80
- 230000005484 gravity Effects 0.000 description 55
- 238000004364 calculation method Methods 0.000 description 36
- 238000012545 processing Methods 0.000 description 34
- 230000000694 effects Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 19
- 238000000926 separation method Methods 0.000 description 18
- 238000007493 shaping process Methods 0.000 description 10
- 238000001914 filtration Methods 0.000 description 9
- 230000006870 function Effects 0.000 description 6
- 238000001514 detection method Methods 0.000 description 5
- 230000015654 memory Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000010354 integration Effects 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 3
- 238000007796 conventional method Methods 0.000 description 3
- 238000011045 prefiltration Methods 0.000 description 3
- 230000003252 repetitive effect Effects 0.000 description 3
- 230000003139 buffering effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 210000002414 leg Anatomy 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000035515 penetration Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 210000000689 upper leg Anatomy 0.000 description 2
- 210000003423 ankle Anatomy 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000002790 cross-validation Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
- 230000003936 working memory Effects 0.000 description 1
Images
Landscapes
- Manipulator (AREA)
Abstract
Description
本発明は、ロボットと作業者などの検出対象物とが共存する環境下において、両者が接触等する可能性を判定するロボット干渉判定装置等に関する。 The present invention relates to a robot interference determination device or the like that determines the possibility of contact between a robot and an object to be detected such as a worker in an environment in which the two coexist.
従来、工場等の生産現場においてロボットと作業者とが不用意に接触するのを回避するための各種の試みが知られている。例えば、安全柵などによって人の作業エリアとロボットの作業エリアとを隔離する方法が知られているが、この方法では人とロボットとの協調作業が実行できず、生産効率およびスペース効率が低い。また、例えば、下掲の特許文献1および2には、ロボットの周囲に予め設けておいた領域内への人の侵入を監視してロボットの動作を制御したり、ロボットのトルクを制限したりする試みが開示されている。
Conventionally, various attempts have been known for avoiding careless contact between a robot and a worker in a production site such as a factory. For example, there is known a method of separating a work area of a person from a work area of a robot by a safety fence or the like, but this method cannot perform cooperative work between the person and the robot, resulting in low production efficiency and space efficiency. Further, for example, in
しかしながら、上述のような従来技術には、以下に示すような課題がある。すなわち、固定の監視エリア内への人の侵入を検知してロボット動作を抑制する従来技術は、監視エリア内に人が侵入すると、人の安全が確保されている場合であっても、ロボット動作を抑制するので、生産効率およびスペース効率が低下する傾向がある。また、ロボットのトルクを制限する従来技術は、人の安全が確保されている場合であっても、ロボットのトルクを制限するので、生産効率が低下する傾向がある。 However, the above-mentioned conventional techniques have the following problems. That is, the conventional technique of detecting the intrusion of a person into the fixed surveillance area and suppressing the robot operation is such that when the person enters the surveillance area, the robot operation is performed even if the safety of the person is secured. Therefore, the production efficiency and the space efficiency tend to decrease. Further, the conventional technique of limiting the torque of the robot limits the torque of the robot even when the safety of human beings is secured, so that the production efficiency tends to decrease.
本発明の一態様は、前記の問題点に鑑みてなされたものであり、工場等の生産現場において作業者等の安全を確保しつつ、生産効率およびスペース効率の低下を回避したロボット干渉判定装置等を実現することを目的としている。 One aspect of the present invention has been made in view of the above problems, and a robot interference determination device that avoids a decrease in production efficiency and space efficiency while ensuring the safety of workers in a production site such as a factory. It is intended to realize such.
上記の課題を解決するために、本発明の一態様に係るロボット干渉判定装置は、所定の領域内に存在する対象物の現時点における、現時点までの位置の変化を示す情報を取得する対象物状態取得部と、ロボットにおける所定の可動部の所定時間後における予測位置および予測速度ベクトルを取得するロボット状態取得部と、前記対象物の、現時点までの位置の変化を示す情報に基づいて、前記所定時間後における前記対象物の予測位置および予測速度ベクトルを算出する予測部と、前記対象物の前記予測位置および前記予測速度ベクトルと、前記可動部の前記予測位置および前記予測速度ベクトルとに基づき、前記対象物と前記可動部との接触が生じる可能性があるか否かをリアルタイムで判定する干渉判定部と、を備えている。 In order to solve the above problems, a robot interference determination device according to an aspect of the present invention is an object state that acquires information indicating a change in position up to the present time of an object present in a predetermined area. An acquisition unit, a robot state acquisition unit that acquires a predicted position and a predicted velocity vector of a predetermined movable unit of the robot after a predetermined time, and the predetermined state based on information indicating a change in the position of the object up to the present time. A prediction unit that calculates a predicted position and a predicted velocity vector of the target object after a time, based on the predicted position and the predicted velocity vector of the target object, and the predicted position and the predicted velocity vector of the movable unit, An interference determination unit that determines in real time whether or not contact between the object and the movable unit may occur.
前記の構成によれば、前記ロボット干渉判定装置は、前記対象物の、現時点までの位置の変化を示す情報を取得し、この現時点までの位置の変化を示す情報を用いて、前記対象物の前記予測位置および前記予測速度ベクトルを算出する。前記対象物の、現時点までの位置の変化を示す情報は、例えば、前記対象物の現時点における位置(現在位置)、および、前記対象物の現時点における速度ベクトル(現在速度ベクトル)である。また、後述する図15の表において入力として示す各種の情報も、各々、前記対象物の、現時点までの位置の変化を示す情報の例である。 According to the above configuration, the robot interference determination device acquires the information indicating the change in the position of the object up to the present time, and uses the information indicating the change in the position up to the present time, The predicted position and the predicted velocity vector are calculated. The information indicating the change in the position of the object up to the present time is, for example, the current position of the object (current position) and the current velocity vector of the object (current velocity vector). Further, various kinds of information shown as inputs in the table of FIG. 15 which will be described later are also examples of information indicating changes in the position of the target object up to the present time.
そして、前記ロボット干渉判定装置は、算出した前記対象物の前記予測位置および前記予測速度ベクトルと、前記可動部の前記予測位置および前記予測速度ベクトルとに基づき、前記対象物と前記可動部との接触が生じる可能性があるか否かをリアルタイムで判定する。 Then, the robot interference determination device, based on the predicted position and the predicted velocity vector of the calculated target object, and the predicted position and the predicted velocity vector of the movable portion, between the target object and the movable portion. Determine in real time whether contact may occur.
前記ロボット干渉判定装置は、安全柵を用いずに前記ロボットと前記対象物との干渉を回避することができるので、生産現場等の省スペース化を実現することができる。 Since the robot interference determination device can avoid the interference between the robot and the object without using a safety fence, it is possible to realize space saving at a production site or the like.
また、前記ロボット干渉判定装置は、前記ロボットと前記対象物との、前記所定時間後(つまり、未来)における干渉の可能性を現時点で判定するので、干渉の可能性があると判定した場合にも、干渉回避のための処理を現時点で余裕を持って実行できる。 Further, the robot interference determination device determines the possibility of interference between the robot and the target object after the predetermined time (that is, in the future) at the present time. Also, the process for avoiding interference can be executed with a margin at this moment.
ここで、現時点での干渉の可能性を現時点で判定する装置が、現時点での干渉の可能性があると判定した場合、現時点での干渉を回避するためには、前記ロボットの急減速および急停止等の動作が必要となり、どうしても生産効率が低下する。 Here, if the device that determines the possibility of interference at the present moment determines that there is the possibility of interference at the present moment, in order to avoid interference at the present moment, sudden deceleration and sudden movement of the robot are performed. Operations such as stopping are required, and production efficiency is inevitably reduced.
これに対し、前記ロボット干渉判定装置は、未来における干渉の可能性を現時点で判定するので、現時点での干渉の可能性を現時点で判定する場合に比べて、干渉を回避するために必要な前記ロボットの動作を、円滑かつ必要最小限のものにすることができる。つまり、前記ロボット干渉判定装置は、前記ロボットと前記対象物との干渉を回避しつつ、前記ロボットの急減速および急停止等による生産効率の低下を抑制することができる。 On the other hand, since the robot interference determination device determines the possibility of interference in the future at the present time, it is necessary to avoid the interference as compared with the case of determining the possibility of interference at the present time at the present time. The operation of the robot can be made smooth and minimum required. That is, the robot interference determination device can prevent a decrease in production efficiency due to sudden deceleration and sudden stop of the robot while avoiding interference between the robot and the object.
したがって、前記ロボット干渉判定装置は、工場等の生産現場において、例えば作業者等である前記対象物と前記ロボットとの干渉を回避しつつ、生産効率およびスペース効率の低下を抑制することができるとの効果を奏する。 Therefore, in the production site such as a factory, the robot interference determination device can prevent a decrease in production efficiency and space efficiency while avoiding interference between the robot and the object such as an operator. Produce the effect of.
前述の通り、前記対象物は、例えば作業者等の人であり、具体的には、人の全体または人の一部であり、また、人以外のモノ(例えば、モバイルロボットなど)であってもよい。前記対象物の位置とは、前記対象物が人の全体である場合には、例えば、人の重心の位置である。前記対象物が人の一部または人以外のモノである場合には、前記対象物の位置とは、人の一部の位置、または、人以外のモノの位置である。 As described above, the object is, for example, a person such as a worker, specifically, the whole person or a part of the person, and the thing other than the person (for example, a mobile robot). Good. The position of the object is, for example, the position of the center of gravity of the person when the object is the whole person. When the object is a part of a person or an object other than a person, the position of the object is a position of a part of the person or a position of an object other than the person.
前記予測部による対象物の予測速度ベクトルの算出は、対象物の各時点における位置および速度ベクトルの履歴を学習した結果を利用するものであってもよいし、また、単純予測を利用するもの、つまり、現在速度ベクトルの継続を前提とするものであってもよい。 The calculation of the predicted velocity vector of the target object by the prediction unit may use the result of learning the history of the position and the velocity vector at each time point of the target object, or using simple prediction, That is, it may be based on the continuation of the current velocity vector.
本発明の一態様に係るロボット干渉判定装置について、前記ロボットは、複数のアームが複数の関節で接続されている多関節マニピュレータを備えており、前記可動部は、前記多関節マニピュレータの所定の1以上の部分であってもよい。 In the robot interference determination device according to one aspect of the present invention, the robot includes an articulated manipulator in which a plurality of arms are connected by a plurality of joints, and the movable portion is a predetermined one of the articulated manipulators. It may be the above part.
前記の構成によれば、前記ロボット干渉判定装置は、複数のアームが複数の関節で接続されている多関節マニピュレータを備えた前記ロボットと、前記対象物との、前記所定時間後(つまり、未来)における干渉の可能性を、現時点で判定する。 According to the configuration, the robot interference determination device, the robot provided with the multi-joint manipulator in which a plurality of arms are connected by a plurality of joints, and the object, after the predetermined time (that is, future). ), the possibility of interference in
したがって、前記ロボット干渉判定装置は、工場等の生産現場において、例えば作業者等である前記対象物と、多関節マニピュレータを備えた前記ロボットとの干渉を回避しつつ、生産効率およびスペース効率の低下を抑制することができるとの効果を奏する。 Therefore, the robot interference determination device reduces the production efficiency and the space efficiency while avoiding the interference between the object such as an operator and the robot including the articulated manipulator in a production site such as a factory. There is an effect that can suppress.
本発明の一態様に係るロボット干渉判定装置において、前記干渉判定部は、現時点から前記所定時間が経過した時点から、前記可動部の移動停止動作が開始し、前記可動部の移動が停止するまでの時間における、前記対象物の推定位置と前記可動部の推定位置との距離が所定値以内となる場合に、前記対象物と前記可動部との接触が生じる可能性があると判定してもよい。 In the robot interference determination device according to an aspect of the present invention, the interference determination unit, from the time when the predetermined time has elapsed from the current time, until the movement stop operation of the movable portion is started and the movement of the movable portion is stopped. Even if it is determined that the contact between the target object and the movable part may occur when the distance between the estimated position of the target object and the estimated position of the movable part is within a predetermined value at time Good.
前記の構成によれば、前記ロボット干渉判定装置は、現時点(t0)から前記所定時間(Δt)が経過した時点(t0+Δt時点)から、前記可動部の移動が停止するまでの時間における、前記対象物の推定位置と前記可動部の推定位置との距離が所定値以内となると、前記対象物と前記可動部との接触が生じる可能性があると判定する。
According to the arrangement, the robot interference judgment device, in the time from the present time (t 0) the predetermined time (Delta] t) the time has elapsed (
つまり、前記ロボット干渉判定装置は、前記可動部の移動が停止した時点での前記対象物の推定位置と前記可動部の推定位置との距離だけでなく、その途中までの各時点における前記対象物の推定位置と前記可動部の推定位置との距離を用いて、前述の判定を行う。 That is, the robot interference determination device is configured to detect not only the distance between the estimated position of the target object and the estimated position of the movable part at the time when the movement of the movable part is stopped, but also the target object at each point up to that point. The above-mentioned determination is performed by using the distance between the estimated position and the estimated position of the movable part.
したがって、前記ロボット干渉判定装置は、現時点(t0)から前記所定時間(Δt)が経過した時点(であるt0+Δt時点)から、前記可動部の移動が停止するまでの各時点における接触の可能性を考慮した判定を行うことができるとの効果を奏する。 Therefore, the robot interference determination device determines the contact at each time from when the predetermined time (Δt) has passed from the current time (t 0 ) (that is, t 0 +Δt time) until the movement of the movable part stops. An effect that it is possible to make a determination in consideration of the possibility is exhibited.
ここで、ISO/TC15066の5.5.4.2.3において、安全距離Spは、「Sp(t0)=Sh+Sr+Ss+c+Zd+Zr」と規定されている。そして、上記の規格においては、実際の分離距離が安全距離Sp以下となると、不用意な干渉の可能性があると判定することになる。これは、ロボットの移動停止時点における、人の推定位置(人が存在すると推定される位置)とロボットの推定位置(ロボットが存在すると推定される位置)との距離が、所定値(c+Zd+Zr)以下(以内)となると、人とロボットとが干渉すると判定するものと読み替えることができる。 Here, in 5.5.4.2.3 of ISO / TC15066, safety distance Sp is defined as "Sp (t 0) = S h + S r + S s + c + Z d + Z r ". Then, according to the above standard, when the actual separation distance becomes equal to or less than the safety distance Sp, it is determined that there is a possibility of inadvertent interference. This is because the distance between the estimated position of the person (the position where the person is estimated to exist) and the estimated position of the robot (the position where the robot is estimated to exist) at the time when the robot stops moving is equal to or less than a predetermined value (c+Zd+Zr). When it is (within), it can be read as a determination that a human and a robot interfere with each other.
上述の定義式において、「Sh」は「現時点からロボットの移動が停止する時点までに、人が移動する距離」を、「Sr」は「現時点からロボットが停止動作を開始するまでに、ロボットが移動する距離」を示すものとする。「Ss」は「ロボットが停止動作を開始する時点からロボットの移動が停止する時点までに、ロボットが移動する距離」を示すものとする。「c」は、「Depth penetration factor」と呼ばれる、例えば、「人の中心(重心)等の検知位置から、その人の腕などの部分までの距離」等を示すものとする。「Zd」は「人体を検知するセンサの測定誤差」を、「Zr」は「ロボット制御における制御位置の誤差」を示すものとする。 In the above definition formula, “S h ”is “the distance a person moves from the present time to the time when the movement of the robot is stopped”, and “S r ” is “the movement of the robot from the present time to the start of the stopping operation,” The distance traveled by the robot". “S s ”denotes “the distance the robot moves from the time when the robot starts the stop operation to the time when the robot stops moving”. “C” is called “Depth penetration factor”, and indicates, for example, “a distance from a detection position such as the center (center of gravity) of the person to a portion such as the arm of the person”. “Z d ”denotes “measurement error of sensor for detecting human body”, and “Z r ”denotes “error of control position in robot control”.
安全距離Spに即して前記ロボット干渉判定装置の備える前記の構成を整理すれば、「前記対象物の推定位置」は「Sh」、「前記可動部の推定位置」は「Sr+Ss」、「前記所定値」は「c+Zd+Zr」に相当する。 If the configuration of the robot interference determination device is arranged according to the safety distance Sp, the “estimated position of the object” is “S h ”, and the “estimated position of the movable part” is “S r +S s”. The “predetermined value” corresponds to “c+Z d +Z r ”.
本発明の一態様に係るロボット干渉判定装置において、前記予測部は、前記対象物の各時点における位置、速度ベクトル、および加速度ベクトルの少なくとも1つの履歴を学習することによって学習済モデルを生成する学習部を備え、前記学習済モデルによって前記対象物の前記予測位置および前記予測速度ベクトルを算出してもよい。 In the robot interference determination device according to one aspect of the present invention, the prediction unit learns to generate a learned model by learning at least one history of a position, a velocity vector, and an acceleration vector of the object at each time point. It may be provided with a section, and the predicted position and the predicted velocity vector of the object may be calculated by the learned model.
前記の構成によれば、前記ロボット干渉判定装置は、前記対象物の各時点における位置、速度ベクトル、および加速度ベクトルの少なくとも1つの履歴を学習して学習済モデルを生成する。そして、前記ロボット干渉判定装置は、生成した学習済モデルを用いて、前記対象物の前記予測位置および前記予測速度ベクトルを算出する。 According to the above configuration, the robot interference determination device learns at least one history of the position, the velocity vector, and the acceleration vector of the object at each time point to generate the learned model. Then, the robot interference determination device calculates the predicted position and the predicted velocity vector of the object using the generated learned model.
したがって、前記ロボット干渉判定装置は、前記履歴の学習によって生成した前記学習済モデルを用いて、前記対象物の前記予測位置および前記予測速度ベクトルを高精度に算出することができるとの効果を奏する。 Therefore, the robot interference determination device has an effect that the predicted position and the predicted velocity vector of the object can be calculated with high accuracy by using the learned model generated by learning the history. ..
本発明の一態様に係るロボット干渉判定装置において、前記学習部は、前記対象物の、現時点までの位置の変化を示す情報を入力とし、前記対象物の加速度またはその後の位置を出力とする学習を行うことによって前記学習済モデルを生成してもよい。 In the robot interference determination device according to one aspect of the present invention, the learning unit receives information indicating a change in the position of the target object up to the current time, and outputs the acceleration of the target object or a position after that. The learned model may be generated by performing.
前記の構成によれば、前記ロボット干渉判定装置は、前記対象物の、現時点までの位置の変化を示す情報を入力とし、前記対象物の加速度またはその後の位置を出力とする学習を行う。 According to the above configuration, the robot interference determination device receives the information indicating the change in the position of the target object up to the present time, and performs learning by using the acceleration of the target object or the subsequent position as the output.
例えば、前記ロボット干渉判定装置は、時刻ごとの(つまり、各時点における)、前記対象物の位置および速度ベクトルを入力とし、時刻ごとの、前記対象物の加速度を出力とする学習用データについて、学習を行う。 For example, the robot interference determination device, for each time (that is, at each time point), with the position and velocity vector of the target object as input, for each time, learning data that outputs the acceleration of the target object, Learn.
前記ロボット干渉判定装置は、前記対象物の、現時点までの位置の変化を示す情報を入力とし、前記対象物の加速度またはその後の位置を出力とする学習用データを学習することで、前記対象物の前記予測位置および前記予測速度ベクトルを算出するための、高精度な学習済モデルを生成することができるとの効果を奏する。 The robot interference determination device receives the information indicating the change in the position of the target object up to the present time, and learns the learning data in which the acceleration of the target object or the position after that is output to learn the target object. It is possible to generate a highly accurate learned model for calculating the predicted position and the predicted velocity vector of.
本発明の一態様に係るロボット干渉判定装置は、前記対象物を識別する識別部をさらに備え、前記予測部は、前記識別部による識別結果に応じて前記対象物の予測位置および予測速度ベクトルの算出方法を変更してもよい。 The robot interference determination device according to an aspect of the present invention further includes an identification unit that identifies the target object, and the prediction unit determines the predicted position and the predicted velocity vector of the target object in accordance with the identification result by the identification unit. The calculation method may be changed.
前記の構成によれば、前記ロボット干渉判定装置は、複数の前記対象物の各々を識別し、複数の前記対象物の各々の予測位置および予測速度ベクトルを、複数の前記対象物の各々に応じて、算出する。 According to the above configuration, the robot interference determination device identifies each of the plurality of objects and determines a predicted position and a predicted velocity vector of each of the plurality of objects according to each of the plurality of objects. And calculate.
ここで、例えば複数の作業者の各々は、身長、体重等が異なり、また、各々に特有の動作の癖などを備えている。したがって、複数の作業者の各々について、予測位置および予測速度ベクトルを高精度に算出するには、複数の作業者の各々の状態・動作の履歴情報を学習し、その学習結果を利用するのが望ましい。 Here, for example, each of the plurality of workers is different in height, weight, and the like, and has a peculiar habit of motion. Therefore, in order to calculate the predicted position and the predicted velocity vector with high accuracy for each of the plurality of workers, it is necessary to learn the history information of the state and motion of each of the plurality of workers and use the learning result. desirable.
前記ロボット干渉判定装置は、複数の前記対象物の各々を識別し、各々に応じた算出方法により各々の予測位置および予測速度ベクトルを算出するので、各々の予測位置および予測速度ベクトルを高精度に算出することができるとの効果を奏する。 Since the robot interference determination device identifies each of the plurality of objects and calculates each predicted position and predicted velocity vector by a calculation method according to each, the predicted position and predicted velocity vector can be calculated with high accuracy. It is possible to calculate.
本発明の一態様に係るロボット干渉判定装置において、前記対象物状態取得部は、非接触で前記対象物の二次元または三次元位置を計測する計測装置による計測結果の履歴に基づき、前記対象物の、現時点までの位置の変化を示す情報を取得してもよい。 In the robot interference determination device according to one aspect of the present invention, the object state acquisition unit is configured to measure the object based on a history of measurement results obtained by a measurement device that measures the two-dimensional or three-dimensional position of the object in a non-contact manner. The information indicating the change in position up to the present time may be acquired.
前記の構成によれば、前記ロボット干渉判定装置は、前記対象物の計測位置の履歴を用いて、前記対象物の、現時点までの位置の変化を示す情報を取得する。前記ロボット干渉判定装置は、前記対象物の、現時点までの位置の変化を示す情報として、例えば、現時点における、前記対象物の位置および速度ベクトルを取得する。 According to the above configuration, the robot interference determination device uses the history of the measurement positions of the target object to acquire information indicating the change in the position of the target object up to the present time. The robot interference determination device acquires, for example, a position and a velocity vector of the target object at the present time, as information indicating a change in the position of the target object up to the present time.
したがって、前記ロボット干渉判定装置は、前記対象物の、現時点までの位置の変化を示す情報を、前記対象物の計測位置の履歴を用いて高精度に算出し、取得することができるとの効果を奏する。 Therefore, the robot interference determination device can highly accurately calculate and acquire the information indicating the change in the position of the target object up to the present time using the history of the measured position of the target object. Play.
本発明の一態様に係るロボット干渉判定装置において、前記ロボット状態取得部は、前記ロボットの動作を制御するロボット制御装置から制御情報を取得することにより、前記可動部の前記予測位置および前記予測速度ベクトルを取得してもよい。 In the robot interference determination device according to an aspect of the present invention, the robot state acquisition unit acquires the control information from a robot control device that controls the operation of the robot, and thereby the predicted position and the predicted speed of the movable unit. You may get a vector.
前記の構成によれば、前記ロボット干渉判定装置は、前記ロボット制御装置から、前記ロボットに対する制御を規定する制御情報を取得することにより、前記可動部の前記予測位置および前記予測速度ベクトルを取得する。したがって、前記ロボット干渉判定装置は、前記制御情報から、前記可動部についての、高精度な前記予測位置および前記予測速度ベクトルを取得することができるとの効果を奏する。 According to the above configuration, the robot interference determination device acquires the predicted position and the predicted velocity vector of the movable part by acquiring control information that defines control of the robot from the robot control device. .. Therefore, the robot interference determination device has an effect of being able to acquire the highly accurate predicted position and the predicted velocity vector of the movable part from the control information.
前記制御情報は、例えば、前記ロボット制御装置が前記ロボットに対する制御を実行する際に用いる動作プログラム等であり、前記ロボット干渉判定装置は、動作プログラム等を解析して、前記可動部の予測位置および予測速度ベクトルを算出する。 The control information is, for example, an operation program or the like used when the robot control device executes control on the robot, and the robot interference determination device analyzes the operation program or the like to predict a predicted position of the movable part and Calculate the predicted velocity vector.
本発明の一態様に係るロボット干渉判定装置は、前記干渉判定部が、前記対象物と前記可動部との接触が生じる可能性があると判定した場合に、前記ロボットの動作を制御するロボット制御装置に対して干渉回避を指示する指示信号を送信する指示部をさらに備えてもよい。 A robot interference determination device according to an aspect of the present invention is a robot control that controls the operation of the robot when the interference determination unit determines that the contact between the object and the movable unit may occur. The apparatus may further include an instruction unit that transmits an instruction signal for instructing the device to avoid interference.
前記の構成によれば、前記ロボット干渉判定装置は、前記対象物と前記可動部との接触が生じる可能性があると判定した場合、前記ロボットの動作を制御するロボット制御装置に対して干渉回避を指示する指示信号を送信する。したがって、前記ロボット干渉判定装置は、接触が生じる可能性があると判定すると、前記ロボット制御装置に前記指示信号を送信して、接触を回避することができるとの効果を奏する。 According to the above configuration, the robot interference determination device avoids interference with the robot control device that controls the operation of the robot when determining that the contact between the object and the movable portion may occur. An instruction signal for instructing is transmitted. Therefore, when the robot interference determination device determines that a contact may occur, the robot interference determination device transmits the instruction signal to the robot control device to avoid the contact.
前記指示信号は、単に干渉の可能性を警告するだけの信号(警告信号)であってもよく、接触を回避するためのロボットの具体的な動作の決定は、前記ロボット制御装置に実行させてもよい。また、前記指示信号は、前記ロボットの動作内容を指示する信号であってもよく、例えば、前記ロボットの動作を停止させ、または、前記ロボットに干渉を回避させることを指示する信号であってもよい。さらに、前記指示信号は、前記ロボットの動作を詳細に規定する制御指令であってもよく、例えば、動作を停止させるまでの時間、干渉を回避するための動作の方向・時間・距離などの内容を含む信号であってもよい。 The instruction signal may be a signal (warning signal) that merely warns of the possibility of interference, and the robot control device is caused to determine the specific operation of the robot for avoiding contact. Good. Further, the instruction signal may be a signal instructing the operation content of the robot, for example, a signal instructing to stop the operation of the robot or avoid the interference of the robot. Good. Furthermore, the instruction signal may be a control command that defines the motion of the robot in detail, and includes, for example, the time until the motion is stopped, the direction, time, and distance of the motion to avoid interference. It may be a signal including.
本発明の一態様に係るロボット干渉判定装置において、前記干渉判定部が、前記対象物と前記可動部との接触が生じる可能性があると判定した場合に、前記指示部は、前記ロボット制御装置に対して、前記可動部の移動速度および軌道の少なくともいずれか一方の調整指示を示す前記指示信号を送信してもよい。 In the robot interference determination device according to one aspect of the present invention, when the interference determination unit determines that contact between the object and the movable unit may occur, the instruction unit causes the robot control device to operate. Alternatively, the instruction signal indicating the instruction to adjust at least one of the moving speed and the trajectory of the movable portion may be transmitted.
前記の構成によれば、前記ロボット干渉判定装置は、前記対象物と前記可動部との接触が生じる可能性があると判定した場合、前記ロボット制御装置に対して、前記可動部の移動速度および軌道の少なくとも一方の調整指示を示す前記指示信号を送信する。したがって、前記ロボット干渉判定装置は、接触が生じる可能性があると判定すると、前記可動部の移動速度および軌道の少なくとも一方を調整させ、接触を回避することができるとの効果を奏する。 According to the above configuration, when the robot interference determination device determines that contact between the object and the movable portion may occur, the robot control device instructs the robot control device to move the moving speed of the movable portion and The instruction signal indicating the adjustment instruction for at least one of the tracks is transmitted. Therefore, when the robot interference determination device determines that there is a possibility of contact, it is possible to adjust at least one of the moving speed and the trajectory of the movable portion and avoid contact.
本発明の一態様に係るロボット干渉判定装置において、前記指示部による前記調整指示の後に、前記干渉判定部が、前記対象物と前記可動部との接触が生じる可能性がないと判定した場合に、前記指示部は、前記ロボット制御装置に対して、前記可動部の移動速度および軌道の少なくともいずれか一方を、前記調整指示が行われる前の状態に戻す指示を示す前記指示信号を送信してもよい。 In the robot interference determination device according to one aspect of the present invention, when the interference determination unit determines that there is no possibility of contact between the object and the movable unit after the adjustment instruction by the instruction unit. The instructing unit transmits to the robot control device the instructing signal indicating an instruction to return at least one of the moving speed and the trajectory of the movable unit to the state before the adjustment instruction is given. Good.
前記の構成によれば、前記ロボット干渉判定装置は、前記調整指示の後に、前記対象物と前記可動部との接触が生じる可能性がなくなると、前記可動部の移動速度および軌道の少なくとも一方を、調整の前の状態に戻すように、前記ロボット制御装置に指示する。したがって、前記ロボット干渉判定装置は、前記調整指示の後に、前記対象物と前記可動部との接触が生じる可能性がなくなると、前記可動部の移動速度および軌道の少なくとも一方を、調整の前の状態に戻すことができるとの効果を奏する。 According to the above configuration, the robot interference determination device sets at least one of the moving speed and the trajectory of the movable part when the possibility of contact between the object and the movable part after the adjustment instruction disappears. , The robot controller is instructed to return to the state before the adjustment. Therefore, when the possibility of contact between the object and the movable part disappears after the adjustment instruction, the robot interference determination device sets at least one of the moving speed and the trajectory of the movable part before the adjustment. The effect that it can be returned to a state is produced.
本発明の一態様に係るロボット干渉判定装置において、前記干渉判定部が、前記対象物と前記可動部との接触が生じる可能性を示す可能性評価値が第1の閾値以上であると判定した場合に、前記指示部は、前記ロボット制御装置に対して、前記可動部の移動速度および軌道の少なくともいずれか一方の調整指示を示す前記指示信号を送信するとともに、前記可能性評価値が、前記第1の閾値よりも高い第2の閾値以上となったと前記干渉判定部が判定した場合に、前記指示部は、前記ロボット制御装置に対して、前記可動部を停止させる指示を示す前記指示信号を送信してもよい。 In the robot interference determination device according to one aspect of the present invention, the interference determination unit determines that a possibility evaluation value indicating a possibility of contact between the object and the movable unit is equal to or greater than a first threshold value. In this case, the instruction unit transmits to the robot control device the instruction signal indicating an adjustment instruction of at least one of the moving speed and the trajectory of the movable unit, and the possibility evaluation value is When the interference determination unit determines that the interference threshold is equal to or higher than a second threshold that is higher than the first threshold, the instruction unit instructs the robot controller to instruct the robot controller to stop the movable unit. May be sent.
前記の構成によれば、前記ロボット干渉判定装置は、前記可能性評価値が第1の閾値以上であると、前記可動部の移動速度および軌道の少なくとも一方の調整を指示し、前記可能性評価値が第2の閾値以上となると、前記可動部の停止を指示する。つまり、前記ロボット干渉判定装置は、前記対象物と前記可動部との接触が生じる可能性に応じて、前記可動部の移動を制御する。前記対象物と前記可動部との接触が生じる可能性がそれほど高くない(つまり、第1の閾値以上で第2の閾値未満である)場合、前記ロボット干渉判定装置は、前記可動部を停止させずに、前記可動部の移動速度および軌道の少なくともいずれか一方を調整する。前記対象物と前記可動部との接触が生じる可能性が第2の閾値以上である場合、前記ロボット干渉判定装置は、前記可動部を停止させる。 According to the above configuration, the robot interference determination device instructs the adjustment of at least one of the moving speed and the trajectory of the movable part when the possibility evaluation value is equal to or more than the first threshold value, and the possibility evaluation is performed. When the value becomes equal to or larger than the second threshold value, the stop of the movable portion is instructed. That is, the robot interference determination device controls the movement of the movable part according to the possibility of contact between the object and the movable part. When the possibility of contact between the object and the movable part is not so high (that is, it is equal to or more than the first threshold value and less than the second threshold value), the robot interference determination device stops the movable part. Instead, at least one of the moving speed and the trajectory of the movable part is adjusted. When the possibility of contact between the object and the movable part is equal to or higher than the second threshold value, the robot interference determination device stops the movable part.
したがって、前記ロボット干渉判定装置は、接触が生じる可能性に応じて、接触を回避するに必要十分な動作を前記ロボットに実行させるので、接触を回避しつつ、生産効率およびスペース効率の低下を抑制することができるとの効果を奏する。 Therefore, the robot interference determination device causes the robot to perform a necessary and sufficient operation for avoiding the contact depending on the possibility of the contact, so that it is possible to prevent the contact and at the same time suppress the deterioration of the production efficiency and the space efficiency. The effect that can be achieved.
上記の課題を解決するために、本発明の一態様に係るロボット干渉判定方法は、所定の領域内に存在する対象物の、現時点までの位置の変化を示す情報を取得する対象物状態取得ステップと、ロボットにおける所定の可動部の所定時間後における予測位置および予測速度ベクトルを取得するロボット状態取得ステップと、前記対象物の、現時点までの位置の変化を示す情報に基づいて、前記所定時間後における前記対象物の予測位置および予測速度ベクトルを算出する予測ステップと、前記対象物の前記予測位置および前記予測速度ベクトルと、前記可動部の前記予測位置および前記予測速度ベクトルとに基づき、前記対象物と前記可動部との接触が生じる可能性があるか否かをリアルタイムで判定する干渉判定ステップと、を含んでいる。 In order to solve the above problems, a robot interference determination method according to an aspect of the present invention is an object state acquisition step of acquiring information indicating a change in position of an object existing in a predetermined area up to the present time. And a robot state acquisition step of acquiring a predicted position and a predicted velocity vector of a predetermined movable part of the robot after a predetermined time, and based on information indicating a change in the position of the target object up to the present time, the predetermined time A prediction step of calculating a predicted position and a predicted velocity vector of the target object, a predicted position and a predicted speed vector of the target object, and the target based on the predicted position and the predicted speed vector of the movable part. An interference determination step of determining in real time whether or not a contact between an object and the movable portion may occur.
前記の方法によれば、前記ロボット干渉判定方法は、前記対象物の、現時点までの位置の変化を示す情報を取得し、この現時点までの位置の変化を示す情報を用いて、前記対象物の前記予測位置および前記予測速度ベクトルを算出する。前記対象物の、現時点までの位置の変化を示す情報は、例えば、前記対象物の現時点における位置(現在位置)、および、前記対象物の現時点における速度ベクトル(現在速度ベクトル)である。また、図15の表において入力として示す各種の情報も、各々、前記対象物の、現時点までの位置の変化を示す情報の例である。 According to the method, the robot interference determination method acquires information indicating a change in position of the object up to the present time, and uses the information indicating the change in position up to the present time to detect the object. The predicted position and the predicted velocity vector are calculated. The information indicating the change in the position of the object up to the present time is, for example, the current position of the object (current position) and the current velocity vector of the object (current velocity vector). Further, each of various kinds of information shown as inputs in the table of FIG. 15 is also an example of information indicating a change in position of the target object up to the present time.
そして、前記ロボット干渉判定方法は、算出した前記対象物の前記予測位置および前記予測速度ベクトルと、前記可動部の前記予測位置および前記予測速度ベクトルとに基づき、前記対象物と前記可動部との接触が生じる可能性があるか否かをリアルタイムで判定する。 Then, the robot interference determination method, based on the calculated predicted position and the predicted velocity vector of the target object, and the predicted position and the predicted velocity vector of the movable portion, between the target object and the movable portion. Determine in real time whether contact may occur.
前記ロボット干渉判定方法は、安全柵を用いずに前記ロボットと前記対象物との干渉を回避することができるので、生産現場等の省スペース化を実現することができる。 Since the robot interference determination method can avoid the interference between the robot and the object without using a safety fence, it is possible to realize space saving at a production site or the like.
また、前記ロボット干渉判定方法は、前記ロボットと前記対象物との、前記所定時間後(つまり、未来)における干渉の可能性を現時点で判定するので、干渉の可能性があると判定した場合にも、干渉回避のための処理を現時点で余裕を持って実行できる。 Further, the robot interference determination method determines the possibility of interference between the robot and the target object after the predetermined time (that is, in the future) at the present time. Therefore, when it is determined that there is a possibility of interference, Also, the process for avoiding interference can be executed with a margin at this moment.
ここで、現時点での干渉の可能性を現時点で判定する方法が、現時点での干渉の可能性があると判定した場合、現時点での干渉を回避するためには、前記ロボットの急減速および急停止等の動作が必要となり、どうしても生産効率が低下する。 Here, if the method for determining the possibility of interference at the present moment determines that there is the possibility of interference at the present moment, in order to avoid the interference at the present moment, sudden deceleration and sudden movement of the robot are performed. Operations such as stopping are required, and production efficiency is inevitably reduced.
これに対し、前記ロボット干渉判定方法は、未来における干渉の可能性を現時点で判定するので、現時点での干渉の可能性を現時点で判定する場合に比べて、干渉を回避するために必要な前記ロボットの動作を、円滑かつ必要最小限のものにすることができる。つまり、前記ロボット干渉判定方法は、前記ロボットと前記対象物との干渉を回避しつつ、前記ロボットの急減速および急停止等による生産効率の低下を抑制することができる。 On the other hand, since the robot interference determination method determines the possibility of interference in the future at the present time, it is necessary to avoid the interference as compared with the case of determining the possibility of interference at the present time at the present time. The operation of the robot can be made smooth and minimum required. That is, the robot interference determination method can prevent a decrease in production efficiency due to sudden deceleration and sudden stop of the robot while avoiding interference between the robot and the object.
したがって、前記ロボット干渉判定方法は、工場等の生産現場において、例えば作業者等である前記対象物と前記ロボットとの干渉を回避しつつ、生産効率およびスペース効率の低下を抑制することができるとの効果を奏する。 Therefore, the robot interference determination method can prevent a decrease in production efficiency and space efficiency while avoiding interference between the robot and the object such as a worker in a production site such as a factory. Produce the effect of.
上記の課題を解決するために、本発明の一態様に係るロボット制御装置は、前記ロボット干渉判定装置から前記指示信号を受信する受信部と、前記指示信号に基づき、前記ロボットの動作を制御するロボット制御部と、を備えている。 In order to solve the above problems, a robot control device according to an aspect of the present invention controls a movement of the robot based on a receiving unit that receives the instruction signal from the robot interference determination device and the instruction signal. And a robot controller.
前記の構成によれば、前記ロボット制御装置は、前記ロボット干渉判定装置から前記指示信号を受信し、受信した前記指示信号に基づいて、前記ロボットの動作を制御する。したがって、前記ロボット制御装置は、工場等の生産現場において、例えば作業者等である前記対象物と前記ロボットとの干渉を回避しつつ、生産効率およびスペース効率の低下を抑制することができるとの効果を奏する。 According to the above configuration, the robot control device receives the instruction signal from the robot interference determination device, and controls the operation of the robot based on the received instruction signal. Therefore, in the production site such as a factory, the robot control device can prevent a decrease in production efficiency and space efficiency while avoiding interference between the robot and the object such as an operator. Produce an effect.
上記の課題を解決するために、本発明の一態様に係るロボット制御システムは、前記ロボット干渉判定装置と、前記ロボット制御装置と、非接触で前記対象物の二次元または三次元位置を計測し、計測結果を前記ロボット干渉判定装置に送信する計測装置と、を含んでいる。 In order to solve the above problems, a robot control system according to an aspect of the present invention measures the two-dimensional or three-dimensional position of the object in a non-contact manner with the robot interference determination device, the robot control device. , A measuring device for transmitting the measurement result to the robot interference determination device.
前記の構成によれば、前記ロボット制御システムは、前記ロボット干渉判定装置と、前記ロボット制御装置と、前記計測結果を前記ロボット干渉判定装置に送信する前記計測装置とを含む。したがって、前記ロボット制御システムは、工場等の生産現場において、例えば作業者等である前記対象物と前記ロボットとの干渉を回避しつつ、生産効率およびスペース効率の低下を抑制することができるとの効果を奏する。 According to the above configuration, the robot control system includes the robot interference determination device, the robot control device, and the measurement device that transmits the measurement result to the robot interference determination device. Therefore, in the production site such as a factory, the robot control system can prevent a decrease in production efficiency and space efficiency while avoiding interference between the robot and the object such as a worker. Produce an effect.
本発明の一態様に係る人動作予測装置は、対象物である人の、位置の変化を示す情報を取得する対象物状態取得部と、前記対象物の位置の変化を示す情報に基づいて、その後における前記対象物の予測位置、予測速度ベクトルまたは予測加速度ベクトルを、学習済モデルによって予測する予測部と、を備え、前記予測部は、パラメータ調整を必要としないオンライン追加学習により前記学習済モデルを更新する学習部を備え、前記学習部は、前記対象物の各時点における位置、速度ベクトル、および加速度ベクトルの少なくとも1つの履歴を学習することによって前記学習済モデルを更新する。 The human motion prediction apparatus according to an aspect of the present invention is based on an object state acquisition unit that acquires information indicating a change in position of a person who is an object, and information indicating a change in position of the object, A prediction unit that predicts a predicted position, a predicted velocity vector, or a predicted acceleration vector of the target object thereafter by a learned model, wherein the prediction unit is the learned model by online additional learning that does not require parameter adjustment. And a learning unit that updates the learned model by learning at least one history of the position, velocity vector, and acceleration vector of the object at each time point.
前記の構成によれば、パラメータ調整なしに学習済モデルを更新することができるので、動作パターンが時間経過と共に変化し得る人の動作を適切に予測することができる。 According to the above configuration, since the learned model can be updated without parameter adjustment, it is possible to appropriately predict a person's motion whose motion pattern may change with time.
前記学習部は、学習アルゴリズムとしてDLT(Dynamics Learning Tree)またはDBT(Deep Binary Tree)を用いてもよい。 The learning unit may use DLT (Dynamics Learning Tree) or DBT (Deep Binary Tree) as a learning algorithm.
前記学習部は、前記対象物の、ある時点までの位置の変化を示す情報を入力とし、前記対象物の加速度またはその後の位置を出力とする学習を行うことによって前記学習済モデルを更新してもよい。 The learning unit updates the learned model by performing learning with the information indicating the change in the position of the object up to a certain time as an input and performing the acceleration of the object or the position after that as output. Good.
前記予測部は、所定期間における前記対象物の位置の変化を示す情報を前記学習済モデルの入力とすることで、前記対象物の前記予測位置、前記予測速度ベクトル、または予測加速度ベクトルを予測してもよい。 The prediction unit predicts the predicted position of the target, the predicted velocity vector, or the predicted acceleration vector by inputting information indicating the change in the position of the target in a predetermined period as the input of the learned model. May be.
前記対象物は、複数の作業を行う作業者であり、前記所定期間が、予測直前の第1作業の期間だけでなく、前記第1作業の前の第2作業の期間も含むように、前記所定期間が設定されていてもよい。 The object is a worker who performs a plurality of works, and the predetermined period includes not only the period of the first work immediately before the prediction but also the period of the second work before the first work. The predetermined period may be set.
前記の構成によれば、学習部は、複数の作業の関連性を学習することができる。そのため、作業者の動きを適切に予測することができる。 According to the above configuration, the learning unit can learn the relevance of a plurality of tasks. Therefore, the movement of the worker can be appropriately predicted.
前記予測部は、前記所定期間における前記対象物の位置の変化を示す情報に、第1時間方向重み付きフィルタを適用したものを、前記学習済モデルの入力とすることで、前記対象物の前記予測位置、前記予測速度ベクトル、または予測加速度ベクトルを予測してもよい。 The predicting unit applies the first time-direction weighted filter to the information indicating the change in the position of the target object in the predetermined period as an input of the learned model, thereby The predicted position, the predicted velocity vector, or the predicted acceleration vector may be predicted.
前記学習部は、対象時刻の前後を含む期間における前記対象物の位置の変化を示す情報に、前記第1時間方向重み付きフィルタとは異なる第2時間方向重み付きフィルタを適用したものを前記対象時刻に関する入力として、学習を行い、前記予測部は、対象時刻以前の期間における前記対象物の位置の変化を示す情報に、前記第1時間方向重み付きフィルタを適用したものを、前記学習済モデルの入力とすることで、前記対象時刻より後の前記対象物の前記予測位置、前記予測速度ベクトル、または予測加速度ベクトルを予測してもよい。 The learning unit applies the second time-direction weighted filter different from the first time-direction weighted filter to the information indicating the change in the position of the target object in a period including before and after the target time. Learning is performed as an input regarding time, and the prediction unit applies the first time-direction weighted filter to information indicating a change in the position of the target object in a period before the target time, the learned model. May be used to predict the predicted position, the predicted velocity vector, or the predicted acceleration vector of the target object after the target time.
前記の構成によれば、学習時に用いる時間方向重み付きフィルタと、予測時に用いる時間方向重み付きフィルタとを、それぞれ最適化することができる。すなわち、学習に適した時間方向重み付きフィルタと、予測に適した時間方向重み付きフィルタとを用いることができ、予測の精度を向上させることができる。 According to the above configuration, the time-direction weighted filter used during learning and the time-direction weighted filter used during prediction can be optimized. That is, a time-direction weighted filter suitable for learning and a time-direction weighted filter suitable for prediction can be used, and the accuracy of prediction can be improved.
前記対象物の位置の変化を示す情報は、前記人の部位の位置、速度ベクトルまたは加速度ベクトルを含んでもよい。 The information indicating the change in the position of the object may include a position of the human body part, a velocity vector, or an acceleration vector.
前記対象物の位置の変化を示す情報は、前記人の複数の部位の位置、速度ベクトルまたは加速度ベクトルを含んでもよい。 The information indicating the change in the position of the object may include the position, velocity vector, or acceleration vector of the plurality of parts of the person.
本発明の一態様に係る人動作予測方法は、対象物である人の、位置の変化を示す情報を取得する対象物状態取得ステップと、前記対象物の位置の変化を示す情報に基づいて、その後における前記対象物の予測位置、予測速度ベクトルまたは予測加速度ベクトルを、学習済モデルによって予測する予測ステップと、パラメータ調整を必要としないオンライン追加学習により前記学習済モデルを更新する学習ステップであって、前記対象物の各時点における位置、速度ベクトル、および加速度ベクトルの少なくとも1つの履歴を学習することによって前記学習済モデルを更新する学習ステップと、を含む。 A human motion prediction method according to an aspect of the present invention is based on an object state acquisition step of acquiring information indicating a change in position of a person who is an object, and information indicating a change in position of the object, A predicted step of predicting the predicted position, predicted velocity vector or predicted acceleration vector of the object thereafter, and a learning step of updating the learned model by online additional learning that does not require parameter adjustment, A learning step of updating the learned model by learning at least one history of the position, velocity vector, and acceleration vector of the object at each time point.
本発明の一態様によれば、工場等の生産現場において作業者等の安全を確保しつつ、生産効率およびスペース効率の低下を回避することができるとの効果を奏する。 According to one aspect of the present invention, it is possible to avoid a decrease in production efficiency and space efficiency while ensuring the safety of workers and the like in a production site such as a factory.
〔実施形態1〕
以下、本発明の一側面に係る実施の形態(以下、「本実施形態」とも表記する)を、図1から図15に基づいて説明する。なお、図中同一または相当部分には同一符号を付してその説明は繰返さない。本実施の形態においては、例えば干渉判定装置10をロボット干渉判定装置の典型例として説明を行う。本発明の一態様に係る干渉判定装置10についての理解を容易にするため、先ず、干渉判定装置10を含む制御システム1の概要を、図2を用いて説明する。
[Embodiment 1]
Hereinafter, an embodiment according to one aspect of the present invention (hereinafter, also referred to as “the present embodiment”) will be described based on FIGS. 1 to 15. In the drawings, the same or corresponding parts will be denoted by the same reference characters and description thereof will not be repeated. In the present embodiment, for example, the
§1.適用例
(制御システムの全体概要)
図2は、制御システム1の全体概要を示す図である。図2に例示するように、制御システム1は、干渉判定装置10と、ロボット制御装置であるコントローラ20と、センサ40(計測装置)とを含んでいる。図2においては、センサ40として、センサ40(1)およびセンサ40(2)が描かれているが、制御システム1が含むセンサ40が複数であることは必須ではなく、制御システム1が含むセンサ40は1つであってもよい。以下の説明において、センサ40(1)とセンサ40(2)とを区別する必要がない場合には、単に「センサ40」と表記する。
§1. Application example (overall overview of control system)
FIG. 2 is a diagram showing an overall outline of the
制御システム1は、図2に示すような、ロボット30と作業者50(対象物)とが共存する工場等の生産現場において、ロボット30と作業者50とが不用意に接触するのを回避するための制御を実行する。特に、制御システム1は、作業者50と、ロボット30のアーム等、多関節マニピュレータを備えるロボット30の所定部分(例えば、所定の可動部)とが不用意に接触するのを回避するための制御を実行する。ただし、以下の説明においては、記載の簡潔性を担保するため、作業者50と「ロボット30の所定部分」との接触を回避することを、作業者50とロボット30との接触を回避すると記載することがある。つまり、以下の説明において、「ロボット30」との語は、ロボット30の全体だけでなく、作業者50との接触が回避されるべき「ロボット30の所定部分」を指す場合にも用いる。同様に、以下の説明においては、「速度ベクトル」および「加速度ベクトル」は、各々、「速度」および「加速度」と略記することがある。
The
センサ40は、主として作業者50(対象物)の二次元位置または三次元位置を非接触方式で計測し、特に、時間ごとの作業者50の二次元位置または三次元位置を非接触方式で計測し、計測結果を干渉判定装置10に通知する。センサ40は、例えば、公知のライダー(LiDAR、Light Detection and Ranging)またはレーダー(RADAR、Radio Detection and Ranging)などを用いて実現することができ、例えば、作業者50の可動領域、つまり、作業領域全体を監視できるように配置される。センサ40は、例えばEthernet(登録商標)等の産業用ネットワークを介して、干渉判定装置10に接続している。
The
図2に示すように、制御システム1は、複数のセンサ40を用いて、作業者50の二次元位置または三次元位置を計測してもよく、その場合、異なる種類の複数のセンサ40を組み合わせてもよく、つまり、異種FUSION構成としてもよい。例えば、図2において、センサ40(1)およびセンサ40(2)の一方を二次元センサとし、他方を三次元センサとしてもよい。異なる種類の複数のセンサ40を組み合わせて用いることにより、多元的な計測が可能となる。また、制御システム1は、同種の複数のセンサ40を用いることによって、計測する作業者50の二次元位置または三次元位置の精度を向上させてもよい。ただし、前述の通り、制御システム1が含むセンサ40が複数であることは必須ではなく、制御システム1は1つのセンサ40によって、作業者50の二次元位置または三次元位置を計測してもよい。
As shown in FIG. 2, the
コントローラ20は、ロボット30の動作を制御するロボット制御装置であり、例えば、後述するアームタスク23に格納されている目標軌道および動作プログラムなどのデータに従って、ロボット30の動作を制御する。また、コントローラ20は、干渉判定装置10からの指示信号に従って、ロボット30の動作を制御する。例えば、コントローラ20は、目標軌道を用いて生成したロボット30への指令値を、干渉判定装置10からの指示信号に従って修正し、修正した指令値に従った動作をロボット30に実行させる。コントローラ20は、例えばPLC(Programmable Logic Controller)、IPC(Industrial PC)などを用いて実現することができる。
The
ロボット30は、コントローラ20と接続しており、コントローラ20によって動作を制御され、例えば、複数のアームが複数の関節で接続されている多関節マニピュレータを備える。
The
干渉判定装置10は、センサ40から取得する「時間ごとの作業者50の二次元位置または三次元位置」を用いて、作業者50の未来の(言い換えれば、将来の)「位置(二次元位置または三次元位置)および速度ベクトル」を予測する。例えば、干渉判定装置10は、t0時点の「作業者50の、位置および速度ベクトル」を用いて、t0+Δt時点の「作業者50の、位置および速度ベクトル」を、t0時点で予測する。
The
また、干渉判定装置10は、コントローラ20(特に、アームタスク23)から、例えば、ロボット30の動作を規定する「目標軌道および動作プログラム」などの情報(制御情報)を取得する。干渉判定装置10は、取得した情報を用いて、ロボット30(例えば、ロボット30のアーム)の未来の「位置(二次元位置または三次元位置)および速度ベクトル」を予測する(算出する)。例えば、干渉判定装置10は、ロボット30の制御情報を用いて、t0+Δt時点の「ロボット30の、位置および速度ベクトル」を、t0時点で予測する。
Further, the
干渉判定装置10は、作業者50の未来(t0+Δt時点)の速度ベクトルとロボット30の未来の速度ベクトルとを用いて、未来における安全距離を算出する。また、干渉判定装置10は、作業者50の未来(t0+Δt時点)の位置とロボット30の未来の位置とを用いて、未来における分離距離を算出する。干渉判定装置10は、算出した「未来(t0+Δt時点)における安全距離」と「未来(t0+Δt時点)における分離距離」とを比較して、作業者50とロボット30との未来における干渉の可能性を判定し、判定結果をコントローラ20に通知する。「安全距離」および「分離距離」の概念について、詳細は図6を用いて後述する。
The
具体的には、「未来における分離距離」が「未来における安全距離」よりも大きい場合、干渉判定装置10は、作業者50とロボット30とが未来において干渉する可能性はないと判定し、この判定結果をコントローラ20に通知する。また、「未来における分離距離」が「未来における安全距離」以下である場合、干渉判定装置10は、作業者50とロボット30とが未来において干渉する可能性があると判定し、干渉を回避する指示をコントローラ20に送信する。干渉判定装置10は、干渉を回避する指示と共に、作業者50の未来の「位置および速度ベクトル」等の干渉状態情報を、コントローラ20に送信してもよい。
Specifically, when the “separation distance in the future” is larger than the “safety distance in the future”, the
干渉判定装置10により干渉可能性があると判定されると、干渉判定装置10またはコントローラ20は、ロボット30の動作の予定(軌道計画)を修正して、未来における作業者50とロボット30との干渉を回避する。
When it is determined by the
例えば、干渉判定装置10は、「作業者50とロボット30とが未来(t=t0+Δt)において干渉し得る」と現時点(t=t0)で判定すると、「未来における安全距離」を「未来における分離距離」以下とする指示(指示信号)を、コントローラ20に送信してもよい。すなわち、干渉判定装置10は、「未来における安全距離」を「未来における分離距離」以下とする指示を、コントローラ20に現時点で送信してもよい。干渉判定装置10は、ロボット30の、現時点から未来までの「速度ベクトルおよび目標軌道」の少なくとも一方を調整するように、コントローラ20に現時点で指示することで、「未来における安全距離」を「未来における分離距離」以下の大きさにしてもよい。
For example, the
ただし、干渉可能性があると判定した干渉判定装置10は、この判定結果と干渉状態情報とをコントローラ20に送信し、干渉回避のための軌道計画の具体的な修正内容の決定については、コントローラ20に実行させるようにしてもよい。
However, the
(干渉判定装置についての整理)
干渉判定装置10は、「未来における安全距離」および「未来における分離距離」の算出を動的に(つまり、随時)算出し、未来における干渉可能性の判定(干渉判定)を動的に行って、判定結果をコントローラ20に通知する。干渉判定装置10は、干渉の可能性があると判定すると、適宜、干渉の回避をコントローラ20に指示し、例えば、ロボット30の速度ベクトルおよび軌道の少なくとも一方を修正させる。言い換えれば、干渉判定装置10は、時々刻々に、未来における干渉判定を行って、ロボット30の速度ベクトルおよび軌道の少なくとも一方の修正などを、時々刻々に指示する。
(Organization of interference determination device)
The
したがって、干渉判定装置10は、安全柵を用いずにロボット30と作業者50との干渉を回避することができるので、生産現場等の省スペース化を実現することができる。また、干渉判定装置10は、未来における干渉可能性の判定に基づいて、現在から未来までのロボット30の速度ベクトルおよび目標軌道の少なくとも一方を調整するので、ロボット30によるスムーズな干渉回避動作を計画することができる。言い換えれば、未来についての予測情報を用いてロボット30の動作を計画するので、ロボット30の急減速、無駄な減速、無駄な停止などの発生を抑制することができ、成功率の高い軌道(つまり、動作の計画)を生成することが可能となる。「成功率が低い」とは、例えば、ロボット30と作業者50との干渉を回避するために、ロボット30の動作の計画(軌道)を何度も作り直す必要があることをいう。ユーザは、干渉判定装置10を用いることにより、生産現場等の省スペース化および生産効率の向上を実現することができる。
Therefore, the
すなわち、干渉判定装置10(ロボット干渉判定装置)は、所定の領域内に存在する作業者50(対象物)の、現時点(t0)までの位置の変化を示す情報(例えば、現時点における現在位置xh(t0)および現在速度ベクトルvh(t0))を取得する人状態情報生成部112(対象物状態取得部)と、ロボット30(ロボットにおける所定の可動部)の所定時間Δt後における予測位置xr(t0+Δt)および予測速度ベクトルvr(t0+Δt)を取得するロボット状態取得部121と、作業者50の現時点までの位置の変化を示す情報に基づいて、所定時間Δt後における作業者50の予測位置xh(t0+Δt)および予測速度ベクトルvh(t0+Δt)を算出する人軌道予測部113(予測部)と、作業者50の予測位置xh(t0+Δt)および予測速度ベクトルvh(t0+Δt)と、ロボット30の予測位置xr(t0+Δt)および予測速度ベクトルvr(t0+Δt)とに基づき、作業者50とロボット30との接触が生じる可能性があるか否かをリアルタイムで判定する未来干渉判定部122(干渉判定部)と、を備えている。
That is, the interference determination device 10 (robot interference determination device) uses information indicating a change in position of the worker 50 (object) existing in a predetermined area up to the current time (t 0 ) (for example, the current position at the current time). x h (t 0 ) and the current velocity vector v h (t 0 )) after a predetermined time Δt between the human state information generation unit 112 (object state acquisition unit) and the robot 30 (a predetermined movable unit in the robot). At a predetermined time based on the robot
前記の構成によれば、干渉判定装置10は、「作業者50の、現時点までの位置の変化を示す情報」を取得し、この「現時点までの位置の変化を示す情報」を用いて、所定時間Δt後における作業者50の予測位置xh(t0+Δt)および予測速度ベクトルvh(t0+Δt)を予測する(算出する)。「作業者50の、現時点までの位置の変化を示す情報」は、例えば、作業者50の現在位置xh(t0)および現在速度ベクトルvh(t0)である。また、図15の表において入力として示す各種の情報も、各々、前記対象物の、現時点までの位置の変化を示す情報の例である。
According to the above configuration, the
そして、干渉判定装置10は、算出した作業者50の予測位置xh(t0+Δt)および予測速度ベクトルvh(t0+Δt)と、ロボット30の予測位置xr(t0+Δt)および予測速度ベクトルvr(t0+Δt)とに基づき、作業者50とロボット30との接触が生じる可能性があるか否かをリアルタイムで判定する。
Then, the
干渉判定装置10は、安全柵を用いずにロボット30と作業者50との干渉を回避することができるので、生産現場等の省スペース化を実現することができる。
Since the
また、干渉判定装置10は、ロボット30と作業者50との、所定時間Δt(つまり、未来)における干渉の可能性を現時点t0で判定するので、干渉の可能性があると判定した場合にも、干渉回避のための処理を現時点t0で余裕を持って実行できる。
Further, the
ここで、現時点t0での干渉の可能性を現時点t0で判定する装置が、現時点t0での干渉の可能性があると判定した場合、現時点t0での干渉を回避するためには、ロボット30の急減速および急停止等の動作が必要となり、どうしても生産効率が低下する。
Here, if the apparatus for determining the possibility of interference at the moment t 0 at the moment t 0 is, it is determined that there is a possibility of interference at the present time t 0, in order to avoid interference at the present time t 0 is Therefore, operations such as sudden deceleration and sudden stop of the
これに対し、干渉判定装置10は、未来における干渉の可能性を現時点t0で判定するので、現時点t0での干渉の可能性を現時点t0で判定する場合に比べて、干渉を回避するために必要なロボット30の動作を、円滑かつ必要最小限のものにすることができる。つまり、干渉判定装置10は、ロボット30と作業者50との干渉を回避しつつ、ロボット30の急減速および急停止等による生産効率の低下を抑制することができる。
On the other hand, since the
したがって、干渉判定装置10は、工場等の生産現場において、例えば作業者50等である人(対象物)とロボット30との干渉を回避しつつ、生産効率およびスペース効率の低下を抑制することができるとの効果を奏する。
Therefore, the
前述の通り、対象物は、例えば作業者50等の人であり、具体的には、人の全体または人の一部であり、また、人以外のモノ(例えば、モバイルロボットなど)であってもよい。対象物の位置とは、対象物が人(作業者50)の全体である場合には、例えば、人の重心の位置である。対象物が人の一部または人以外のモノである場合には、対象物の位置とは、人の一部の位置、または、人以外のモノの位置である。
As described above, the object is, for example, a person such as the
人軌道予測部113による予測速度ベクトルvh(t0+Δt)の算出は、対象物の各時点における位置xh(t)および速度ベクトルvh(t)の履歴を学習した結果を利用するものであってもよい。また、人軌道予測部113による予測速度ベクトルvh(t0+Δt)の算出は、単純予測を利用するもの、つまり、現在速度ベクトルvh(t0)の継続を前提とするものであってもよい。
Calculation of the predicted velocity vector v h (t 0 +Δt) by the human
干渉判定装置10について、ロボット30は、複数のアームが複数の関節で接続されている多関節マニピュレータを備えている。干渉判定装置10によって作業者50との干渉が判定される対象は、ロボット30の全体であってもよいし、ロボット30における所定の可動部、例えば、ロボット30の多関節マニピュレータの所定の1以上の部分であってもよい。
Regarding the
前記の構成によれば、干渉判定装置10は、複数のアームが複数の関節で接続されている多関節マニピュレータを備えたロボット30と、作業者50との、所定時間Δt後(つまり、未来)における干渉の可能性を、現時点t0で判定する。
According to the above configuration, the
したがって、干渉判定装置10は、工場等の生産現場において、例えば作業者50等である対象物と、多関節マニピュレータを備えたロボット30との干渉を回避しつつ、生産効率およびスペース効率の低下を抑制することができるとの効果を奏する。
Therefore, the
干渉判定装置10において、人軌道予測部113は、各時点における、作業者50の位置xh(t)、速度ベクトルvh(t)、および、加速度ベクトルah(t)の少なくとも1つの履歴を学習することによって予測用データ(学習済モデル)を生成する学習部114を備える。人軌道予測部113は、予測用データによって、作業者50の予測位置xh(t0+Δt)および予測速度ベクトルvh(t0+Δt)を算出する。
In the
前記の構成によれば、干渉判定装置10は、作業者50の各時点における位置xh(t)、速度ベクトルvh(t)、および、加速度ベクトルah(t)の少なくとも1つの履歴を学習して学習済モデル(予測用データ)を生成する。そして、干渉判定装置10は、生成した学習済モデルを用いて、作業者50の予測位置xh(t0+Δt)および予測速度ベクトルvh(t0+Δt)を算出する。
According to the above configuration, the
したがって、干渉判定装置10は、作業者50の状態・動作(位置、速度ベクトル、加速度ベクトルの少なくとも1つ)に係る履歴の学習によって生成した予測用データを用いて、作業者50の予測位置xh(t0+Δt)および予測速度ベクトルvh(t0+Δt)を高精度に算出することができるとの効果を奏する。
Therefore, the
干渉判定装置10において、学習部114は、作業者50の、現時点までの位置の変化を示す情報(例えば、作業者50の現在位置xh(t0)および現在速度ベクトルvh(t0)の少なくとも一方)を入力とし、作業者50の加速度またはその後の位置xh(t0+Δt)を出力とする学習を行うことによって、予測用データを生成する。
In the
前記の構成によれば、干渉判定装置10は、作業者50の、現時点までの位置の変化を示す情報を入力とし、作業者50の加速度またはその後の位置xh(t0+Δt)を出力とする学習を行う。
According to the above configuration, the
例えば、干渉判定装置10は、時刻ごとの(つまり、各時点における)、作業者50の位置および速度ベクトルを入力とし、時刻ごとの、作業者50の加速度を出力とする学習用データについて、学習を行う。
For example, the
干渉判定装置10は、作業者50の、現時点までの位置の変化を示す情報を入力とし、作業者50の加速度またはその後の位置xh(t0+Δt)を出力とする学習用データを学習することで、作業者50の予測位置xh(t0+Δt)および予測速度ベクトルvh(t0+Δt)を算出するための、高精度な予測用データを生成することができるとの効果を奏する。
The
干渉判定装置10は、作業者50を識別する識別部115をさらに備え、人軌道予測部113は、識別部115による識別結果に応じて作業者50の予測位置および予測速度ベクトルの算出方法を変更する。
The
前記の構成によれば、干渉判定装置10は、複数の作業者50の各々を識別し、複数の作業者50の各々の予測位置xh(t0+Δt)および予測速度ベクトルvh(t0+Δt)を、複数の作業者50の各々に応じて、算出する。
According to the above configuration, the
ここで、例えば複数の作業者50の各々は、身長、体重等が異なり、また、各々に特有の動作の癖などを備えている。したがって、複数の作業者50の各々について、予測位置xh(t0+Δt)および予測速度ベクトルvh(t0+Δt)を高精度に算出するには、複数の作業者50の各々の状態・動作の履歴情報を学習し、その学習結果を利用するのが望ましい。
Here, for example, each of the plurality of
干渉判定装置10は、複数の作業者50の各々を識別し、各々に応じた算出方法により、つまり、各々についての予測用データを用いて、各々の予測位置xh(t0+Δt)および予測速度ベクトルvh(t0+Δt)を算出する。したがって、干渉判定装置10は、複数の作業者50の各々の予測位置xh(t0+Δt)および予測速度ベクトルvh(t0+Δt)を、各々についての学習済モデル(予測用データ)を用いて、高精度に算出することができるとの効果を奏する。
The
干渉判定装置10において、人状態情報生成部112は、非接触で作業者50の二次元または三次元位置を計測するセンサ40(計測装置)による計測結果の履歴に基づき、作業者50の、現時点までの位置の変化を示す情報(例えば、現在位置xh(t0)および現在速度ベクトルvh(t0))を取得する。
In the
前記の構成によれば、干渉判定装置10は、作業者50の計測位置xh(t)の履歴を用いて、作業者50の、現時点までの位置の変化を示す情報を取得する。干渉判定装置10は、作業者50の、現時点までの位置の変化を示す情報として、例えば、現時点における、作業者50の現在位置xh(t0)および現在速度ベクトルvh(t0)を取得する。
According to the above configuration, the
したがって、干渉判定装置10は、作業者50の、現時点までの位置の変化を示す情報を、作業者50の計測位置xh(t)の履歴を用いて高精度に算出し、取得することができるとの効果を奏する。
Therefore, the
干渉判定装置10において、ロボット状態取得部121は、ロボット30の動作を制御するコントローラ20(ロボット制御装置)から制御情報を取得することにより、ロボット30の予測位置xr(t0+Δt)および予測速度ベクトルvr(t0+Δt)を取得する。
In the
前記の構成によれば、干渉判定装置10は、コントローラ20から、ロボット30に対する制御を規定する制御情報を取得することにより、ロボット30の予測位置xr(t0+Δt)および予測速度ベクトルvr(t0+Δt)を取得する。したがって、干渉判定装置10は、前記制御情報から、ロボット30についての、高精度な予測位置xr(t0+Δt)および予測速度ベクトルvr(t0+Δt)を取得することができるとの効果を奏する。前記制御情報は、例えば、コントローラ20がロボット30に対する制御を実行する際に用いる動作プログラム等であり、干渉判定装置10は、動作プログラム等を解析して、ロボット30の予測位置および予測速度ベクトルを算出する。
According to the above-described configuration, the
また、ロボット状態取得部121は、ロボット30(特に、ロボット30の可動部)の位置情報を解析して、ロボット30(特に、ロボット30の可動部)の予測位置および予測速度ベクトルを算出してもよい。例えば、ロボット状態取得部121は、コントローラ20から、ロボット30(特に、ロボット30の可動部)の位置情報を取得し、位置情報の履歴に基づいて、予測位置および予測速度ベクトルを算出してもよい。
Further, the robot
さらに、ロボット状態取得部121は、コントローラ20からロボット30に送信される制御信号から、ロボット30(特に、ロボット30の可動部)の予測位置および予測速度ベクトルを算出してもよい。例えば、ロボット状態取得部121は、コントローラ20からロボット30に送信される制御信号の内容(各関節のモータ制御信号など)を解析して、ロボット30(特に、ロボット30の可動部)の予測位置および予測速度ベクトルを算出してもよい。
Further, the robot
干渉判定装置10は、未来干渉判定部122が、作業者50とロボット30との接触が生じる可能性があると判定した場合に、ロボット30の動作を制御するコントローラ20に対して干渉回避を指示する指示信号を送信する制御指示調整部123(指示部)をさらに備える。
When the future
前記の構成によれば、干渉判定装置10は、作業者50とロボット30との接触が生じる可能性があると判定した場合、ロボット30の動作を制御するコントローラ20に対して干渉回避を指示する指示信号を送信する。したがって、干渉判定装置10は、接触が生じる可能性があると判定すると、コントローラ20に前記指示信号を送信して、接触を回避することができるとの効果を奏する。
According to the above configuration, the
前記指示信号は、単に干渉の可能性を警告するだけの信号(警告信号)であってもよく、接触を回避するためのロボット30の具体的な動作の決定は、コントローラ20に実行させてもよい。また、前記指示信号は、ロボット30の動作内容を指示する信号であってもよく、例えば、ロボット30の動作を停止させ、または、ロボット30に干渉を回避させることを指示する信号であってもよい。さらに、前記指示信号は、ロボット30の動作を詳細に規定する制御指令であってもよく、例えば、動作を停止させるまでの時間、干渉を回避するための動作の方向・時間・距離などの内容を含む信号であってもよい。
The instruction signal may be a signal (warning signal) that merely warns of the possibility of interference, and the
干渉判定装置10において、未来干渉判定部122が、作業者50とロボット30との接触が生じる可能性があると判定した場合に、制御指示調整部123は、コントローラ20に対して、ロボット30の移動速度および軌道の少なくともいずれか一方の調整指示を示す前記指示信号を送信してもよい。
In the
前記の構成によれば、干渉判定装置10は、作業者50とロボット30との接触が生じる可能性があると判定した場合、コントローラ20に対して、ロボット30の移動速度および軌道の少なくとも一方の調整指示を示す前記指示信号を送信する。したがって、干渉判定装置10は、接触が生じる可能性があると判定すると、ロボット30の移動速度および軌道の少なくとも一方を調整させ、接触を回避することができるとの効果を奏する。
According to the above configuration, when it is determined that the
コントローラ20(ロボット制御装置)は、干渉判定装置10から前記指示信号を受信する受信部22と、前記指示信号に基づき、ロボット30の動作を制御するロボット制御部21と、を備えている。
The controller 20 (robot control device) includes a
前記の構成によれば、コントローラ20は、干渉判定装置10から前記指示信号を受信し、受信した前記指示信号に基づいて、ロボット30の動作を制御する。したがって、コントローラ20は、工場等の生産現場において、例えば作業者50等である対象物とロボット30との干渉を回避しつつ、生産効率およびスペース効率の低下を抑制することができるとの効果を奏する。
According to the above configuration, the
制御システム1(ロボット制御システム)は、干渉判定装置10と、コントローラ20と、非接触で作業者50の二次元または三次元位置を計測し、計測結果を干渉判定装置10に送信するセンサ40(計測装置)と、を含んでいる。
The control system 1 (robot control system) measures the two-dimensional or three-dimensional position of the
前記の構成によれば、制御システム1は、干渉判定装置10と、コントローラ20と、計測結果(測域データ)を干渉判定装置10に送信するセンサ40とを含む。したがって、制御システム1は、工場等の生産現場において、例えば作業者50等である対象物とロボット30との干渉を回避しつつ、生産効率およびスペース効率の低下を抑制することができるとの効果を奏する。
According to the above configuration, the
これまでに図2を用いて概要を説明してきた干渉判定装置10等について、次に、その構成の詳細について図1を参照しながら説明し、その後、干渉判定装置10等が実行する処理について、図3から図5を参照しながら説明していく。
The
§2.構成例
(干渉判定装置の詳細)
図1は、干渉判定装置10等の要部構成を示すブロック図である。図1に示すように、干渉判定装置10は、記憶部130以外の機能ブロックとして、人軌道処理部110と、調停部120と、を備えている。
§2. Configuration example (Details of interference determination device)
FIG. 1 is a block diagram showing the main configuration of the
人軌道処理部110は、作業者50の未来の「位置(二次元位置または三次元位置)および速度ベクトル」の予測等を実行し、予測した作業者50の未来の「位置および速度ベクトル」を、調停部120に通知する。人軌道処理部110は、センサ情報取得部111と、人状態情報生成部112と、人軌道予測部113と、学習部114と、識別部115とを含む。
The human
調停部120は、作業者50およびロボット30の各々についての、未来の「位置(二次元位置または三次元位置)および速度ベクトル」を用いて、作業者50とロボット30との未来における干渉の可能性を判定する。調停部120は、作業者50とロボット30とが未来において干渉する可能性があると判定すると、例えば、コントローラ20に、未来における作業者50とロボット30との干渉を回避するように指示する。調停部120は、ロボット状態取得部121と、未来干渉判定部122と、制御指示調整部123とを含む。
The
干渉判定装置10は、上述の各機能ブロックに加えて、判定結果を表示する構成などを備えていてもよいが、記載の簡潔性を担保するため、本実施の形態に直接関係のない構成は、説明およびブロック図から省略している。ただし、実施の実情に則して、干渉判定装置10は、当該省略された構成を備えてもよい。図1に例示した上述の各機能ブロックは、例えば、CPU(central processing unit)等が、ROM(read only memory)、NVRAM(non-Volatile random access memory)等で実現された記憶装置(記憶部130)に記憶されているプログラムを不図示のRAM(random access memory)等に読み出して実行することで実現できる。以下、干渉判定装置10における各機能ブロックについて説明する。
The
(記憶部以外の機能ブロックの詳細)
センサ情報取得部111は、センサ40から、センサ40の計測した「作業者50の時間ごとの二次元位置または三次元位置」を示すデータ(測域データ)を取得し、取得した測域データを、人状態情報生成部112に出力する。図2に例示するセンサ40(1)およびセンサ40(2)のように、センサ40が複数のセンサ40(1)〜(n)(nは2以上の整数)を含む場合、センサ情報取得部111は、複数のセンサ40の各々から取得した測域データを統合する。センサ情報取得部111は、例えば、複数のセンサ40の各々から、複数のセンサ40の各々のセンサ視点からの測域データを取得し、取得した複数の測域データの各々の角度および座標を変換し、複数の測域データを統合する。一例として、センサ情報取得部111は、X軸方向の測域データと、Y軸方向の測域データとを統合して、X−Y平面上の位置データを取得する。センサ情報取得部111は、統合した測域データを、人状態情報生成部112に出力する。
(Details of functional blocks other than storage)
The sensor
人状態情報生成部112は、センサ情報取得部111から取得した測域データを用いて、「作業者50の時間ごとの二次元位置または三次元位置」を算出し、算出した「作業者50の時間ごとの二次元位置または三次元位置」を人状態履歴データ131に格納する。また、人状態情報生成部112は、人状態履歴データ131の格納データと、センサ情報取得部111から取得した測域データを用いて算出した「作業者50の時間ごとの二次元位置または三次元位置」とから、「作業者50の時間ごとの速度ベクトル」を算出する。人状態情報生成部112は、算出した「作業者50の時間ごとの速度ベクトル」を人状態履歴データ131に格納する。
The human state
つまり、人状態情報生成部112は、センサ40から取得した測域データを用いて、「作業者50の時間ごとの、位置および速度ベクトル」を算出し(取得し)、取得した「作業者50の時間ごとの、位置および速度ベクトル」を人軌道予測部113に出力する。以下の説明においては、「作業者50の、位置および速度ベクトル」を「作業者50の状態」とも称し、「作業者50の時間ごとの、位置(および速度ベクトル)」の履歴を「作業者50の状態履歴(動作履歴)」とも称する。
That is, the human state
ここで、センサ40からの測域データには、例えば、作業者50以外の対象についての計測結果等がノイズとして含まれている。そこで、人状態情報生成部112は、測域データからノイズを除去して、「作業者50の時間ごとの位置」を算出する。
Here, the range data from the
人状態情報生成部112は、例えば、「作業者50の時間ごとの位置(二次元位置または三次元位置)」として、「時間ごとの、作業者50の重心の位置(重心位置)」を算出する。「重心」は「体幹」と言い換えてもよい。すなわち、人状態情報生成部112が人軌道予測部113に出力し、人状態履歴データ131に格納する「作業者50の時間ごとの位置」は、「時間ごとの、作業者50の重心位置」である。同様に、人状態情報生成部112が人軌道予測部113に出力し、人状態履歴データ131に格納する「作業者50の時間ごとの速度ベクトル」は、「時間ごとの、作業者50の重心の速度ベクトル」である。
The human state
人状態情報生成部112による重心位置の算出方法について、詳細は図9を用いて後述するが、人状態情報生成部112は、測域データが示す作業者50の存在位置情報(作業者50の存在を示す点群)から、作業者50の重心の位置を算出する。
The method of calculating the position of the center of gravity by the human state
人状態情報生成部112は、識別部115から、複数の作業者50の各々を識別する情報(識別情報)を取得し、取得した識別情報を、「作業者50の時間ごとの、位置および速度ベクトル」と組み合わせて、人状態履歴データ131に格納する。人状態情報生成部112は、複数の作業者50の各々について、その「時間ごとの、位置および速度ベクトル」を、人状態履歴データ131に格納する。つまり、人状態情報生成部112は、複数の作業者50の各々の「時間ごとの、位置および速度ベクトル」の履歴を人状態履歴データ131に格納する。
The human state
また、人状態情報生成部112は、識別部115から取得する作業者50の識別情報と、「現在の、作業者50の位置および速度ベクトル」とから、複数の作業者50の各々の「現在の、位置および速度ベクトル」を生成する。人状態情報生成部112は、生成した、複数の作業者50の各々の「現在の、位置および速度ベクトル」を、人軌道予測部113に通知する。
Further, the human state
人軌道予測部113は、人状態情報生成部112から通知される「現在の、作業者50の位置および速度ベクトル」を、学習部114が生成した学習済モデル(予測用データ)に入力して、「未来の、作業者50の位置および速度ベクトル」を予測する。人軌道予測部113は、予測した「未来の、作業者50の位置および速度ベクトル」を、調停部120(特に、未来干渉判定部122)に通知する。
The human
ここで、人軌道予測部113は、例えば、人状態情報生成部112から通知される「現在の、作業者50の重心の位置および速度ベクトル」を用いて、「未来の、作業者50の重心の位置および速度ベクトル」を予測する。
Here, the human
言い換えれば、人軌道予測部113は、現在までの作業者50の重心位置を示す情報から、作業者50の未来の(つまり、将来の)人軌道(重心位置の移動を示す軌道)を予測し、予測した未来の人軌道を調停部120(特に、未来干渉判定部122)に通知する。
In other words, the human
特に、人軌道予測部113は、複数の作業者50の各々の「現在の、位置および速度ベクトル」から、複数の作業者50の各々の予測用データ(学習済モデル)を用いて、複数の作業者50の各々の「未来の、位置および速度ベクトル」を予測する。人軌道予測部113は、予測した、複数の作業者50の各々の「未来の、位置および速度ベクトル」を、調停部120(特に、未来干渉判定部122)に通知する。
In particular, the human
人軌道予測部113は、学習部114による作業者50の状態履歴の学習の結果を用いて、「現在の、作業者50の重心の位置および速度ベクトル」から、「未来の、作業者50の重心の位置および速度ベクトル」を予測する。
The human
学習部114は、時刻ごとの(特に、現在の)、作業者50の位置(特に、重心位置)および速度ベクトルを入力とし、時刻ごとの、作業者50の加速度を出力とする学習用データについて、学習を行う。
The
ただし、学習用データが、「入力;時刻ごとの、作業者50の位置および速度ベクトル」と、「出力:時刻ごとの、作業者50の加速度」との組み合わせであることは必須ではない。詳細は図15を用いて後述するが、学習用データは、時刻ごとの(特に、現在の)、作業者50の位置および速度ベクトルの少なくともいずれか一方を入力とし、作業者50の加速度またはその後の位置を出力とするものであればよい。
However, it is not essential that the learning data is a combination of “input; position and velocity vector of
学習部114は、学習によって、予測用データ(特に、後述する「予測用フィルタ前データ」)を生成する。学習部114は、例えば、DBT(Deep Binary Tree)と呼ばれる学習アルゴリズムを用いた学習によって、学習済モデルとして、予測用データを生成する。言い換えれば、学習部114は、学習済モデルとして予測用データを生成する。人軌道予測部113は、この予測用データを用いて、「現在の、作業者50の重心の位置および速度ベクトル」から、「未来の、作業者50の重心の位置および速度ベクトル」を予測する。
The
学習部114は、例えばバッチ学習を行う場合、必要十分な量の作業者50の状態履歴(動作履歴)が蓄積されてから、学習を開始する。必要十分な量の作業者50の状態履歴(動作履歴)が蓄積された後は、学習部114は、時々刻々と最新のものに更新される作業者50の状態履歴(動作履歴)を用いて生成した最新の学習用データを学習して、時々刻々と学習済モデル(予測用データ)を更新する。作業者50の動作は時々刻々と変化するため、或る時点から所定時間後の「作業者50の、位置および速度ベクトル」を高精度に予測するには、その或る時点の最新の状態履歴を用いて生成した最新の学習用データを学習して得た学習済モデルを用いるのが望ましい。
For example, when performing the batch learning, the
学習部114がバッチ学習を行うことは必須ではなく、学習部114は、オンライン学習を行ってもよい。また、学習部114は、学習の方法を、バッチ学習からオンライン学習に切り替えてもよい。例えば、制御システム1の試験運転時に蓄積し、または、実運用の開始から所定期間の間に蓄積した作業者50の状態履歴(動作履歴)について、学習部114は、バッチ学習を行ってもよい。そして、実運用を開始した後、または、「実運用の開始後、バッチ学習により学習済モデルを生成した」後は、学習部114は、オンライン学習によって時々刻々と学習済モデル(予測用データ)を更新してもよい。
It is not essential for the
学習部114は、人状態履歴データ131に格納された、複数の作業者50の各々の状態履歴(動作履歴)から、複数の作業者50の各々の学習用データを生成し、この「複数の作業者50の各々の学習用データ」を学習する。学習部114は、複数の作業者50の各々の学習用データを学習して、複数の作業者50の各々の予測用データ(学習済モデル)を生成し、つまり、複数の作業者50の各々について、「未来の、位置および速度ベクトル」を予測するための学習済モデルを生成する。
The
識別部115は、複数の作業者50の各々を識別する情報(識別情報)を取得し、取得した識別情報を人状態情報生成部112に通知する。識別部115は、例えば、複数の作業者50の各々が携帯するIDカードから識別情報を取得してもよい。また、識別部115は、例えば、複数の作業者50の各々について顔認証等を実行して、識別情報を取得してもよい。
The
ロボット状態取得部121は、未来(つまり、所定時間後)における「ロボット30の、位置および速度ベクトル」を取得し、取得した未来における「ロボット30の、位置および速度ベクトル」を、未来干渉判定部122に通知する。例えば、ロボット状態取得部121は、コントローラ20(特に、アームタスク23)から、コントローラ20がロボット30を制御する際に用いる制御情報(ロボット30の動作を規定する「目標軌道および動作プログラム」などの情報)を取得する。ロボット状態取得部121は、取得した制御情報を解析して、未来における「ロボット30の、位置および速度ベクトル」を取得する。
The robot
未来干渉判定部122は、未来(つまり、所定時間後)における「作業者50の、位置および速度ベクトル」と、未来における「ロボット30の、位置および速度ベクトル」とを用いて、作業者50とロボット30との接触が生じる可能性があるかを判定する。特に、未来干渉判定部122は、時々刻々に、未来における「作業者50の、位置および速度ベクトル」と、未来における「ロボット30の、位置および速度ベクトル」とを用いて、作業者50とロボット30との接触が生じる可能性があるかを判定する。未来干渉判定部122は、判定結果を制御指示調整部123に通知する。
The future
前述の通り、人軌道予測部113は、現時点(t=t0)で、現時点から所定時間(Δt)が経過した時点(t=t0+Δt)における「作業者50の、位置および速度ベクトル」を予測し、予測結果を未来干渉判定部122に通知する。また、ロボット状態取得部121は、現時点(t=t0)で、現時点から所定時間(Δt)が経過した時点(t=t0+Δt)における「ロボット30の、位置および速度ベクトル」を取得し、取得した情報を未来干渉判定部122に通知する。
As described above, the human
「t0+Δt」時点から、ロボット30の移動が停止する時点までのいずれかの時点において、作業者50の推定位置とロボット30の推定位置との距離が所定値以内となると、未来干渉判定部122は、作業者50とロボット30とが接触し得ると判定する。作業者50およびロボット30の各々の推定位置の算出方法について、詳細は図7を用いて後述する。
If the distance between the estimated position of the
制御指示調整部123は、未来干渉判定部122によって「作業者50とロボット30とが接触し得る」と判定されると、作業者50とロボット30との干渉を回避するよう指示する指示信号を、コントローラ20に送信する。制御指示調整部123は、例えば、「ロボット30の動作を停止させずに、ロボット30の移動速度および軌道の少なくとも一方を調整するよう指示する指示信号」を、または、「ロボット30の動作を停止するよう指示する指示信号」を、送信する。
When the future
(記憶部の詳細)
記憶部130は、干渉判定装置10が使用する各種データを格納する記憶装置である。なお、記憶部130は、干渉判定装置10が実行する(1)制御プログラム、(2)OSプログラム、(3)干渉判定装置10が有する各種機能を実行するためのアプリケーションプログラム、および、(4)該アプリケーションプログラムを実行するときに読み出す各種データを非一時的に記憶してもよい。上記の(1)〜(4)のデータは、例えば、ROM(read only memory)、フラッシュメモリ、EPROM(Erasable Programmable ROM)、EEPROM(登録商標)(Electrically EPROM)、HDD(Hard Disc Drive)等の不揮発性記憶装置に記憶される。干渉判定装置10は、図示しない一時記憶部を備えていてもよい。一時記憶部は、干渉判定装置10が実行する各種処理の過程で、演算に使用するデータおよび演算結果等を一時的に記憶するいわゆるワーキングメモリであり、RAM(Random Access Memory)等の揮発性記憶装置で構成される。どのデータをどの記憶装置に記憶するのかについては、干渉判定装置10の使用目的、利便性、コスト、または、物理的な制約等から適宜決定される。記憶部130はさらに人状態履歴データ131を格納している。
(Details of storage section)
The
人状態履歴データ131には、「作業者50の時間ごとの、位置および速度ベクトル」(の履歴)が格納され、特に、複数の作業者50の各々の「時間ごとの、位置および速度ベクトル」(の履歴)が格納される。
The “history position and velocity vector of the
(コントローラの詳細)
コントローラ20は、ロボット30の動作を制御するロボット制御装置であり、例えば、後述するアームタスク23に格納されている目標軌道および動作プログラムなどのデータに従って、ロボット30の動作を制御する。また、コントローラ20は、干渉判定装置10からの指示信号に従って、ロボット30の動作を制御する。すなわち、図1に例示するように、コントローラ20は、ロボット制御部21と、受信部22と、アームタスク23とを備えている。受信部22は、干渉判定装置10から指示信号を受信し、受信した指示信号をロボット制御部21に通知する。アームタスク23は、ロボット30の動作を規定する「目標軌道および動作プログラム」などの情報を格納している。ロボット制御部21は、受信部22から通知された指示信号と、アームタスク23に格納されている「目標軌道および動作プログラム」などの情報とに基づき、ロボット30の動作を制御する。
(Details of controller)
The
§3.動作例
図3は、制御システム1において実行される処理の概要を示すフロー図である。図3に示すように、制御システム1においては、先ず、センサ情報取得部111によってセンサ情報統合処理(S110)が実行され、次に、人状態情報生成部112によって人存在領域計算処理(S120)が実行される。人軌道予測部113によって人軌道計算処理(S130)が実行されると、未来干渉判定部122は、人軌道計算処理の結果等を用いて、未来干渉判定処理(S140)を実行する。未来干渉判定部122による未来干渉判定処理の結果、作業者50とロボット30とが未来において干渉する可能性があると判定されると、制御指示調整部123によって制御指示調整処理(S150)が実行される。そして、制御指示調整処理の結果等を用いて、コントローラ20はロボット30を制御し、例えば、ロボット30のアームを制御する処理であるアームコントロール(S160)を実行する。
§3. Operation Example FIG. 3 is a flowchart showing an outline of processing executed in the
図4は、図3のフロー図における人軌道計算処理までの詳細を示すフロー図である。図4に示すように、図3のセンサ情報統合処理(S110)は、センサ40から、センサ40の計測した「作業者50の、時間ごとの(特に、現時点の)二次元位置または三次元位置」を示す測域データを取得する処理であるセンサ情報取得処理(S111)を含む。
FIG. 4 is a flowchart showing details up to the human trajectory calculation process in the flowchart of FIG. As shown in FIG. 4, the sensor information integration process (S110) of FIG. 3 is performed by the
前述の通り、センサ40が複数のセンサ(例えば、センサ40(1)およびセンサ40(2))を含む場合、センサ情報取得部111は、複数のセンサ40の各々から、複数のセンサ40の各々の測域データを取得する。そして、センサ情報取得部111は、取得した複数の測域データを統合する(測域データ統合処理、S112)。
As described above, when the
図4に示すように、図3の人存在領域計算処理は、人推定処理(S121)、人重心計算処理(S122)、および、人重心バッファリング処理(S123)を含む。 As shown in FIG. 4, the person existing area calculation process of FIG. 3 includes a person estimation process (S121), a person centroid calculation process (S122), and a person centroid buffering process (S123).
先ず、人状態情報生成部112は、センサ情報取得部111から取得した測域データについて、ノイズ(作業者50以外の対象についての計測結果等)を除去し、測域データから作業者50の存在を示すデータだけを抽出する(人推定処理)。人状態情報生成部112は、例えば、人状態履歴データ131に格納された「作業者50の時間ごとの、位置」(の履歴)を用いて、センサ情報取得部111から取得した測域データ(作業者50の、現時点の位置を示すデータ)からノイズを除去する。
First, the human state
人状態情報生成部112は、ノイズ除去した測域データから、つまり、作業者50の存在を示すデータ(点群)から、作業者50の現時点の重心位置を計算する。例えば、人状態情報生成部112は、作業者50の存在を示す点群の平均から、作業者50の現時点の重心位置を算出する(人重心計算処理)。
The human state
人状態情報生成部112は、算出した作業者50の現時点の重心位置を、現在時刻と共に人状態履歴データ131に格納する(人重心バッファリング処理)。また、人状態情報生成部112は、人状態履歴データ131に格納済の「作業者50の、時間ごとの位置」(の履歴)と、作業者50の現時点の位置とから、作業者50の現時点の速度を算出する。人状態情報生成部112は、算出した「作業者50の、現時点の速度」を、「作業者50の、現時点の位置(重心位置)」および現在時刻と共に、人状態履歴データ131に格納する。
The human state
図3の人軌道計算処理は、図4に示すように、人軌道学習処理(S131)、学習結果を用いた人軌道予測処理(S132)、および、調停部への予測結果出力処理(S133)を含んでいる。 As shown in FIG. 4, the human trajectory calculation process of FIG. 3 is a human trajectory learning process (S131), a human trajectory prediction process using the learning result (S132), and a prediction result output process to the arbitration unit (S133). Is included.
人軌道学習処理において、学習部114は、時刻ごとの(特に、現在の)、作業者50の位置(特に、重心位置)および速度ベクトルを入力とし、時刻ごとの、作業者50の加速度を出力とする学習用データについて、学習を行う。学習部114は、学習によって、学習済モデルとして予測用データを生成する。
In the human trajectory learning process, the
人軌道予測処理において、人軌道予測部113は、作業者50の「現在の、位置および速度ベクトル」を、予測用データ(学習済モデル)に入力して、「未来の、作業者50の位置および速度ベクトル」を予測する。そして、人軌道予測部113は、人軌道予測処理の結果を、つまり、予測した「未来の、作業者50の位置および速度ベクトル」を、調停部120に通知する(S133)。
In the human trajectory predicting process, the human
図5は、図3のフロー図における未来干渉判定処理からアームコントロール処理までの詳細を示すフロー図である。図3の未来干渉判定処理は、図5に示すように、ロボット軌道取得処理(S141)および未来の安全距離計算処理(S143)等を含んでいる。 FIG. 5 is a flowchart showing details from the future interference determination processing to the arm control processing in the flowchart of FIG. As shown in FIG. 5, the future interference determination process of FIG. 3 includes a robot trajectory acquisition process (S141) and a future safe distance calculation process (S143).
ロボット軌道取得処理(S141)において、ロボット状態取得部121は、未来における「ロボット30の、位置および速度ベクトル」を取得し、取得した未来における「ロボット30の、位置および速度ベクトル」を、未来干渉判定部122に通知する。例えば、ロボット状態取得部121は、アームタスク23から、ロボット30に係る制御情報を取得し、取得した制御情報を解析して、未来(つまり、所定時間後)における「ロボット30の、位置および速度ベクトル」を取得する。
In the robot trajectory acquisition process (S141), the robot
未来干渉判定部122は、人軌道予測の結果がバッファリングされているか、つまり、人軌道予測部113から「未来の、作業者50の位置および速度ベクトル」が通知されているか、を判定する(S142)。人軌道予測部113から「未来の、作業者50の位置および速度ベクトル」が通知されていない場合(S142でfalse)、未来干渉判定部122は未来の安全距離計算処理を実行ができず、その旨を、制御指示調整部123を介してコントローラ20に通知する。
The future
人軌道予測部113から「未来の、作業者50の位置および速度ベクトル」が通知されている場合(S142でtrue)、未来干渉判定部122は、未来の安全距離計算処理(S143)を実行する。例えば、未来干渉判定部122は、作業者50およびロボット30の各々の未来における速度ベクトルにより、未来における安全距離を算出する。また、作業者50およびロボット30の各々の未来における位置により、未来における分離距離を算出する。未来干渉判定部122は、算出した未来における安全距離と、未来における分離距離と比較し、未来において安全距離が保たれるかを、つまり、未来における分離距離が未来における安全距離よりも大きいかを、判定する(S144)。
When the “future position and velocity vector of the
未来において安全距離が保たれる場合(S144でtrue)、未来干渉判定部122は、制御情報に従って動作するロボット30の動作を修正する必要はないと判定し、その旨を、制御指示調整部123を介してコントローラ20に通知する。未来において安全距離が保たれない場合(S144でfalse)、つまり、「作業者50とロボット30とが接触し得る」と判定すると、未来干渉判定部122は、「作業者50とロボット30とが接触し得る」との判定結果を、制御指示調整部123に通知する。
When the safe distance is maintained in the future (true in S144), the future
「作業者50とロボット30とが接触し得る」との判定結果を未来干渉判定部122から通知されると、制御指示調整部123は、安全軌道生成処理(S151)を実行する。例えば、制御指示調整部123は、未来における安全距離と、未来における分離距離とを比較して、ロボット30を停止させる指示信号を、または、ロボット30の速度および軌道の少なくとも一方を調整させる指示信号を、コントローラ20に送信する。
When the future
コントローラ20(特に、ロボット制御部21)は、ロボット30(例えば、ロボット30のアーム)の動作を制御するアームコントロール処理(S160)を実行する。受信部22が、干渉判定装置10から、未来の安全距離計算処理を実行していないとの報告、または、未来において安全距離が保たれるとの報告を受信すると、ロボット制御部21は、アームタスク23に格納されている制御情報に基づき、ロボット30を制御する。受信部22が、干渉判定装置10から、指示信号と作業者50とロボット30とが接触し得るとの報告とを受信すると、ロボット制御部21は、アームタスク23に格納されている制御情報に従ったロボット30に対する制御を、指示信号に従って修正する。
The controller 20 (particularly, the robot control unit 21) executes an arm control process (S160) that controls the operation of the robot 30 (for example, the arm of the robot 30). When the
これまでに図3、図4、および図5を参照しながら説明してきた干渉判定装置10が実行する処理(言い換えれば、干渉判定装置10が実行するロボット干渉判定方法)は、以下のように整理することができる。すなわち、干渉判定装置10が実行する制御方法(ロボット干渉判定方法)は、所定の領域内に存在する作業者50(対象物)の、現時点(t0)までの位置の変化を示す情報(例えば、現時点における現在位置xh(t0)および現在速度ベクトルvh(t0))を取得する対象物状態取得ステップ(人存在領域計算処理、S120)と、ロボット30(ロボットにおける所定の可動部)の所定時間Δt後における予測位置xr(t0+Δt)および予測速度ベクトルvr(t0+Δt)を取得するロボット状態取得ステップ(ロボット軌道取得処理、S141)と、作業者50の現時点までの位置の変化を示す情報に基づいて、所定時間Δt後における作業者50の予測位置xh(t0+Δt)および予測速度ベクトルvh(t0+Δt)を算出する予測ステップ(人軌道予測処理、S132)と、作業者50の予測位置xh(t0+Δt)および予測速度ベクトルvh(t0+Δt)と、ロボット30の予測位置xr(t0+Δt)および予測速度ベクトルvr(t0+Δt)とに基づき、作業者50とロボット30との接触が生じる可能性があるか否かをリアルタイムで判定する干渉判定ステップ(S144)と、を含んでいる。
The processing executed by the interference determination device 10 (in other words, the robot interference determination method executed by the interference determination device 10) described so far with reference to FIGS. 3, 4, and 5 is summarized as follows. can do. That is, the control method (robot interference determination method) executed by the
前記の方法によれば、前記ロボット干渉判定方法は、「作業者50の、現時点までの位置の変化を示す情報」を取得し、この「現時点までの位置の変化を示す情報」を用いて、所定時間Δt後における作業者50の予測位置xh(t0+Δt)および予測速度ベクトルvh(t0+Δt)を予測する(算出する)。「作業者50の、現時点までの位置の変化を示す情報」は、例えば、作業者50の現在位置xh(t0)および現在速度ベクトルvh(t0)である。また、図15の表において入力として示す各種の情報も、各々、前記対象物の、現時点までの位置の変化を示す情報の例である。
According to the method, the robot interference determination method acquires “information indicating a change in position of the
そして、前記ロボット干渉判定方法は、算出した作業者50の予測位置xh(t0+Δt)および予測速度ベクトルvh(t0+Δt)と、ロボット30の予測位置xr(t0+Δt)および予測速度ベクトルvr(t0+Δt)とに基づき、作業者50とロボット30との接触が生じる可能性があるか否かをリアルタイムで判定する。
Then, in the robot interference determination method, the predicted position x h (t 0 +Δt) and the predicted velocity vector v h (t 0 +Δt) of the calculated
前記ロボット干渉判定方法は、安全柵を用いずにロボット30と作業者50との干渉を回避することができるので、生産現場等の省スペース化を実現することができる。
Since the robot interference determination method can avoid the interference between the
また、前記ロボット干渉判定方法は、ロボット30と作業者50との、所定時間Δt(つまり、未来)における干渉の可能性を現時点t0で判定するので、干渉の可能性があると判定した場合にも、干渉回避のための処理を現時点t0で余裕を持って実行できる。
Further, in the robot interference determination method, since the possibility of interference between the
ここで、現時点t0での干渉の可能性を現時点t0で判定する装置が、現時点t0での干渉の可能性があると判定した場合、現時点t0での干渉を回避するためには、ロボット30の急減速および急停止等の動作が必要となり、どうしても生産効率が低下する。
Here, if the apparatus for determining the possibility of interference at the moment t 0 at the moment t 0 is, it is determined that there is a possibility of interference at the present time t 0, in order to avoid interference at the present time t 0 is Therefore, operations such as sudden deceleration and sudden stop of the
これに対し、前記ロボット干渉判定方法は、未来における干渉の可能性を現時点t0で判定するので、現時点t0での干渉の可能性を現時点t0で判定する場合に比べて、干渉を回避するために必要なロボット30の動作を、円滑かつ必要最小限のものにすることができる。つまり、前記ロボット干渉判定方法は、ロボット30と作業者50との干渉を回避しつつ、ロボット30の急減速および急停止等による生産効率の低下を抑制することができる。
On the other hand, in the robot interference determination method, the possibility of interference in the future is determined at the present time t 0 , and therefore the interference is avoided as compared with the case of determining the possibility of interference at the present time t 0 at the present time t 0. Therefore, the operation of the
したがって、前記ロボット干渉判定方法は、工場等の生産現場において、例えば作業者50等である人(対象物)とロボット30との干渉を回避しつつ、生産効率およびスペース効率の低下を抑制することができるとの効果を奏する。
Therefore, the robot interference determination method suppresses a decrease in production efficiency and space efficiency while avoiding interference between the
(学習処理および人軌道予測処理について)
図6は、干渉判定装置10が実行する学習処理と、学習処理の結果を利用した人軌道予測処理とについて説明する図である。具体的には、図6の(A)は、干渉判定装置10(特に、学習部114)が実行する学習処理を、図6の(B)は、干渉判定装置10(特に、人軌道予測部113)が実行する人軌道予測処理を、示している。
(About learning process and human trajectory prediction process)
FIG. 6 is a diagram illustrating a learning process executed by the
(学習処理について)
学習部114は、人状態履歴データ131に格納された「作業者50の時間ごとの、位置(重心位置)」(の履歴)を用いて、以下の式により、「作業者50の時間ごとの、速度ベクトルおよび加速度ベクトル」を計算する。すなわち、「xt」を「時刻tにおける、作業者50の位置(重心位置)」とし、「vt」を「時刻tにおける、作業者50の速度ベクトル」とし、「Δt」を「微小時間」として、vtは、
(About learning process)
The
と定義する。 It is defined as.
また、「時刻tにおける、作業者50の加速度ベクトル」を示す「at」は、
Further, “at” indicating “the acceleration vector of the
と定義する。 It is defined as.
学習部114は、上述の数式1および2を用いて計算した、「時刻tにおける、作業者50の速度ベクトルvtおよび加速度ベクトルat」と、「時刻tにおける、作業者50の位置(重心位置)xt」について、図6の(A)に示す学習を行う。すなわち、学習部114は、時刻tにおける位置xtおよび時刻tにおける速度ベクトルvtの入力に対し時刻tの加速度ベクトルatの出力を学習する。学習部114は、例えば、DBTと呼ばれる学習アルゴリズムを用いた学習の結果として、予測用データを生成する。
(人軌道予測処理について)
図6の(B)に示すように、人軌道予測部113は、例えばDBTを用いた学習により学習部114が生成した学習済モデル(予測用データ)を用いて、「時刻tにおける、作業者50の加速度ベクトルの予測値apt」を取得する。すなわち、人軌道予測部113は、予測用データ(学習済モデル)に、「時刻tにおける、作業者50の位置xt」および「時刻tにおける、作業者50の速度ベクトルvt」を入力して、「時刻tにおける、作業者50の加速度ベクトルの予測値apt」を取得する(第1予測処理)。そして、人軌道予測部113は、「時刻t+Δtにおける、作業者50の速度ベクトルvt+Δt」および「時刻t+Δtにおける、作業者50の位置xt+Δt」の各々を以下の式により計算する(第2予測処理)。すなわち、「xt」を「時刻tにおける、作業者50の位置(重心位置)」とし、「vt」を「時刻tにおける、作業者50の速度ベクトル」とし、「apt」を「時刻tにおける予測加速度ベクトル」とし、「Δt」を「微小時間」として、vt+Δtは、
(About human trajectory prediction processing)
As shown in (B) of FIG. 6, the human
として計算される。 Calculated as
また、「時刻t+Δtにおける、作業者50の位置」を示す「xt+Δt」は、
Further, “x t+Δt ” indicating “the position of the
として計算される。 Calculated as
人軌道予測部113は、第1予測処理および第2予測処理を繰り返すことによって、人軌道予測を、つまり、作業者50の位置(重心位置)の変化の軌跡の予測を行う。
The human
(未来干渉判定処理について)
図7は、干渉判定装置10が実行する未来干渉判定処理の一例を説明する図である。干渉判定装置10は、例えば、ISO/TC15066の5.5.4.2.3に規定される「安全距離Sp」との概念を用いて、未来干渉判定処理を実行する。安全距離Spの概念について、以下に概要を説明する。
(About future interference determination processing)
FIG. 7 is a diagram illustrating an example of future interference determination processing executed by the
(安全距離Spについて)
或る時点(時刻t0)において、センサ等により、その或る時点における「人の、速度ベクトル(vh(t0))および位置(xh(t0))」と、その或る時点における「ロボット(ロボット可動部)の、速度ベクトル(vr(t0))および位置(xr(t0))」とを取得する。時刻t0時点における、ロボットの速度ベクトルvr(t0)および位置xr(t0)は、ロボットの制御情報を用いて算出してもよい。
(About safety distance Sp)
At a certain time (time t 0 ), a sensor or the like is used to detect “the person's velocity vector (v h (t 0 )) and position (x h (t 0 ))” at that certain time and that certain time. It acquires the "robot (the robot movable portion), the velocity vector (v r (t 0)) and the position (x r (t 0))" in. The velocity vector v r (t 0 ) and the position x r (t 0 ) of the robot at time t 0 may be calculated using the control information of the robot.
xh(t0)とxr(t0)との差により、その或る時点の「人とロボットとの分離距離(Dr(t0))」を算出する。また、vh(t0)とvr(t0)とにより、以下に示す安全距離計算公式を用いて、その或る時点における「人に接触する前にロボットが停止するための、所要の最短距離(最短安全許容距離(Sp(t0)))」を算出する。そして、Dr(t0)とSp(t0)とを比較し、「Dr(t0)がSp(t0)よりも大きい」場合、人とロボットとは干渉しないと判定し、「Dr(t0)がSp(t0)以下である」場合、干渉すると判定をする。 The “separation distance (Dr(t 0 )) between the person and the robot” at a certain point of time is calculated from the difference between x h (t 0 ) and x r (t 0 ). Further, by using v h (t 0 ) and v r (t 0 ), the safety distance calculation formula shown below is used, and at a certain point in time, “the required time for the robot to stop before touching a person The shortest distance (shortest safe allowable distance (Sp(t 0 ))) is calculated. Then, Dr(t 0 ) is compared with Sp(t 0 ), and if “Dr(t 0 ) is larger than Sp(t 0 )”, it is determined that a human and a robot do not interfere with each other, and “Dr( If t 0 ) is Sp(t 0 ) or less”, it is determined that interference occurs.
ISO/TC15066の5.5.4.2.3において、安全距離Spは、以下の安全距離計算公式により定義される。すなわち、或る時点(時刻t0)における安全距離Sp(t0)は、「Sp(t0)=Sh+Sr+Ss+c+Zd+Zr」と規定されている。以下の説明において、或る時点(時刻t0)は、「センサ(例えば、センサ40)が人(例えば、作業者50)を検知した時間(時刻)」とも言い換えることができる。また、以下の説明において、時刻t0からTr経過した「時刻t0+Tr」において、ロボット(例えば、ロボット30)が停止動作を開始し始めるものとし、ロボットが停止するのはさらにTsが経過した「時刻t0+Tr+Ts」であるものとする。また、ロボットが停止動作を開始し始めてから、ロボットが停止するまでのロボットの速度ベクトルを、つまり、減速動作中のロボットの速度ベクトルを、「vs(t)」と表わすものとする。減速動作中のロボットの速度ベクトルvs(t)は、ロボットの制御情報を用いて算出してもよい。 In 5.5.4.2.3 of ISO/TC15066, the safety distance Sp is defined by the following safety distance calculation formula. In other words, safety distance Sp (t 0) at a certain time point (time t 0) is defined as "Sp (t 0) = S h + S r + S s + c + Z d + Z r ". In the following description, a certain time point (time t 0 ) can also be referred to as “a time (time point) at which the sensor (for example, the sensor 40) detects a person (for example, the worker 50)”. In the following description, the "time t 0 + T r" has elapsed T r from the time t 0, the robot (e.g., robot 30) is assumed to start to start the stop operation, the robot to stop further T s It is assumed that is the time “time t 0 +T r +T s ”. In addition, the velocity vector of the robot from the start of the stop operation of the robot to the stop of the robot, that is, the velocity vector of the robot during the deceleration operation is represented as “v s (t)”. The velocity vector v s (t) of the robot during the deceleration operation may be calculated using the control information of the robot.
図7に示すように、上述の安全距離計算公式において、「Sh」は、「現時点(時刻t0)からロボットの移動が停止する時点(t0+Tr+Ts)までに、人が移動する距離」を示しており、つまり、 As shown in FIG. 7, in the above safety distance calculation formula, “S h ”means that “the person moves from the current time (time t 0 ) to the time when the robot stops moving (t 0 +T r +T s ). "Distance to do", that is,
である。 Is.
「Sr」は、「現時点(時刻t0)からロボットが停止動作を開始する時点t0+Trまでに、ロボットが移動する距離」を示しており、つまり、 “S r ”denotes “the distance the robot moves from the current time (time t 0 ) to the time t 0 +T r at which the robot starts the stopping operation”, that is,
である。 Is.
「Ss」は、「ロボットが停止動作を開始する時点t0+Trからロボットの移動が停止する時点t0+Tr+Tsまでに、ロボットが移動する距離」を示しており、つまり、 “S s ”indicates “the distance the robot moves from the time t 0 +T r at which the robot starts the stop operation to the time t 0 +T r +T s at which the robot stops moving”, that is,
である。 Is.
また、上述の安全距離計算公式において、「c」は、「Depth penetration factor」と呼ばれる、人の中心(重心)等の検知位置から、その人の腕などの部分までの距離を示している。「Zd」は「人体を検知するセンサの測定誤差」を示しており、「Zr」は「ロボット制御における制御位置の誤差」を示している。 Further, in the above safety distance calculation formula, “c” indicates the distance from the detection position such as the center (center of gravity) of a person, which is called “Depth penetration factor”, to a part such as the arm of the person. “Z d ”denotes “measurement error of sensor for detecting human body”, and “Z r ”denotes “error of control position in robot control”.
安全距離Spの概念において、或る時点(時刻t0)の分離距離Dr(t0)と、或る時点における、人およびロボットの各々の速度ベクトル(vh(t0)およびvr(t0))から算出される最短安全許容距離Sp(t0)との大小が判定される。時刻t0における分離距離Dr(t0)が、最短安全許容距離Sp(t0)よりも大きいと、人とロボットとは干渉しないと判定され、Dr(t0)がSp(t0)以下であると、干渉すると判定される。 In the concept of the safety distance Sp, the separation distance Dr(t 0 ) at a certain time (time t 0 ) and the velocity vectors (v h (t 0 ) and v r (t) of the human and the robot at a certain time, respectively. 0 )) and the size of the shortest safe allowable distance Sp(t 0 ) are determined. If the separation distance Dr(t 0 ) at the time t 0 is larger than the shortest safe allowable distance Sp(t 0 ), it is determined that the human and the robot do not interfere with each other, and Dr(t 0 ) is equal to or less than Sp(t 0 ). Then, it is determined that the interference occurs.
図7に例示される通り、分離距離Dr(t0)と最短安全許容距離Sp(t0)とが等しい場合、「ロボットの移動が停止する時点(t0+Tr+Ts)における、人の位置(推定位置)」と、「ロボットの移動が停止する時点(t0+Tr+Ts)における、ロボットの位置(推定位置)」との差(距離)は、「c+Zd+Zr」に一致することになる。図7に示すように、「ロボットの移動が停止する時点(t0+Tr+Ts)における、人の推定位置」は、「人が、現時点(時刻t0)の位置からShだけ移動した位置」である。また、「ロボットの移動が停止する時点における、ロボットの推定位置」は、「ロボットが、現時点(時刻t0)の位置からSr+Ssだけ移動した位置」である。 As illustrated in FIG. 7, when the separation distance Dr(t 0 ) is equal to the shortest safety permissible distance Sp(t 0 ), “the movement of the robot is stopped (t 0 +T r +T s ) The difference (distance) between the "position (estimated position)" and the "position (estimated position) of the robot at the time (t 0 +T r +T s ) at which the robot stops moving" matches "c+Z d +Z r ". Will be done. As shown in FIG. 7, “the estimated position of the person at the time (t 0 +T r +T s ) at which the movement of the robot stops” is “the person has moved Sh from the current position (time t 0 )”. Position". In addition, the “estimated position of the robot at the time when the movement of the robot stops” is the “position where the robot moves by S r +S s from the position at the present time (time t 0 )”.
ここで、c、Zd、Zrの各々を予め求めておくことにより、「c+Zd+Zr」は所定値として扱うことができる。つまり、安全距離Spの概念は、ロボットの移動停止時点(t0+Tr+Ts)における、人の推定位置とロボットの推定位置との距離が、所定値(c+Zd+Zr)以下(以内)となると、人とロボットとが干渉すると判定するものと理解することができる。 Here, “c+Z d +Z r ”can be treated as a predetermined value by previously obtaining each of c, Z d , and Z r . That is, the concept of the safety distance Sp is that the distance between the estimated position of the person and the estimated position of the robot at the time when the movement of the robot is stopped (t 0 +T r +T s ) is within a predetermined value (c+Z d +Z r ) or less (within). Then, it can be understood that it is determined that the human and the robot interfere with each other.
(干渉判定装置への適用)
干渉判定装置10は、未来(t0+Δt)における「作業者50の位置および速度ベクトル」と、未来における「ロボット30の位置および速度ベクトル」とを用いて、未来における最短安全許容距離Sp(t0+Δt)を算出する。そして、干渉判定装置10は、未来(t0+Δt)における最短安全許容距離Sp(t0+Δt)を用いて、未来における作業者50とロボット30との干渉の可能性を判定する。
(Application to interference determination device)
The
具体的には、先ず、人軌道予測部113が、「現時点(つまり、時刻t0)の、作業者50の位置および速度ベクトル」を、学習部114が生成した予測用データに入力して、「未来(t0+Δt)における、作業者50の位置および速度ベクトル」を予測する。また、ロボット状態取得部121は、制御情報を解析して、未来(t0+Δt)における「ロボット30の、位置および速度ベクトル」を取得する。
Specifically, first, the human
次に、未来干渉判定部122は、未来(t0+Δt)における、作業者50およびロボット30の各々の「位置および速度ベクトル」から、ロボットの移動停止時点(t0+Δt+Tr+Ts)における、作業者50およびロボット30の各々の位置を算出する。未来干渉判定部122は、未来における、作業者50およびロボット30の各々の「位置および速度ベクトル」から、安全距離計算公式により、ロボットの移動停止時点における、作業者50およびロボット30の各々の推定位置を算出する。未来干渉判定部122は、ロボットの移動停止時点(t0+Δt+Tr+Ts)における、作業者50の推定位置とロボット30の推定位置との距離が、所定値(c+Zd+Zr)以下であると、人とロボットとが干渉すると判定する。
Next, the future
未来干渉判定部122により、人とロボットとが干渉すると判定されると、制御指示調整部123は、両者の干渉を回避するよう指示する指示信号を生成し、例えば、未来における最短安全許容距離Sp(t0+Δt)を小さくするよう指示する指示信号を生成する。言い換えれば、制御指示調整部123は、ロボット30の移動速度および軌道の少なくとも一方を調整して、ロボットの移動停止時点(t0+Δt+Tr+Ts)における、ロボット30の推定位置を修正する指示信号を生成する。制御指示調整部123は、ロボットの移動停止時点(t0+Δt+Tr+Ts)における、作業者50の推定位置とロボット30の推定位置との距離を、所定値(c+Zd+Zr)よりも大きくするための指示信号を、コントローラ20に送信する。
When the future
干渉判定装置10は、各時点で、「各時点の未来における、作業者50およびロボット30の各々の、位置および速度ベクトル」を用いて、作業者50とロボット30との干渉の可能性を判定する。そして、干渉の可能性があると判定した時点で、干渉判定装置10は、例えばロボット30の移動速度および軌道の少なくとも一方を調整して、未来における最短安全許容距離Sp(t0+Δt)を小さくさせる。
The
図7を用いて説明してきた「安全距離Sp」との概念、および、この概念の干渉判定装置10への適用は、以下のように整理することができる。すなわち、干渉判定装置10において、未来干渉判定部122は、現時点(t0)から所定時間Δtが経過した時点(t0+Δt時点)から、ロボット30が移動停止動作を開始し、ロボット30の移動が停止するまでの時間における、作業者50の推定位置とロボット30の推定位置との距離が所定値以内となる場合に、作業者50とロボット30との接触が生じる可能性があると判定する。
The concept of “safety distance Sp” described with reference to FIG. 7 and the application of this concept to the
前記の構成によれば、干渉判定装置10は、現時点t0から所定時間Δtが経過した時点(t0+Δt時点)から、ロボット30の移動が停止する時点までのいずれかの時点において、作業者50の推定位置とロボット30の推定位置との距離が所定値以内となると、作業者50とロボット30との接触が生じる可能性があると判定する。
According to the above configuration, the
つまり、干渉判定装置10は、ロボット30の移動が停止した時点での作業者50の推定位置とロボット30の推定位置との距離だけでなく、その途中までの各時点における作業者50の推定位置とロボット30の推定位置との距離を用いて、前述の判定を行う。
That is, the
したがって、干渉判定装置10は、「現時点t0から所定時間Δtが経過した時点であるt0+Δt時点」から、「ロボット30の移動が停止する時点」までの各時点における接触の可能性を考慮した判定を行うことができるとの効果を奏する。
Therefore, the
(指示信号について)
制御指示調整部123は、未来干渉判定部122によって「作業者50とロボット30とが接触し得る」と判定されると、作業者50とロボット30との干渉を回避するよう指示する指示信号を、コントローラ20に送信する。制御指示調整部123は、以下のような指示信号をコントローラ20に送信することによって、干渉回避動作によるロボット30の生産性低下を回避・抑制してもよい。
(About instruction signal)
When the future
(生産性を向上するための調整)
干渉判定装置10は、「未来において、接触が発生し得る」との判定を「t=t0」の時点において下した場合、未来における接触を回避するために、ロボット30の速度および軌道の少なくとも一方の調整を、「t=t0」の時点において実行する。
(Adjustments to improve productivity)
When the
干渉判定装置10は、「t=t0」の時点での調整後に、「未来において、接触が発生し得る」との判定を「t=t0+t’」の時点において下した場合、未来における接触を回避するために、ロボット30の速度および軌道の少なくとも一方の調整を、「t=t0+t’」の時点で実行する。
If the
干渉判定装置10は、「t=t0」の時点での調整後に、「未来において、接触は発生しない」との判定を「t=t0+t’」の時点において下した場合、生産性を向上するための調整を、ロボット30の速度および軌道の少なくともについて、「t=t0+t’」の時点で実行する。生産性を向上するための調整とは、例えば、ロボット30の速度(加速)および軌道の少なくとも一方を、「t=t0」の時点での調整の前の状態に戻す調整である。
すなわち、干渉判定装置10において、制御指示調整部123による前記調整指示の後に、未来干渉判定部122が、作業者50とロボット30との接触が生じる可能性がないと判定した場合に、制御指示調整部123は、コントローラ20に対して、ロボット30の移動速度および軌道の少なくともいずれか一方を、前記調整指示が行われる前の状態に戻す指示を示す前記指示信号を送信してもよい。
That is, in the
前記の構成によれば、干渉判定装置10は、前記調整指示の後に、作業者50とロボット30との接触が生じる可能性がなくなると、ロボット30の移動速度および軌道の少なくとも一方を、調整の前の状態に戻すように、コントローラ20に指示する。したがって、干渉判定装置10は、前記調整指示の後に、作業者50とロボット30との接触が生じる可能性がなくなると、ロボット30の移動速度および軌道の少なくとも一方を、調整の前の状態に戻すことができるとの効果を奏する。
According to the above configuration, the
(距離に応じた調整内容)
「未来において、接触が発生し得る」と判定した場合であっても、ロボット30の動作を停止するのではなく、ロボット30の速度および軌道の少なくとも一方を調整すれば接触を回避できるときには、干渉判定装置10は、ロボット30の動作を停止させない。干渉判定装置10は、ロボット30の速度および軌道の少なくとも一方を調整して、ロボット30と作業者50との接触を回避する。
(Adjustment according to distance)
Even when it is determined that “a contact may occur in the future”, if the contact can be avoided by adjusting at least one of the speed and the trajectory of the
ロボット30の速度および軌道の少なくとも一方を調整しただけでは接触を回避できないと判定した場合、干渉判定装置10は、ロボット30の動作を停止させる。例えば、ロボット30と作業者50との距離が予め設定しておいた制限距離以下となって、ロボット30の速度および軌道の少なくとも一方を調整しただけでは接触を回避できないと判定した場合、干渉判定装置10は、ロボット30の動作を停止させる。
When it is determined that the contact cannot be avoided only by adjusting at least one of the speed and the trajectory of the
すなわち、干渉判定装置10において、未来干渉判定部122が、作業者50とロボット30との接触が生じる可能性を示す可能性評価値が第1の閾値以上であると判定した場合に、制御指示調整部123は、コントローラ20に対して、ロボット30の移動速度および軌道の少なくともいずれか一方の調整指示を示す前記指示信号を送信する。また、前記可能性評価値が、前記第1の閾値よりも高い第2の閾値以上となったと未来干渉判定部122が判定した場合に、制御指示調整部123は、コントローラ20に対して、ロボット30を停止させる指示を示す前記指示信号を送信する。
That is, in the
前記の構成によれば、干渉判定装置10は、前記可能性評価値が第1の閾値以上であると、ロボット30の移動速度および軌道の少なくとも一方の調整を指示し、前記可能性評価値が第2の閾値以上となると、ロボット30の停止を指示する。つまり、干渉判定装置10は、作業者50とロボット30との接触が生じる可能性に応じて、ロボット30の移動を制御する。作業者50とロボット30との接触が生じる可能性がそれほど高くない(つまり、第1の閾値以上で第2の閾値未満である)場合、干渉判定装置10は、ロボット30を停止させずに、ロボット30の移動速度および軌道の少なくともいずれか一方を調整する。作業者50とロボット30との接触が生じる可能性が第2の閾値以上である場合、干渉判定装置10は、ロボット30を停止させる。
According to the above configuration, when the possibility evaluation value is equal to or higher than the first threshold, the
したがって、干渉判定装置10は、接触が生じる可能性に応じて、接触を回避するに必要十分な動作をロボット30に実行させるので、接触を回避しつつ、生産効率およびスペース効率の低下を抑制することができるとの効果を奏する。
Therefore, the
(制御システムの適用環境について)
図8は、制御システム1を適用する環境の一例を示す図である。制御システム1を適用する環境として、例えば、図8に示すような、作業者50とロボット30とがそれぞれ机の前で作業し、作業の成果物を手前のベルトコンベアに流す状況を想定することができる。図8に示す例では、通路と作業領域との間の距離が1.6m程度であって、ベルトコンベアが存在すると仮定し、また、作業者50が立って作業できるように机の高さを1mと想定した。図8に示す例では、作業者50を挟むように、作業者50の両脇にセンサ40を配置することによって、センサ40によって検出することのできない作業者50の領域をできるだけ小さくした。
(About the application environment of the control system)
FIG. 8 is a diagram showing an example of an environment to which the
センサ40の配置に際しては、センサ40を配置する高さについて、以下の点に留意した。すなわち、センサ40を作業者50の頭の高さに配置するのは、センサ40のレーザなどの測定波が作業者50の目に入射する可能性があるため、望ましくない。センサ40を作業者50の腰の高さに配置するのは、体幹計算(つまり、重心位置の算出)の結果が作業者50の状態に左右されにくいため、望ましい。センサ40を作業者50の太ももの高さに配置するのは、太ももの開き具合により体幹計算の結果がずれるため、望ましくない。センサ40を作業者50のくるぶしの高さに配置するのは、作業者50の足の幅(足をどの程度開いているか)によって体幹計算の結果がずれるため、望ましくない。
When arranging the
(重心の算出方法について)
図9は、センサ40の計測結果を利用して作業者の重心を算出する方法の一例を説明する図である。図9において、星印は作業者50の重心の位置(重心位置)を示しており、星印の周囲を囲む各点は、測域データが示す作業者50の存在位置(作業者50の存在を示す点)を示している。人状態情報生成部112は、図9に示すような作業者50の存在を示す点群から、公知の重心算出方法を利用して、星印で示す作業者50の重心位置を算出する。
(About the method of calculating the center of gravity)
FIG. 9 is a diagram illustrating an example of a method of calculating the center of gravity of an operator using the measurement result of the
(学習処理および人軌道予測処理についての留意点)
人軌道予測処理、および、人軌道予測処理の実行に際して利用する学習済モデルを生成する学習処理について、干渉判定装置10は、具体的には以下に示す処理を実行する。人状態情報生成部112は、「作業者50の時間ごとの、重心位置(体幹位置)」を取得し、この「作業者50の時間ごとの、重心位置(体幹位置)」の履歴から、学習部114が学習する学習用データが生成される。学習部114は、「作業者50の時間ごとの、重心位置(体幹位置)」の履歴から、「学習用フィルタ前データ(つまり、フィルタ処理の実行前の学習用データ)」を生成し、この学習用フィルタ前データを整形して、「学習用フィルタ済データ」を取得する。そして、学習部114は、この学習用フィルタ済データについて学習を行い、学習済モデルとして、「予測用フィルタ前データ」を生成する。人軌道予測部113は、「予測用フィルタ前データ」を整形して「予測用フィルタ済データ」を取得し、この「予測用フィルタ済データ」を用いて、「未来の、作業者50の重心の位置および速度ベクトル」を予測する。以下、図10および図11の各々を用いて、学習用データおよび予測用データの各々について、整形処理(フィルタ処理)を説明する。
(Points to note regarding learning processing and human trajectory prediction processing)
Regarding the human trajectory prediction process and the learning process of generating a learned model used when the human trajectory prediction process is executed, the
(学習用データの整形について)
図10は、学習処理の前に実行する学習用データの整形方法の一例を示す図である。学習部114は、以下の2つの方針に従って、学習用データの整形を実行する。第一に、学習部114は、学習用データの整形に際して、元のデータ(つまり、学習用フィルタ前データ)にできるだけ沿うような波形を、「学習用フィルタ済データ」として生成する。
(About shaping of learning data)
FIG. 10 is a diagram showing an example of a learning data shaping method executed before the learning process. The
また、図10の(A)に示すように、「実測値の加速度(つまり、フィルタ前の加速度)」は、ほぼノイズのようなデータとなる。そこで、第二に、学習部114は、図10の(B)に示す「フィルタ済の加速度」を、図10の(B)に示す「フィルタ済の速度」から計算して取得する。
Further, as shown in FIG. 10A, the “actually measured acceleration (that is, the acceleration before filtering)” is almost noise-like data. Therefore, secondly, the
学習部114は、例えばバッチ学習をする場合、未来のデータも用いて、重み付け移動平均フィルタを適用して、学習用フィルタ前データから学習用フィルタ済データを生成する。学習部114は、生成した学習用フィルタ済データを学習用データとして、これを学習する。
For example, when performing batch learning, the
(予測用データの整形について)
図11は、学習処理によって生成した予測用データの整形方法の一例を示す図である。人軌道予測部113は、以下の2つの方針に従って、予測用データの整形を実行する。第一に、人軌道予測部113は、リアルタイムで予測を実行するため、過去のデータ(現時点よりも前の予測用データ)のみを用いる。
(About shaping of prediction data)
FIG. 11 is a diagram illustrating an example of a shaping method of the prediction data generated by the learning process. The human
また、図11の(A)に示すように、「フィルタ前の加速度」は、ほぼノイズのようなデータとなる。そこで、第二に、人軌道予測部113は、図11の(B)に示す「フィルタ済の加速度」を、図11の(B)に示す「フィルタ済の速度」から計算して取得する。
Further, as shown in FIG. 11A, the “acceleration before filtering” is almost noise-like data. Therefore, secondly, the human
人軌道予測部113は、学習部114による学習用データの整形と同様に、重み付け移動平均フィルタを適用して、予測用フィルタ前データから予測用フィルタ済データを生成する。人軌道予測部113は、生成した予測用フィルタ済データを学習済モデルとして用いて、「現在の、作業者50の重心の位置および速度ベクトル」を入力して、「未来の、作業者50の重心の位置および速度ベクトル」を予測する。
The human
(人軌道予測処理の精度について)
工場等の生産現場では主に反復動作が行われると考えられるため、簡単な反復動作を予測対象として、干渉判定装置10の実行する人軌道予測処理について、予測精度を実験によって検証した。具体的には、「1分間に30往復程度、その場で体を左右に揺らし、体幹(重心)の移動範囲は約30cm」という内容の反復動作について、実験を行った。
(About the accuracy of human trajectory prediction processing)
Since it is considered that the repetitive motion is mainly performed in the production site such as a factory, the prediction accuracy of the human trajectory prediction process executed by the
図12は、干渉判定装置10が実行する人軌道予測処理の精度を示す図であり、特に、0秒時点での予測用データから2秒先まで予測した結果の抜粋を示している。図12に示すように、ヒト位置予測結果が約0.5秒あたりまでは高精度な予測ができていることを確認することができた。
FIG. 12 is a diagram showing the accuracy of the human trajectory prediction processing executed by the
図13は、干渉判定装置10が実行する人軌道予測処理の精度を示す、図12とは別の図である。具体的には、図13は、予測モデル(関数)の精度の確認方法として、クロスバリデーションを実施した場合の結果を示している。すなわち、先ず、センサ40によって測定したデータを、トレーニングセットとテストセットとに分けた。次に、トレーニングセットを用いて構築した予測モデル(関数)に、テストセットの説明変数を代入して、目的変数の計算値を取得した。そして、取得した計算値と、テストセットの目的変数の測定値とを比較した。その際、予測値と実測値との絶対誤差を計算し、予測結果の数だけ平均を計算した。
FIG. 13 is a diagram different from FIG. 12 showing the accuracy of the human trajectory prediction process executed by the
図12に示すのと同様に、図13に示す検証結果においても、ヒト位置予測結果が約0.5秒あたりまでは高精度な予測ができていることを確認することができた。 Similar to the case shown in FIG. 12, it was possible to confirm in the verification result shown in FIG. 13 that the human position prediction result was highly accurate until about 0.5 seconds.
§4.変形例
(人位置検出方法について)
図14は、図8に例示したセンサ40の配置例とは異なる、センサ40の配置例を示す図である。図8に例示したように、複数または単数のセンサ40を作業者50の近傍に設置してもよいし、図14の(A)に例示するように、複数または単数のセンサ40をロボット30に設置してもよい。また、図14の(B)Bに例示するように、複数または単数のセンサ40を生産現場等の天井に設置してもよい。
§4. Modified example (about human position detection method)
FIG. 14 is a diagram showing an arrangement example of the
(学習および人軌道予測について)
これまで、人軌道予測部113が、学習部114による作業者50の状態履歴の学習の結果を用いて、「現在の、作業者50の重心の位置および速度ベクトル」から、「未来の、作業者50の重心の位置および速度ベクトル」を予測する例を説明してきた。しかしながら、「未来の、作業者50の重心の位置および速度ベクトル」を予測するのに、学習部114による学習の結果を用いることは、人軌道予測部113にとって必須ではない。
(About learning and human trajectory prediction)
Up to now, the human
例えば、人軌道予測部113は、単純予測によって、つまり、「現在の、作業者50の速度ベクトル」が不変であると想定して、「未来の、作業者50の位置および速度ベクトル」を予測してもよい。
For example, the human
また、学習部114による作業者50の状態履歴の学習について、学習用データは図6の(A)に示すものに限られるものではない。図15に、学習部114が学習する学習用データの例を示す。
Further, regarding the learning of the state history of the
図15は、干渉判定装置10が学習する学習用データの例を示す図である。図15において、「x」は「人(作業者50)の重心の位置(重心位置)」を、「v」は「人(作業者50)の重心の速度」を、「a」は「人(作業者50)の重心の加速度」を示している。また、「t」は「現在時刻」を、「c」は「時刻tまでに人が停止した時間」を示している。図15に示す表において、各データは、一次元ないし二次元のデータとする。図15において、複数時刻のデータを扱っているパターンではサンプリング間隔は線形だけでなく非線形な場合もあり、また、入力と出力とのサンプリング間隔が異なるパターンもある。図15に示す表における各データは、例えば、重み付き移動平均による整形データであるものとする。
FIG. 15 is a diagram showing an example of learning data learned by the
図15に示すように、学習部114は、各時点における、作業者50の位置xh(t)、速度ベクトルvh(t)、および、加速度ベクトルah(t)の少なくとも1つの履歴を学習する。図15には、学習用モデルについて、作業者50の各時点における位置、速度ベクトル、および、加速度ベクトルの少なくとも1つの履歴(「現時点の、位置、速度ベクトル、および、加速度ベクトルの少なくとも2つ」を含む)を入力とする例が示されている。同様に、図15には、学習用モデルについて、「作業者50の各時点における位置の履歴」または「現時点の加速度ベクトル」を出力とする例が示されている。
As illustrated in FIG. 15, the
前述の通り、学習部114は、例えば、作業者50の現在位置および現在速度ベクトルの少なくともいずれか一方を入力とし、作業者50の加速度またはその後の位置を出力とする学習用データについて、学習を行う。
As described above, the
ただし、学習部114の行う学習はこれに限られるものではない。図15に例示するように、学習部114は、「作業者50(対象物)の、現時点までの位置の変化を示す情報」を入力とし、「作業者50の、未来における位置の変化を示す情報」を出力とする学習データを学習すればよい。
However, the learning performed by the
(学習アルゴリズムについて)
また、これまでに説明してきた例では、学習部114が学習アルゴリズムとしてDBT(Deep Binary Tree)を利用する例について説明してきたが、学習部114が利用する学習アルゴリズムは、DBTに限られるものではない。学習部114はニューラルネットワーク等を用いた学習を実行し、学習済モデルとして、予測用データを生成してもよい。
(About learning algorithm)
In the examples described so far, the
〔ソフトウェアによる実現例〕
干渉判定装置10の機能ブロック(具体的には、センサ情報取得部111、人状態情報生成部112、人軌道予測部113、学習部114、識別部115、ロボット状態取得部121、未来干渉判定部122、および、制御指示調整部123)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、CPU(CenTral Processing Unit)を用いてソフトウェアによって実現してもよい。
[Example of software implementation]
Functional blocks of the interference determination device 10 (specifically, sensor
後者の場合、干渉判定装置10は、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、上記プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、上記プログラムを展開するRAM(Random Access Memory)等を備えている。そして、コンピュータ(またはCPU)が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路等を用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
In the latter case, the
〔実施形態2〕
本発明の他の実施形態について、以下に説明する。なお、説明の便宜上、上記実施形態にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を繰り返さない。実施形態1では、作業者とロボットとの干渉を回避する例を説明した。ただしこれに限らず、作業者の軌道の予測結果を他の目的に使用してもよい。
[Embodiment 2]
Another embodiment of the present invention will be described below. For convenience of description, members having the same functions as the members described in the above embodiment will be designated by the same reference numerals, and the description thereof will not be repeated. In the first embodiment, an example of avoiding the interference between the worker and the robot has been described. However, the present invention is not limited to this, and the prediction result of the trajectory of the worker may be used for other purposes.
そもそも、ニューラルネットワーク等を用いた学習アルゴリズム(例えばDeep Learning等)では、追加学習によって学習済モデルの更新を行うために、学習のためのパラメータを手動で調整する必要がある。作業者(人)が同じ作業を繰り返し行う場合であっても、作業者の動作パターンは、作業者の疲労等に応じて変化し得る。そのため、精度の高い予測を行うためには、学習済モデルの更新を行う必要がある。しかしながら、手動でパラメータ調整が必要な学習アルゴリズムを用いると、リアルタイムで学習済モデルの更新を適切に行うことが難しい。 In the first place, in a learning algorithm using a neural network or the like (for example, Deep Learning), it is necessary to manually adjust parameters for learning in order to update the learned model by additional learning. Even when the worker (person) repeatedly performs the same work, the motion pattern of the worker may change according to the fatigue of the worker. Therefore, it is necessary to update the learned model in order to perform highly accurate prediction. However, when a learning algorithm that requires manual parameter adjustment is used, it is difficult to appropriately update the learned model in real time.
一方で、DLT(Dynamics Learning Tree)またはDBT(Deep Binary Tree)のような学習アルゴリズムは、パラメータ調整を必要としないオンライン追加学習により学習済モデルを更新する。それゆえ、DLTまたはDBTを学習アルゴリズムとして用い、リアルタイムで学習済モデルの更新を行うことで、作業者の動作を適切に予測することができる。ここで、オンライン追加学習は、単にネットワークを介して追加学習を行うことを指すのではなく、現場で生じる新しいデータ(人の動き)を用いてリアルタイムで追加学習を行うことを指している。 On the other hand, a learning algorithm such as DLT (Dynamics Learning Tree) or DBT (Deep Binary Tree) updates the learned model by online additional learning that does not require parameter adjustment. Therefore, by using DLT or DBT as a learning algorithm and updating the learned model in real time, the motion of the worker can be appropriately predicted. Here, the online additional learning does not refer to simply performing additional learning via a network, but refers to performing additional learning in real time using new data (movement of a person) generated in the field.
[構成例]
(人動作予測装置の構成)
図16は、人動作予測装置60の要部構成を示すブロック図である。人動作予測装置60は、人軌道処理部110、および記憶部130を備える。人軌道処理部110は、作業者50の未来の「位置(二次元位置または三次元位置)および速度ベクトル」の予測を実行し、予測した作業者50の未来の「位置および速度ベクトル」を、外部の他の装置に出力する。他の装置は、サーバ、ロボットを制御するコントローラ、または表示装置等であってよい。
[Example of configuration]
(Configuration of human motion prediction device)
FIG. 16 is a block diagram showing a main configuration of the human
人動作予測装置60の一態様では、人軌道予測部113は、所定期間における作業者50の位置の履歴を学習済モデル(予測用データ)の入力として、学習済モデルの更新および「未来の、作業者50の位置」の予測を行う。
In one aspect of the human
人状態情報生成部112は、複数の作業者50の各々の「時間ごとの、位置」の履歴を人状態履歴データ131に格納する。人状態情報生成部112は、生成した、複数の作業者50の各々の「現在の、位置」を、人軌道予測部113に通知する。また、人状態情報生成部112は、「現在を含む所定期間における作業者50の位置」(位置の履歴)を、人軌道予測部113に通知する。
The human state
人軌道予測部113は、人状態情報生成部112から通知される「現在を含む所定期間における作業者50の位置」を、学習部114が生成した学習済モデル(予測用データ)に入力して、「未来の、作業者50の位置」を予測する。
The human
ここで、人軌道予測部113は、例えば、人状態情報生成部112から通知される「現在を含む所定期間における作業者50の位置」(位置の履歴)を用いて、「未来の、作業者50の重心の位置」を予測する。
Here, the human
言い換えれば、人軌道予測部113は、現在までの作業者50の重心位置を示す情報から、作業者50の未来の(つまり、将来の)人軌道(重心位置の移動を示す軌道)を予測する。
In other words, the human
学習部114は、所定期間における時刻ごとの作業者50の位置(特に、重心位置)を入力とし、所定期間より後の作業者50の位置を出力とする学習用データについて、学習を行う。学習部114は、例えばDLTまたはDBTと呼ばれる学習アルゴリズムを用いて、学習済モデルを生成する。また、実運用を開始した後(一度、学習済モデルを生成した後)、学習部114は、該学習アルゴリズムを用いて、学習済モデルを更新する。
The
[動作例]
図4に示す処理フローと同様に、人動作予測装置60では、センサ情報取得部111によってセンサ情報統合処理(S110)が実行され、人状態情報生成部112によって人存在領域計算処理(S120)が実行され、人軌道予測部113によって人軌道計算処理(S130)が実行される。ただし、予測結果出力処理(S133)では、実施形態1の調停部の代わりに他の装置へ予測結果が出力される。
[Operation example]
In the human
(学習済モデルの更新)
人軌道学習処理(S131、学習ステップ)において、学習部114は、所定期間における時刻ごとの作業者50の位置(位置の履歴)を入力とし、所定期間より後の作業者50の位置を出力とする学習用データについて、学習を行う。学習部114は、学習によって、学習済モデルを更新する。
(Update of learned model)
In the human trajectory learning process (S131, learning step), the
より具体的には、学習部114は、所定期間における「作業者50の時間ごとの、重心位置(体幹位置)」の履歴から、「学習用フィルタ前データ(つまり、フィルタ処理の実行前の学習用データ)」を生成し、この学習用フィルタ前データを整形して、「学習用フィルタ済データ」を取得する。学習部114は、学習用フィルタ前データに、学習用時間方向重み付きフィルタ(第2時間方向重み付きフィルタ)を適用し、学習用フィルタ済データを生成する。学習用時間方向重み付きフィルタは、時間方向の重み付き移動平均フィルタであり、例えば以下で示される。
More specifically, the
Xt=0.1xt−2+0.2xt−1+0.4xt+0.2xt+1+0.1xt+2
xは学習用フィルタ前データにおける位置を示し、添字tは時刻を示し、Xは学習用フィルタ済データにおける位置を示す。学習用時間方向重み付きフィルタは、対象時刻tの前後を含む期間(時刻t−2からt+2)における位置xの履歴に重みを付けて平均したものを、対象時刻tのフィルタ後の位置Xtとする。
X t = 0.1x t-2 + 0.2x t-1 + 0.4x t + 0.2x t + 1 + 0.1
x indicates the position in the pre-learning filter data, subscript t indicates the time, and X indicates the position in the learning filtered data. The time-direction weighting filter for learning weights and averages the history of the position x in a period including the time before and after the target time t (time t−2 to t+2), and calculates the position X t after the filter at the target time t. And
所定期間は、異なる複数の作業を順に行う作業者50の、複数の作業の期間が含まれるようにあらかじめ設定されている。学習部114は、この学習用フィルタ済データを学習済モデルに対する入力および出力として使用することで、学習済モデルを更新する。なお、学習済モデルを生成するときも、学習部114は、同様にして学習を行う。
The predetermined period is set in advance so as to include a plurality of work periods of the
(人軌道予測)
人軌道予測処理(S132)において、人軌道予測部113は、所定期間(現時点を含む)における時刻ごとの作業者50の位置(位置の履歴)を、学習済モデルに入力して、「未来の、作業者50の位置」を予測する。
(Human trajectory prediction)
In the human trajectory predicting process (S132), the human
より具体的には、人軌道予測部113は、所定期間における「作業者50の時間ごとの、重心位置(体幹位置)」の履歴から、「予測用フィルタ前データ(つまり、フィルタ処理の実行前の予測用データ)」を生成し、この予測用フィルタ前データを整形して、「予測用フィルタ済データ」を取得する。人軌道予測部113は、予測用フィルタ前データに、予測用時間方向重み付きフィルタ(第1時間方向重み付きフィルタ)を適用し、予測用フィルタ済データを生成する。予測用時間方向重み付きフィルタは、時間方向の重み付き移動平均フィルタであり、例えば以下で示される。
More specifically, the human
Xt=0.05xt−4+0.05xt−3+0.1xt−2+0.2xt−1+0.6xt
xは予測用フィルタ前データにおける位置を示し、添字tは時刻を示し、Xは予測用フィルタ済データにおける位置を示す。予測用時間方向重み付きフィルタは、対象時刻t以前の期間(時刻t−4からt)における位置xの履歴に重みを付けて平均したものを、対象時刻tのフィルタ後の位置Xtとする。
X t = 0.05x t-4 + 0.05x t-3 + 0.1x t-2 + 0.2x t-1 + 0.6x t
x indicates a position in the pre-filtering data for prediction, subscript t indicates the time, and X indicates a position in the filtered data for prediction. The prediction time-direction weighted filter weights the history of the position x in the period before the target time t (time t-4 to t) and averages it, and sets it as the post-filter position X t at the target time t. ..
所定期間は、異なる複数の作業を順に行う作業者50の、複数の作業の期間が含まれるようにあらかじめ設定されている。人軌道予測部113は、この予測用フィルタ済データを学習済モデルに対する入力として使用することで、学習済モデルの出力として現時点より未来の作業者50の位置を得る。また、人軌道予測部113は、予測した未来の作業者50の位置を用いてさらに未来の作業者50の位置を予測することもできる。このようにして、人軌道予測部113は、「未来の、作業者50の位置」を予測する。
The predetermined period is set in advance so as to include a plurality of work periods of the
ここでは、学習用時間方向重み付きフィルタが予測用時間方向重み付きフィルタと異なる例を示したが、同じフィルタ(予測用時間方向重み付きフィルタ)を用いてもよい。 Here, an example in which the learning time-direction weighted filter is different from the prediction time-direction weighted filter is shown, but the same filter (prediction time-direction weighted filter) may be used.
(参考例の予測結果)
図17は、参考例の入力データと予測結果とを示す図である。横軸は時間[s]を示し、縦軸は作業者50の位置(x座標、y座標)[m]を示す。時刻t1が現時点であり、時刻t1以前の所定期間P1における作業者50の位置(x軸入力値、y軸入力値)が、直近の未来を予測するために学習済モデルへの入力データとして用いられる。時刻t1より後のx軸予測値、y軸予測値は、学習済モデルも出力として得られた作業者50の位置の予測結果である。時刻t1より後のx軸実測値、y軸実測値は、後に実際に測定された作業者50の位置を示す。なお位置のデータは0.04秒毎のデータである。
(Prediction result of reference example)
FIG. 17 is a diagram showing the input data and the prediction result of the reference example. The horizontal axis represents time [s], and the vertical axis represents the position (x coordinate, y coordinate) [m] of the
参考例では、所定期間P1は、作業者50の予測直前の1つの作業Aの時間が含まれる程度に短く設定されている。1つの作業においては、作業者50はあまり動かない場合がある。そのような場合、予測の精度が低下し、予測値(ここではy軸予測値)は実測値と大きく異なってしまうことがある。
In the reference example, the predetermined period P1 is set short enough to include the time of one work A immediately before the prediction of the
(動作例の予測結果)
図18は、動作例の人動作予測装置60の入力データと予測結果とを示す図である。横軸は時間[s]を示し、縦軸は作業者50の位置(x座標、y座標)[m]を示す。時刻t2が現時点であり、時刻t2以前の所定期間P2における作業者50の位置(x軸入力値、y軸入力値)が、直近の未来を予測するために学習済モデルへの入力データとして用いられる。時刻t2より後のx軸予測値、y軸予測値は、学習済モデルも出力として得られた作業者50の位置の予測結果である。時刻t2より後のx軸実測値、y軸実測値は、後に実際に測定された作業者50の位置を示す。なお位置のデータは0.04秒毎のデータである。
(Prediction result of operation example)
FIG. 18: is a figure which shows the input data of the human
動作例では、所定期間P2は、各作業の時間より長く設定されている。具体的には、所定期間P2は、作業者50の予測直前の1つの作業Aだけでなく、作業Aの前の作業Bの期間も含むように長く設定されている。そのため、学習済モデルへの入力データには、複数の作業A、Bに関する作業者50の位置の履歴が含まれる。また、入力データには、作業Aから別の作業Bへの遷移過程の作業者50の位置の履歴が含まれる。このように、予測直前の作業Aの前の作業Bにおける作業者50の情報も予測に使用することにより、予測の精度が向上する。動作例の予測値(x軸予測値、y軸予測値)は実測値とよく一致している。
In the operation example, the predetermined period P2 is set longer than the time of each work. Specifically, the predetermined period P2 is set to be long so as to include not only one work A immediately before the prediction of the
(予測精度)
図19は、時間窓の幅と予測誤差との関係を示す図である。横軸は、時間窓の幅(入力データとして使用する所定期間の長さ)[s]を示す。縦軸は、未来のある時刻における作業者50の位置についての予測誤差(実測値と予測値との差)[m]を示す。時間窓の幅(所定期間P2の長さ)が小さいと、予測精度が落ちる(予測誤差が大きくなる)ことが分かる。一方で、異なる2つの作業A、Bを含む程度に時間窓の幅がある程度長ければ(この例では、8.96秒以上であれば)、時間窓の幅が少し変化しても、予測精度はあまり変わらない。
(Prediction accuracy)
FIG. 19 is a diagram showing the relationship between the width of the time window and the prediction error. The horizontal axis represents the width of the time window (the length of the predetermined period used as input data) [s]. The vertical axis represents the prediction error (difference between the actual measurement value and the prediction value) [m] for the position of the
[変形例]
以上では、作業者50の位置の履歴を学習済モデルへの入力とし、未来の位置を出力させる例を説明したが、本発明はこれに限らない。例えば、作業者50の位置の履歴、速度ベクトルの履歴、および/または、加速度ベクトルの履歴を学習済モデルへの入力とし、未来の作業者50の位置、速度ベクトル、および/または、加速度ベクトルを学習済モデルからの出力としてもよい。作業者50の位置の履歴、速度ベクトルの履歴、および/または、加速度ベクトルの履歴は、作業者50の位置の変化を示す情報である。また、未来の期間の作業者50の位置の履歴、速度ベクトルの履歴、および/または、加速度ベクトルの履歴を学習済モデルからの出力としてもよい。
[Modification]
The example in which the history of the position of the
また、作業者50の位置は、作業者50の重心に限らず、作業者50の1つまたは複数の部位の位置であってもよい。
The position of the
また、学習部114はニューラルネットワーク等を用いた学習を実行し、学習済モデルを生成してもよい。
The
〔ソフトウェアによる実現例〕
人動作予測装置60の機能ブロック(具体的には、センサ情報取得部111、人状態情報生成部112、人軌道予測部113、学習部114、および識別部115)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェアによって実現してもよい。
[Example of software implementation]
The functional blocks of the human movement prediction device 60 (specifically, the sensor
後者の場合、人動作予測装置60は、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、上記プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、上記プログラムを展開するRAM(Random Access Memory)等を備えている。そして、コンピュータ(またはCPU)が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路等を用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
In the latter case, the human
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。 The present invention is not limited to the above-described embodiments, but various modifications can be made within the scope of the claims, and embodiments obtained by appropriately combining the technical means disclosed in the different embodiments Is also included in the technical scope of the present invention.
1 制御システム(ロボット制御システム)
10 干渉判定装置(ロボット干渉判定装置)
20 コントローラ(ロボット制御装置)
21 ロボット制御部
22 受信部
30 ロボット
40 センサ(計測装置)
50 作業者(対象物)
60 人動作予測装置
112 人状態情報生成部(対象物状態取得部)
113 人軌道予測部(予測部)
114 学習部
121 ロボット状態取得部
122 未来干渉判定部(干渉判定部)
115 識別部
123 制御指示調整部(指示部)
S120 人存在領域計算処理(対象物状態取得ステップ)
S141 ロボット軌道取得処理(ロボット状態取得ステップ)
S132 人軌道予測処理(予測ステップ)
S144 干渉判定ステップ
1 Control system (robot control system)
10 Interference determination device (robot interference determination device)
20 controller (robot controller)
21
50 worker (object)
60 human
113 Human trajectory prediction unit (prediction unit)
114
115
S120 Human presence area calculation process (object state acquisition step)
S141 Robot trajectory acquisition process (robot state acquisition step)
S132 Human trajectory prediction processing (prediction step)
S144 Interference determination step
Claims (25)
ロボットにおける所定の可動部の所定時間後における予測位置および予測速度ベクトルを取得するロボット状態取得部と、
前記対象物の、現時点までの位置の変化を示す情報に基づいて、前記所定時間後における前記対象物の予測位置および予測速度ベクトルを算出する予測部と、
前記対象物の前記予測位置および前記予測速度ベクトルと、前記可動部の前記予測位置および前記予測速度ベクトルとに基づき、前記対象物と前記可動部との接触が生じる可能性があるか否かをリアルタイムで判定する干渉判定部と、
を備えるロボット干渉判定装置。 An object state acquisition unit that acquires information indicating a change in position up to the present time of an object existing in a predetermined area,
A robot state acquisition unit that acquires a predicted position and a predicted velocity vector of a predetermined movable unit of the robot after a predetermined time,
A prediction unit that calculates a predicted position and a predicted velocity vector of the target object after the predetermined time, based on information indicating a change in the position of the target object up to the present time,
Based on the predicted position and the predicted velocity vector of the object and the predicted position and the predicted velocity vector of the movable part, it is determined whether or not contact between the object and the movable part may occur. An interference determination unit that determines in real time,
A robot interference determination device including.
前記予測部が、前記識別部による識別結果に応じて前記対象物の予測位置および予測速度ベクトルの算出方法を変更する請求項1〜5のいずれか一項に記載のロボット干渉判定装置。 Further comprising an identification unit for identifying the object,
The robot interference determination device according to any one of claims 1 to 5, wherein the prediction unit changes a method of calculating the predicted position and the predicted velocity vector of the target object according to the identification result by the identification unit.
前記可能性評価値が、前記第1の閾値よりも高い第2の閾値以上となったと前記干渉判定部が判定した場合に、前記指示部は、前記ロボット制御装置に対して、前記可動部を停止させる指示を示す前記指示信号を送信する請求項10に記載のロボット干渉判定装置。 When the interference determination unit determines that the possibility evaluation value indicating the possibility of contact between the target object and the movable unit is equal to or greater than a first threshold value, the instruction unit causes the robot control device to operate. On the other hand, while transmitting the instruction signal indicating the adjustment instruction of at least one of the moving speed and the trajectory of the movable portion,
When the interference determination unit determines that the possibility evaluation value is equal to or higher than a second threshold value that is higher than the first threshold value, the instruction unit instructs the robot control device to move the movable unit. The robot interference determination device according to claim 10, wherein the instruction signal indicating an instruction to stop is transmitted.
ロボットにおける所定の可動部の所定時間後における予測位置および予測速度ベクトルを取得するロボット状態取得ステップと、
前記対象物の、現時点までの位置の変化を示す情報に基づいて、前記所定時間後における前記対象物の予測位置および予測速度ベクトルを算出する予測ステップと、
前記対象物の前記予測位置および前記予測速度ベクトルと、前記可動部の前記予測位置および前記予測速度ベクトルとに基づき、前記対象物と前記可動部との接触が生じる可能性があるか否かをリアルタイムで判定する干渉判定ステップと、
を備えるロボット干渉判定方法。 An object state acquisition step of acquiring information indicating a change in position up to the present time of an object existing in a predetermined area,
A robot state acquisition step of acquiring a predicted position and a predicted velocity vector of a predetermined movable part of the robot after a predetermined time,
A predicting step of calculating a predicted position and a predicted velocity vector of the target object after the predetermined time, based on the information indicating the change in position of the target object up to the present time,
Based on the predicted position and the predicted velocity vector of the object and the predicted position and the predicted velocity vector of the movable part, it is determined whether or not contact between the object and the movable part may occur. An interference determination step of determining in real time,
And a robot interference determination method.
前記指示信号に基づき、前記ロボットの動作を制御するロボット制御部と、
を備えるロボット制御装置。 A receiving unit that receives the instruction signal from the robot interference determination device according to any one of claims 9 to 12,
A robot controller that controls the operation of the robot based on the instruction signal;
A robot control device including.
請求項14に記載のロボット制御装置と、
非接触で前記対象物の二次元または三次元位置を計測し、計測結果を前記ロボット干渉判定装置に送信する計測装置と、
を備えるロボット制御システム。 A robot interference determination device according to any one of claims 9 to 12,
A robot controller according to claim 14;
A measuring device that measures the two-dimensional or three-dimensional position of the object in a non-contact manner, and sends the measurement result to the robot interference determination device,
A robot control system including.
前記対象物の位置の変化を示す情報に基づいて、その後における前記対象物の予測位置、予測速度ベクトルまたは予測加速度ベクトルを、学習済モデルによって予測する予測部と、を備え、
前記予測部は、パラメータ調整を必要としないオンライン追加学習により前記学習済モデルを更新する学習部を備え、
前記学習部は、前記対象物の各時点における位置、速度ベクトル、および加速度ベクトルの少なくとも1つの履歴を学習することによって前記学習済モデルを更新する、人動作予測装置。 An object state acquisition unit that acquires information indicating a change in position of a person who is an object,
Based on information indicating a change in the position of the target object, a predicted position of the target object thereafter, a predicted velocity vector or a predicted acceleration vector, a prediction unit for predicting by a learned model,
The prediction unit includes a learning unit that updates the learned model by online additional learning that does not require parameter adjustment,
The human motion prediction device, wherein the learning unit updates the learned model by learning at least one history of a position, a velocity vector, and an acceleration vector of the object at each time point.
前記所定期間が、予測直前の第1作業の期間だけでなく、前記第1作業の前の第2作業の期間も含むように、前記所定期間が設定されている、請求項19に記載の人動作予測装置。 The object is a worker who performs a plurality of works,
The person according to claim 19, wherein the predetermined period is set such that the predetermined period includes not only the period of the first work immediately before the prediction but also the period of the second work before the first work. Motion prediction device.
前記予測部は、対象時刻以前の期間における前記対象物の位置の変化を示す情報に、前記第1時間方向重み付きフィルタを適用したものを、前記学習済モデルの入力とすることで、前記対象時刻より後の前記対象物の前記予測位置、前記予測速度ベクトル、または予測加速度ベクトルを予測する、請求項21に記載の人動作予測装置。 The learning unit applies the second time-direction weighted filter different from the first time-direction weighted filter to the information indicating the change in the position of the target object in a period including before and after the target time. As a time input, learn,
The predicting unit applies the first time-direction weighted filter to the information indicating the change in the position of the target object in the period before the target time, and inputs the learned model to the target model. The human motion prediction device according to claim 21, which predicts the predicted position, the predicted velocity vector, or the predicted acceleration vector of the object after the time.
前記対象物の位置の変化を示す情報に基づいて、その後における前記対象物の予測位置、予測速度ベクトルまたは予測加速度ベクトルを、学習済モデルによって予測する予測ステップと、
パラメータ調整を必要としないオンライン追加学習により前記学習済モデルを更新する学習ステップであって、前記対象物の各時点における位置、速度ベクトル、および加速度ベクトルの少なくとも1つの履歴を学習することによって前記学習済モデルを更新する学習ステップと、を含む人動作予測方法。 An object state acquisition step of acquiring information indicating a change in position of a person who is an object,
Based on the information indicating the change in the position of the target object, a predicted position of the target object thereafter, a predicted velocity vector or a predicted acceleration vector, a prediction step of predicting by a learned model,
A learning step of updating the learned model by online additional learning that does not require parameter adjustment, the learning by learning at least one history of a position, a velocity vector, and an acceleration vector at each time point of the object. Human motion prediction method including a learning step of updating the completed model.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2023003855A JP7462195B2 (en) | 2018-12-14 | 2023-01-13 | ROBOT INTERFERENCE DETECTION DEVICE, ROBOT INTERFERENCE DETECTION METHOD, ROBOT CONTROL DEVICE, ROBOT CONTROL SYSTEM, HUMAN OPERATION PREDICTION DEVICE, AND HUMAN OPERATION PREDICTION METHOD |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018234628 | 2018-12-14 | ||
JP2018234628 | 2018-12-14 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023003855A Division JP7462195B2 (en) | 2018-12-14 | 2023-01-13 | ROBOT INTERFERENCE DETECTION DEVICE, ROBOT INTERFERENCE DETECTION METHOD, ROBOT CONTROL DEVICE, ROBOT CONTROL SYSTEM, HUMAN OPERATION PREDICTION DEVICE, AND HUMAN OPERATION PREDICTION METHOD |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020097091A true JP2020097091A (en) | 2020-06-25 |
JP7243979B2 JP7243979B2 (en) | 2023-03-22 |
Family
ID=71105597
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019034202A Active JP7243979B2 (en) | 2018-12-14 | 2019-02-27 | Robot interference determination device, robot interference determination method, robot control device, robot control system, human motion prediction device, and human motion prediction method |
JP2023003855A Active JP7462195B2 (en) | 2018-12-14 | 2023-01-13 | ROBOT INTERFERENCE DETECTION DEVICE, ROBOT INTERFERENCE DETECTION METHOD, ROBOT CONTROL DEVICE, ROBOT CONTROL SYSTEM, HUMAN OPERATION PREDICTION DEVICE, AND HUMAN OPERATION PREDICTION METHOD |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023003855A Active JP7462195B2 (en) | 2018-12-14 | 2023-01-13 | ROBOT INTERFERENCE DETECTION DEVICE, ROBOT INTERFERENCE DETECTION METHOD, ROBOT CONTROL DEVICE, ROBOT CONTROL SYSTEM, HUMAN OPERATION PREDICTION DEVICE, AND HUMAN OPERATION PREDICTION METHOD |
Country Status (1)
Country | Link |
---|---|
JP (2) | JP7243979B2 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022196010A1 (en) * | 2021-03-15 | 2022-09-22 | オムロン株式会社 | Control device, control system, control method, and program |
JPWO2023089817A1 (en) * | 2021-11-22 | 2023-05-25 | ||
US20230211496A1 (en) * | 2020-06-25 | 2023-07-06 | Fanuc Corporation | Robot control device |
EP4254105A1 (en) | 2022-04-01 | 2023-10-04 | OMRON Corporation | Work management system, method, and program |
US11833691B2 (en) | 2021-03-30 | 2023-12-05 | Samsung Electronics Co., Ltd. | Hybrid robotic motion planning system using machine learning and parametric trajectories |
US11945117B2 (en) | 2021-03-10 | 2024-04-02 | Samsung Electronics Co., Ltd. | Anticipating user and object poses through task-based extrapolation for robot-human collision avoidance |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010120139A (en) * | 2008-11-21 | 2010-06-03 | New Industry Research Organization | Safety control device for industrial robot |
JP2010208002A (en) * | 2009-03-12 | 2010-09-24 | Ihi Corp | Device and method for controlling robot device |
JP2018012159A (en) * | 2016-07-21 | 2018-01-25 | 富士電機株式会社 | Robot system, control method of robot system, and program |
DE102016222245A1 (en) * | 2016-11-14 | 2018-05-30 | Volkswagen Aktiengesellschaft | Device and method for acting on objects |
JP2018103345A (en) * | 2016-12-28 | 2018-07-05 | 川崎重工業株式会社 | Robot system |
JP6393433B1 (en) * | 2018-02-09 | 2018-09-19 | 株式会社ビコー | Information processing apparatus, information processing method, and program |
-
2019
- 2019-02-27 JP JP2019034202A patent/JP7243979B2/en active Active
-
2023
- 2023-01-13 JP JP2023003855A patent/JP7462195B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010120139A (en) * | 2008-11-21 | 2010-06-03 | New Industry Research Organization | Safety control device for industrial robot |
JP2010208002A (en) * | 2009-03-12 | 2010-09-24 | Ihi Corp | Device and method for controlling robot device |
JP2018012159A (en) * | 2016-07-21 | 2018-01-25 | 富士電機株式会社 | Robot system, control method of robot system, and program |
DE102016222245A1 (en) * | 2016-11-14 | 2018-05-30 | Volkswagen Aktiengesellschaft | Device and method for acting on objects |
JP2018103345A (en) * | 2016-12-28 | 2018-07-05 | 川崎重工業株式会社 | Robot system |
JP6393433B1 (en) * | 2018-02-09 | 2018-09-19 | 株式会社ビコー | Information processing apparatus, information processing method, and program |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230211496A1 (en) * | 2020-06-25 | 2023-07-06 | Fanuc Corporation | Robot control device |
US11945117B2 (en) | 2021-03-10 | 2024-04-02 | Samsung Electronics Co., Ltd. | Anticipating user and object poses through task-based extrapolation for robot-human collision avoidance |
WO2022196010A1 (en) * | 2021-03-15 | 2022-09-22 | オムロン株式会社 | Control device, control system, control method, and program |
US11833691B2 (en) | 2021-03-30 | 2023-12-05 | Samsung Electronics Co., Ltd. | Hybrid robotic motion planning system using machine learning and parametric trajectories |
JPWO2023089817A1 (en) * | 2021-11-22 | 2023-05-25 | ||
WO2023089817A1 (en) * | 2021-11-22 | 2023-05-25 | 三菱電機株式会社 | Information processing device, simulation system, simulation method, and simulation program |
EP4254105A1 (en) | 2022-04-01 | 2023-10-04 | OMRON Corporation | Work management system, method, and program |
Also Published As
Publication number | Publication date |
---|---|
JP7243979B2 (en) | 2023-03-22 |
JP7462195B2 (en) | 2024-04-05 |
JP2023029629A (en) | 2023-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2020097091A (en) | Robot interference determination device, robot interference determination method, robot control device, robot control system, human movement predictor, and human movement prediction method | |
JP7122776B2 (en) | Workspace safety monitoring and equipment control | |
JP5283622B2 (en) | Monitoring method and apparatus using camera for preventing collision of machine | |
US20200004247A1 (en) | Controlling movement of autonomous device | |
US12036683B2 (en) | Safe motion planning for machinery operation | |
US11478934B2 (en) | Method and apparatus for controlling robot | |
US10591905B2 (en) | Work region estimation device, control device, control system, work region estimation method, and non-transitory computer-readable recording medium | |
JP2020093373A (en) | Robot interference determination device, robot interference determination method, robot control device, and robot control system | |
EP4260992A1 (en) | System and method for verifying positional and spatial information using depth sensors | |
WO2023037443A1 (en) | Robot control device, learning device, and inference device | |
WO2023095926A1 (en) | Robot control device, robot control system, and robot control method | |
JP7186414B2 (en) | Speed detection system for moving object, speed detection device and its program | |
US20240012383A1 (en) | Clustering and detection system and method for safety monitoring in a collaborative workspace | |
CN107924181B (en) | Work area estimation device, work area estimation method, control device, control system, and storage medium | |
JP2022013038A (en) | Robot and control device thereof, and movement range estimation device and program thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20190228 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211221 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20221027 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20221115 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230116 |
|
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: 20230131 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230228 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7243979 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |