以下、本発明の好ましい実施形態を、添付の図面に基づいて詳細に説明する。なお、以下の実施形態において示す構成は一例に過ぎず、本発明は図示された構成に限定されるものではない。
本実施形態の情報処理装置は、対象物体を把持するための把持装置を空間内で移動可能とするロボットを制御する装置である。本実施形態に係る情報処理装置は、ロボットによる対象物体の把持が成功または失敗する確率の分布(把持成否確率分布とする。)を求め、その把持成否確率分布を基に把持制御を行う。また本実施形態の情報処理装置は、対象物体に対する把持位置における把持成否確率と把持成否結果とに基づいてシステムの状態を推定し、その推定結果を表示してオペレータ(ユーザ)に通知する。このように本実施形態では、システムの状態を可視化することにより、予防保全、事後保全を容易に行えるようにして、生産性を高めることを可能にしている。
Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings. The configurations shown in the following embodiments are merely examples, and the present invention is not limited to the illustrated configurations.
The information processing apparatus of the present embodiment is an apparatus that controls a robot that enables a gripping device for gripping a target object to move in a space. The information processing apparatus according to the present embodiment obtains a probability distribution (success / failure probability distribution) of success or failure of gripping the target object by the robot, and performs grip control based on the grip success / failure probability distribution. The information processing apparatus according to the present embodiment estimates the state of the system based on the gripping success / failure probability at the gripping position with respect to the target object and the gripping success / failure result, displays the estimation result, and notifies the operator (user). As described above, in the present embodiment, by visualizing the state of the system, preventive maintenance and post-maintenance can be easily performed, thereby improving productivity.
ロボットによる把持作業を制御する本実施形態に係る情報処理装置の詳細を述べる前に、以下の本実施形態において用いる主要な用語の定義について簡単に説明する。
本実施形態で用いる各用語のうち、対象物体とは、ロボットによる把持の対象となる物体であり、例えばビニール袋や緩衝材に包まれていて光の反射や表面形状が変化する物体が挙げられる。すなわち、本実施形態では、対象物体としては、ビニール袋や緩衝材に包まれた物体のように視覚情報で位置と姿勢を正確に認識し難く、また、把持に失敗する可能性がある対象物体を想定している。本実施形態の対象物体には、ケーブルのような形状が変化する物体、充電器のような長方体形状の物体、レンズのような円柱形状の物体などの各種の物体が含まれる。
把持とは、例えばロボットアームの先端等に設けられたロボットハンド等の把持装置により対象物体を吸着したり挟んだりすることであり、対象物体を搬送できる状態にすることである。
Before describing details of the information processing apparatus according to the present embodiment that controls a gripping operation by a robot, definitions of main terms used in the present embodiment will be briefly described below.
Among the terms used in the present embodiment, the target object is an object to be gripped by the robot, and examples thereof include an object that is wrapped in a plastic bag or a cushioning material and whose light reflection or surface shape changes. . In other words, in this embodiment, the target object is a target object that is difficult to accurately recognize the position and posture with visual information, such as an object wrapped in a plastic bag or cushioning material, and that may fail to grip. Is assumed. The target objects of the present embodiment include various objects such as an object whose shape changes such as a cable, a rectangular object such as a charger, and a cylindrical object such as a lens.
The gripping means that the target object is attracted or pinched by a gripping device such as a robot hand provided at the tip of the robot arm, for example, and the target object can be transported.
把持成否確率分布とは、後述する視覚情報や近接覚情報、ロボットの把持成否判定結果の少なくともいずれかに基づき作成された学習モデルを利用して決定される、把持に成功する確率を示した分布である。詳細は後述するが、視覚情報に基づき学習モデルが作成される場合は、例えば、画像に対して、対象物体の把持が成功しそうな位置に対して人間が真値を付けて、把持成功予測位置として学習が行われる。なお、真値とは、学習における正解データのことである。この学習において、学習モデルの入力は画像情報となり、学習モデルの出力は画像における位置となる。また、ロボットの把持成否判定結果に基づき学習モデルが作成される場合は、例えば、対象物体の認識が画像処理によって行われる。そして、その画像処理により認識された画像中の位置に対して、把持できるかどうかをロボットで試した結果に基づいて真値を付けて、把持成功位置あるいは把持失敗位置として学習が行われる。このとき、学習モデルの入力は画像処理されたデータとなり、学習モデルの出力はそのデータに対して把持が成功するか失敗するかといった推定結果となる。また、視覚情報とロボットの把持成否結果の両方に基づき学習モデルが生成される場合は、例えば、画像を入力として、ロボットを使って対象物体を把持できるかどうかで学習が行われる。このとき、学習モデルの入力は画像情報となり、学習モデルの出力は画像情報から決定した位置における把持が成功するか失敗するかといった推定結果となる。なお、近接覚情報を用いる例については後述する。
Grasping success / failure probability distribution refers to a distribution indicating the probability of successful grasping, which is determined using a learning model created based on at least one of visual information, proximity information, and a robot's grasping success / failure determination result described later. It is. Although details will be described later, when a learning model is created based on visual information, for example, a human gives a true value to a position where the target object is likely to be successfully gripped, and a predicted gripping success position Learning is performed. The true value is correct data in learning. In this learning, the input of the learning model is image information, and the output of the learning model is the position in the image. Further, when a learning model is created based on the result of the robot's gripping success / failure determination, for example, recognition of the target object is performed by image processing. Then, with respect to the position in the image recognized by the image processing, a true value is given based on the result of the robot trying to determine whether or not it can be gripped, and learning is performed as a gripping success position or a gripping failure position. At this time, the input of the learning model is image-processed data, and the output of the learning model is an estimation result as to whether the grasping succeeds or fails with respect to the data. In addition, when a learning model is generated based on both visual information and a result of robot gripping success, learning is performed based on whether an object can be gripped using a robot, for example, using an image as an input. At this time, the input of the learning model is image information, and the output of the learning model is an estimation result indicating whether the gripping at the position determined from the image information is successful or unsuccessful. An example using proximity information will be described later.
把持位置とは、対象物体を把持するための位置である。例えばロボットハンドにおいて、吸着機構による吸着によって把持する場合には、その吸着機構で吸着する位置が把持位置である。また例えば、平行チャック機構により挟むことで把持する場合には、その挟む位置が把持位置である。
The gripping position is a position for gripping the target object. For example, when a robot hand is gripped by suction by a suction mechanism, the gripping position is the position to be suctioned by the suction mechanism. Further, for example, when gripping is performed by pinching with a parallel chuck mechanism, the pinching position is the gripping position.
システム状態とは、ロボットによって対象物を把持する把持作業を実現するロボットシステムが、正常状態になっているか、異常状態になっているか、正常状態と異常状態の中間状態であるかの、いずれの状態にあるかを表す。正常状態とは、システムが問題なく稼働していて把持作業を行うことができる状態である。異常状態とは、システムに問題が発生し、把持作業が出来ずにシステムが停止する状態である。中間状態とは、システムは稼働しているものの、把持作業のリトライが少なくとも1回以上行われ、このまま稼働を続けると異常状態になる可能性がある状態である。
The system state means that the robot system that realizes a gripping operation for gripping an object by the robot is in a normal state, an abnormal state, or an intermediate state between a normal state and an abnormal state. Indicates whether it is in a state. The normal state is a state where the system is operating without any problem and gripping work can be performed. The abnormal state is a state in which a problem occurs in the system and the system is stopped without gripping work. The intermediate state is a state in which the system is operating, but the gripping work is retried at least once and may continue to operate abnormally.
<第一の実施形態>
図1は、第一の実施形態に係る情報処理装置20とロボット10とを有して構成された情報処理システム(ロボットシステム100とする。)の概略構成例を示した図である。なお、図1に示した機器構成はあくまで一例であり、この構成例によって本発明の適用範囲が限定されるものではない。
<First embodiment>
FIG. 1 is a diagram illustrating a schematic configuration example of an information processing system (referred to as a robot system 100) configured to include the information processing apparatus 20 and the robot 10 according to the first embodiment. Note that the device configuration shown in FIG. 1 is merely an example, and the scope of the present invention is not limited by this configuration example.
ロボット10は、例えば多関節ロボットであり、ロボットハンド等の把持装置3と、ロボットアーム等のマニピュレータ1と、を有して構成されている。ロボット10は、マニピュレータ1の各関節の角度を変更することで、把持装置3の位置及びその把持装置3の姿勢を変更可能な位置姿勢変更機構を備える。位置姿勢変更機構は、電動モータによって駆動されてもよいし、油圧や空気圧等の流体圧で作動するアクチュエータによって駆動されてもよい。この位置姿勢変更機構は、情報処理装置20から出力される制御情報である動作指示情報に従って駆動される。
The robot 10 is, for example, an articulated robot, and includes a gripping device 3 such as a robot hand and a manipulator 1 such as a robot arm. The robot 10 includes a position and orientation change mechanism that can change the position of the gripping device 3 and the posture of the gripping device 3 by changing the angle of each joint of the manipulator 1. The position / orientation changing mechanism may be driven by an electric motor, or may be driven by an actuator that operates with fluid pressure such as hydraulic pressure or air pressure. This position and orientation change mechanism is driven in accordance with operation instruction information that is control information output from the information processing apparatus 20.
把持装置3は、ロボット10による対象物体の種類に応じた把持動作を行うためのツールである。本実施形態では、把持装置3として、モータ駆動可能なチャック機構により対象物体を把持可能なハンドや、空気を吸引したときの大気圧によって対象物体を吸着する吸着機構を用いたハンドなどを想定する。なお、把持装置3は、マニピュレータ1に対して着脱可能に取り付けられており、ワークの種類、対象物体の種類等に応じて交換可能であるとする。また、ロボット10は、多関節ロボットに限定されるものではなく、数値制御(Numerical Control:NC)が可能な可動式の機構を備えたものであってもよい。
The gripping device 3 is a tool for performing a gripping operation according to the type of target object by the robot 10. In the present embodiment, the gripping device 3 is assumed to be a hand that can grip a target object by a motor-driven chuck mechanism or a hand that uses a suction mechanism that sucks a target object by atmospheric pressure when air is sucked. . It is assumed that the gripping device 3 is detachably attached to the manipulator 1 and can be exchanged according to the type of workpiece, the type of target object, and the like. The robot 10 is not limited to an articulated robot, and may include a movable mechanism capable of numerical control (NC).
ロボット10は、情報処理装置20によって決定された行動を実施し、対象物体41を搬送したり把持したりする操作を実行する。なおこの場合の行動とは、対象物体41を認識あるいは操作するためのロボット10の動作のことである。
The robot 10 performs an action determined by the information processing apparatus 20 and performs an operation of transporting or gripping the target object 41. The action in this case is an operation of the robot 10 for recognizing or operating the target object 41.
対象物体41は、前述したように例えばビニール袋に包まれているケーブル等のような、ロボット10によって把持されて搬送されることが想定される物体である。図1に例示した対象物体41は、例えばバラ積み或いは整列配置された個々の物体の中で把持される対象物体となされている。例えばバラ積み状態にある複数の物体の中の一つが対象物体41になるため、求めた把持位置に伴いロボット10が把持動作を行うごとに対象物体41は更新されることになる。
As described above, the target object 41 is an object that is assumed to be held and transported by the robot 10, such as a cable wrapped in a plastic bag. The target object 41 illustrated in FIG. 1 is a target object to be gripped among, for example, individual objects arranged in a stack or aligned. For example, since one of a plurality of objects in a stacked state becomes the target object 41, the target object 41 is updated each time the robot 10 performs a gripping operation according to the obtained gripping position.
また対象物体41の周辺には、周辺物体42が存在する。周辺物体42は、把持される対象物体41の周辺に位置している全ての物体である。例えば、対象物体41の周辺に存在している当該対象物体と同種類のバラ積み或いは整列配置された物体や、対象物体41を収容している部品箱、その部品箱の周辺に置かれた物体も、全て周辺物体42に含まれる。
A peripheral object 42 exists around the target object 41. The peripheral objects 42 are all objects located around the target object 41 to be gripped. For example, an object of the same type as the target object existing around the target object 41 or an object arranged in an aligned manner, a part box containing the target object 41, and an object placed around the part box Are all included in the peripheral object 42.
またロボットシステム100は、撮像装置2と光源4とをさらに備えている。本実施形態の場合、撮像装置2および光源4は、図1に示すように、ロボット10に搭載されていているとする。なお、撮像装置2および光源4は、ロボット10に搭載されていている場合だけでなく、撮像対象空間の上方等に固定配置されていてもよいし、他の作業機械に搭載されていてもよい。また、撮像装置2は複数配置されていてもよい。
The robot system 100 further includes an imaging device 2 and a light source 4. In the present embodiment, it is assumed that the imaging device 2 and the light source 4 are mounted on the robot 10 as shown in FIG. Note that the imaging device 2 and the light source 4 are not only mounted on the robot 10, but may be fixedly disposed above the imaging target space or may be mounted on other work machines. . In addition, a plurality of imaging devices 2 may be arranged.
光源4は、例えばプロジェクタによって構成され、可視光を出射したり、レーザ光源から赤外光を出射したりすることで、対象物体41および周辺物体42に対して均一照明光やパターン光を投射する。
The light source 4 is configured by a projector, for example, and projects uniform illumination light or pattern light onto the target object 41 and the peripheral object 42 by emitting visible light or emitting infrared light from a laser light source. .
撮像装置2は、カメラや、光を検出するセンサ、フォトダイオードなどで構成される視覚センサであり、対象物体41および周辺物体42を撮像した画像情報を、視覚情報として取得する。そして、撮像装置2は、それら対象物体41および周辺物体42の視覚情報(画像情報)を情報処理装置20に出力する。なお、図1の構成例の場合、撮像装置2は、光源4からの光が投射された状態で対象物体41および周辺物体42を撮像するようになされているが、光源4からの光が投射されていない状態で対象物体41および周辺物体42を撮像することもできる。
The imaging device 2 is a visual sensor including a camera, a sensor that detects light, a photodiode, and the like, and acquires image information obtained by imaging the target object 41 and the peripheral object 42 as visual information. Then, the imaging device 2 outputs visual information (image information) of the target object 41 and the peripheral object 42 to the information processing device 20. In the case of the configuration example in FIG. 1, the imaging device 2 is configured to capture the target object 41 and the peripheral object 42 in a state where the light from the light source 4 is projected, but the light from the light source 4 is projected. The target object 41 and the peripheral object 42 can also be imaged in a state in which they are not performed.
また本実施形態の撮像装置2は、視覚情報として例えば二次元カラー画像情報を取得するが、距離画像情報を視覚情報として取得してもよく、それら二次元カラー画像情報と距離画像情報の両方を視覚情報として取得してもよい。距離画像情報は、一例として、光源4から投光した赤外線パターンを撮像装置2で読み取り、三角測量の原理で距離情報を得るLight Coding方式を用いることにより取得可能である。あるいは、距離画像情報は、投光した赤外線パルスが反射して戻ってくるまでの時間から距離情報を得るTime of Flight(ToF)方式により取得してもよい。その他にも、距離画像情報は、三角測量の原理によりステレオカメラを使った視差情報から距離情報を得る方式や、前述した各方式以外の他の方式を用いて取得してもよい。
In addition, the imaging apparatus 2 according to the present embodiment acquires, for example, two-dimensional color image information as visual information. However, the distance image information may be acquired as visual information, and both the two-dimensional color image information and the distance image information are obtained. It may be acquired as visual information. For example, the distance image information can be acquired by using a light coding method in which an infrared pattern projected from the light source 4 is read by the imaging device 2 and distance information is obtained by the principle of triangulation. Alternatively, the distance image information may be acquired by a Time of Flight (ToF) method that obtains distance information from the time until the projected infrared pulse is reflected and returned. In addition, the distance image information may be acquired using a method of obtaining distance information from parallax information using a stereo camera based on the principle of triangulation, or a method other than the above-described methods.
表示装置7は、ディスプレイとスピーカーを有した装置である。本実施形態の場合、表示装置7は、情報処理装置20からシステム状態推定結果を受けとり、そのシステム状態推定結果を画面表示する。
The display device 7 is a device having a display and a speaker. In the case of this embodiment, the display device 7 receives the system state estimation result from the information processing device 20 and displays the system state estimation result on the screen.
図2は、ロボットシステム100および情報処理装置20の機能ブロック図である。
図2に示すように、情報処理装置20は、取得部201と、確率決定部202と、位置決定部203と、制御部204と、判定部205と、状態推定部206と、表示制御部207とを有して構成されている。
FIG. 2 is a functional block diagram of the robot system 100 and the information processing apparatus 20.
As illustrated in FIG. 2, the information processing apparatus 20 includes an acquisition unit 201, a probability determination unit 202, a position determination unit 203, a control unit 204, a determination unit 205, a state estimation unit 206, and a display control unit 207. And is configured.
取得部201は、撮像装置2から出力される視覚情報を取得する。取得部201は、取得した視覚情報を画像データに変換し、確率決定部202に出力する。取得部201は、例えばキャプチャボードやメモリ(RAM)によって構成される。
The acquisition unit 201 acquires visual information output from the imaging device 2. The acquisition unit 201 converts the acquired visual information into image data and outputs the image data to the probability determination unit 202. The acquisition unit 201 is configured by, for example, a capture board or a memory (RAM).
確率決定部202は、取得部201が取得した画像データに基づいて、ロボット10による対象物体41の把持が成功または失敗する成否確率の分布(把持成否確率分布)を決定する。確率決定部202は、決定した把持成否確率分布を位置決定部203に送る。本実施形態の場合、把持成否確率分布を求める際には、学習モデルとして例えば深層学習モデルの一例であるCNN(Convolutional Neural Network)を使い推定を行う。その場合は、適宜、データベース(DB)を参照し、データベースに保存された学習モデルを利用する。確率の値は、例えば0から1の間の数値で表現され、把持に成功する確率が高い方が大きい値で表現される。
Based on the image data acquired by the acquisition unit 201, the probability determination unit 202 determines a success / failure probability distribution (grasping success / failure probability distribution) in which the robot 10 is successful or unsuccessful in gripping the target object 41. The probability determination unit 202 sends the determined gripping success / failure probability distribution to the position determination unit 203. In the case of this embodiment, when obtaining the grasping success / failure probability distribution, estimation is performed using, for example, a CNN (Convolutional Neural Network) which is an example of a deep learning model as a learning model. In that case, the learning model stored in the database is used by referring to the database (DB) as appropriate. The probability value is expressed by a numerical value between 0 and 1, for example, and is expressed by a larger value when the probability of successful grasping is higher.
位置決定部203は、把持装置3による把持のための把持位置と、その把持位置に把持装置3を移動させて対象物体を把持させるためのマニピュレータ1の目標位置および目標姿勢とを生成する。位置決定部203は、目標位置や目標姿勢だけでなく、マニピュレータ1の目標軌道を生成してもよい。以下、マニピュレータ1の目標位置と目標姿勢、さらに目標軌道をも含めて「目標位置姿勢」と表記し、特に、把持装置3による把持のためのマニピュレータ1の目標位置姿勢を「把持目標位置姿勢」と表記することにする。本実施形態の場合、位置決定部203は、確率決定部202により決定された把持成否確率分布に基づいて、把持装置3による把持のための把持位置と、マニピュレータ1の把持目標位置姿勢とを決定する。また、位置決定部203は、撮像装置2による撮影のためのマニピュレータ1の目標位置姿勢についても生成するものとする。以下、特に、撮像装置2による撮影のためのマニピュレータ1の目標位置姿勢を「撮影位置姿勢」と表記することにする。なお、撮像装置2による撮影のためのマニピュレータ1の撮影位置姿勢は、図示しない撮像位置姿勢決定部などにより生成されてもよい。そして、位置決定部203は、決定した把持位置と目標位置姿勢を制御部204に送る。
The position determining unit 203 generates a gripping position for gripping by the gripping device 3 and a target position and a target posture of the manipulator 1 for moving the gripping device 3 to the gripping position and gripping the target object. The position determination unit 203 may generate the target trajectory of the manipulator 1 as well as the target position and target posture. Hereinafter, the target position and posture of the manipulator 1 and the target trajectory are also referred to as “target position and posture”. Will be written as In the case of the present embodiment, the position determination unit 203 determines the gripping position for gripping by the gripping device 3 and the gripping target position / posture of the manipulator 1 based on the gripping success / failure probability distribution determined by the probability determination unit 202. To do. The position determination unit 203 also generates a target position / posture of the manipulator 1 for photographing by the imaging device 2. Hereinafter, in particular, the target position / posture of the manipulator 1 for photographing by the imaging device 2 will be referred to as “photographing position / posture”. Note that the shooting position and orientation of the manipulator 1 for shooting by the imaging device 2 may be generated by an imaging position and orientation determination unit (not shown) or the like. Then, the position determination unit 203 sends the determined gripping position and target position / posture to the control unit 204.
制御部204は、位置決定部203から取得した目標位置姿勢を基に、マニピュレータ1が目標位置姿勢になるように制御する。例えば、制御部204は、図1のようにロボット10に搭載されている撮像装置2が対象物体41および周辺物体42を撮影する時には、前述のように位置決定部203で決定された撮影位置姿勢を基にマニピュレータ1を制御する。そして、マニピュレータ1が撮影位置姿勢になって撮像装置2の移動が完了すると、制御部204は、撮像装置2に対し撮像を行わせるための撮影トリガーを送る。なおこの場合、制御部204は、撮像装置2による撮影に合わせて光源4を発光させるような発光制御についても適宜行う。また、制御部204は、把持装置3によって対象物体41の把持が行われる時には、前述のように位置決定部203で決定された把持目標位置姿勢を基にマニピュレータ1を制御して、把持装置3が対象物体41を把持できるようにする。そして、マニピュレータ1が把持目標位置姿勢になって把持装置3の移動が完了すると、制御部204は、把持装置3に対し対象物体41を把持位置で把持させるための把持トリガーを送る。
The control unit 204 performs control so that the manipulator 1 becomes the target position and orientation based on the target position and orientation acquired from the position determination unit 203. For example, when the imaging device 2 mounted on the robot 10 captures the target object 41 and the peripheral object 42 as illustrated in FIG. 1, the control unit 204 captures the capturing position / posture determined by the position determining unit 203 as described above. The manipulator 1 is controlled based on the above. When the manipulator 1 is in the shooting position and orientation and the movement of the imaging device 2 is completed, the control unit 204 sends a shooting trigger for causing the imaging device 2 to perform imaging. In this case, the control unit 204 also appropriately performs light emission control such that the light source 4 emits light in accordance with photographing by the imaging device 2. Further, when the target object 41 is gripped by the gripping device 3, the control unit 204 controls the manipulator 1 based on the gripping target position / posture determined by the position determination unit 203 as described above, and the gripping device 3. Can grasp the target object 41. When the manipulator 1 reaches the gripping target position and posture and the movement of the gripping device 3 is completed, the control unit 204 sends a gripping trigger for gripping the target object 41 at the gripping position to the gripping device 3.
判定部205は、把持装置3において対象物体41の把持動作が実行されたときに、その把持が成功したか失敗したかの判定を行い、その把持成否結果を状態推定部206に出力する。例えば、把持装置3が吸着機構である場合、吸着時の真空到達度を計測することによって、把持が成功したかどうかの判定を行う。具体的には、吸着成功時の真空到達度の閾値を予め設定しておき、判定部205は、吸着動作実行時に真空到達度を計測して、その計測値と閾値とを比較する。そして、判定部205は、真空到達度の計測値が閾値に達していれば吸着できているため吸着成功(把持成功)と判定し、一方、計測値が閾値に達していなければ吸着できていないため吸着失敗(把持失敗)と判定する。また例えば、把持装置3が平行チャック機構である場合には、その平行チャック機構の把持幅を評価することで、把持が成功したかどうかの判定を行う。具体的には、把持位置における対象物体41の大きさ(幅)を予め設定しておき、判定部205は、把持動作実行時に平行チャック機構の把持幅を計測し、その把持幅が対象物体41の把持位置の幅に合致しているのであれば把持成功と判定する。一方、判定部205は、平行チャック機構の把持幅が対象物体41の把持位置の幅に合致していない場合には、把持が失敗したと判定する。例えば平行チャック機構が閉じ過ぎている場合には、何も把持できていない状態である可能性が高いので、把持失敗と判定する。また例えば、平行チャック機構が開き過ぎている場合には、目標とは異なる物体あるいは複数の物体を把持したことで、把持幅が大きくなっている可能性があるので、把持失敗と判定する。
When the gripping operation of the target object 41 is executed in the gripping device 3, the determination unit 205 determines whether the gripping has succeeded or fails, and outputs the gripping success / failure result to the state estimation unit 206. For example, when the gripping device 3 is an adsorption mechanism, it is determined whether or not the gripping is successful by measuring the degree of vacuum at the time of suction. Specifically, a threshold value for the degree of vacuum at the time of successful suction is set in advance, and the determination unit 205 measures the degree of vacuum at the time of performing the suction operation and compares the measured value with the threshold value. Then, the determination unit 205 determines that the suction is successful (successful gripping) because the suction is achieved if the measurement value of the degree of vacuum reaches the threshold, and the suction cannot be performed if the measured value does not reach the threshold. Therefore, it is determined as an adsorption failure (gripping failure). Further, for example, when the gripping device 3 is a parallel chuck mechanism, it is determined whether the gripping is successful by evaluating the grip width of the parallel chuck mechanism. Specifically, the size (width) of the target object 41 at the grip position is set in advance, and the determination unit 205 measures the grip width of the parallel chuck mechanism when the gripping operation is executed, and the grip width is the target object 41. If it matches the width of the gripping position, it is determined that the gripping is successful. On the other hand, the determination unit 205 determines that the gripping has failed when the gripping width of the parallel chuck mechanism does not match the gripping position width of the target object 41. For example, if the parallel chuck mechanism is too closed, there is a high possibility that nothing has been gripped, and it is determined that gripping has failed. Further, for example, when the parallel chuck mechanism is opened too much, the grip width may be increased by gripping an object or a plurality of objects different from the target.
状態推定部206は、位置決定部203を経由して確率決定部202から把持成否確率分布を取得し、また、判定部205から把持成否判定結果を取得する。そして、状態推定部206は、把持成否確率分布と把持成否判定結果とに基づいて、ロボットシステム100におけるシステム状態を推定する。本実施形態の場合、状態推定部206は、ロボットシステム100が、前述した正常状態、異常状態、中間状態のいずれの状態になるかを推定する。そして、状態推定部206は、そのシステム状態推定結果を、表示制御部207に出力する。
The state estimation unit 206 acquires the gripping success / failure probability distribution from the probability determination unit 202 via the position determination unit 203, and acquires the gripping success / failure determination result from the determination unit 205. Then, the state estimation unit 206 estimates a system state in the robot system 100 based on the gripping success / failure probability distribution and the gripping success / failure determination result. In this embodiment, the state estimation unit 206 estimates whether the robot system 100 is in the normal state, the abnormal state, or the intermediate state described above. Then, the state estimation unit 206 outputs the system state estimation result to the display control unit 207.
表示制御部207は、状態推定部206からシステム状態推定結果を取得し、そのシステム状態推定結果を基にオペレータ等のユーザへ通知する通知制御を行う。本実施形態の場合、オペレータへの通知は表示により行われる例を挙げており、このため表示制御部207は、システム状態推定結果を表示装置7に表示する表示内容を制御することによる通知を行う。これにより、表示装置7には、ロボットシステム100の状態が正常状態、異常状態、中間状態のいずれの状態になるかの推定結果が表示される。すなわち本実施形態の場合、表示装置7にシステム状態推定結果が表示されることにより、オペレータ等のユーザに対して、ロボットシステム100の状態が正常状態、異常状態、中間状態のいずれの状態になるかの推定結果を適切に通知することができる。ユーザは、そのシステム状態の推定結果を基に、予防保全、事後保全を容易に行えることになり、その結果、ロボットシステムにおける生産性を高めることが可能となる。
The display control unit 207 performs notification control for acquiring a system state estimation result from the state estimation unit 206 and notifying a user such as an operator based on the system state estimation result. In the case of the present embodiment, an example is given in which notification to the operator is performed by display. For this reason, the display control unit 207 performs notification by controlling display contents for displaying the system state estimation result on the display device 7. . Accordingly, the display device 7 displays an estimation result as to whether the robot system 100 is in a normal state, an abnormal state, or an intermediate state. That is, in the case of this embodiment, the system state estimation result is displayed on the display device 7, so that the state of the robot system 100 is in a normal state, an abnormal state, or an intermediate state for a user such as an operator. Such an estimation result can be notified appropriately. The user can easily perform preventive maintenance and subsequent maintenance based on the estimation result of the system state, and as a result, the productivity in the robot system can be increased.
図12は、本実施形態の情報処理装置20のハードウェア構成の一例を示した図である。
本実施形態の情報処理装置20は、ロボット10の動作を制御するロボット制御装置であり、例えばパーソナルコンピュータ(PC)により構成されている。図12に示すように、情報処理装置20は、CPU21と、ROM22と、RAM23と、外部メモリ24と、入力部25と、表示部26と、通信I/F27と、システムバス28とを有して構成されている。
FIG. 12 is a diagram illustrating an example of a hardware configuration of the information processing apparatus 20 according to the present embodiment.
The information processing apparatus 20 according to the present embodiment is a robot control apparatus that controls the operation of the robot 10 and is configured by, for example, a personal computer (PC). As illustrated in FIG. 12, the information processing apparatus 20 includes a CPU 21, a ROM 22, a RAM 23, an external memory 24, an input unit 25, a display unit 26, a communication I / F 27, and a system bus 28. Configured.
CPU21は、情報処理装置20における動作を統括的に制御するものであり、システムバス28を介して、各構成部(21〜27)を制御する。ROM22は、CPU21が処理を実行するために必要なプログラムを記憶する不揮発性メモリである。なお、当該プログラムは、外部メモリ24や着脱可能な記憶媒体(不図示)に記憶されていてもよい。RAM23は、CPU21の主メモリ、ワークエリアとして機能する。すなわち、CPU21は、処理の実行に際してROM22から必要なプログラムをRAM23にロードし、当該プログラムを実行することで各種の機能動作を実現する。例えば図2の情報処理装置20内の取得部201、確率決定部202、位置決定部203、制御部204、判定部205、状態推定部206、表示制御部207の各機能は、CPU21がプログラムを実行することにより実現することができる。
The CPU 21 controls the overall operation of the information processing apparatus 20 and controls each component (21 to 27) via the system bus 28. The ROM 22 is a non-volatile memory that stores a program necessary for the CPU 21 to execute processing. The program may be stored in the external memory 24 or a removable storage medium (not shown). The RAM 23 functions as a main memory and work area for the CPU 21. That is, the CPU 21 loads various programs from the ROM 22 to the RAM 23 when executing the processing, and implements various functional operations by executing the programs. For example, each function of the acquisition unit 201, probability determination unit 202, position determination unit 203, control unit 204, determination unit 205, state estimation unit 206, and display control unit 207 in the information processing apparatus 20 in FIG. This can be realized by executing.
外部メモリ24は、例えば、CPU21がプログラムを用いた処理を行う際に必要な各種データや各種情報を記憶している。また、外部メモリ24には、例えば、CPU21がプログラムを用いた処理を行うことにより得られた各種データや各種情報が記憶される。入力部25は、例えばキーボードやマウスのポインティングデバイスにより構成され、オペレータ(ユーザ)が入力部25を介して当該情報処理装置20に指示を与えることができるようになっている。表示部26は、液晶ディスプレイ(LCD)等のモニタで構成される。表示部26は、前述した表示装置7に対応している。通信I/F27は、外部機器と通信するためのインターフェースである。システムバス28は、CPU21、ROM22、RAM23、外部メモリ24、入力部25、表示部26及び通信I/F27を通信可能に接続する。このように、情報処理装置20は、通信I/F27を介して、外部機器であるロボット10、撮像装置2、把持装置3、光源4等とそれぞれ通信可能に接続されており、これらの外部機器の動作を制御する。
The external memory 24 stores various data and various information necessary for the CPU 21 to perform processing using a program, for example. The external memory 24 stores various data and various information obtained by the CPU 21 performing processing using a program, for example. The input unit 25 is configured by a keyboard or mouse pointing device, for example, and an operator (user) can give an instruction to the information processing apparatus 20 via the input unit 25. The display unit 26 includes a monitor such as a liquid crystal display (LCD). The display unit 26 corresponds to the display device 7 described above. The communication I / F 27 is an interface for communicating with an external device. The system bus 28 connects the CPU 21, ROM 22, RAM 23, external memory 24, input unit 25, display unit 26, and communication I / F 27 so that they can communicate with each other. As described above, the information processing apparatus 20 is connected to the robot 10, the imaging apparatus 2, the gripping apparatus 3, the light source 4, and the like, which are external apparatuses, via the communication I / F 27 so that they can communicate with each other. To control the operation.
図3は、図1に示したロボットシステム100および図12に示した情報処理装置20が実行するロボット制御手順を示すフローチャートである。図3に示される処理は、例えば、図12に示した情報処理装置20のCPU21が、ROM22もしくは外部メモリ24に格納されたプログラムを読み出して実行することにより実現される。ただし、図3の処理の一部または全部が、専用のハードウェアにより実現されてもよい。図3の処理は、例えばオペレータ(ユーザ)がロボットシステム100を起動したときに開始される。なお、図3の処理の開始のタイミングは、ロボットシステム100の起動時に限定されるものではない。以下の説明では、図3のフローチャートの各処理ステップS1〜ステップS16をS1〜S16と略記する。これらのことは、後述する他のフローチャートにおいても同様であるとする。
FIG. 3 is a flowchart showing a robot control procedure executed by the robot system 100 shown in FIG. 1 and the information processing apparatus 20 shown in FIG. The process shown in FIG. 3 is realized, for example, by the CPU 21 of the information processing apparatus 20 shown in FIG. 12 reading and executing a program stored in the ROM 22 or the external memory 24. However, part or all of the processing in FIG. 3 may be realized by dedicated hardware. The process of FIG. 3 is started when the operator (user) activates the robot system 100, for example. Note that the start timing of the process in FIG. 3 is not limited to when the robot system 100 is activated. In the following description, the processing steps S1 to S16 in the flowchart of FIG. 3 are abbreviated as S1 to S16. These are the same in other flowcharts to be described later.
先ずS1において、CPU21は、システムの初期化処理を行う。すなわちCPU21は、ROM22もしくは外部メモリ24に格納されたプログラムをロードし、RAM23上に展開して実行可能な状態とする。また、CPU21は、情報処理装置20に接続された各機器のパラメータの読み込みや初期位置への復帰を行い、使用可能な状態にする。
First, in S1, the CPU 21 performs a system initialization process. That is, the CPU 21 loads a program stored in the ROM 22 or the external memory 24, expands it on the RAM 23, and makes it executable. In addition, the CPU 21 reads parameters of each device connected to the information processing apparatus 20 and returns to the initial position to make it usable.
次にS2において、位置決定部203は、撮像装置2による撮影のためのマニピュレータ1の撮影位置姿勢(撮影時の目標位置姿勢)を決定する。そしてS2において決定された撮影位置姿勢の情報は、制御部204に送られる。ここで、決定される撮影位置姿勢は、対象物体41や周辺物体42を撮像することができるのであれば、乱数を基に決定されてもよいし、設計者が予め固定値で決めておいてもよい。その他にも、撮影位置姿勢は、範囲を指定してその範囲内において乱数を基に決定してもよいし、これら以外の方法で決定してもよい。また撮影位置姿勢は、対象物体41や周辺物体42が入った部品箱の検出に応じて決定されてもよい。例えば、部品箱の形状や色が既知であり、大凡配置される位置が既知である場合、位置決定部203は、部品箱およびその周辺を含む位置を撮像装置2で撮影して取得部201から確率決定部202を経由した知覚情報を基に決定する。例えば、位置決定部203は、部品箱および周辺を含む位置を撮影して取得された知覚情報を基に、部品箱の位置姿勢を検出し、その検出結果から対象物体41に対する撮影位置を決定し、その撮影位置を基にマニピュレータ1の撮影位置姿勢を決定する。その他、例えば部品箱に所定のマーカーを貼っておき、撮像装置2にて取得した視覚情報からマーカーを検出して部品箱の位置姿勢を検出し、その検出果を基に対象物体41の撮影位置を決定して前述同様に撮影位置姿勢を決定してもよい。
Next, in S <b> 2, the position determination unit 203 determines the shooting position / posture (target position / posture at the time of shooting) of the manipulator 1 for shooting by the imaging device 2. Information on the shooting position and orientation determined in S <b> 2 is sent to the control unit 204. Here, the determined shooting position / orientation may be determined based on a random number as long as the target object 41 and the peripheral object 42 can be imaged, or the designer determines in advance a fixed value. Also good. In addition, the shooting position and orientation may be determined based on a random number within a specified range, or may be determined by a method other than these. Further, the shooting position and orientation may be determined according to detection of a component box containing the target object 41 and the peripheral object 42. For example, when the shape and color of the component box are known, and the position where the component box is generally arranged is known, the position determination unit 203 captures the position including the component box and its surroundings with the imaging device 2, and acquires from the acquisition unit 201. Determination is based on perceptual information via the probability determination unit 202. For example, the position determination unit 203 detects the position and orientation of the component box based on the perceptual information acquired by shooting the position including the component box and the periphery, and determines the shooting position with respect to the target object 41 from the detection result. The photographing position / posture of the manipulator 1 is determined based on the photographing position. In addition, for example, a predetermined marker is pasted on the component box, the marker is detected from the visual information acquired by the imaging device 2 to detect the position and orientation of the component box, and the shooting position of the target object 41 is based on the detection result. And the shooting position and orientation may be determined in the same manner as described above.
また、部品箱の検出結果から、部品箱に入っている部品種が分かる場合、CPU21は、その部品種に応じて把持位置の決定方法を切り替えてもよい。本実施形態の場合、深層学習を利用することで把持位置を決定するが、把持位置は、深層学習を利用して決定する場合だけでなく、それ以外の方法により決定されてもよい。例えば、対象物体41が充電器やバッテリー、ストラップのような長方体形状で部品箱内に配置されている場合、長方体形状のモデル(CADモデルあるいはCGモデル)を利用したフィッティング処理により把持位置を決定してもよい。具体的には、対象物体41の三辺の寸法が事前に分かっている場合、それら三辺の値を設定することで、長方体形状のモデルを設定する。さらに、設定した長方体形状のモデルに基づき、撮像装置2が対象物体41を撮像して得た距離画像に対してモデルフィッティングを行い、対象物体41の位置姿勢を推定する。そして、推定した位置姿勢に基づき、事前に設定しておいた面や、把持可能であると推定された面が、把持位置として決定される。
When the component type contained in the component box is known from the detection result of the component box, the CPU 21 may switch the gripping position determination method according to the component type. In the present embodiment, the gripping position is determined by using deep learning, but the gripping position may be determined not only by using deep learning but also by other methods. For example, when the target object 41 has a rectangular shape such as a charger, a battery, or a strap and is arranged in the component box, it is gripped by a fitting process using a rectangular shape model (CAD model or CG model). The position may be determined. Specifically, when the dimensions of the three sides of the target object 41 are known in advance, a rectangular model is set by setting the values of these three sides. Further, based on the set rectangular model, the image capturing apparatus 2 performs model fitting on the distance image obtained by imaging the target object 41 to estimate the position and orientation of the target object 41. Then, based on the estimated position and orientation, a surface set in advance or a surface estimated to be grippable is determined as a gripping position.
把持可能であると推定される把持位置を決定する方法としては、例えば、吸着を行うのであれば吸着パッドが接触可能な平面を把持位置として決定する。また、平行チャックにより挟むのであれば、平行チャック接触面が十分に接触できる面積のある平行な面を把持位置として決定する。他の対象物体41の置き方の例として、対象物体41が規則的に配置されている場合、画像による認識処理を行わずに把持位置を決定してもよい。例えば、対象物体41が、部品箱内に積み重ねられて配置された取扱説明書やコンパクトディスクのような物体である場合、部品箱の位置姿勢が分かれば対象物体41の位置姿勢も限定される。そのため、部品箱内の決まった位置を把持位置として把持制御を行うことで、対象物体41を把持してもよい。
As a method of determining the gripping position estimated to be grippable, for example, if suction is performed, a plane that can be contacted by the suction pad is determined as the gripping position. In addition, when sandwiched between parallel chucks, a parallel surface having an area that can sufficiently contact the parallel chuck contact surface is determined as a gripping position. As an example of how to place the other target object 41, when the target object 41 is regularly arranged, the gripping position may be determined without performing recognition processing using an image. For example, when the target object 41 is an object such as an instruction manual or a compact disk that is stacked in the component box, the position and orientation of the target object 41 are limited if the position and orientation of the component box are known. Therefore, the target object 41 may be gripped by performing gripping control with a fixed position in the component box as a gripping position.
把持制御の動作は、パレタイズのように同一平面上を規則的に移動する方法や、高さ方向だけ変化させて移動させる方法、あるいは対象物体41を把持できるならばこれら以外の方法でもよい。対象物体41の高さだけ撮像装置2から得た距離画像から推定するなど、一部に認識処理を用いてもよい。
The operation of the grip control may be a method of regularly moving on the same plane like palletizing, a method of moving by changing only in the height direction, or other methods as long as the target object 41 can be gripped. A recognition process may be partially used, such as estimating the distance of the target object 41 from the distance image obtained from the imaging device 2.
次にS3において、制御部204は、S2で決定された撮影位置姿勢を基に、撮像装置2による撮影のためのマニピュレータ1の制御を行う。具体的には、制御部204は、S2で決定された撮影位置姿勢を基に、マニピュレータ1をどのように動かせばよいのかを決定する。例えば、制御部204は、S2で決定された撮影位置姿勢となるようにマニピュレータ1を移動させるために、目標となる位置姿勢情報を順運動学によってマニピュレータ1の関節角度情報に変換する。そして、制御部204は、それら関節角度情報を基に、マニピュレータ1の各関節のアクチュエータを動作させるための指令値を計算して、ロボット10の不図示のコントローラに送る。これにより、マニピュレータ1は、その指令値に基づいて動作することになり、その結果、マニピュレータ1に搭載されている撮像装置2は、S2で決定された撮影位置姿勢となされた状態で撮影を行えるようになる。
Next, in S3, the control unit 204 controls the manipulator 1 for photographing by the imaging device 2 based on the photographing position and orientation determined in S2. Specifically, the control unit 204 determines how to move the manipulator 1 based on the shooting position and orientation determined in S2. For example, the control unit 204 converts the target position / orientation information into joint angle information of the manipulator 1 by forward kinematics in order to move the manipulator 1 so as to be the photographing position / orientation determined in S2. Then, the control unit 204 calculates a command value for operating the actuator of each joint of the manipulator 1 based on the joint angle information, and sends it to a controller (not shown) of the robot 10. As a result, the manipulator 1 operates based on the command value, and as a result, the imaging device 2 mounted on the manipulator 1 can perform imaging with the imaging position and orientation determined in S2. It becomes like this.
次にS4において、制御部204は、撮像装置2を制御して撮像を実行させる。これにより、撮像装置2では、対象物体41および周辺物体42の撮像が行われる。
次にS5において、取得部201は、撮像装置2が撮像した画像情報を、対象物体41および周辺物体42の視覚情報として取得し、確率決定部202に送る。
Next, in S4, the control unit 204 controls the imaging device 2 to execute imaging. Thereby, in the imaging device 2, the target object 41 and the peripheral object 42 are imaged.
Next, in S <b> 5, the acquisition unit 201 acquires image information captured by the imaging device 2 as visual information of the target object 41 and the peripheral object 42, and sends it to the probability determination unit 202.
次のS6において、確率決定部202は、S5で取得部201により取得された視覚情報を基に、対象物体41の把持に成功/失敗する確率分布を求める。本実施形態の場合、確率決定部202は、例えば二次元カラー画像情報を用いた深層学習により生成された学習モデルを利用することで確率分布を決定する。
In the next S6, the probability determining unit 202 obtains a probability distribution that succeeds / fails in gripping the target object 41 based on the visual information acquired by the acquiring unit 201 in S5. In the case of this embodiment, the probability determination unit 202 determines a probability distribution by using a learning model generated by deep learning using, for example, two-dimensional color image information.
ここで本実施形態において、学習モデルは、詳細には例えば以下のようにして生成されている。例えば、把持装置3に吸着機構が用いられる場合、事前の深層学習では、例えばバラ積み状態の対象物体41を撮影した二次元カラー画像の中でどの位置を吸着すれば対象物体41を把持できるかを、人間が当該画像上で真値を与えるようにする。なお、真値とは、前述したように学習における正解データのことである。また、正解データとは、深層学習の一種であるCNNに入力する画像において、把持に成功すると学習される画像中の位置のことである。真値の与え方は、例えばマウスなどの入力装置を介して、二次元カラー画像が表示された画面上で位置を指定することにより行われる。このとき、バラ積み状態がそれぞれ異なった複数の画像に対して、一つあるいは複数の真値を与えるようにする。さらに、真値を与えた画像に対して、マウスを介して指示した画素を注目画素とし、その注目画素およびその周辺画素を含む適当なサイズの画像領域(例えば128×128画素のRGB画像)を切り出す。そして、切り出した画像に対して、前述のように与えた真値を正解ラベルとして学習を行い、その学習データを蓄積する。なお、学習データを生成する際には、画像内の画像領域を正解か失敗かで分けるようにしてもよい。例えば、マウスで指示した注目画素を含む画像領域は把持に成功する位置とし、指示されていない画素を含む画像領域は把持に失敗する位置として学習してもよい。本実施形態の場合、把持成否の確率分布を決定する際に利用される学習モデルは、以上のようにして生成されて蓄積された学習データを使って、例えばCNNによって学習することにより生成される。
Here, in the present embodiment, the learning model is generated in detail as follows, for example. For example, when a suction mechanism is used for the gripping device 3, in the prior deep learning, for example, which position in the two-dimensional color image obtained by capturing the target objects 41 in a stacked state can be gripped by the target object 41. A human gives a true value on the image. The true value is correct data in learning as described above. The correct answer data is a position in the image that is learned when the gripping is successful in an image input to the CNN that is a kind of deep learning. The method of giving a true value is performed by designating a position on a screen on which a two-dimensional color image is displayed via an input device such as a mouse. At this time, one or a plurality of true values are given to a plurality of images having different stacked states. Furthermore, with respect to an image given a true value, a pixel indicated through the mouse is set as a target pixel, and an image area of an appropriate size including the target pixel and its peripheral pixels (for example, an RGB image of 128 × 128 pixels) is selected. cut. Then, learning is performed on the clipped image using the true value given as described above as the correct answer label, and the learning data is accumulated. When generating learning data, the image area in the image may be divided according to whether it is correct or unsuccessful. For example, an image region including the target pixel indicated by the mouse may be learned as a position where the grasp is successful, and an image region including a pixel not designated may be learned as the position where the grasp fails. In the case of the present embodiment, the learning model used when determining the probability distribution of the gripping success / failure is generated by learning with, for example, the CNN using the learning data generated and accumulated as described above. .
そして、確率決定部202は、視覚情報として二次元カラー画像を入力とし、前述したような深層学習により生成された学習モデルを使って、対象物体41に対する把持成否の確率分布を決定する。把持成否の確率分布を決定する際、確率決定部202は、例えば、画像内で対象物体41が存在する範囲が分かる場合には、ROI(Region of Interest)範囲を設定する。例えば、対象物体41が部品箱に入っているような場合には、その部品箱の内側を対象物体41が存在すると推定されるROI範囲として設定してもよい。この時の部品箱の位置姿勢は、撮像装置2によって部品箱を撮影して得た画像データを基に推定してもよいし、事前に設定しておいてもよく、さらにこれら以外の方法で設定してもよい。
Then, the probability determination unit 202 receives a two-dimensional color image as visual information, and determines the probability distribution of the gripping success / failure for the target object 41 using a learning model generated by deep learning as described above. When determining the probability distribution of the gripping success / failure, the probability determination unit 202 sets an ROI (Region of Interest) range, for example, when the range in which the target object 41 exists in the image is known. For example, when the target object 41 is in a parts box, the inside of the parts box may be set as the ROI range in which the target object 41 is estimated to exist. The position and orientation of the component box at this time may be estimated based on image data obtained by photographing the component box with the imaging device 2, may be set in advance, and may be set by other methods. It may be set.
次に、確率決定部202は、そのROI範囲内全体をスキャンするように、スライディングウィンドウにより画像の切り出しを行う。このときの確率決定部202は、画像内の、ある位置の画素を推定画素とし、その推定画素を中心として画像が適当なサイズ(例えば128×128画素)になるように切り出しを行って、推定画素とその周辺画素を含む領域を設定する。そして、確率決定部202は、その推定画素およびその周辺画素を含む領域の画像をCNNに入力して、それぞれの領域ごとに把持成否確率を決定する。ここで、把持成否確率は、推定画素であるスライディングウィンドウの中心画素に対して与えられる。またその際、確率決定部202は、ROI範囲外の画素位置については、把持が失敗する位置として成否確率を決定する。そして、確率決定部202は、前述のようにして求めた推定画素とその周辺画素を含む領域に対して決定した把持成否確率を用い、視覚情報として取得した二次元カラー画像に対して把持成否確率分布を決定する。
Next, the probability determination unit 202 cuts out an image using a sliding window so as to scan the entire ROI range. At this time, the probability determination unit 202 uses a pixel at a certain position in the image as an estimated pixel, and cuts out the estimated size so that the image has an appropriate size (for example, 128 × 128 pixels). A region including a pixel and its peripheral pixels is set. Then, the probability determination unit 202 inputs an image of the region including the estimated pixel and the peripheral pixels to the CNN, and determines the gripping success / failure probability for each region. Here, the gripping success / failure probability is given to the center pixel of the sliding window, which is the estimated pixel. At that time, the probability determination unit 202 determines a success / failure probability as a position where the gripping fails for a pixel position outside the ROI range. Then, the probability determination unit 202 uses the gripping success / failure probability determined for the region including the estimated pixel and the surrounding pixels obtained as described above, and performs the gripping success / failure probability on the two-dimensional color image acquired as visual information. Determine the distribution.
なお前述の例では、ROI範囲を設定したが、ROI範囲は必ずしも設定しなくてもよく、画像全体に対して成否確率の推定を行ってもよい。また、把持成否確率を求める時、必ずしも1画素ごとに確率を決定する必要はなく、計算時間などとのトレードオフを考慮して適切なストライドを設定して、スライディングウィンドウにより決定してもよい。また、必ずしもスライディングウィンドウを使う必要はなく、画像のセグメンテーションによって、画素ごとに成否確率の推定を行い、画像全体をCNNの入力として、把持成否確率分布を決定してもよい。
In the above example, the ROI range is set, but the ROI range is not necessarily set, and the success / failure probability may be estimated for the entire image. Further, when obtaining the gripping success / failure probability, it is not always necessary to determine the probability for each pixel, and an appropriate stride may be set in consideration of a trade-off with calculation time or the like and determined by a sliding window. Further, it is not always necessary to use a sliding window, and the probability of success / failure may be estimated for each pixel by image segmentation, and the grasp success / failure probability distribution may be determined using the entire image as an input of the CNN.
前述のようにして決定される確率分布は、例えば、二次元カラー画像の画素ごとに0から1までの連続的な値として求められる。図4(a)〜図4(c)は、二次元カラー画像から決定された把持成否確率分布を説明する図である。図4(a)は、図1に示したロボット10と対象物体41の相対的位置関係において、撮像装置2が対象物体41と周辺物体42を撮影したときに得られる二次元カラー画像のイメージ図であり、物体画像401が対象物体41の画像を示している。図4(b)は、図4(a)の二次元カラー画像から決定された把持成否確率分布を、図4(a)の二次元カラー画像に重畳表示した画像である。図4(b)では、濃度の濃い部分402ほど、把持が成功する確率が高い(1に近い値)と推定される位置を表している。本実施形態の場合、把持成否確率には閾値thが設定されており、閾値以下の位置は一定の濃さ(0あるいは0に近い値)で示している。図4(c)は、図4(b)の把持成否確率分布を示した図において、図中のA−A'の断面で見たときの把持成否確率分布の高さを示した図である。なお、図4(b)、図4(c)には濃度の濃い部分(402)が複数あるが、これは把持する対象物体41の候補が複数あることを意味している。このようにして決定された把持成否確率分布は位置決定部203に送られる。
The probability distribution determined as described above is obtained as a continuous value from 0 to 1 for each pixel of the two-dimensional color image, for example. FIG. 4A to FIG. 4C are diagrams for explaining the gripping success / failure probability distribution determined from the two-dimensional color image. 4A is an image diagram of a two-dimensional color image obtained when the imaging apparatus 2 images the target object 41 and the peripheral object 42 in the relative positional relationship between the robot 10 and the target object 41 shown in FIG. Yes, the object image 401 shows the image of the target object 41. FIG. 4B is an image in which the gripping success / failure probability distribution determined from the two-dimensional color image of FIG. 4A is superimposed and displayed on the two-dimensional color image of FIG. FIG. 4B shows a position where the darker portion 402 is estimated to have a higher probability of successful gripping (a value close to 1). In the case of the present embodiment, a threshold value th is set for the gripping success / failure probability, and positions below the threshold value are indicated by a constant darkness (0 or a value close to 0). FIG. 4C is a diagram showing the height of the gripping success / failure probability distribution when viewed in the cross section AA ′ in the diagram in the diagram showing the gripping success / failure probability distribution of FIG. 4B. . 4B and 4C have a plurality of dark portions (402), this means that there are a plurality of candidates for the target object 41 to be grasped. The gripping success / failure probability distribution determined in this way is sent to the position determination unit 203.
なお、前述の説明では、深層学習を把持が成功する領域を認識する処理に利用した例を挙げたが、深層学習は、それ以外、例えば領域の認識から把持までの処理に利用してもよい。例えば、把持装置3に吸着機構が用いられる場合、事前の学習として、バラ積み状態の対象物体41の二次元カラー画像を入力として、ロボット10が画像内のどの位置を把持するか把持位置を計算する。なお、このときの把持位置の計算は、画像処理を使って決定してもよいし、乱数で決定してもよいし、設計者が予め範囲を指定して、その範囲内において乱数で決定してもよいし、これら以外の方法で決定してもよい。そして、把持位置が決定されると、その把持位置に対してロボット10が移動するように制御して、把持動作が実行される。その後、その把持動作の実行の結果、把持に成功したか、失敗したかの結果に基づき、入力とした二次元カラー画像の一部である、把持した位置を注目画素とし、その注目画素と周囲の画素を含む領域に対して把持成功/失敗のラベルを付ける。このラベルを付ける範囲は、吸着機構を用いている場合には、入力とした二次元カラー画像における吸着パッドの直径分の範囲の画素に対して付けてもよいし、適宜調整してもよい。このような方法によって、学習データを蓄積し、学習モデルを生成することができる。そして、確率決定部202は、当該作成した学習モデルを用い、二次元カラー画像を入力として、把持成否の確率分布を深層学習により推定する。また、領域認識の処理を深層学習により学習した前述の例の場合、学習モデルへの入力は二次元カラー画像であり、学習モデルの出力は人が把持に成功するであろうと考えてつけた真値の位置である。これに対し、領域認識から把持までの処理に学習を利用した場合、学習モデルへの入力は同じ二次元カラー画像であるが、学習モデルの出力はロボット10で実際に把持を行う場合の成否推定結果となる。なお、この推定時は、前述した領域認識の処理を深層学習により行った方法と同様に、ROI範囲を設定したりスライディングウィンドウを使用したりしてもよい。この例の場合、二次元カラー画像を入力することで、ロボット10により把持する時の把持成否確率分布が決定される。
In the above description, an example has been given in which deep learning is used for processing for recognizing a region where gripping is successful, but deep learning may be used for other processing, for example, from region recognition to gripping. . For example, when a suction mechanism is used in the gripping device 3, as a prior learning, a two-dimensional color image of the target object 41 in a stacked state is input, and a gripping position that the robot 10 grips in the image is calculated. To do. Note that the calculation of the gripping position at this time may be determined by using image processing, may be determined by a random number, or a range is determined in advance by a designer by designating a range in advance. Alternatively, it may be determined by a method other than these. When the gripping position is determined, the robot 10 is controlled so as to move relative to the gripping position, and a gripping operation is executed. After that, based on the result of the gripping operation, whether the gripping was successful or unsuccessful, the gripped position that is part of the input 2D color image is set as the target pixel, and the target pixel and its surroundings A label indicating the success / failure of the gripping is attached to the area including the pixels. In the case where the suction mechanism is used, the labeling range may be attached to pixels in the range corresponding to the diameter of the suction pad in the input two-dimensional color image, or may be appropriately adjusted. By such a method, learning data can be accumulated and a learning model can be generated. Then, the probability determination unit 202 uses the created learning model and estimates a probability distribution of success / failure by deep learning using a two-dimensional color image as an input. In addition, in the case of the above example where the region recognition process was learned by deep learning, the input to the learning model is a two-dimensional color image, and the output of the learning model is the truth that the person would succeed in grasping. The position of the value. On the other hand, when learning is used for processing from region recognition to gripping, the input to the learning model is the same two-dimensional color image, but the output of the learning model is the estimation of success or failure when the robot 10 actually grips Result. At the time of this estimation, the ROI range may be set or a sliding window may be used, as in the method in which the region recognition process described above is performed by deep learning. In the case of this example, by inputting a two-dimensional color image, a gripping success / failure probability distribution when gripping by the robot 10 is determined.
また、ここでは深層学習を用いた領域認識方法を利用して把持位置を決定する方法について記載したが、必ずしも深層学習を用いる必要はない。S2で説明したように、対象物体41に応じて認識方法を変化させてもよいし、必ずしも認識処理を行わなくてもよい。
Although a method for determining a gripping position using an area recognition method using deep learning is described here, deep learning is not necessarily used. As described in S2, the recognition method may be changed according to the target object 41, or the recognition process may not be necessarily performed.
また、深層学習は把持だけの処理に対して利用されてもよい。具体的には、前述した認識処理は画像処理によって行われ、処理された画像情報を入力として、ロボット10で把持動作を実行する。ここで画像情報とは、例えば、二次元カラー画像からクロップされた所定のサイズの画像情報であり、注目画素とその周辺画素を含む画像領域の情報でもよい。そして把持動作を実行し、把持に成功したか、失敗したかの結果に基づき、入力とした画像情報に対して把持成功/失敗のラベルを付ける。このような方法によって、学習データを蓄積し、学習モデルを作成してもよい。この方法では、学習モデルへの入力は例えば認識処理が行われた画像情報、学習モデルの出力はロボット10で実際に把持を行う場合の成否推定結果となる。また、この推定時には、前述した認識の処理、あるいは認識と把持の処理を深層学習により学習した方法と同様に、ROI範囲を設定したりスライディングウィンドウを使用したりしてもよい。そして、認識処理が行われた画像を入力することで、ロボット10により把持する位置が推定され、その推定された結果を用いて、把持成否確率分布が決定される。
Further, deep learning may be used for processing only for gripping. Specifically, the recognition processing described above is performed by image processing, and the robot 10 performs a gripping operation with the processed image information as an input. Here, the image information is, for example, image information of a predetermined size that is cropped from a two-dimensional color image, and may be information on an image area that includes a pixel of interest and its surrounding pixels. Then, a gripping operation is executed, and a gripping success / failure label is attached to the input image information based on the result of the gripping success or failure. By such a method, learning data may be accumulated to create a learning model. In this method, the input to the learning model is, for example, image information that has undergone recognition processing, and the output of the learning model is a success / failure estimation result when the robot 10 actually grips. Further, at the time of this estimation, an ROI range may be set or a sliding window may be used in the same manner as the above-described recognition processing or the method of learning recognition and grasping processing by deep learning. Then, by inputting an image on which recognition processing has been performed, a position to be gripped by the robot 10 is estimated, and a gripping success / failure probability distribution is determined using the estimated result.
また、ここでは主に二次元カラー画像を用いて把持成否確率分布を決定したが、二次元カラー画像でなく距離画像を用いてもよいし、あるいは二次元カラー画像と距離画像の両方を用いてもよい。
In this example, the probability of success / failure of gripping is determined mainly using a two-dimensional color image, but a distance image may be used instead of a two-dimensional color image, or both a two-dimensional color image and a distance image are used. Also good.
図3のフローチャートに説明を戻す。S7において、位置決定部203は、S6で確率決定部202により決定された把持成否確率分布に基づいて把持位置を決定し、またマニピュレータ1の目標位置姿勢を決定する。把持位置の決定方法としては、例えば、把持成否確率分布において、把持成功の確率が最も高い位置を把持位置として決定するような方法を用いる。把持成否確率分布は、前述の図4(a)〜図4(c)で説明したように、二次元カラー画像に対応して求められるので、その把持成否確率分布で決めた位置の座標は二次元カラー画像の同座標の位置と一致する。このように二次元カラー画像において把持位置が決定されると、位置決定部203は、距離画像において、二次元カラー画像の把持位置に対応する位置を求める。そして、位置決定部203は、これらの二次元カラー画像と距離画像に基づいて決定された把持位置の情報を、制御部204へ送る。
Returning to the flowchart of FIG. In S <b> 7, the position determination unit 203 determines the gripping position based on the gripping success / failure probability distribution determined by the probability determination unit 202 in S <b> 6 and determines the target position / posture of the manipulator 1. As a method for determining the gripping position, for example, a method is used in which a position with the highest probability of successful gripping in the gripping success / failure probability distribution is determined as the gripping position. Since the grasping success / failure probability distribution is obtained corresponding to the two-dimensional color image as described with reference to FIGS. 4A to 4C, the coordinates of the position determined by the grasping success / failure probability distribution are two. Matches the same coordinate position of the dimensional color image. When the gripping position is determined in the two-dimensional color image in this way, the position determination unit 203 obtains a position corresponding to the gripping position of the two-dimensional color image in the distance image. Then, the position determination unit 203 sends the grip position information determined based on the two-dimensional color image and the distance image to the control unit 204.
次にS8において、制御部204は、把持動作のためのマニピュレータ1の制御を行う。具体的には、制御部204は、S7で位置決定部203により決定された把持位置あるいは把持目標位置姿勢を基に、マニピュレータ1をどのように動かせばいいかを決定する。ここで、位置決定部203で決定された目標位置は画像における位置であるため、マニピュレータ1を制御する場合には、その目標位置をロボット座標系における座標に変換する必要がある。
Next, in S8, the control unit 204 controls the manipulator 1 for the gripping operation. Specifically, the control unit 204 determines how to move the manipulator 1 based on the gripping position or the target gripping position / posture determined by the position determination unit 203 in S7. Here, since the target position determined by the position determination unit 203 is a position in the image, when the manipulator 1 is controlled, it is necessary to convert the target position into coordinates in the robot coordinate system.
図5は、本実施形態のロボットシステム100の各構成部の位置関係を、ロボット座標系を用いて説明するための図である。
図5では、撮像装置2の座標系Σc、マニピュレータ1の座標系Σr、マニピュレータ1の先端座標系Σt、把持装置3の座標系Σf、対象物体41の座標系Σo、を統一して扱うため、作業空間内で基準となる座標系としてワールド座標系Σwを設定する。
FIG. 5 is a diagram for explaining the positional relationship between the components of the robot system 100 of the present embodiment using a robot coordinate system.
In FIG. 5, the coordinate system Σc of the imaging device 2, the coordinate system Σr of the manipulator 1, the tip coordinate system Σt of the manipulator 1, the coordinate system Σf of the gripping device 3, and the coordinate system Σo of the target object 41 are handled in a unified manner. A world coordinate system Σw is set as a reference coordinate system in the work space.
先ず、ワールド座標系Σwからマニピュレータ座標系Σrまでの変位を(RX,RY,RZ)とする。また、マニピュレータ1の姿勢を表す3×3の回転行列をRMとする。マニピュレータ座標系Σrからマニピュレータ先端座標系Σtまでの変位は(TX,TY,TZ)とする。また、マニピュレータ先端の姿勢を表す3×3の回転行列はTMとする。さらに、マニピュレータ先端座標系Σtから把持装置3の座標系Σfまでの変位は(FX,FY,FZ)とする。また、把持装置3の先端の姿勢を表す3×3の回転行列はFMとする。なお、把持装置3の先端とは、把持装置3が対象物体41あるいは周辺物体42に接触する部分である。マニピュレータ先端座標系Σtから撮像装置座標系Σcまでの変位は(CX,CY,CZ)とする。また、撮像装置2の姿勢を表す3×3の回転行列はCMとする。さらに、撮像装置座標系Σcから対象物体41の対象物体座標系Σoまでの変位は(OX,OY,OZ)とする。また、対象物体41の姿勢を表す3×3の回転行列はOMとする。さらに、ワールド座標系Σwから見た対象物体41の変位を(WX,WY,WZ)、姿勢を表す3×3の回転行列をWMとする。ここで、マニピュレータ1の先端に取り付けられた把持装置3が対象物体41に接触している時、マニピュレータ座標系Σrからマニピュレータ先端座標系Σtまでの変位を(TX1,TY1,TZ1)とする。また、マニピュレータ先端の姿勢を表す3×3の回転行列をTM1とする。この場合、以下の式(1)が成り立つ。なお、式(1)の行列式では、見易くするためにWM,RM,TM1,FMの成分は一つのみ示しており残りは省略している。
First, let the displacement from the world coordinate system Σw to the manipulator coordinate system Σr be (RX, RY, RZ). Further, a 3 × 3 rotation matrix representing the attitude of the manipulator 1 is defined as RM. The displacement from the manipulator coordinate system Σr to the manipulator tip coordinate system Σt is (TX, TY, TZ). In addition, a 3 × 3 rotation matrix representing the attitude of the manipulator tip is assumed to be TM. Furthermore, the displacement from the manipulator tip coordinate system Σt to the coordinate system Σf of the gripping device 3 is (FX, FY, FZ). Further, the 3 × 3 rotation matrix representing the posture of the tip of the gripping device 3 is FM. The tip of the gripping device 3 is a portion where the gripping device 3 contacts the target object 41 or the peripheral object 42. The displacement from the manipulator tip coordinate system Σt to the imaging device coordinate system Σc is (CX, CY, CZ). A 3 × 3 rotation matrix representing the orientation of the imaging device 2 is CM. Furthermore, the displacement from the imaging device coordinate system Σc to the target object coordinate system Σo of the target object 41 is (OX, OY, OZ). A 3 × 3 rotation matrix representing the posture of the target object 41 is OM. Furthermore, the displacement of the target object 41 viewed from the world coordinate system Σw is (WX, WY, WZ), and the 3 × 3 rotation matrix representing the posture is WM. Here, when the gripping device 3 attached to the tip of the manipulator 1 is in contact with the target object 41, the displacement from the manipulator coordinate system Σr to the manipulator tip coordinate system Σt is (TX1, TY1, TZ1). Also, a 3 × 3 rotation matrix representing the attitude of the manipulator tip is assumed to be TM1. In this case, the following formula (1) is established. In the determinant of equation (1), only one component of WM, RM, TM1, and FM is shown for the sake of clarity, and the rest are omitted.
また、撮像装置2により対象物体41が撮像されたとき、マニピュレータ座標系Σrからマニピュレータ先端座標系Σtまでの変位を(TX2,TY2,TZ2)とし、マニピュレータ先端の姿勢を表す3×3の回転行列をTM2とする。この場合、以下の式(2)が成り立つ。なお、式(2)の行列式では、見易くするためにWM,RM,TM2,CM,OMの成分は一つのみ示しており残りは省略している。
When the target object 41 is imaged by the imaging device 2, the displacement from the manipulator coordinate system Σr to the manipulator tip coordinate system Σt is (TX2, TY2, TZ2), and a 3 × 3 rotation matrix that represents the posture of the manipulator tip Is TM2. In this case, the following formula (2) is established. In the determinant of equation (2), only one component of WM, RM, TM2, CM, and OM is shown for easy understanding, and the rest are omitted.
さらに式(1)、式(2)はワールド座標系Σwにおける対象物体41の位置姿勢を表しているので、下記の式(3)式が成り立つ。
Furthermore, since the expressions (1) and (2) represent the position and orientation of the target object 41 in the world coordinate system Σw, the following expression (3) is established.
R・T1・F=R・T2・C・O
T1=T2・C・O・F-1 式(3)
R ・ T 1・ F = R ・ T 2・ C ・ O
T 1 = T 2 · C · O · F -1 Formula (3)
そして、撮像時のマニピュレータ1の位置姿勢、マニピュレータ先端座標系Σtと撮像装置座標系Σcの位置姿勢の関係、撮像装置座標系Σcと対象物体41の位置姿勢の関係、マニピュレータ先端座標系Σtと把持装置3の位置姿勢の関係は既知である。この場合、式(3)により、把持時のマニピュレータ1の位置姿勢を求めることができる。よって、撮像装置2が対象物体41を撮影した画像から、マニピュレータ1が対象物体41を把持したときのマニピュレータ1の位置姿勢を求めることができる。
Then, the position and orientation of the manipulator 1 at the time of imaging, the relationship between the position and orientation of the manipulator tip coordinate system Σt and the imaging device coordinate system Σc, the relationship between the imaging device coordinate system Σc and the position and orientation of the target object 41, the manipulator tip coordinate system Σt and the grip The relationship between the position and orientation of the device 3 is known. In this case, the position and orientation of the manipulator 1 at the time of gripping can be obtained from Expression (3). Therefore, the position and orientation of the manipulator 1 when the manipulator 1 grips the target object 41 can be obtained from an image obtained by capturing the target object 41 with the imaging device 2.
以下、各変位、回転行列の求め方の一例を述べる。前述したワールド座標系Σwからマニピュレータ座標系Σrまでの変位(RX,RY,RZ)と、マニピュレータ1の姿勢を表す回転行列RMは、マニピュレータ1の設置時に、設定したワールド座標系Σwとの位置関係から求められる。また、マニピュレータ座標系Σrからマニピュレータ先端座標系Σtまでの変位(TX,TY,TZ)とマニピュレータ先端の姿勢を表す回転行列TMは、マニピュレータ1の関節角度情報から順運動学によって求められる。また、マニピュレータ先端座標系Σtから把持装置3の座標系Σfまでの変位(FX,FY,FZ)と把持装置3の先端の姿勢を表す回転行列FMは、把持装置3の寸法から求められる。また、マニピュレータ先端座標系Σtから撮像装置座標系Σcまでの変位(CX,CY,CZ)と撮像装置2の姿勢を表す回転行列CMは、撮像装置2の寸法から求められる。若しくは、撮像装置2とマニピュレータ1の相対的な位置姿勢関係からキャリブレーションにより求めてもよい。例えば、マニピュレータ1が異なる複数の位置姿勢を取ったそれぞれの状態において、撮像装置2により、既知の二次元マーカーを撮像することによって求まるマニピュレータ1との相対的位置関係を使って求めてもよい。さらに撮像装置座標系Σcから対象物体41の対象物体座標系Σoまでの変位(OX,OY,OZ)と対象物体41の姿勢を表す回転行列OMは、撮像装置2により対象物体41を撮像することにより求まる。例えば、位置決定部203にて、把持位置が二次元カラー画像において決定されたとき、把持位置に対応する距離画像における座標の値から把持位置までの距離が決定されることから求める。なお、ここではワールド座標系Σwとマニピュレータ1の座標系Σrを分けて考えたが、それらを一致させて考えてもよい。
Hereinafter, an example of how to obtain each displacement and rotation matrix will be described. The aforementioned displacement (RX, RY, RZ) from the world coordinate system Σw to the manipulator coordinate system Σr and the rotation matrix RM representing the attitude of the manipulator 1 are in a positional relationship with the set world coordinate system Σw when the manipulator 1 is installed. It is requested from. Further, the displacement (TX, TY, TZ) from the manipulator coordinate system Σr to the manipulator tip coordinate system Σt and the rotation matrix TM representing the attitude of the manipulator tip can be obtained from the joint angle information of the manipulator 1 by forward kinematics. Further, the displacement (FX, FY, FZ) from the manipulator tip coordinate system Σt to the coordinate system Σf of the gripping device 3 and the rotation matrix FM representing the posture of the tip of the gripping device 3 are obtained from the dimensions of the gripping device 3. Further, the displacement (CX, CY, CZ) from the manipulator tip coordinate system Σt to the imaging device coordinate system Σc and the rotation matrix CM representing the orientation of the imaging device 2 are obtained from the dimensions of the imaging device 2. Alternatively, it may be obtained by calibration from the relative position and orientation relationship between the imaging device 2 and the manipulator 1. For example, in each state where the manipulator 1 takes a plurality of different positions and orientations, the relative position relationship with the manipulator 1 obtained by imaging a known two-dimensional marker by the imaging device 2 may be used. Further, the displacement (OX, OY, OZ) from the imaging apparatus coordinate system Σc to the target object coordinate system Σo of the target object 41 and the rotation matrix OM representing the attitude of the target object 41 allow the imaging apparatus 2 to image the target object 41. It is obtained by. For example, when the gripping position is determined in the two-dimensional color image by the position determination unit 203, the distance to the gripping position is determined from the coordinate value in the distance image corresponding to the gripping position. Although the world coordinate system Σw and the coordinate system Σr of the manipulator 1 are considered separately here, they may be considered to coincide with each other.
図3のフローチャートに説明を戻す。S9において、制御部204は、対象物体41の把持のために、把持装置3の制御を行う。すなわち、制御部204は、S7で求めた把持位置あるいはマニピュレータ1の把持目標位置姿勢に基づいて、マニピュレータ1を制御し、さらに把持装置3により対象物体41を把持位置で把持させるように制御する。
Returning to the flowchart of FIG. In S <b> 9, the control unit 204 controls the gripping device 3 to grip the target object 41. That is, the control unit 204 controls the manipulator 1 based on the gripping position obtained in S7 or the gripping target position / posture of the manipulator 1, and further controls the gripping device 3 to grip the target object 41 at the gripping position.
なお、S7において把持位置と把持目標位置姿勢を決定し、S8でマニピュレータ1を制御して把持装置3を移動させ、S9で把持動作を制御する際には、把持位置に対して把持装置3の移動距離が最短距離となるような軌道をとるようにしてもよい。また、把持位置まで把持装置3を移動させる際には、例えば、把持装置3の移動速度が最大となるような軌道をとるようにしてもよい。把持成否確率分布に基づいた軌道を取ってもよいし、これら以外の軌道をとってもよい。また、把持装置3を移動させる際には、例えば部品箱などの周辺物体42との干渉回避を考慮することが望ましい。例えば、S2により部品箱を検出した場合、部品箱の位置姿勢は既に分かっているため、把持位置を決定する際には、把持装置3を移動させたときに当該把持装置3やロボットアーム等が部品箱などの周辺物体42に干渉するか否かを判定することができる。そして、干渉することになる場合には、把持位置を修正してもよい。このように干渉回避などのための把持位置修正を行う場合には、例えば把持成否確率が閾値を上回っている領域のうち、二番目に把持成否確率が高い位置を把持位置としてもよい。また、干渉判定は、把持位置における干渉回避のためだけでなく、把持装置3やロボットアームの移動中の干渉回避のために行ってもよい。例えば把持装置3やロボットアームの移動中の干渉回避を容易にするため、前述した撮影位置から直接、把持位置に把持装置3を移動させず、別の経路を経由してから把持位置へ移動するようにしてもよい。一例として、部品箱の底面中心位置に対して垂直方向へある一定の距離だけ把持装置3を移動させるようにした後に、把持装置3を把持位置へ移動させるような干渉回避動作を行ってもよい。
When the gripping position and the gripping target position / posture are determined in S7, the manipulator 1 is controlled to move the gripping device 3 in S8, and when the gripping operation is controlled in S9, the gripping device 3 is moved relative to the gripping position. The trajectory may be such that the moving distance is the shortest distance. Further, when the gripping device 3 is moved to the gripping position, for example, a trajectory that maximizes the moving speed of the gripping device 3 may be taken. A trajectory based on the grasping success / failure probability distribution may be taken, or a trajectory other than these may be taken. Further, when moving the gripping device 3, it is desirable to consider avoiding interference with a peripheral object 42 such as a parts box. For example, when the component box is detected in S2, the position and orientation of the component box are already known. Therefore, when the gripping position is determined, when the gripping device 3 is moved, the gripping device 3, the robot arm, etc. It can be determined whether or not it interferes with a peripheral object 42 such as a parts box. If the interference occurs, the grip position may be corrected. When the gripping position correction for avoiding interference is performed as described above, for example, a position where the gripping success / failure probability is the second highest among the regions where the gripping success / failure probability exceeds the threshold may be set as the gripping position. The interference determination may be performed not only for avoiding interference at the gripping position but also for avoiding interference during movement of the gripping device 3 or the robot arm. For example, in order to facilitate interference avoidance during movement of the gripping device 3 and the robot arm, the gripping device 3 is not moved directly from the photographing position to the gripping position, but is moved to the gripping position via another route. You may do it. As an example, after the gripping device 3 is moved by a certain distance in the vertical direction with respect to the center position of the bottom surface of the component box, an interference avoiding operation for moving the gripping device 3 to the gripping position may be performed. .
次にS10において、判定部205は、対象物体41の把持に成功したか失敗したか判定する。例えばマニピュレータ1に取り付けられた把持装置3が吸着機構である場合には、前述したように吸着しているときの真空到達度を評価することにより、把持が成功したか否かの判定を行う。また例えば把持装置3が平行チャック機構である場合には、前述したように把持幅を評価することで、把持が成功したか否かの判定を行う。なお、把持成否の判定は、S8のマニピュレータ・把持制御が行われているとき、同時に行ってもよい。例えば把持装置3が吸着機構である場合、決定された把持位置へのマニピュレータ1の移動中にも常に真空到達度を計測し、吸着(把持)に成功したと判定定された時点でマニピュレータ1の把持のための移動動作を中断する。その後は、後述するS15の搬送・配置動作を行うようにする。
In step S <b> 10, the determination unit 205 determines whether the target object 41 has been successfully grasped or failed. For example, when the gripping device 3 attached to the manipulator 1 is a suction mechanism, it is determined whether or not the gripping has been successful by evaluating the degree of vacuum at the time of suction as described above. Further, for example, when the gripping device 3 is a parallel chuck mechanism, it is determined whether or not the gripping is successful by evaluating the gripping width as described above. The determination of success / failure of gripping may be performed at the same time when the manipulator / grip control in S8 is performed. For example, when the gripping device 3 is a suction mechanism, the degree of vacuum is always measured during the movement of the manipulator 1 to the determined gripping position, and when it is determined that the suction (gripping) has been successful, the manipulator 1 The moving operation for gripping is interrupted. Thereafter, a transport / arrangement operation in S15 described later is performed.
次にS11において、状態推定部206は、ロボットシステム100の状態を推定する。ロボットシステム100の状態の推定は、前述したように、システムが正常状態か、中間状態か、異常状態かを推定することである。本実施形態において、システム状態の推定は、前述したように、把持位置における把持成否確率と把持成否結果とに基づいて行われる。図6は、本実施形態において、把持動作を行ったときの正常状態、中間状態、異常状態の分類を示す図である。
Next, in S <b> 11, the state estimation unit 206 estimates the state of the robot system 100. As described above, the estimation of the state of the robot system 100 is to estimate whether the system is in a normal state, an intermediate state, or an abnormal state. In the present embodiment, as described above, the estimation of the system state is performed based on the gripping success / failure probability at the gripping position and the gripping success / failure result. FIG. 6 is a diagram illustrating classification of normal state, intermediate state, and abnormal state when a gripping operation is performed in the present embodiment.
前述したように、S6で求めた把持成否確率分布の中に閾値以上の確率部分がある場合、制御部204は、把持成否確率分布を基に決定された把持位置で、対象物体41の把持動作を実行させる。そして、状態推定部206は、把持動作が実行あれたときの成否判定結果と把持成否確率とに基づき、ロボットシステム100が「正常状態」、「中間状態」、「異常状態」のいずれのシステム状態にあるかを推定する。
As described above, when there is a probability portion equal to or higher than the threshold in the gripping success / failure probability distribution obtained in S6, the control unit 204 grips the target object 41 at the gripping position determined based on the gripping success / failure probability distribution. Is executed. Then, the state estimation unit 206 determines whether the robot system 100 is in any of “normal state”, “intermediate state”, and “abnormal state” based on the success / failure determination result when the gripping operation is performed and the gripping success / failure probability. It is estimated whether it is in.
以下、システム状態の推定方法について説明する。
先ず、システム状態を正常状態と推定する場合について述べる。例えば、把持成否確率が高い把持位置に対して把持が実行され、1回の把持動作により把持が成功した場合、状態推定部206は、システムは正常状態であると推定する。
The system state estimation method will be described below.
First, a case where the system state is estimated as a normal state will be described. For example, when gripping is performed on a gripping position with a high gripping success / failure probability and gripping is successful by one gripping operation, the state estimation unit 206 estimates that the system is in a normal state.
次に、システム状態を中間状態と推定する場合について述べる。1回の把持動作では把持に成功せず、何度かリトライして把持に失敗した後に、把持が成功した場合、状態推定部206は、システムが中間状態であると推定する。このとき、把持成否確率が十分に高かったか、あるいは十分に高くなかったかによって、把持失敗要因を推定する。ここで、把持成否確率が十分に高いかどうかの判断は、予め設定した閾値との比較に基づく判断でもよいし、システム立ち上げ時の状況に基づく判断でも、機械学習による判断でも、あるいは、それら以外の方法による判断でもよい。そして、状態推定部206は、把持成否確率が十分に高い場合、把持位置決定の処理までは成功しており、把持制御以降の処理で失敗している可能性が高いと推定する。すなわち、この場合の状態推定部206は、把持制御要因により把持に失敗したと判定する。一方、把持成否確率が十分に高くない場合、状態推定部206は、把持位置決定の処理までに失敗している可能性が高いと推定する。すなわち、この場合の状態推定部206は、把持位置決定要因により把持に失敗したと推定する。
Next, a case where the system state is estimated as an intermediate state will be described. If gripping is not successful in a single gripping operation, and gripping is successful after a number of retries and gripping failures, the state estimation unit 206 estimates that the system is in an intermediate state. At this time, the gripping failure factor is estimated depending on whether the gripping success / failure probability is sufficiently high or not sufficiently high. Here, the determination of whether or not the grasping success / failure probability is sufficiently high may be a determination based on comparison with a preset threshold value, a determination based on a situation at the time of system startup, a determination based on machine learning, or those Judgment by other methods may also be used. Then, when the gripping success / failure probability is sufficiently high, the state estimation unit 206 estimates that the gripping position determination process has succeeded and that it is highly likely that the process after gripping control has failed. That is, the state estimation unit 206 in this case determines that gripping has failed due to a gripping control factor. On the other hand, if the gripping success / failure probability is not sufficiently high, the state estimation unit 206 estimates that there is a high possibility that the gripping position determination process has failed. That is, the state estimation unit 206 in this case estimates that the gripping has failed due to the gripping position determination factor.
以下、それぞれの要因について具体例を挙げて説明する。
把持制御要因により把持に失敗すると推測される例として、ロボットシステム100におけるキャリブレーション値がずれていることが挙げられる。マニピュレータ1と把持装置3、マニピュレータ1と撮像装置2の相対的位置関係は、事前に求め、設定しておく必要がある。キャリブレーション値がずれている状態とは、この設定値が実際の相対的位置関係と異なった状態になっている状態を指す。キャリブレーション値がずれている場合、決定した把持位置に対して把持装置3が到達していないことがある。キャリブレーション値がずれる要因としては、把持装置3や撮像装置2が対象物体41あるいは周辺物体42などと干渉し、把持装置3や撮像装置2と、マニピュレータ1との間のキャリブレーション値がずれてしまったということが考えられる。または、キャリブレーション値を設定する際に、設定値が間違っていたということも考えられる。さらに、把持制御要因により把持に失敗すると推測される他の例として、把持を行うハードウェアの問題により、把持に失敗することも挙げられる。具体的には、把持装置3が吸着機構である例において、長期間の使用により、把持に使う吸着パッドが劣化し、対象物体41に接触したときにエアーが漏れて、十分な圧で吸着できなかったことが考えられる。また、エアーチューブの劣化や折れ曲がりなどによって、十分な流量が供給されていないといったといったことも考えられる。
Hereinafter, each factor will be described with specific examples.
An example in which gripping is presumed to fail due to a gripping control factor is that the calibration values in the robot system 100 are shifted. The relative positional relationship between the manipulator 1 and the gripping device 3 and between the manipulator 1 and the imaging device 2 needs to be obtained and set in advance. The state where the calibration value is shifted refers to a state where the set value is different from the actual relative positional relationship. When the calibration values are shifted, the gripping device 3 may not reach the determined gripping position. The cause of the deviation of the calibration value is that the gripping device 3 or the imaging device 2 interferes with the target object 41 or the peripheral object 42 and the calibration value between the gripping device 3 or the imaging device 2 and the manipulator 1 is shifted. It can be considered that it has stopped. Alternatively, it is conceivable that the setting value was wrong when setting the calibration value. Furthermore, as another example in which it is estimated that the gripping is failed due to the grip control factor, the gripping may be failed due to a hardware problem for gripping. Specifically, in an example in which the gripping device 3 is a suction mechanism, the suction pad used for gripping deteriorates due to long-term use, and air leaks when it touches the target object 41 and can be sucked with sufficient pressure. It is thought that there was not. Moreover, it is conceivable that a sufficient flow rate is not supplied due to deterioration or bending of the air tube.
把持位置決定要因により把持に失敗すると推測される例として、把持成否確率分布決定のために使用する学習モデルが適切でないことが挙げられる。例えば、システムに投入される部品の仕向けが変わったときに、使用する学習モデルを変更しなければならないにも関わらず変更していなかった場合が考えられる。また例えば、対象物体41の入った部品箱の中に異物が混入して学習時には想定していない視覚情報が取得されたり、システム周辺の照明条件が変わって対象物体41の見え方が大きく変化していたりといった場合などが考えられる。
As an example in which it is estimated that gripping fails due to a gripping position determination factor, a learning model used for determining a gripping success / failure probability distribution is not appropriate. For example, when the destination of a part to be input to the system is changed, there is a case where the learning model to be used has not been changed although it has to be changed. Further, for example, a foreign object is mixed in the parts box containing the target object 41, and visual information that is not assumed at the time of learning is acquired, or the lighting conditions around the system change, and the appearance of the target object 41 changes greatly. There may be cases where you are in trouble.
また例えば、状態推定部206は、1回の動作で把持に成功したものの、把持成否確率が十分に高くなかった場合にも、システムが中間状態であると推定する。この場合、1回の把持動作で把持に成功しているため、本来は把持成否確率が十分に高く出るはずである。それにも関わらず、把持成否確率が十分に高く出ていない場合には、把持成否確率として正しい値が得られていない可能性がある。そのため、このままシステムを稼働させ続けると、把持できる位置があるにも関わらず把持できる位置がないと判定したり、よりよい把持位置があるにも関わらずその位置とは異なる位置を把持位置として決定してしまったりする虞がある。このような状態になる例としては、前述した把持位置決定要因によって把持に失敗する例のように、把持成否確率分布決定のために使用する学習モデルが適切でないことが挙げられる。
Further, for example, the state estimation unit 206 estimates that the system is in an intermediate state even when the gripping is successful in one operation but the gripping success / failure probability is not sufficiently high. In this case, since the gripping is successful in one gripping operation, the gripping success / failure probability should be sufficiently high. Nevertheless, if the gripping success / failure probability is not sufficiently high, there is a possibility that a correct value is not obtained as the gripping success / failure probability. Therefore, if the system continues to operate as it is, it is determined that there is no position that can be gripped even though there is a position that can be gripped, or a position that is different from that position is determined as a gripping position even though there is a better gripping position. There is a risk of doing it. An example of such a state is that the learning model used for determining the gripping success / failure probability distribution is not appropriate, as in the example in which gripping fails due to the gripping position determination factor described above.
次に、システム状態を異常状態と推定する場合について述べる。1回の把持動作で把持に成功せず、複数回のリトライでも把持に成功しなかった場合、状態推定部206は、異常状態であると推定する。この複数回のリトライについては、例えば予め上限回数の閾値を設定しておく。一例として閾値が3に設定されている場合、状態推定部206は、例えば3回以内のリトライで把持に成功すれば中間状態と推定し、リトライ回数が4回以上になったならばシステムが異常状態であると推定する。失敗要因の推定方法は、前述した中間状態で説明した要因例と同様に、把持成否確率が十分に高かったか、あるいは十分に高くなかったかによる把持失敗要因の推定方法を用いることができる。
Next, a case where the system state is estimated as an abnormal state will be described. If gripping is not successful in one gripping operation and gripping is not successful even in a plurality of retries, the state estimation unit 206 estimates that the state is abnormal. For the multiple retries, for example, an upper limit threshold value is set in advance. For example, when the threshold is set to 3, the state estimation unit 206 estimates that the state is an intermediate state if, for example, the grip is successful within 3 retries, and the system is abnormal if the number of retries is 4 or more. Presumed to be in a state. As the failure factor estimation method, a gripping failure factor estimation method based on whether the gripping success / failure probability is sufficiently high or not high can be used, as in the example of the factor described in the intermediate state described above.
なお、S6で求めた把持成否確率が閾値以下の場合、状態推定部206は、把持成否確率分布に基づく把持位置の決定を行わない。この場合、適切な把持位置が存在しないとして、システムを停止してもよいし、深層学習ではない別の方法と併用して把持位置を決定してもよいし、他の方法で把持位置を決定してもよい。深層学習でない別の方法の例として、例えば、部品箱底面に重量センサを設置しておき、そのセンサ情報により部品箱内に部品が残っていると判断すれば、部品箱内においてランダムに把持動作を試行してもよい。
When the gripping success / failure probability obtained in S6 is equal to or less than the threshold value, the state estimation unit 206 does not determine the gripping position based on the gripping success / failure probability distribution. In this case, assuming that there is no appropriate gripping position, the system may be stopped, the gripping position may be determined in combination with another method that is not deep learning, or the gripping position is determined by another method. May be. As an example of another method that is not deep learning, for example, if a weight sensor is installed on the bottom of the component box and it is determined that the component remains in the component box based on the sensor information, a gripping operation is randomly performed in the component box. May be tried.
また、状態推定部206は、システム状態の推定により得られたシステム状態に基づいて、予防保全のための対策を推定し、その推定対策内容をユーザに通知することまで行ってもよい。
この例について、先ず、システム状態の推定において、1回の把持動作で把持に成功せず、何度か把持に失敗した後、リトライで把持に成功したために中間状態と推定した場合から説明する。例えば、失敗要因として、前述した「キャリブレーション値がずれている場合」、「把持を行うハードウェアに問題がある場合」がそれぞれ推定される場合の予防保全のための対策を挙げて説明する。
Further, the state estimation unit 206 may estimate the countermeasure for preventive maintenance based on the system state obtained by the estimation of the system state, and notify the user of the content of the estimated countermeasure.
In this example, first, in the estimation of the system state, the case where the gripping is not successful in one gripping operation, the gripping is failed several times, and the gripping is succeeded in the retry, so that the intermediate state is estimated. For example, a countermeasure for preventive maintenance in the case where “when the calibration value is shifted” and “when there is a problem with the hardware to be gripped” are estimated as the failure factors will be described.
例えばキャリブレーション値がずれていることが失敗要因になっているかどうかの確認方法としては、マニピュレータ1に取り付けられていない撮像装置2(以下、ロボット非搭載カメラとする。)が撮影した画像データを利用する方法がある。具体的には、ロボット非搭載カメラとマニピュレータ1との、相対的位置関係について事前にキャリブレーションを行っておけば、ロボット非搭載カメラから見た把持位置を求めることができる。そして、状態推定部206は、ロボット非搭載カメラの撮影画像データを利用することで、マニピュレータ1に取り付けられた撮像装置2が撮影した画像データを基に決定された把持位置に対して把持装置3が実際に移動できたかどうかを判断する。このとき、把持装置3が目標とする把持位置へ移動できていれば、状態推定部206は、把持装置3あるいはマニピュレータ1に取り付けられた撮像装置2と、マニピュレータ1との間のキャリブレーション値がずれていないと判断する。これに対し、把持装置3が目標とする把持位置へ移動していない場合、状態推定部206は、キャリブレーション値がずれていると判断する。このような失敗要因が推定された場合には、キャリブレーション値を修正することが失敗要因に対する対策になると考えられる。なお、キャリブレーション値を修正する方法としては、例えばS8にて述べたように、マーカーを使う方法があるので、その作業内容を推定結果としてもよい。したがって、この例の場合、状態推定部206は、当該失敗要因に対する予防保全の対策内容を、表示制御部207を経由して表示装置7により表示等させることでユーザに通知するようなことを行えばよい。
For example, as a method for confirming whether or not the calibration value is shifted is a cause of failure, image data taken by an imaging device 2 (hereinafter referred to as a robot-non-mounted camera) not attached to the manipulator 1 is used. There are ways to use it. Specifically, if the relative positional relationship between the camera not equipped with the robot and the manipulator 1 is calibrated in advance, the gripping position viewed from the camera not equipped with the robot can be obtained. Then, the state estimation unit 206 uses the captured image data of the camera not equipped with the robot, thereby the gripping device 3 with respect to the gripping position determined based on the image data captured by the imaging device 2 attached to the manipulator 1. To determine whether the can actually move. At this time, if the gripping device 3 can move to the target gripping position, the state estimation unit 206 determines the calibration value between the imaging device 2 attached to the gripping device 3 or the manipulator 1 and the manipulator 1. Judge that there is no deviation. On the other hand, when the gripping device 3 has not moved to the target gripping position, the state estimation unit 206 determines that the calibration value is shifted. If such a failure factor is estimated, correcting the calibration value may be a countermeasure against the failure factor. As a method of correcting the calibration value, for example, as described in S8, there is a method of using a marker. Therefore, the work content may be used as an estimation result. Therefore, in this example, the state estimation unit 206 notifies the user of the contents of the preventive maintenance measures for the failure cause by displaying the content on the display device 7 via the display control unit 207. Just do it.
また例えば把持を行うハードウェアに問題があることが失敗要因になっているかどうかを確認する場合にも、ロボット非搭載カメラが撮影した画像データを利用することができる。ここでは、把持装置3が吸着機構であり、吸着パッドの劣化によって把持に失敗する場合を例に挙げて説明する。具体的には、ロボット非搭載カメラによって、劣化前の吸着パッドを撮影した画像データを取得しておき、劣化後の吸着パットの画像データとの差分を求め、その差分の大小により劣化度合いを判定する。状態推定部206は、劣化前の吸着パッドの撮影画像データと劣化後の吸着パットの撮影画像データとの差分が、例えば予め決めた閾値より大きくなっている場合には、吸着パッドが劣化していると判定する。また他の確認方法として、所定のテスト用の平面に吸着パッドを押し付けて、真空到達度を計測する方法もある。吸着パッドが劣化していない場合、平面に吸着パッドを押し付ければ、真空到達度が十分に大きくなる(真空に近くなる)。これに対し、吸着パッドが劣化している場合、エアーがリークしてしまうことで、真空到達度が十分に大きくならない(真空に近くならない)。そのため、予め吸着パッドを平面に押し付けたときの真空到達度を計測しておき、状態推定部206は、劣化後の吸着パットにおける真空到達度との差分を求めて、吸着パッドの劣化度合いを確認する。そして、吸着パッドが劣化している場合には、その吸着パッドを新しいものに交換することが失敗要因に対する対策になると考えられる。このため、吸着パッドが劣化していると判断した場合、状態推定部206は、吸着パッドの交換作業を指示するような予防保全の対策内容を、表示制御部207を経由して表示装置7により表示等させることでユーザに通知する。
In addition, for example, when it is confirmed whether there is a problem in hardware for gripping, which is a cause of failure, image data taken by a camera not equipped with a robot can be used. Here, a case where the gripping device 3 is a suction mechanism and gripping fails due to deterioration of the suction pad will be described as an example. Specifically, image data obtained by capturing a suction pad before deterioration is acquired by a camera not equipped with a robot, a difference from the image data of the suction pad after deterioration is obtained, and the degree of deterioration is determined by the magnitude of the difference. To do. For example, when the difference between the captured image data of the suction pad before deterioration and the captured image data of the suction pad after deterioration is larger than a predetermined threshold, the state estimation unit 206 deteriorates the suction pad. It is determined that As another confirmation method, there is a method of measuring the degree of vacuum by pressing the suction pad against a predetermined test plane. If the suction pad is not deteriorated, the degree of vacuum can be sufficiently increased (close to vacuum) by pressing the suction pad against a flat surface. On the other hand, when the suction pad is deteriorated, air leaks, so that the degree of vacuum is not sufficiently increased (not close to vacuum). Therefore, the degree of vacuum reached when the suction pad is pressed against a flat surface in advance is measured, and the state estimation unit 206 obtains the difference from the degree of vacuum at the deteriorated suction pad to confirm the degree of deterioration of the suction pad. To do. When the suction pad is deteriorated, it is considered that replacing the suction pad with a new one is a countermeasure against the cause of failure. For this reason, when it is determined that the suction pad has deteriorated, the state estimation unit 206 causes the display device 7 to display the contents of the preventive maintenance measures that instruct the replacement work of the suction pad via the display control unit 207. The user is notified by displaying it.
また、状態推定部206は、前述した失敗要因に対する予防保全対策だけでなく、例えば、1回の把持動作で把持に成功したものの、把持成否確率が十分に高くなかったために中間状態であると推定された場合の対策についても推定可能である。この例の場合、把持には成功しているため、本来ならば把持成否確率が十分に高くなっているはずであるが、把持成否確率が十分に高くなっていない。このため、状態推定部206は、予防保全の対策として、把持成否確率分布の推定精度を高めるために、把持成功のフィードバックを使い、追加学習を行うという対策を推定する。そして、状態推定部206は、把持成功のフィードバックを使った追加学習を行うことを指示するような予防保全の対策内容を、表示制御部207を経由して表示装置7により表示等させることでユーザに通知する。
Further, the state estimation unit 206 estimates not only the preventive maintenance measures for the failure factor described above but also the intermediate state because the gripping success / failure probability was not sufficiently high although the gripping success was achieved by one gripping operation. It is also possible to estimate the countermeasures in the event that it occurs. In this example, since the gripping is successful, the gripping success / failure probability should be sufficiently high originally, but the gripping success / failure probability is not sufficiently high. For this reason, the state estimation unit 206 estimates a countermeasure of performing additional learning using feedback of successful gripping in order to improve the estimation accuracy of the gripping success / failure probability distribution as a preventive maintenance countermeasure. Then, the state estimation unit 206 displays the contents of preventive maintenance measures that instruct to perform additional learning using feedback of success of gripping on the display device 7 via the display control unit 207, and the like. Notify
なお、ここまでは予防保全のための対策の推定について述べるが、事後保全のために、失敗要因とその原因を示すことに利用してもよい。例えば予防保全の場合はランタイムでシステム稼働中に前述したような各対策の推定のための確認を行うが、事後保全の場合にはランタイムに限らないので、システムの稼働とは関係なしに、確認を行ってもよい。
In addition, although the estimation of the countermeasure for preventive maintenance is described so far, you may utilize for showing a failure factor and its cause for subsequent maintenance. For example, in the case of preventive maintenance, confirmation for estimation of each measure as described above is performed while the system is operating at runtime, but in the case of post-maintenance, since it is not limited to runtime, confirmation is performed regardless of system operation. May be performed.
また、システム状態の推定において異常状態と推定した場合、その対策は予防保全ではなく、事後保全のための対策となる。システム状態が異常状態と推定された場合の、事後保全のための具体的な対策としては、前述した中間状態の場合の対策と同等であり、その説明は省略する。
Further, when an abnormal state is estimated in the estimation of the system state, the countermeasure is not a preventive maintenance but a countermeasure for subsequent maintenance. The specific countermeasure for the subsequent maintenance when the system state is estimated to be an abnormal state is the same as the countermeasure for the intermediate state described above, and a description thereof will be omitted.
図3のフローチャートに説明を戻す。S11の後、S12に進むと、表示制御部207は、表示装置7に表示する内容の制御を行う。この場合、表示制御部207は、例えば画像データに対して、前述したシステム状態推定結果や推定対策内容等を重畳表示するように制御する。
例えば、S11にてシステム状態が正常状態であると推定された場合、表示制御部207は、正常状態であることを示す内容を表示させるような表示制御を行う。このときの表示内容は、自然言語により正常状態である旨を表示してもよいし、緑色など色によって正常状態を示すよう表示してもよいし、あるいは正常状態の場合は何も表示しない、としてもよい。または、システム状態の推定の根拠となるデータを示してもよい。例えば、画像データに対してシステム状態推定結果を重畳表示してもよい。具体的には、取得部201が取得した二次元カラー画像に対して、確率決定部202が推定した把持成否確率を表す数値等を重ね、さらに位置決定部203が決定した把持位置を重ねた画像を表示してもよい。また、その画像に対して、把持が成功したか失敗したかの結果を記載し、想定される要因を文字情報で示してもよいし、想定される要因それぞれの確率を数値で示してもよいし、その他の方法で示してもよい。
Returning to the flowchart of FIG. After S11, when the process proceeds to S12, the display control unit 207 controls the content displayed on the display device 7. In this case, the display control unit 207 performs control so that, for example, the above-described system state estimation result, estimation countermeasure content, and the like are superimposed and displayed on the image data.
For example, when it is estimated in S11 that the system state is the normal state, the display control unit 207 performs display control such that the content indicating the normal state is displayed. The display content at this time may indicate that it is in a normal state by natural language, may be displayed to indicate the normal state by a color such as green, or nothing is displayed in the normal state. It is good. Alternatively, data that is the basis for estimating the system state may be indicated. For example, the system state estimation result may be displayed superimposed on the image data. Specifically, on the two-dimensional color image acquired by the acquisition unit 201, an image in which a numerical value representing the gripping success / failure probability estimated by the probability determination unit 202 is superimposed and the gripping position determined by the position determination unit 203 is further superimposed. May be displayed. In addition, the result of whether the gripping is successful or unsuccessful is described for the image, the assumed factor may be indicated by text information, and the probability of each assumed factor may be indicated by a numerical value. However, other methods may be used.
また、画像は一つでなく、複数表示してもよい。例えば図1に示すように撮像装置2が複数配置されている場合、それぞれの撮像装置2から取得した二次元カラー画像を同時に表示してもよい。また、文字情報や数値情報は画像に合わせて表示せず、独立して表示してもよい。
また例えば、S11にてシステム状態が中間状態であると推定された場合、表示制御部207は、中間状態であることを表示させるような表示制御を行う。その際、表示制御部207は、さらに推定された把持失敗要因や、予防保全として、S11において推定された把持失敗要因のための対策を表示する。
また例えば、S11にてシステム状態が異常状態であると推定された場合、表示制御部207は、異常状態であることを表示させるような表示制御を行う。その際、表示制御部207は、さらに推定された把持失敗要因や、事後保全として、S11において推定された把持失敗要因の原因を表示させるようにする。
In addition, a single image may be displayed instead of one. For example, when a plurality of imaging devices 2 are arranged as shown in FIG. 1, two-dimensional color images acquired from the respective imaging devices 2 may be displayed simultaneously. Further, character information and numerical information may not be displayed in accordance with the image but may be displayed independently.
For example, when it is estimated in S11 that the system state is the intermediate state, the display control unit 207 performs display control to display that the intermediate state is present. At that time, the display control unit 207 displays a countermeasure for the estimated gripping failure factor estimated in S11 as the estimated gripping failure factor and preventive maintenance.
For example, when it is estimated in S11 that the system state is an abnormal state, the display control unit 207 performs display control to display the abnormal state. At that time, the display control unit 207 displays the cause of the gripping failure factor estimated in S11 as the estimated gripping failure factor and post-mortem maintenance.
これにより、S13において、表示装置7には、S12で表示制御部207による表示内容が表示される。なお、例えばディスプレイに視覚情報として表示するのに合わせて、音声を、スピーカーを通して出力してもよい。例えば、S12にて文字情報や数値情報を表示するよう制御した場合、これらの読み上げ音声を、スピーカーを通して出力してもよい。また、視覚情報なしで、音声のみを出力してもよいし、その他の情報のみを使用してもよい。
Thereby, in S13, the display device 7 displays the display content by the display control unit 207 in S12. For example, sound may be output through a speaker in accordance with visual information displayed on a display. For example, when it is controlled to display character information and numerical information in S12, these reading voices may be output through a speaker. Further, only audio may be output without visual information, or only other information may be used.
次にS14において、CPU21は、S10で判定部205が判定した把持成否判定結果に基づき、ロボット10の次の処理を決定する。すなわち、CPU21は、把持成否判定結果が把持の成功である場合には処理をS15に遷移させる。一方、CPU21は、把持成否判定結果が把持の失敗である場合には処理をS7に戻す。これにより、前述したように位置決定部203において次の把持位置の決定が行われる。またこのとき、判定部205から位置決定部203に対し把持に失敗したという情報を送ることで、位置決定部203において把持成否確率分布に基づいた把持位置を再び決定してもよい。この場合、把持に失敗した位置と異なる位置を次の把持位置として決定することにより、把持の成功率を上げるようにしてもよい。
Next, in S14, the CPU 21 determines the next process of the robot 10 based on the gripping success / failure determination result determined by the determination unit 205 in S10. In other words, the CPU 21 shifts the process to S15 when the gripping success / failure determination result is successful gripping. On the other hand, when the gripping success / failure determination result is a gripping failure, the CPU 21 returns the process to S7. Thereby, as described above, the position determination unit 203 determines the next gripping position. Further, at this time, the gripping position based on the gripping success / failure probability distribution may be determined again by the position determination unit 203 by sending information indicating that the gripping has failed from the determination unit 205 to the position determination unit 203. In this case, the success rate of gripping may be increased by determining a position different from the position where gripping has failed as the next gripping position.
次にS15において、制御部204は、ロボット10のマニピュレータ1と把持装置3を制御して、対象物体41を搬送・配置させるように動作させる。この場合、制御部204は、搬送の経由点や配置の位置を事前に設定しておいてもよいし、撮像装置2から得られた視覚情報に基づき搬送経路・配置場所を決定してもよい。視覚情報に基づいて配置場所を決定する場合、例えばS2で述べた部品箱の検出結果を基に配置場所が決定されてもよい。例えば、配置場所が部品箱のような箱形状であるならば、配置場所の形状から認識が行われてもよいし、配置場所にマーカーを設置しておき、マーカーにより認識が行われてもよい。また、認識した結果から、配置場所についてもS7で説明したような干渉回避の制御が行われてもよい。また、制御部204は、配置が完了するまで、S10で説明したように把持状態を確認し、把持成否判定を行い、把持に失敗したと判定したら、把持動作をやり直してもよい。
Next, in S <b> 15, the control unit 204 controls the manipulator 1 and the gripping device 3 of the robot 10 to operate so as to convey and arrange the target object 41. In this case, the control unit 204 may set a transfer via point or a position of arrangement in advance, or may determine a conveyance route / arrangement place based on visual information obtained from the imaging device 2. . When determining the placement location based on the visual information, for example, the placement location may be determined based on the detection result of the component box described in S2. For example, if the placement location is a box shape like a parts box, recognition may be performed from the shape of the placement location, or a marker may be placed at the placement location and recognition may be performed by the marker. . Further, based on the recognized result, the interference avoidance control as described in S7 may be performed for the arrangement location. Further, until the arrangement is completed, the control unit 204 confirms the gripping state as described in S10, performs the gripping success / failure determination.
次にS16において、CPU21は、次の対象物体41があるかどうかの判定をする。そして、CPU21は、対象物体41が存在しない場合には図3に示すフローチャートの処理を終了する。一方、対象物体41が存在する場合、CPU21は、処理を継続すると判断してS2に処理を戻す。S16での判定では、例えば事前に処理回数を設定しておき、その回数に達した場合に対象物体41が存在しないと判定してもよい。また、S16での判定では、対象物体41の供給場所にセンサを配置しておき、そのセンサ情報により対象物体41が検出されなくなった場合に対象物体41が存在しないと判定してもよい。なお、対象物体41の供給場所に配置されるセンサには例えば重量センサを用いることができる。重量センサにより供給場所の重さを計測し、その計測値から対象物体41の残りの個数を推定して、残り個数がゼロと推定されたときに、対象物体41が存在しないと判定する。その他にも、撮像装置2によって対象物体41の供給場所を撮影し、得られた画像情報によって対象物体41の残数等を判定してもよいし、これら以外の方法で判定してもよい。
Next, in S <b> 16, the CPU 21 determines whether there is a next target object 41. Then, when the target object 41 does not exist, the CPU 21 ends the process of the flowchart shown in FIG. On the other hand, when the target object 41 exists, the CPU 21 determines to continue the process and returns the process to S2. In the determination in S16, for example, the number of times of processing may be set in advance, and it may be determined that the target object 41 does not exist when the number of times is reached. In the determination in S16, a sensor may be disposed at the supply location of the target object 41, and it may be determined that the target object 41 does not exist when the target object 41 is no longer detected by the sensor information. For example, a weight sensor can be used as the sensor disposed at the supply location of the target object 41. The weight of the supply location is measured by the weight sensor, the remaining number of target objects 41 is estimated from the measured value, and when the remaining number is estimated to be zero, it is determined that the target object 41 does not exist. In addition, the supply location of the target object 41 may be photographed by the imaging device 2, and the remaining number of the target object 41 may be determined based on the obtained image information, or may be determined by a method other than these.
以上説明したように、第一の実施形態では、撮像装置2にて撮像された画像を取得部201が知覚情報として取得し、その知覚情報を基に確率決定部202が把持に成功/失敗する把持成否確率分布を決定する。また、位置決定部203では、決定された把持成否確率分布に基づき対象物体41の把持位置を決定する。そして、当該決定された把持位置に基づき、制御部204はロボット10を制御し、ロボット10の把持装置3に対象物体41を把持する動作を実行させる。また判定部205は、ロボット10における把持動作の成功/失敗を判定し、状態推定部206は、把持動作の成否判定結果と把持位置における把持成否確率とに基づき、システム状態を推定する。このように、第一の実施形態によれば、把持位置における把持成否確率と把持成否結果に基づきシステム状態を推定することで、システム状態を可視化でき、予防保全、事後保全を容易に行えるため、生産性を高めることができる。
As described above, in the first embodiment, the acquisition unit 201 acquires an image captured by the imaging device 2 as perceptual information, and the probability determination unit 202 succeeds / fails in gripping based on the perceptual information. Determine the gripping probability distribution. Further, the position determination unit 203 determines the gripping position of the target object 41 based on the determined gripping success / failure probability distribution. Then, based on the determined gripping position, the control unit 204 controls the robot 10 and causes the gripping device 3 of the robot 10 to perform an operation of gripping the target object 41. Further, the determination unit 205 determines the success / failure of the gripping operation in the robot 10, and the state estimation unit 206 estimates the system state based on the determination result of the gripping operation success / failure and the gripping success / failure probability at the gripping position. Thus, according to the first embodiment, by estimating the system state based on the gripping success / failure probability and the gripping success / failure result at the gripping position, the system state can be visualized, and preventive maintenance and post-maintenance can be easily performed. Productivity can be increased.
<第二の実施形態>
第二の実施形態では、撮像装置による画像だけでなく、ロボット制御結果や他のセンサ情報も併用してシステム状態を推定する例について説明する。
第二の実施形態のロボットシステムおよび情報処理装置は、前述した第一の実施形態のロボットシステム100および情報処理装置20と概ね同様であるが、一部の構成部や処理が異なっており、また幾つか新たな構成部や処理が追加されている。第二の実施形態において、第一の実施形態と概ね同様であるが一部異なった構成部や処理についてはそれらを示す参照符号に「'」を付加している。また、第二の実施形態において、新たに追加された構成部や処理には、前述した第一の実施形態では用いていない新たな参照符号を付けている。以下、第二の実施形態では、主に、第一の実施形態とは異なる構成部および処理、新たに追加した構成部および処理について説明する。
<Second Embodiment>
In the second embodiment, an example will be described in which the system state is estimated by using not only an image obtained by an imaging apparatus but also a robot control result and other sensor information.
The robot system and information processing apparatus of the second embodiment are substantially the same as the robot system 100 and information processing apparatus 20 of the first embodiment described above, but some components and processes are different. Several new components and processes have been added. In the second embodiment, “′” is added to reference numerals indicating components and processes that are substantially the same as those in the first embodiment, but are partially different. In the second embodiment, newly added components and processes are assigned new reference numerals that are not used in the first embodiment. Hereinafter, in the second embodiment, components and processes different from those in the first embodiment and newly added components and processes will be mainly described.
図7は、第二の実施形態におけるロボットシステム100'および情報処理装置20'の機能ブロックを示した図である。図7のロボットシステム100'および情報処理装置20'は、図2の構成に対して、力覚センサ5と力覚情報取得部208とが新たな構成部として追加された点が異なる。また、図7の情報処理装置20'では、制御部204'、位置決定部203'、状態推定部206'の一部の処理が、図2の例とは異なる。これら以外の構成部は概ね図2と同様である。
FIG. 7 is a diagram illustrating functional blocks of the robot system 100 ′ and the information processing apparatus 20 ′ according to the second embodiment. The robot system 100 ′ and the information processing apparatus 20 ′ of FIG. 7 are different from the configuration of FIG. 2 in that the force sensor 5 and the force information acquisition unit 208 are added as new components. Further, in the information processing apparatus 20 ′ of FIG. 7, some processes of the control unit 204 ′, the position determination unit 203 ′, and the state estimation unit 206 ′ are different from the example of FIG. The other components are generally the same as in FIG.
第二の実施形態は、前述した第一の実施形態に対して、さらにロボットシステムの制御結果や撮像装置以外のセンサ情報を併用して、システム状態を推定できるよう構成した例である。第二の実施形態においても、先ず、第一の実施形態と同様に、把持成否確率分布に基づき対象物体の把持制御を行う。そして、第二の実施形態では、把持位置における把持成否確率と、把持成否結果と、ロボット10の制御結果と、力覚センサ5からの力覚センサ情報とに基づいて、システム状態を推定し、その推定結果や推定対策内容を表示等する。第二の実施形態によれば、画像情報だけでは分かりにくい把持装置3の接触情報も考慮してシステム状態を推定できるようになる。
The second embodiment is an example in which the system state can be estimated by using the control result of the robot system and sensor information other than the imaging device together with the first embodiment described above. Also in the second embodiment, first, similarly to the first embodiment, gripping control of the target object is performed based on the gripping success / failure probability distribution. In the second embodiment, the system state is estimated based on the gripping success / failure probability at the gripping position, the gripping success / failure result, the control result of the robot 10, and the force sensor information from the force sensor 5. The estimation result and the content of the estimation countermeasure are displayed. According to the second embodiment, the system state can be estimated in consideration of the contact information of the gripping device 3 that is difficult to understand only by the image information.
力覚センサ5は、外力を計測可能な力覚計測センサであり、把持装置3にかかる外力を計測できる位置に取り付けられている。例えば、力覚センサ5は、把持装置3の根本やマニピュレータ1の先端に取り付けられる。力覚センサ5は、歪みゲージや圧電素子により構成され、把持装置3が対象物体41や周辺物体42に接触している時に、当該把持装置3にかかる力(反力)、モーメントを計測し、その計測結果である力覚情報を情報処理装置20'に出力する。なお力覚センサ5は、6軸力覚センサ(Force/Torqueセンサ)であってもよいし、3軸力覚センサであってもよい。また力覚センサ5は、1次元の圧力センサや、接触の有無を判別する接触センサを複数配置して、力やモーメントを計測してもよい。
The force sensor 5 is a force sensor capable of measuring an external force, and is attached to a position where the external force applied to the gripping device 3 can be measured. For example, the force sensor 5 is attached to the root of the gripping device 3 or the tip of the manipulator 1. The force sensor 5 includes a strain gauge and a piezoelectric element, and measures a force (reaction force) and moment applied to the gripping device 3 when the gripping device 3 is in contact with the target object 41 and the peripheral object 42. The haptic information that is the measurement result is output to the information processing apparatus 20 ′. The force sensor 5 may be a 6-axis force sensor (Force / Torque sensor) or a 3-axis force sensor. The force sensor 5 may measure force and moment by arranging a plurality of one-dimensional pressure sensors and contact sensors for determining the presence or absence of contact.
力覚情報取得部208は、力覚センサ5から出力される力覚情報を取得し、その力覚情報を状態推定部206'に出力する。なお、図7では図示を省略しているが、力覚情報は制御部204'にも送られる。力覚情報取得部208は、例えばメモリ(RAM)によって構成される。
The haptic information acquisition unit 208 acquires the haptic information output from the force sensor 5, and outputs the haptic information to the state estimation unit 206 ′. In addition, although illustration is abbreviate | omitted in FIG. 7, force information is also sent to control part 204 '. The haptic information acquisition unit 208 is configured by, for example, a memory (RAM).
状態推定部206'は、確率決定部202からの把持成否確率分布と、制御部204'からのロボット10の制御情報と、判定部205からの把持成否結果と、力覚情報取得部208から取得した力覚情報と、に基づいて、システム状態を推定する。
The state estimation unit 206 ′ is acquired from the grasping success / failure probability distribution from the probability determination unit 202, the control information of the robot 10 from the control unit 204 ′, the gripping success / failure result from the determination unit 205, and the haptic information acquisition unit 208. The system state is estimated based on the haptic information.
第二の実施形態の情報処理装置20'のハードウェア構成は、前述した図12の構成と同じであるため、その図示と説明は省略する。第二の実施形態においても、図7の情報処理装置20'内の各構成部の機能は、CPU21がプログラムを実行することにより実現することができる。
Since the hardware configuration of the information processing apparatus 20 ′ of the second embodiment is the same as the configuration of FIG. 12 described above, illustration and description thereof are omitted. Also in the second embodiment, the function of each component in the information processing apparatus 20 ′ of FIG. 7 can be realized by the CPU 21 executing a program.
図8は、第二の実施形態のロボットシステム100'および情報処理装置20'が実行するロボット制御手順を示すフローチャートである。図8のフローチャートの処理は、第一の実施形態で示した図3のフローチャートと概ね同様であるが、S17の処理が新たに追加され、また、S11'は図3のS11と一部処理内容が異なる。以下、主に、S17とS11'の処理について説明する。
FIG. 8 is a flowchart showing a robot control procedure executed by the robot system 100 ′ and the information processing apparatus 20 ′ of the second embodiment. The processing of the flowchart of FIG. 8 is substantially the same as the flowchart of FIG. 3 shown in the first embodiment, but the processing of S17 is newly added, and S11 ′ is S11 of FIG. Is different. Hereinafter, the processes of S17 and S11 ′ will be mainly described.
図8のフローチャートでは、前述したS8の処理後、S17に処理が進み、そのS17の処理後に前述したS9に処理が進む。
S17において、力覚情報取得部208は、力覚センサ5から、対象物体41あるいは周辺物体42に把持装置3が接触している時の把持装置3にかかる力(反力)、モーメント情報を力覚情報として取得し、状態推定部206'と制御部204'に送る。
In the flowchart of FIG. 8, the process proceeds to S17 after the process of S8 described above, and the process proceeds to S9 described above after the process of S17.
In step S <b> 17, the force information acquisition unit 208 obtains force (reaction force) and moment information applied to the gripping device 3 when the gripping device 3 is in contact with the target object 41 or the peripheral object 42 from the force sensor 5. It is acquired as sense information and sent to the state estimation unit 206 ′ and the control unit 204 ′.
また、力覚情報の取得は、S8のマニピュレータ・把持制御において、マニピュレータ1の移動を行っている時に同時に行われてもよい。この場合、例えばS7で決定した把持位置に対して、S8でマニピュレータ1が移動するとき、その移動中にも常に力覚情報が取得される。そして、予め設定した閾値以上の力あるいはモーメントのいずれか一つ以上が計測された時点で、制御部204'は、マニピュレータ1の移動を中断し、把持動作を実行する。これは、図9(a)に示すように、撮像装置2の画像から計測した計測把持位置が、実際の対象物体41の高さよりも低かったため、マニピュレータ1が把持位置まで動作中に把持装置3が対象物体41に接触した場合を想定している。このため、制御部204'は、力覚センサ5により取得した力覚情報を基に、把持位置を、接触した位置すなわち実際に把持した位置に修正した上で、その修正把持位置による把持動作を行うように把持装置3を制御する。
Moreover, acquisition of force information may be performed simultaneously with the movement of the manipulator 1 in the manipulator / grip control in S8. In this case, for example, when the manipulator 1 moves in S8 with respect to the gripping position determined in S7, force information is always acquired even during the movement. Then, when any one or more of a force or moment equal to or greater than a preset threshold is measured, the control unit 204 ′ interrupts the movement of the manipulator 1 and executes a gripping operation. As shown in FIG. 9A, this is because the measured gripping position measured from the image of the imaging device 2 is lower than the actual height of the target object 41, so that the gripping device 3 is operating while the manipulator 1 is operating to the gripping position. Is assumed to be in contact with the target object 41. Therefore, the control unit 204 ′ corrects the gripping position to the touched position, that is, the actually gripped position based on the force information acquired by the force sensor 5, and then performs the gripping operation based on the corrected gripping position. The gripping device 3 is controlled to perform.
またS7による把持位置に対し、S8でマニピュレータ1を移動させた後、力覚情報を取得し、閾値以上の力あるいはモーメントのいずれか一つ以上を計測できていない場合、制御部204'は、マニピュレータ1の移動を継続してから把持動作を行ってもよい。これは、図9(b)に示すように、撮像装置2の画像から計測した計測把持位置が、実際の対象物体41の高さよりも高かったため、マニピュレータ1が把持位置に移動しても把持装置3が対象物体41に接触していない場合を想定している。この場合、制御部204'は、力覚センサ5からの力覚情報が閾値以上になるまでマニピュレータ1の移動動作を継続する。このとき、予め動作を継続する距離や時間を設定しておいてもよいし、力覚情報が閾値以上になるまではマニピュレータ1の移動動作を継続し続けて把持の目標位置を修正してよいし、他の条件で制御してもよい。そして、S9の後、S10において、判定部205での把持成否の判定が行われる。
In addition, after moving the manipulator 1 in S8 with respect to the gripping position in S7, force information is acquired, and if any one or more of the force or moment greater than the threshold value cannot be measured, the control unit 204 ′ The gripping operation may be performed after the movement of the manipulator 1 is continued. As shown in FIG. 9B, this is because the measured gripping position measured from the image of the imaging device 2 is higher than the actual height of the target object 41, so that the gripping device is moved even when the manipulator 1 moves to the gripping position. It is assumed that 3 is not in contact with the target object 41. In this case, the control unit 204 ′ continues the moving operation of the manipulator 1 until the force information from the force sensor 5 becomes equal to or greater than the threshold value. At this time, the distance and time for continuing the operation may be set in advance, or the moving operation of the manipulator 1 may be continued until the force information becomes equal to or greater than the threshold value to correct the target position for gripping. However, it may be controlled under other conditions. After S9, in S10, the determination unit 205 determines whether the grip is successful.
S10の後に進むS11'において、状態推定部206'は、ロボットシステム100'の状態を推定する。第二の実施形態の場合、システム状態の推定では、S6で決定した把持成否確率分布と、S8のマニピュレータ・把持制御における制御情報と、S10での把持成否結果と、S17で取得した力覚情報とを利用する。
In S11 ′ that proceeds after S10, the state estimation unit 206 ′ estimates the state of the robot system 100 ′. In the case of the second embodiment, in the estimation of the system state, the gripping success / failure probability distribution determined in S6, the control information in the manipulator / grip control in S8, the gripping success / failure result in S10, and the haptic information acquired in S17 And use.
第一の実施形態の場合、位置決定部203にて決定された把持位置での把持成否確率を用いたが、第二の実施形態のシステム状態推定処理では、制御部204'から取得した制御情報に基づき、実際に把持装置3が移動した位置での把持成否確率を利用する。これは、S17の処理で述べたように、本実施形態では力覚センサ5で取得した力覚情報に基づいてロボット10の動作が変更(つまり把持位置が変更)される可能性があるためである。
In the case of the first embodiment, the gripping success / failure probability at the gripping position determined by the position determination unit 203 is used, but in the system state estimation process of the second embodiment, control information acquired from the control unit 204 ′ Based on the above, the gripping success / failure probability at the position where the gripping device 3 has actually moved is used. This is because, as described in the processing of S <b> 17, in this embodiment, the operation of the robot 10 may be changed (that is, the gripping position is changed) based on the force information acquired by the force sensor 5. is there.
力覚情報に基づき把持位置を変化させた場合には、位置決定部203'で決定した位置に把持装置3が移動しないことになるため、システム状態推定の際には、制御部204'から取得した実際の把持位置の情報を用いる。このように、第二の実施形態では、力覚情報に応じた実際の把持位置を利用することで、システム状態を前述した中間状態と推定した場合に、より詳しく失敗要因を推定することが可能となる。
When the gripping position is changed based on the haptic information, the gripping device 3 does not move to the position determined by the position determination unit 203 ′. Therefore, when the system state is estimated, it is acquired from the control unit 204 ′. The actual gripping position information is used. As described above, in the second embodiment, it is possible to estimate the failure factor in more detail when the system state is estimated as the above-described intermediate state by using the actual gripping position according to the haptic information. It becomes.
以下、第二の実施形態において、システム状態が中間状態であると推定した場合に、より詳しく失敗要因を推定する方法について説明する。第二の実施形態の場合も第一の実施形態同様、状態推定部206'は、1回の把持動作で把持に成功せず、何度か把持に失敗し、リトライで把持に成功した場合に、中間状態であると推定する。
Hereinafter, a method for estimating a failure factor in more detail when the system state is estimated to be an intermediate state in the second embodiment will be described. Similarly to the first embodiment, in the case of the second embodiment, the state estimation unit 206 ′ does not succeed in gripping by one gripping operation, fails to grip several times, and succeeds in gripping by retry. Estimated to be in an intermediate state.
例えば、把持成否確率が十分に高い場合、状態推定部206'は、把持位置決定の処理までは成功しており、把持動作の制御以降の処理で失敗している可能性が高いと推定する。すなわちこの場合、状態推定部206'は、把持動作の制御要因により把持に失敗したと推定する。例えば対象物体41への把持動作の実行後、把持装置3の上昇中に、前述した真空到達度や把持幅を基に対象物体41の把持成功と判定されたとしても、力覚センサ5の力覚情報からは対象物体41に相当する外力(例えば重さ)が計測できていない場合がある。この場合、把持装置3による対象物体41の把持動作が失敗していると考えられる。例えば、把持している物体が対象物体41以外の物体であったり、対象物体41と周辺物体42など複数の物体を把持してしまっていたりといった失敗が考えられる。これらの失敗要因としては、把持装置3が適切でなかったり、把持装置3の動作が適切でなかったりといったことが挙げられる。把持装置3が適切でない場合の例としては、対象物体41が小さい物体であるにも関わらず、例えば大きな吸着パッドの吸着機構を備えた把持装置3や、開閉幅が大きな平行チャック機構を備えた把持装置3が用いられている場合などが考えられる。把持装置3の動作が適切でない場合の例としては、吸着機構の吸着圧が弱すぎたり強すぎたり、平行チャック機構の開閉幅が大きすぎたり小さすぎたりといったことが考えられる。そのため、これらの例の場合、予防保全のための対策として推定する例としては、把持装置3の交換や、動作の変更などが挙げられる。
For example, when the gripping success / failure probability is sufficiently high, the state estimation unit 206 ′ estimates that the gripping position determination process has succeeded and that it is highly likely that the process after the gripping operation control has failed. That is, in this case, the state estimation unit 206 ′ estimates that the gripping has failed due to the control factor of the gripping operation. For example, even if it is determined that the target object 41 has been successfully gripped based on the above-described degree of vacuum reach or gripping width while the gripping device 3 is being lifted after the gripping operation on the target object 41 is performed, the force of the force sensor 5 In some cases, external force (for example, weight) corresponding to the target object 41 cannot be measured from the sense information. In this case, it is considered that the gripping operation of the target object 41 by the gripping device 3 has failed. For example, a failure may be considered in which the object being held is an object other than the target object 41 or a plurality of objects such as the target object 41 and the peripheral object 42 have been gripped. These failure factors include that the gripping device 3 is not appropriate and that the operation of the gripping device 3 is not appropriate. Examples of cases where the gripping device 3 is not appropriate include a gripping device 3 having a suction mechanism for a large suction pad and a parallel chuck mechanism having a large opening and closing width, even though the target object 41 is a small object. The case where the gripping device 3 is used can be considered. As an example of the case where the operation of the gripping device 3 is not appropriate, it is conceivable that the suction pressure of the suction mechanism is too weak or too strong, or the opening / closing width of the parallel chuck mechanism is too large or too small. Therefore, in the case of these examples, examples of estimation as a measure for preventive maintenance include replacement of the gripping device 3 and change of operation.
一方、把持成否確率が十分に高くない場合、状態推定部206'は、把持位置決定の処理までに失敗している可能性が高いと推定する。すなわちこの場合、状態推定部206'は、把持位置決定要因により把持に失敗したと判定する。このため、例えば事前に、対象物体41に接触したときに把持装置3にかかる外力を計測しておき、閾値を設定しておく。この場合、把持動作が実行された際に、もし把持装置3が対象物体41に接触することなく把持に失敗したとすると、力覚センサ5が計測する力覚情報は閾値に達しないことになる。そして、この例の場合、把持装置3が対象物体41に接触していないことから、把持動作の失敗要因の一つとして、例えば、撮像装置2のカメラ内部パラメータのキャリブレーション値がずれていることが考えられる。なお、キャリブレーション値のずれに対する予防保全のための対策は、第一の実施形態に述べた通りである。
On the other hand, when the gripping success / failure probability is not sufficiently high, the state estimation unit 206 ′ estimates that there is a high possibility that the gripping position determination process has failed. That is, in this case, the state estimation unit 206 ′ determines that gripping has failed due to a gripping position determination factor. For this reason, for example, the external force applied to the gripping device 3 when contacting the target object 41 is measured in advance, and a threshold value is set. In this case, if the gripping device 3 fails to touch without touching the target object 41 when the gripping operation is executed, the force information measured by the force sensor 5 does not reach the threshold value. . In this example, since the gripping device 3 is not in contact with the target object 41, for example, the calibration value of the camera internal parameter of the imaging device 2 is deviated as one of the causes of the gripping operation failure. Can be considered. Note that the measures for preventive maintenance against the deviation of the calibration value are as described in the first embodiment.
また、力覚情報とそれ以外の情報とを統合的に扱い機械学習によりシステム状態を推定してもよい。この場合、例えば時系列情報として、把持装置3が吸着機構である場合の吸着の真空到達度、力覚センサ5から取得した力覚情報、マニピュレータ1の関節角度情報などを利用する。さらに、これらの情報を入力として、またこれらの時系列情報と関連付けて、過去のロボットシステム100'の正常動作、異常動作時の情報を出力としてログを取っておく。異常動作については、どのような異常が起きたか、また何が原因で異常動作が生じたかなど、より詳しい情報のログを取っておいてもよい。そして、これら時系列情報を学習データとして使用して、システム稼働中の時系列情報を入力として、出力としてロボットシステム100'の状態を推定する。
Also, force information and other information may be handled in an integrated manner, and the system state may be estimated by machine learning. In this case, for example, as time-series information, the degree of vacuum attainment when the grasping device 3 is an adsorption mechanism, force information acquired from the force sensor 5, joint angle information of the manipulator 1, and the like are used. Further, these information is input and correlated with these time-series information, and a log is recorded as information on past normal operation and abnormal operation of the robot system 100 ′. Regarding the abnormal operation, more detailed information such as what kind of abnormality has occurred and what caused the abnormal operation may be recorded. Then, using these time series information as learning data, the time series information during operation of the system is used as an input, and the state of the robot system 100 ′ is estimated as an output.
ここまでは、システム状態を中間状態と推定した場合の失敗要因の推定方法と、それに対する予防保全のための対策について述べたが、これらはシステム状態が異常状態であると推定された場合にも同様に適用可能である。また、力覚情報は必ずしも用いなくてもよく、制御情報だけ利用してシステム状態の推定を行ってもよい。この場合、例えば、前述のような機械学習を利用する手法において、力覚情報の入力は使わずにシステム状態を推定する。なお、1回の把持動作で把持に成功したものの、把持成否確率が十分に高くなかった場合、状態推定部206'は、第一の実施形態と同様に中間状態であると推定する。この場合の失敗要因の推定、対策の推定も第一の実施形態と同様に行うことができる。
Up to this point, we have described the failure factor estimation method when the system state is estimated to be an intermediate state, and the preventive maintenance measures against it, but these are also applicable when the system state is estimated to be abnormal. The same applies. Further, the force information is not necessarily used, and the system state may be estimated using only the control information. In this case, for example, in the method using machine learning as described above, the system state is estimated without using force information input. Note that if the gripping operation is successful in one gripping operation but the gripping success / failure probability is not sufficiently high, the state estimation unit 206 ′ estimates that the state is an intermediate state as in the first embodiment. In this case, the failure factor and the countermeasure can be estimated as in the first embodiment.
以上説明したように、第二の実施形態でも第一の実施形態同様に、撮像装置2にて撮像された画像(知覚情報)を基に確率決定部202が把持成否確率分布を決定し、また位置決定部203'は把持成否確率分布に基づき対象物体41の把持位置を決定する。第二の実施形態の場合、制御部204'は、把持位置に基づきロボット10を制御するが、このとき力覚センサ5からの力覚情報、つまり把持装置3における接触情報を基に適宜、把持位置を修正して対象物体41の把持動作を制御する。また第二の実施形態の場合、状態推定部206'は、判定部205から把持動作が失敗したとの判定結果を取得した場合、制御部204'からの制御情報と、把持位置における把持成否確率と、力覚情報とに基づいてシステム状態を推定する。このように、第二の実施形態では、画像情報だけでは分かりにくい把持装置3の接触情報(力覚情報)をも考慮することで、より詳しくシステム状態を推定することができ、その結果、予防保全、事後保全を容易に実現し、生産性を高めることができる。
As described above, also in the second embodiment, as in the first embodiment, the probability determination unit 202 determines the gripping success / failure probability distribution based on the image (perception information) captured by the imaging device 2, The position determination unit 203 ′ determines the gripping position of the target object 41 based on the gripping success / failure probability distribution. In the case of the second embodiment, the control unit 204 ′ controls the robot 10 based on the gripping position. At this time, the controller 204 ′ appropriately grips based on the force information from the force sensor 5, that is, the contact information in the gripping device 3. The gripping operation of the target object 41 is controlled by correcting the position. In the case of the second embodiment, when the state estimation unit 206 ′ acquires a determination result that the gripping operation has failed from the determination unit 205, the state estimation unit 206 ′ and the control information from the control unit 204 ′ and the gripping success / failure probability at the gripping position And the system state is estimated based on the haptic information. As described above, in the second embodiment, it is possible to estimate the system state in more detail by considering the contact information (force information) of the grasping device 3 that is difficult to understand only by the image information. Maintenance and ex-post maintenance can be realized easily and productivity can be improved.
<第三の実施形態>
第三の実施形態では、各処理の成否状況を管理してシステム状態を推定する例について説明する。
第三の実施形態におけるロボットシステムおよび情報処理装置は、第一の実施形態のロボットシステム100および情報処理装置20と概ね同様であるが、一部の構成部や処理が異なっており、また幾つか新たな構成部や処理が追加されている。第三の実施形態において、第一の実施形態と概ね同様であるが一部異なった構成部や処理についてはそれらを示す参照符号に「"」を付加している。また、第三の実施形態において新たに追加された構成部や処理には、前述した第一の実施形態では用いていない新たな参照符号を付けている。以下、第三の実施形態では、主に、第一の実施形態とは異なる構成部および処理、新たに追加した構成部および処理について説明する。
<Third embodiment>
In the third embodiment, an example in which the success or failure status of each process is managed and the system state is estimated will be described.
The robot system and the information processing apparatus in the third embodiment are substantially the same as the robot system 100 and the information processing apparatus 20 in the first embodiment, but some components and processes are different, and some New components and processing have been added. In the third embodiment, """is added to reference numerals indicating components and processes that are substantially the same as those in the first embodiment but are partially different. In addition, components and processes newly added in the third embodiment are given new reference numerals that are not used in the first embodiment described above. Hereinafter, in the third embodiment, components and processes that are different from those in the first embodiment and newly added components and processes will be mainly described.
図10は、第三の実施形態におけるロボットシステム100"および情報処理装置20"の機能ブロックを示した図である。図10に示すロボットシステム100"および情報処理装置20"は、図2の構成に対し、管理部209が新たな構成部として追加された点が異なる。また、図10の情報処理装置20"では、制御部204"、判定部205"、取得部201"、確率決定部202"、位置決定部203'、状態推定部206'の一部の処理が、図2の例とは異なる。これら以外の構成部は概ね図2と同様である。
FIG. 10 is a diagram illustrating functional blocks of the robot system 100 ″ and the information processing apparatus 20 ″ according to the third embodiment. The robot system 100 "and the information processing apparatus 20" shown in FIG. 10 are different from the configuration of FIG. 2 in that a management unit 209 is added as a new configuration unit. In addition, in the information processing apparatus 20 ″ of FIG. 10, some processes of the control unit 204 ″, the determination unit 205 ″, the acquisition unit 201 ″, the probability determination unit 202 ″, the position determination unit 203 ′, and the state estimation unit 206 ′ are performed. 2 is different from the example shown in Fig. 2. The other components are generally the same as those shown in Fig. 2.
第三の実施形態では、前述した第一の実施形態に対して、さらにロボットシステムの各処理の後で随時システム状態を推定できるよう、また、処理内容や把持成否判定結果の履歴といったシステム動作に関する情報を管理できるよう構成した例である。第三の実施形態においても、前述同様に、先ず、取得した視覚情報に基づき把持成否確率分布を求め、把持位置を決定して対象物体の把持を行う。このとき、管理部209は、各構成部の処理状況を把握し、各構成部の動作を管理したり、把持成否結果の履歴を保存したりすることで、現在と過去のシステム動作結果を管理する。第三の実施形態の場合、状態推定部206"は、管理部209からの動作管理情報に基づきシステム状態を推定し、その推定結果が表示等される。第三の実施形態の場合、各処理の動作状況を管理できるため、システムが何の動作を行っているか、また次に何の動作を行うかを管理し、さらに過去の動作履歴も考慮しながらシステム状態を推定できるようになる。
In the third embodiment, in addition to the first embodiment described above, the system state can be estimated at any time after each process of the robot system, and the system operation such as the processing contents and the history of the gripping success / failure determination result is related. This is an example configured to manage information. Also in the third embodiment, as described above, first, a gripping success / failure probability distribution is obtained based on the acquired visual information, and the gripping position is determined to grip the target object. At this time, the management unit 209 manages the current and past system operation results by grasping the processing status of each component unit, managing the operation of each component unit, and storing the history of gripping success / failure results. To do. In the case of the third embodiment, the state estimation unit 206 "estimates the system state based on the operation management information from the management unit 209 and displays the estimation result. In the case of the third embodiment, each process Therefore, it is possible to manage what operation the system is performing, what operation is to be performed next, and estimate the system state while taking into account the past operation history.
管理部209は、取得部201"、確率決定部202"、位置決定部203"、制御部204"、判定部205"の各部の処理状況を把握して各部の動作を管理し、把持成否結果の履歴を保存することで、現在と過去のシステム動作結果を管理する。そして、第三の実施形態の場合、状態推定部206"は、管理部209から取得した現在と過去の動作管理情報に基づいて、システム状態を推定する。
The management unit 209 grasps the processing status of each unit of the acquisition unit 201 ″, the probability determination unit 202 ″, the position determination unit 203 ″, the control unit 204 ″, and the determination unit 205 ″, manages the operation of each unit, and acquires a gripping success / failure result In the case of the third embodiment, the state estimation unit 206 ″ stores the current and past system operation results in the current and past operation management information acquired from the management unit 209. Based on this, the system state is estimated.
第三の実施形態の情報処理装置20"のハードウェア構成は前述した図12の構成と同じであるため、その図示と説明は省略する。第三の実施形態において、図11の情報処理装置20"内の各構成部の機能は、CPU21がプログラムを実行することにより実現することができる。
Since the hardware configuration of the information processing apparatus 20 ″ of the third embodiment is the same as the configuration of FIG. 12 described above, illustration and description thereof will be omitted. In the third embodiment, the information processing apparatus 20 of FIG. The function of each component in “can be realized by the CPU 21 executing a program.
図11は、第三の実施形態におけるロボットシステム100"および情報処理装置20"が実行するロボット制御手順を示すフローチャートである。図11のフローチャートの処理は、図3のフローチャートと概ね同様であるが、S18の処理が新たに追加され、また、S11"は図3のS11と一部処理内容が異なる。以下、主に、S18とS11"の処理について説明する。
FIG. 11 is a flowchart showing a robot control procedure executed by the robot system 100 ″ and the information processing apparatus 20 ″ according to the third embodiment. The processing of the flowchart of FIG. 11 is substantially the same as the flowchart of FIG. 3, but the processing of S18 is newly added, and S11 ″ is partially different from S11 of FIG. The processing of S18 and S11 "will be described.
図11のフローチャートでは、前述したS10の処理後、S18に処理が進み、そのS18の処理後にS11"に処理が進む。
S18において、管理部209は、情報処理装置20"の各構成部が行った処理、また各構成部が行う処理を管理し、それら各構成部の処理に対してS10の把持成否判定処理により得られる把持成否判定結果を保存して管理する。なお、図11では、S10による把持成否判定結果を保存した後に、S18の処理を行う例を挙げているが、把持成否判定結果を保存する処理以外のシステム動作管理については、この例に限定されず、他の処理後に行ってもよい。
In the flowchart of FIG. 11, the process proceeds to S18 after the process of S10 described above, and the process proceeds to S11 "after the process of S18.
In S18, the management unit 209 manages processing performed by each component of the information processing apparatus 20 "and processing performed by each component, and the processing of each component is obtained by the gripping success / failure determination process of S10. 11 shows an example in which the processing of S18 is performed after storing the gripping success / failure determination result in S10, but other than the processing of storing the gripping success / failure determination result The system operation management is not limited to this example, and may be performed after other processing.
例えば、管理部209は、システム動作管理について、S5の視覚情報取得の後に行ってもよいし、S6の把持成否確率分布決定の後に行っても、あるいは、これら以外の処理の後に行ってもよい。この場合、管理部209は、S5で取得部201"が視覚情報として画像データを取得できたかどうかを管理する。なおこのときの管理部209は、取得部201"から画像データを取得して管理してもよい。そして、管理部209は、S5で取得部201"における取得の処理が成功していれば、次に、S6で確率決定部202"が把持成否確率分布を決定するように動作を管理する。また、管理部209は、把持成否確率分布が決定された後に確率決定部202"から把持成否確率分布を取得してもよいし、把持成否確率分布の決定が行われたという情報を取得してもよい。そしてその後、S7において、位置決定部203"は、把持成否確率分布に基づいて把持位置を決定する。また、管理部209は、位置決定部203"が決定した把持位置を取得してもよいし、把持位置の決定が行われたという情報を取得してもよい。また、管理部209は、位置決定部203"から取得した把持位置に基づき、S8において制御部204"がロボット10"を制御するよう動作管理を行ってもよい。この場合、管理部209は、ロボット10"の制御情報として、マニピュレータ1の関節角度情報や把持装置3の把持動作処理情報を取得する。そして、管理部209は、S10の把持成否判定が行われると、S18において、判定部205"から把持成否判定結果を取得して、その取得した把持成否判定結果を、制御部204"から取得した制御情報と関連付けて保存する。
For example, the management unit 209 may perform the system operation management after the visual information acquisition in S5, may be performed after the determination of the grasping success / failure probability distribution in S6, or may be performed after other processing. . In this case, the management unit 209 manages whether or not the acquisition unit 201 ″ has acquired image data as visual information in S5. At this time, the management unit 209 acquires and manages image data from the acquisition unit 201 ″. May be. Then, if the acquisition process in the acquisition unit 201 "is successful in S5, the management unit 209 then manages the operation so that the probability determination unit 202" determines the gripping success / failure probability distribution in S6. In addition, the management unit 209 may acquire the gripping success / failure probability distribution from the probability determination unit 202 "after the gripping success / failure probability distribution is determined, or may acquire information indicating that the gripping success / failure probability distribution has been determined. After that, in S7, the position determining unit 203 "determines the gripping position based on the gripping success / failure probability distribution. Further, the management unit 209 may acquire the gripping position determined by the position determination unit 203 ″, or may acquire information indicating that the gripping position has been determined. Based on the gripping position acquired from the determination unit 203 ″, operation management may be performed so that the control unit 204 ″ controls the robot 10 ″ in S8. In this case, the management unit 209 acquires joint angle information of the manipulator 1 and gripping operation processing information of the gripping device 3 as control information of the robot 10 ″. The management unit 209 performs a gripping success / failure determination in S10. In S18, the gripping success / failure determination result is acquired from the determination unit 205 ", and the acquired gripping success / failure determination result is stored in association with the control information acquired from the control unit 204".
S18の後、次のS11"に進むと、状態推定部206"は、管理部209からシステム動作管理情報を取得し、当該システム動作管理情報を用いて、ロボットシステム100"の状態を推定する。前述した第一、第二の実施形態では、把持成否判定後にシステム状態の推定を行っていたが、第三の実施形態では、各構成部の処理が管理されているため、それら各構成部における処理後に随時、推定を行うことが可能となる。各構成部の処理後に随時推定を行う場合、状態推定部206"は、把持動作実行時、把持動作実行後の持ち上げ時や搬送時など、ロボット10がどのような動作状態にあるかといった動作管理情報を管理部209から取得し、その動作状態を考慮した推定を行う。
After S18, when proceeding to the next S11 ", the state estimation unit 206" acquires the system operation management information from the management unit 209, and estimates the state of the robot system 100 "using the system operation management information. In the first and second embodiments described above, the system state is estimated after the gripping success / failure determination. However, in the third embodiment, since the processing of each component is managed, in each component It is possible to perform estimation at any time after processing. When estimation is performed at any time after processing of each component, the state estimation unit 206 "is used when performing a gripping operation, lifting a robot after performing a gripping operation, or carrying The operation management information such as what operation state 10 is in is acquired from the management unit 209, and estimation is performed in consideration of the operation state.
このように第三の実施形態では、各構成部による処理後に随時推定を行うことで、システム状態が中間状態と推定された場合に、より詳しく失敗要因を推定することが可能となる。以下、システム状態が中間状態と推定された場合に、より詳しく失敗要因を推定する方法について述べる。
第三の実施形態においても、第一の実施形態と同様に、1回の把持動作で把持に成功せず、何度か把持に失敗し、リトライで把持に成功した場合は中間状態であると推定する。そして、状態推定部206"は、把持成否確率が十分に高い場合には、把持位置決定の処理までは成功しており、把持制御以降の処理で失敗している可能性が高いと推定する。すなわち、把持制御要因により把持に失敗したと推定する。その際、状態推定部206"は、随時システム状態を推定することで、動作を細かく分割して、どの動作において失敗したかを推定する。例えば、対象物体41の把持動作時に失敗した場合、状態推定部206"は、第一の実施形態のS11で述べたような方法でシステム状態を推定するが、把持した後の持ち上げ時に失敗した場合には、システム状態の推定方法を変える。例えば、把持した後の持ち上げ時に対象物体41が落下した場合、状態推定部206"は、その失敗要因は把持動作制御要因の中でも、ハードウェアに関する要因が高いと推定する。このように推定する理由は、把持することには既に成功しているので、キャリブレーション値のずれなどの把持目標位置に把持装置3が移動できていないといった問題ではなく、把持装置3に関する問題と考えられるためである。例えば把持装置3が吸着機構である場合、吸着パッドの劣化や、エアーチューブの劣化、折れ曲がりなどによって、十分なエア流量が供給されていないために失敗するような、ハードウェアに関する要因が高いと推定することができる。
As described above, in the third embodiment, it is possible to estimate the failure factor in more detail when the system state is estimated to be an intermediate state by performing estimation as needed after processing by each component. Hereinafter, a method for estimating the failure factor in more detail when the system state is estimated to be an intermediate state will be described.
Also in the third embodiment, as in the first embodiment, if gripping is not successful in one gripping operation, but gripping fails several times, and gripping is successful in retry, it is in an intermediate state. presume. Then, when the gripping success / failure probability is sufficiently high, the state estimation unit 206 ″ estimates that the gripping position determination process has been successful and that it is highly likely that the process after gripping control has failed. That is, it is presumed that gripping has failed due to gripping control factors.At that time, the state estimation unit 206 "estimates the system state at any time, and divides the operation finely to estimate which operation failed. For example, when a failure occurs during the gripping operation of the target object 41, the state estimation unit 206 "estimates the system state by the method described in S11 of the first embodiment, but fails when lifting after gripping For example, when the target object 41 falls during lifting after gripping, the state estimation unit 206 "causes the failure factor to be a factor related to hardware among the gripping motion control factors. Estimated high. The reason for this estimation is not the problem that the gripping device 3 has not been moved to the gripping target position, such as a deviation of the calibration value, because the gripping has already been successful. This is because it is considered. For example, when the gripping device 3 is a suction mechanism, it is estimated that there are high factors related to hardware such as failure due to the deterioration of the suction pad, deterioration of the air tube, bending, etc., because the sufficient air flow rate is not supplied. can do.
また第一、第二の実施形態では、把持成否判定の過去の履歴を利用していないが、第三の実施形態では管理部209が過去の把持成否判定結果を制御情報と合わせて履歴として保存している。このため、状態推定部206"は、管理部209により管理されている過去の履歴を利用してシステム状態を推定することも可能である。例えば、状態推定部206"は、過去における数サイクルの把持動作成功や失敗の履歴を管理部209から取得し、それら過去の履歴を利用して、把持成功までのリトライ回数や把持に失敗する確率を求め、それらの情報をもとにシステム状態を推定する。一例として、中間状態か異常状態かのリトライ回数の閾値として、3回以内のリトライの場合は中間状態であると推定する場合について考える。例えば把持成功までの平均リトライ回数が4回であった場合、1サイクル目では4回目に把持に成功したが、2サイクル目では2回で把持に成功したとすると、平均で3回目に把持に成功しているので、システムが中間状態として動作していると考えられる。しかし、例えば2サイクル目でも4回目に把持に成功している場合、平均では3回目に把持に成功していることになるが、この時の把持成功確率は下がってきており、システム状態の度合いが異常になりつつあると考えられる。すなわちこの場合、状態推定部206"は、過去の履歴を基に、中間状態から異常状態へと遷移したと推定する。前述した第一、第二の実施形態では、サイクルごとにシステム状態の推定が行われるが、第三の実施形態の場合は、複数サイクルの過去の履歴を基にシステム状態の推定を行うことができる。なお、中間状態あるいは異常状態における失敗要因の推定方法としては、前述した第一、第二の実施形態のS11、S11'で述べた方法を用いてもよいし、前述の各構成部の処理を行った後での推定方法でもよいし、これら以外の方法で推定してもよい。
In the first and second embodiments, the past history of gripping success / failure determination is not used, but in the third embodiment, the management unit 209 stores the past gripping success / failure determination result together with the control information as a history. is doing. For this reason, the state estimation unit 206 "can also estimate the system state using the past history managed by the management unit 209. For example, the state estimation unit 206" Acquires the history of gripping operation success and failure from the management unit 209, and uses these past histories to determine the number of retries until gripping success and the probability of gripping failure, and estimates the system state based on that information To do. As an example, let us consider a case where it is estimated that the state is an intermediate state in the case of retrying within 3 times as the threshold value of the retry number of the intermediate state or the abnormal state. For example, if the average number of retries until successful gripping was 4, the gripping was successful at the 4th time in the 1st cycle, but if the gripping was successful at the 2nd time in the 2nd cycle, Since it is successful, the system is considered to be operating in an intermediate state. However, for example, if gripping is successful for the fourth time even in the second cycle, the gripping is successful for the third time on average, but the probability of successful gripping at this time has decreased, and the degree of system state Seems to be becoming abnormal. That is, in this case, the state estimation unit 206 ″ estimates that the transition from the intermediate state to the abnormal state is made based on the past history. In the first and second embodiments described above, the system state is estimated for each cycle. However, in the case of the third embodiment, the system state can be estimated based on the past history of a plurality of cycles, and the failure factor estimation method in the intermediate state or abnormal state is described above. The methods described in S11 and S11 ′ of the first and second embodiments may be used, the estimation method after the processing of each component described above may be performed, or estimation may be performed by other methods. May be.
以上説明したように、第三の実施形態では、管理部209が管理する動作管理情報に基づき、状態推定部206"がシステム状態を推定する。第三の実施形態によれば、各処理の後に随時システム状態を推定できるため、より詳しくシステム状態を推定できる。また、第3の実施形態によれば、過去の把持成否結果等を保存管理しているため、複数サイクルの履歴に基づきシステム状態を推定できる。すなわち、第三の実施形態によれば、把持動作後だけでなく、各構成部の処理後に随時、また過去の複数サイクルの履歴を基に、システム状態を推定るため、予防保全、事後保全をより詳しく容易に行えるようになり、その結果、生産性を高めることができる。
As described above, in the third embodiment, the state estimation unit 206 ″ estimates the system state based on the operation management information managed by the management unit 209. According to the third embodiment, after each process, Since the system state can be estimated at any time, the system state can be estimated in more detail, and according to the third embodiment, since the past holding success / failure results and the like are stored and managed, the system state can be determined based on the history of a plurality of cycles That is, according to the third embodiment, since the system state is estimated not only after the gripping operation but also at any time after the processing of each component and based on the history of a plurality of past cycles, preventive maintenance, Ex-post maintenance can be performed in more detail and easily, and as a result, productivity can be improved.
<その他の実施形態>
前述した第二の実施形態では、力覚センサ5の代わりに近接覚センサを用いてもよい。近接覚センサは、近接した物体等までの距離を計測可能な近接計測センサであり、近接覚情報を取得する。力覚センサ5を用いた場合は接触により対象物体41の位置を検出したが、近接覚センサを用いた場合には対象物体41の表面の法線を検出できる。この例の場合、撮像装置2だけでは求まりにくい対象物体41表面の法線をより正確に計測できるため、近接覚センサを用いることで、撮像装置2の画像に基づく把持位置の計測を補うことができる。なお、近接覚センサは複数用いてもよい。この例の場合、対象物体41の表面の法線を検出することで、対象物体41に対して法線方向に把持装置3がアプローチを行えるようになる。すなわち、近接覚センサによる計測結果から対象物体41の位置や表面の法線方向の情報を得て、把持成否確率分布と合わせて把持位置を決定することが可能となる。これにより、例えば把持装置3が吸着機構である場合、エアーのリークが少なくなるように対象物体41にアプローチできるようになり、把持の成功確率を高めることができるようになる。
<Other embodiments>
In the second embodiment described above, a proximity sensor may be used instead of the force sensor 5. The proximity sensor is a proximity measurement sensor capable of measuring a distance to a close object or the like, and acquires proximity information. When the force sensor 5 is used, the position of the target object 41 is detected by contact, but when the proximity sensor is used, the normal of the surface of the target object 41 can be detected. In the case of this example, the normal of the surface of the target object 41 that is difficult to obtain with the imaging device 2 alone can be measured more accurately. Therefore, by using a proximity sensor, it is possible to supplement the measurement of the gripping position based on the image of the imaging device 2. it can. A plurality of proximity sensors may be used. In this example, the gripping device 3 can approach the target object 41 in the normal direction by detecting the normal of the surface of the target object 41. That is, it is possible to obtain information on the position of the target object 41 and the normal direction of the surface from the measurement result of the proximity sensor, and determine the gripping position together with the gripping success / failure probability distribution. Accordingly, for example, when the gripping device 3 is an adsorption mechanism, the target object 41 can be approached so that air leakage is reduced, and the probability of successful gripping can be increased.
前述した第一〜第三の実施形態において、把持位置を決定する際には、撮像装置として距離センサを利用し、距離画像の信頼度を使って把持位置を決定してもよい。ビニール袋や緩衝材に包まれた物体のように、正確な距離画像を得難い対象物体41であっても、距離画像の信頼度に基づき把持位置を決定することで、対象物体41へのアプローチがより成功し易くなる。これにより、対象物体の把持が成功するまでの時間を短くすることができ、作業効率を向上させることが可能となる。
In the first to third embodiments described above, when determining the gripping position, a distance sensor may be used as the imaging device, and the gripping position may be determined using the reliability of the distance image. Even if the target object 41 is difficult to obtain an accurate distance image, such as an object wrapped in a plastic bag or a cushioning material, the approach to the target object 41 can be determined by determining the gripping position based on the reliability of the distance image. It becomes easier to succeed. As a result, the time until the target object is successfully gripped can be shortened, and the work efficiency can be improved.
また第一〜第三の実施形態において、対象物体41はビニール袋や緩衝材に包まれていなくてもよい。例えば、電源コードのような柔軟物体や金属・半透明の物体のような、変形や光の反射が変化することによって把持位置を決定し難い物体であってもよい。なお、対象物体41は把持位置の推定が困難な物体には限定されず、変形しにくく、光の反射が変化しにくい物体でもよい。
In the first to third embodiments, the target object 41 may not be wrapped in a plastic bag or a buffer material. For example, a flexible object such as a power cord or a metal / semi-transparent object may be an object in which it is difficult to determine a gripping position due to deformation or reflection of light. The target object 41 is not limited to an object for which it is difficult to estimate the grip position, and may be an object that is not easily deformed and the light reflection is difficult to change.
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
The present invention supplies a program that realizes one or more functions of the above-described embodiments to a system or apparatus via a network or a storage medium, and one or more processors in a computer of the system or apparatus read and execute the program It is also possible to implement this process. It can also be realized by a circuit (for example, ASIC) that realizes one or more functions.
上述の実施形態は、何れも本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明は、その技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
The above-described embodiments are merely examples of implementation in carrying out the present invention, and the technical scope of the present invention should not be construed as being limited thereto. That is, the present invention can be implemented in various forms without departing from the technical idea or the main features thereof.