JP7128933B2 - Image processing device - Google Patents
Image processing device Download PDFInfo
- Publication number
- JP7128933B2 JP7128933B2 JP2021074635A JP2021074635A JP7128933B2 JP 7128933 B2 JP7128933 B2 JP 7128933B2 JP 2021074635 A JP2021074635 A JP 2021074635A JP 2021074635 A JP2021074635 A JP 2021074635A JP 7128933 B2 JP7128933 B2 JP 7128933B2
- Authority
- JP
- Japan
- Prior art keywords
- model
- end effector
- dimensional
- gripping
- search
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Manipulator (AREA)
Description
本発明は、画像処理装置に関し、例えば作業空間に積み上げられたピッキングの対象である複数のワークの三次元形状をセンサ部により測定し、ロボットのアーム部の先端に設けたエンドエフェクタで把持して順次取り出すバラ積みピッキング動作を行うロボットを制御するための画像処理装置に関する。 The present invention relates to an image processing apparatus, for example, measuring the three-dimensional shape of a plurality of workpieces piled up in a workspace to be picked by a sensor section, and gripping the workpieces by an end effector provided at the tip of an arm section of a robot. The present invention relates to an image processing apparatus for controlling a robot that performs a bulk picking operation that sequentially takes out.
マニピュレータにロボットビジョンを組み合わせて、対象となるワークをロボットビジョンで撮像して高さ情報を取得した上で、適切な位置を把持(ピック)して、所望の位置に載置(プレース又はプレースメント)可能なロボット装置が開発されている。このようなロボット装置を用いて、バラ積みピッキングと呼ばれる、通い箱に入れられた多数のワークを、ロボットビジョンを構成するカメラやセンサ部で撮像して姿勢を把握し、適切な把持位置を把握した上で、この把持位置までロボットのアームを移動させ、アームの先端に設けられたハンド部等のエンドエフェクタで把持して、通い箱の外の、決められた位置に載置することが行われている。 By combining a manipulator with a robot vision, the target workpiece is imaged with the robot vision and height information is acquired. ) are being developed. Using such a robot device, a large number of workpieces placed in a returnable box, called bulk picking, are imaged by the cameras and sensors that make up the robot vision, the posture is grasped, and the appropriate gripping position is grasped. After that, the robot arm is moved to this gripping position, gripped by an end effector such as a hand provided at the tip of the arm, and placed at a predetermined position outside the returnable container. It is
このようなロボットビジョンを用いたバラ積みピッキングでは、設定時においてワークを掴むときのワークとロボットとの位置関係を把持位置として登録しておき、実運用時にはロボットビジョンで検出したワークに対するロボットの把持位置を計算し、計算された位置にロボットを移動させてピッキングする。 In bulk picking using this kind of robot vision, the positional relationship between the workpiece and the robot when gripping the workpiece is registered as the gripping position at the time of setting. Calculate the position and move the robot to the calculated position for picking.
このようなバラ積みピッキングでは、ワークを把持する時にエンドエフェクタが他のワークや箱など、周囲に存在する障害物と干渉してしまうことがある。これを避けるために、把持位置でのエンドエフェクタの位置を計算して周囲の物体との干渉判定を行い、干渉しない解を有効な解として出力することが考えられる。ここで、周囲の物体としては、センサ部で計測して得られた三次元点群や、事前に登録した箱や床などがある。 In such bulk picking, the end effector may interfere with surrounding obstacles such as other works and boxes when gripping the work. In order to avoid this, it is conceivable to calculate the position of the end effector at the gripping position, determine whether it interferes with surrounding objects, and output a solution that does not interfere as an effective solution. Here, the surrounding objects include a three-dimensional point cloud obtained by measurement by the sensor unit, a pre-registered box, a floor, and the like.
このようなエンドエフェクタの干渉判定モデルを作成する場合、エンドエフェクタの三次元CADデータを読み込む方法が最も手間が少ないと考えられる。例えば、三次元CADデータを読み込んで干渉判定を行う方法が提案されている(特許文献1)。この方法では、エンドエフェクタの三次元CADデータを読み込み、そのエンドエフェクタモデルを用いて干渉判定を行っている。しかしながら、干渉領域を追加したい場合は、三次元CADプログラムなどを用いて三次元CADデータを編集して、干渉領域の形状を作成して追加する必要があり、繁雑な作業を要するという問題があった。 When creating such an end effector interference determination model, the method of reading the three-dimensional CAD data of the end effector is considered to be the least troublesome. For example, a method of reading three-dimensional CAD data and determining interference has been proposed (Patent Document 1). In this method, the three-dimensional CAD data of the end effector is read, and the interference judgment is performed using the end effector model. However, if you want to add an interference area, you need to edit the three-dimensional CAD data using a three-dimensional CAD program or the like to create the shape of the interference area and add it, which is a problem that requires complicated work. rice field.
また、エンドエフェクタモデルを直方体で作成して代用する方法も提案されている(特許文献2)。この方法では、エンドエフェクタを模倣するため、直方体を組み合わせてエンドエフェクタ代用モデルを作成している。しかしながら、直方体の組み合わせのみでは、実物のエンドエフェクタに近いモデルを作成するのは容易でなく、再現性の点で問題があった。 A method of creating an end effector model with a rectangular parallelepiped and substituting it has also been proposed (Patent Document 2). In this method, in order to imitate the end effector, rectangular parallelepipeds are combined to create an end effector substitute model. However, it is not easy to create a model that is close to the actual end effector with only a combination of rectangular parallelepipeds, and there is a problem in terms of reproducibility.
本発明は、このような事情に鑑みてなされたものであり、その目的の一は、エンドエフェクタの干渉判定を容易に行えるようにした画像処理装置を提供することにある。 SUMMARY OF THE INVENTION The present invention has been made in view of such circumstances, and one of the objects thereof is to provide an image processing apparatus that facilitates determination of interference between end effectors.
本発明の第1の形態に係る画像処理装置によれば、作業空間に積み上げられた複数のワークの三次元形状をセンサ部により測定し、ロボットコントローラでもってロボットのアーム部の先端に設けたエンドエフェクタで把持するピッキング動作を行うロボットを制御するための画像処理装置であって、作業空間に配置されたワークの三次元形状を測定するセンサ部から、複数のワークの三次元形状を示す入力画像を取得する入力画像取得部と、前記入力画像から、前記ワークの位置及び姿勢を特定する三次元サーチに用いるサーチモデルを登録するサーチモデル登録部と、前記ロボットコントローラにより制御されるエンドエフェクタの三次元形状を仮想的に表現する、エンドエフェクタモデルを登録するためのエンドエフェクタモデル登録部と、前記ワークの三次元形状を仮想的に表現するワークモデルを仮想的な三次元空間上で三次元状に表示させる表示部と、前記表示部に表示されたワークモデルに対して、該ワークモデルを前記エンドエフェクタモデルで把持する把持位置を特定する把持位置特定部と、前記入力画像から、前記サーチモデルを用いて、一のワークの位置及び姿勢を特定する三次元サーチを行う三次元サーチ部と、前記三次元サーチ部で三次元サーチされた前記一のワークに対して、許容される傾斜角度範囲を設定する傾斜角度設定部と、前記三次元サーチ部により特定された前記一のワークの位置及び姿勢と、該一のワークに対応するワークモデルに対して前記把持位置特定部により特定された前記把持位置とに基づいて、該一のワークを前記エンドエフェクタモデルにより把持可能か否かを判定する三次元ピック判定部と、を備え、前記三次元ピック判定部は、前記三次元サーチ部で三次元サーチされた前記一のワークを前記エンドエフェクタモデルで把持する際に、該エンドエフェクタが周囲の物体と干渉するか否かを判定する干渉判定部と、前記三次元サーチ部で三次元サーチされた前記一のワークが、前記傾斜角度範囲内か否かを判定する角度判定部と、を備え、前記表示部は、前記入力画像上に、前記一のワークを把持する際の前記エンドエフェクタモデルを表示すると共に、前記三次元ピック判定部により前記一のワークが前記エンドエフェクタモデルにより把持不能と判定された場合には、該一のワークの把持不能要因を表示可能に構成しており、さらに、前記干渉判定部と前記角度判定部の判定結果に応じて、異なる把持不能要因を表示可能に構成している。
According to the image processing apparatus according to the first aspect of the present invention, the three-dimensional shape of a plurality of works piled up in the working space is measured by the sensor section, and the end provided at the tip of the arm section of the robot is measured by the robot controller. An image processing device for controlling a robot that performs a picking operation gripped by an effector, wherein an input image representing the three-dimensional shape of a plurality of workpieces from a sensor unit that measures the three-dimensional shape of workpieces arranged in a work space. a search model registration unit for registering a search model used in a three-dimensional search for specifying the position and orientation of the workpiece from the input image; and a tertiary of the end effector controlled by the robot controller. An end effector model registration unit for registering an end effector model that virtually represents the original shape, and a work model that virtually represents the three-dimensional shape of the work in a three-dimensional shape in a virtual three-dimensional space. a holding position specifying unit for specifying a holding position where the end effector model holds the work model displayed on the display unit; and the search model from the input image. a three-dimensional search unit that performs a three-dimensional search for specifying the position and orientation of one work using , the position and orientation of the one work specified by the three-dimensional search unit, and the work model corresponding to the one work specified by the gripping position specifying unit a three-dimensional pick determination unit that determines whether or not the one workpiece can be gripped by the end effector model based on the gripping position, and the three-dimensional pick determination unit performs a three-dimensional an interference determination unit that determines whether or not the end effector interferes with a surrounding object when the originally searched one workpiece is gripped by the end effector model; and an angle determination unit that determines whether the one work is within the tilt angle range, and the display unit displays the end effector model when gripping the one work on the input image. is displayed, and when the three-dimensional pick determination unit determines that the one workpiece cannot be gripped by the end effector model, the reason why the workpiece cannot be gripped can be displayed , and , the interference determination unit and the corner Different gripping impossibility factors are configured to be able to be displayed according to the determination result of the strength determination unit .
また、第2の形態に係る画像処理装置によれば、作業空間に積み上げられた複数のワークの三次元形状をセンサ部により測定し、ロボットコントローラでもってロボットのアーム部の先端に設けたエンドエフェクタで把持するピッキング動作を行うロボットを制御するための画像処理装置であって、作業空間に配置されたワークの三次元形状を測定するセンサ部から、複数のワークの三次元形状を示す入力画像を取得する入力画像取得部と、前記入力画像から、前記ワークの位置及び姿勢を特定する三次元サーチに用いるサーチモデルを登録するサーチモデル登録部と、前記ロボットコントローラにより制御されるエンドエフェクタの三次元形状を仮想的に表現する、エンドエフェクタモデルを登録するためのエンドエフェクタモデル登録部と、前記ワークの三次元形状を仮想的に表現するワークモデルを仮想的な三次元空間上で三次元状に表示させる表示部と、前記表示部に表示されたワークモデルに対して、該ワークモデルを前記エンドエフェクタモデルで把持する把持位置を特定する把持位置特定部と、前記入力画像から、前記サーチモデルを用いて、一のワークの位置及び姿勢を特定する三次元サーチを行う三次元サーチ部と、前記三次元サーチ部により特定された前記一のワークの位置及び姿勢と、該一のワークに対応するワークモデルに対して前記把持位置特定部により特定された前記把持位置とに基づいて、該一のワークを前記エンドエフェクタモデルにより把持可能か否かを判定する三次元ピック判定部と、を備え、前記表示部は、前記入力画像上に、前記一のワークを把持する際の前記エンドエフェクタモデルを表示すると共に、前記三次元ピック判定部により前記一のワークが前記エンドエフェクタモデルにより把持不能と判定された場合には、該一のワークの把持不能要因を表示可能に構成しており、さらに、前記三次元ピック判定部の判定結果に応じて、前記エンドエフェクタモデルの表示態様を変化させて表示可能に構成している。
Further, according to the image processing apparatus according to the second embodiment, the three-dimensional shape of a plurality of works piled up in the work space is measured by the sensor section, and the end effector provided at the tip of the arm section of the robot is controlled by the robot controller. An image processing device for controlling a robot that performs a picking operation by gripping a workpiece with an input image representing the three-dimensional shape of a plurality of workpieces from a sensor unit that measures the three-dimensional shape of workpieces arranged in a work space. an input image acquisition unit for acquiring; a search model registration unit for registering a search model used in a three-dimensional search for specifying the position and orientation of the workpiece from the input image; and a three-dimensional end effector controlled by the robot controller. An end effector model registration unit for registering an end effector model that virtually represents a shape, and a work model that virtually represents the three-dimensional shape of the work in a three-dimensional shape in a virtual three-dimensional space. a display unit for displaying; a holding position specifying unit for specifying a holding position at which the work model displayed on the display unit is held by the end effector model; a three-dimensional search unit that performs a three-dimensional search for specifying the position and orientation of one work using a three-dimensional search unit; a three-dimensional pick determination unit that determines whether or not the one work can be gripped by the end effector model based on the gripping position specified by the gripping position specifying unit for the work model, The display unit displays the end effector model when gripping the one workpiece on the input image, and the three-dimensional pick determination unit determines that the one workpiece cannot be gripped by the end effector model. In the case where the one workpiece is not grippable, it is configured to be able to display the cause of the inability to grip the one workpiece, and furthermore, the display mode of the end effector model is changed and displayed according to the determination result of the three-dimensional pick determination unit. configured as possible.
さらに、第3の形態に係る画像処理装置によれば、作業空間に積み上げられた複数のワークの三次元形状をセンサ部により測定し、ロボットコントローラでもってロボットのアーム部の先端に設けたエンドエフェクタで把持するピッキング動作を行うロボットを制御するための画像処理装置であって、作業空間に配置されたワークの三次元形状を測定するセンサ部から、複数のワークの三次元形状を示す入力画像を取得する入力画像取得部と、前記入力画像から、前記ワークの位置及び姿勢を特定する三次元サーチに用いるサーチモデルを登録するサーチモデル登録部と、前記ロボットコントローラにより制御されるエンドエフェクタの三次元形状を仮想的に表現する、エンドエフェクタモデルを登録するためのエンドエフェクタモデル登録部と、前記ワークの三次元形状を仮想的に表現するワークモデルを仮想的な三次元空間上で三次元状に表示させる表示部と、前記表示部に表示されたワークモデルに対して、該ワークモデルを前記エンドエフェクタモデルで把持する把持位置を特定する把持位置特定部と、前記入力画像から、前記サーチモデルを用いて、一のワークの位置及び姿勢を特定する三次元サーチを行う三次元サーチ部と、前記三次元サーチ部により特定された前記一のワークの位置及び姿勢と、該一のワークに対応するワークモデルに対して前記把持位置特定部により特定された前記把持位置とに基づいて、該一のワークを前記エンドエフェクタモデルにより把持可能か否かを判定する三次元ピック判定部と、を備え、前記三次元サーチ部は、前記入力画像に含まれるワークの輪郭を表す輪郭上の特徴点と、表面形状を表す表面上の特徴点とに基づいて、前記入力画像から前記一のワークの位置及び姿勢を特定する三次元サーチを実行するよう構成しており、前記表示部は、前記入力画像上に、前記一のワークを把持する際の前記エンドエフェクタモデルを表示すると共に、前記三次元ピック判定部により前記一のワークが前記エンドエフェクタモデルにより把持不能と判定された場合には、該一のワークの把持不能要因を表示可能に構成している。
Furthermore, according to the image processing apparatus according to the third embodiment, the three-dimensional shape of a plurality of works stacked in the work space is measured by the sensor unit, and the end effector provided at the tip of the arm of the robot is controlled by the robot controller. An image processing device for controlling a robot that performs a picking operation by gripping a workpiece with an input image representing the three-dimensional shape of a plurality of workpieces from a sensor unit that measures the three-dimensional shape of workpieces arranged in a work space. an input image acquisition unit for acquiring; a search model registration unit for registering a search model used in a three-dimensional search for specifying the position and orientation of the workpiece from the input image; and a three-dimensional end effector controlled by the robot controller. An end effector model registration unit for registering an end effector model that virtually represents a shape, and a work model that virtually represents the three-dimensional shape of the work in a three-dimensional shape in a virtual three-dimensional space. a display unit for displaying; a holding position specifying unit for specifying a holding position at which the work model displayed on the display unit is held by the end effector model; a three-dimensional search unit that performs a three-dimensional search for specifying the position and orientation of one work using a three-dimensional search unit; a three-dimensional pick determination unit that determines whether or not the one work can be gripped by the end effector model based on the gripping position specified by the gripping position specifying unit for the work model, The three-dimensional search unit searches for the position and position of the one workpiece from the input image based on the feature points on the contour representing the outline of the workpiece and the feature points on the surface representing the surface shape included in the input image. The display unit is configured to execute a three-dimensional search for identifying a posture, and the display unit displays the end effector model when gripping the one workpiece on the input image, and performs the three-dimensional pick determination. When the part determines that the one workpiece cannot be gripped by the end effector model, it is configured to be able to display the reason why the one workpiece cannot be gripped.
さらにまた、第4の形態に係る画像処理装置によれば、作業空間に積み上げられた複数のワークの三次元形状をセンサ部により測定し、ロボットコントローラでもってロボットのアーム部の先端に設けたエンドエフェクタで把持するピッキング動作を行うロボットを制御するための画像処理装置であって、作業空間に配置されたワークの三次元形状を測定するセンサ部から、複数のワークの三次元形状を示す入力画像を取得する入力画像取得部と、前記入力画像から、前記ワークの位置及び姿勢を特定する三次元サーチに用いるサーチモデルを登録するサーチモデル登録部と、前記ロボットコントローラにより制御されるエンドエフェクタの三次元形状を仮想的に表現する、エンドエフェクタモデルを登録するためのエンドエフェクタモデル登録部と、前記ワークの三次元形状を仮想的に表現するワークモデルを仮想的な三次元空間上で三次元状に表示させる表示部と、前記表示部に表示されたワークモデルに対して、該ワークモデルを前記エンドエフェクタモデルで把持する把持位置を特定する把持位置特定部と、前記入力画像から、前記サーチモデルを用いて、一のワークの位置及び姿勢を特定する三次元サーチを行う三次元サーチ部と、前記三次元サーチ部により特定された前記一のワークの位置及び姿勢と、該一のワークに対応するワークモデルに対して前記把持位置特定部により特定された前記把持位置とに基づいて、該一のワークを前記エンドエフェクタモデルにより把持可能か否かを判定する三次元ピック判定部と、を備え、前記表示部は、前記入力画像上に、前記一のワークを把持する際の前記エンドエフェクタモデルを表示すると共に、前記三次元ピック判定部により前記一のワークが前記エンドエフェクタモデルにより把持不能と判定された場合には、該一のワークの把持不能要因を表示可能に構成しており、前記表示部は、前記三次元サーチの選択を受け付ける三次元サーチボタンと、前記三次元ピック判定部による三次元ピック判定の選択を受け付ける三次元ピックボタンと、を並べて配置した機能選択画面を表示可能としており、前記機能選択画面から、前記三次元サーチボタンの選択を受け付けると、前記サーチモデルを登録する画面を前記表示部に表示させるためのアイコンと、前記三次元サーチを行うサーチ領域を設定する画面を前記表示部に表示させるためのアイコンと、前記三次元サーチを実行する条件を設定する画面を前記表示部に表示させるためのアイコンと、を、この順に並べて前記表示部に表示させ、前記機能選択画面から、前記三次元ピックボタンの選択を受け付けると、前記表示部上で表示される仮想的な三次元空間であるビジョン空間の座標系で算出された位置及び姿勢と、ロボットコントローラがエンドエフェクタを動作させるロボット空間の座標系の位置及び姿勢とを変換するキャリブレーション情報を選択する画面を前記表示部に表示させるためのアイコンと、前記把持位置を登録する画面を前記表示部に表示させるためのアイコンと、前記把持位置を検出する条件を設定する画面を前記表示部に表示させるためのアイコンと、を、この順に並べて前記表示部に表示させるよう構成している。
Furthermore, according to the image processing apparatus of the fourth aspect, the three-dimensional shape of a plurality of works piled up in the work space is measured by the sensor section, and the end provided at the tip of the arm section of the robot is measured by the robot controller. An image processing device for controlling a robot that performs a picking operation gripped by an effector, wherein an input image representing the three-dimensional shape of a plurality of workpieces from a sensor unit that measures the three-dimensional shape of workpieces arranged in a work space. a search model registration unit for registering a search model used in a three-dimensional search for specifying the position and orientation of the workpiece from the input image; and a tertiary of the end effector controlled by the robot controller. An end effector model registration unit for registering an end effector model that virtually represents the original shape, and a work model that virtually represents the three-dimensional shape of the work in a three-dimensional shape in a virtual three-dimensional space. a holding position specifying unit for specifying a holding position where the end effector model holds the work model displayed on the display unit; and the search model from the input image. a three-dimensional search unit that performs a three-dimensional search for identifying the position and orientation of one work using a three-dimensional pick determination unit that determines whether or not the one workpiece can be gripped by the end effector model based on the gripping position specified by the gripping position specifying unit for the work model to be picked. The display unit displays the end effector model when the one workpiece is gripped on the input image, and the three-dimensional pick determination unit determines that the one workpiece cannot be gripped by the end effector model. When it is determined, the cause of the inability to grip the one work can be displayed, and the display unit includes a three-dimensional search button for accepting the selection of the three-dimensional search and the It is possible to display a function selection screen in which a three-dimensional pick button for accepting selection of three-dimensional pick determination is arranged side by side, and when the selection of the three-dimensional search button is accepted from the function selection screen, the search model is registered. an icon for displaying a screen on the display unit; an icon for displaying a screen for setting a search area for performing the three-dimensional search on the display unit; an icon for displaying a screen for setting conditions for executing a search on the display unit in this order, and the selection of the three-dimensional pick button is received from the function selection screen. , the position and orientation calculated in the coordinate system of the vision space, which is a virtual three-dimensional space displayed on the display unit, and the position and orientation of the coordinate system in the robot space in which the robot controller operates the end effector; An icon for displaying a screen for selecting calibration information to be converted on the display unit, an icon for displaying a screen for registering the gripping position on the display unit, and conditions for detecting the gripping position are set. Icons for displaying the screen on the display section are arranged in this order and displayed on the display section.
さらにまた、第5の形態に係る画像処理装置によれば、上記何れかの構成において、さらに、前記入力画像を前記センサ部から取得する入力インターフェースと、前記表示部に対して前記入力画像および前記エンドエフェクタモデルを表示するための表示データを出力する表示インターフェースと、前記三次元ピック判定部により前記一のワークを把持可能と判定された場合に、該一のワークをピックするようにロボットコントローラに対して該ロボットコントローラに接続された前記ロボットの制御に必要な情報を出力するロボットインターフェースと、を備えている。
Furthermore, according to the image processing apparatus according to the fifth aspect, in any one of the configurations described above , an input interface for acquiring the input image from the sensor unit; a display interface that outputs display data for displaying an end effector model; and a robot controller that, when the three-dimensional pick determination unit determines that the one workpiece can be gripped, causes the robot controller to pick the one workpiece. and a robot interface for outputting information necessary for controlling the robot connected to the robot controller.
さらにまた、第6の形態に係る画像処理装置によれば、上記何れかの構成において、前記干渉判定部は、干渉判定を行う際の前記エンドエフェクタモデルの拡張量の設定を受け付け、前記エンドエフェクタモデルと、前記拡張量とに基づいて、干渉判定を行うよう構成している。
Furthermore, according to the image processing apparatus according to the sixth aspect, in any one of the configurations described above, the interference determination unit receives a setting of an extension amount of the end effector model when performing interference determination, and the end effector It is configured to perform interference determination based on the model and the extension amount.
さらにまた、第7の形態に係る画像処理装置によれば、上記何れかの構成において、さらに、三次元サーチの結果に対して評価指標を演算する評価指標演算部を備え、前記評価指標演算部は、前記サーチモデル登録部で登録した前記サーチモデルに対応する特徴点の存在割合に応じて、前記評価指標を算出するよう構成している。 Furthermore, according to the image processing apparatus according to the seventh aspect, in any one of the configurations described above, an evaluation index calculation unit for calculating an evaluation index for the result of the three-dimensional search is further provided, and the evaluation index calculation unit is configured to calculate the evaluation index according to the existence ratio of feature points corresponding to the search model registered by the search model registration unit.
さらにまた、第8の形態に係る画像処理装置によれば、上記何れかの構成において、エンドエフェクタで把持するワークの優先順位を決定する把持優先順位決定部を備え、前記把持優先順位決定部は、前記評価指標と、前記ワークのZ方向の位置とに基づいて、前記優先順位を決定するよう構成している。 Furthermore, according to the image processing apparatus according to the eighth aspect, in any one of the configurations described above, the gripping priority determination unit is provided for determining the priority of the workpieces to be gripped by the end effector, and the gripping priority determination unit is , the priority is determined based on the evaluation index and the position of the workpiece in the Z direction.
以下、本発明の実施形態を図面に基づいて説明する。ただし、以下に示す実施形態は、本発明の技術思想を具体化するための例示であって、本発明は以下のものに特定されない。また、本明細書は特許請求の範囲に示される部材を、実施形態の部材に特定するものでは決してない。特に実施形態に記載されている構成部品の寸法、材質、形状、その相対的配置等は特に特定的な記載がない限りは、本発明の範囲をそれのみに限定する趣旨ではなく、単なる説明例にすぎない。なお、各図面が示す部材の大きさや位置関係等は、説明を明確にするため誇張していることがある。さらに以下の説明において、同一の名称、符号については同一若しくは同質の部材を示しており、詳細説明を適宜省略する。さらに、本発明を構成する各要素は、複数の要素を同一の部材で構成して一の部材で複数の要素を兼用する態様としてもよいし、逆に一の部材の機能を複数の部材で分担して実現することもできる。
(実施形態1)
BEST MODE FOR CARRYING OUT THE INVENTION An embodiment of the present invention will be described below with reference to the drawings. However, the embodiments shown below are examples for embodying the technical idea of the present invention, and the present invention is not limited to the following. In addition, this specification does not in any way specify the members shown in the claims as the members of the embodiment. Unless otherwise specified, the dimensions, materials, shapes, relative arrangements, etc. of the components described in the embodiment are not meant to limit the scope of the present invention, but are merely illustrative examples. It's nothing more than Note that the sizes and positional relationships of members shown in each drawing may be exaggerated for clarity of explanation. Furthermore, in the following description, the same names and symbols indicate the same or homogeneous members, and detailed description thereof will be omitted as appropriate. Furthermore, each of the elements constituting the present invention may be configured with the same member so that a single member can serve as a plurality of elements, or conversely, the function of one member can be It can also be realized by sharing.
(Embodiment 1)
実施形態1として、ピッキング対象のワークのピッキングを行うためのロボットシステム1000の構成例を図1に示す。この例では、作業空間に積み上げられた複数のワークWKを、ロボットRBTを用いて順次取り出し、所定の位置に配置するバラ積みピッキングを行う例について示している。ロボットRBTはマニピュレータ等とも呼ばれ、アーム部ARMと、アーム部ARMの先端に設けられたエンドエフェクタHNDを備える。アーム部ARMは複数の可動部を備えており、2本のアームが互いになす角度やアーム支点の回転により、エンドエフェクタEETを所望の位置へ移動させる。エンドエフェクタEETはワークWKを把持又は解放可能としている。
As
このロボットRBTは、ロボットコントローラ6で動作を制御される。ロボットコントローラ6はアーム部ARMの可動やエンドエフェクタEETの開閉動作を制御する。またロボットコントローラ6は画像処理装置100から、ロボットRBTの制御に必要な情報を取得する。例えば、収納容器BXに無作為に投入された多数の部品であるワークWKを、三次元カメラや照明等のセンサ部2で三次元形状を取得し、画像処理装置100の演算部10でワークの位置や姿勢を検出して、情報をロボットコントローラ6に送る。ロボットコントローラ6は、ワークWKを一つづつ、ロボットRBTのアーム部ARMの先端に設けられたエンドエフェクタEETでもって把持し、ステージSTG上の所定の位置、例えばコンベアベルト上に並べていく。
A
ロボットシステム1000の機能ブロック図を図2に示す。この図に示すロボットシステム1000は、画像処理装置100と、センサ部2と、表示部3と、操作部4と、ロボット本体5と、ロボットコントローラ6と、ロボット操作具7とを備える。
A functional block diagram of the
操作部4では、画像処理に関する設定を行う。またセンサ部2で、ワークを撮像しての三次元形状を取得する。さらに表示部3で、設定や動作状態の確認を行う。さらにまた演算部10で、三次元サーチや干渉判定、把持解の算出等を行う。一方、ロボットコントローラ6は演算部10の結果に従い、ロボットの制御を行う。またロボット操作具7は、ロボットの動作設定を行う。なお、図2の例では操作部4とロボット操作具7を別個の部材としているが、これらを共通の部材としてもよい。
The
センサ部2は、ロボットビジョンなどと呼ばれる、作業空間やワークを撮像する部材である。センサ部2で撮像された画像から、バラ積みされたワークの三次元形状を示す三次元形状データが取得される。なお三次元形状を取得する方法は、パターン投影法、ステレオ法、レンズ焦点法、光切断法、光レーダ法、干渉法、TOF方式などがある。本実施形態においては、パターン投影法の内、位相シフト法を用いている。
The
センサ部2の構成は、三次元形状の計測技術に応じて決定される。このセンサ部2は、カメラ、照明又はプロジェクタ等を備える。例えば位相シフト法でワークの三次元形状を計測する場合は、センサ部2として図3に示すように、プロジェクタPRJと複数のカメラCME1、CME2、CME3、CME4を備える。なおセンサ部は、カメラやプロジェクタといった複数の部材で構成する他、これらを一体的に構成してもよい。例えばカメラやプロジェクタを統合してヘッド状とした3D撮像ヘッドを、センサ部とすることができる。
The configuration of the
また三次元形状データの生成自体を、センサ部側で行うこともできる。この場合、センサ部側に三次元形状データの生成機能を実現する画像処理IC等を設ける。あるいは、三次元形状データの生成を、画像処理装置側で行わず、センサ部で撮像した生画像を、画像処理装置側で画像処理して三次元画像等の三次元形状データを生成する構成としてもよい。 The generation of the three-dimensional shape data itself can also be performed on the sensor unit side. In this case, an image processing IC or the like for realizing the function of generating three-dimensional shape data is provided on the sensor unit side. Alternatively, the image processing device does not generate the three-dimensional shape data, and the raw image captured by the sensor unit is processed by the image processing device to generate three-dimensional shape data such as a three-dimensional image. good too.
さらに、センサ部2で撮像された画像に基づいて、後述するキャリブレーションを実行することにより、実際のワークWKの位置座標(エンドエフェクタEETの移動位置の座標)と、表示部3上に表示された画像上の位置座標とをリンクさせることができる。
Furthermore, by performing calibration described later based on the image captured by the
画像処理装置100は、このようにして得られたワークの三次元形状データに基づいて、三次元サーチ、干渉判定、把持解算出等を行う。この画像処理装置100は、専用の画像処理プログラムをインストールした汎用のコンピュータや、専用に設計された画像処理コントローラ、ロボットビジョン装置等が利用できる。なお図2の例では、センサ部2やロボットコントローラ6等を画像処理装置100とは別個の部材で構成する例を示しているが、本発明はこの構成に限られず、例えばセンサ部と画像処理装置を一体化したり、あるいはロボットコントローラを画像処理装置に組み込むこともできる。このように、図2に示す部材の区分けは一例であって、複数の部材を統合させることもできる。例えば画像処理装置100を操作する操作部4と、ロボットコントローラ6を操作するロボット操作具7とを、共通の部材としてもよい。
The
ただし、センサ部2はロボット本体5と別体とする。すなわち、本願発明はセンサ部2をロボット本体5のアーム部ARMに設けない、オフハンド形式と呼ばれる形態を対象としている。いいかえると、センサ部をエンドエフェクタに設ける、オンハンド形式等と呼ばれる態様は、本願発明に含まれない。
However, the
表示部3は、画像処理装置100で取得されたワークの三次元形状を表示させたり、各種設定や動作状態の確認を行うための部材であり、液晶モニタや有機ELディスプレイ、CRT等が利用できる。操作部4は、画像処理等の各種設定を行うための部材であり、キーボードやマウス等の入力デバイスが利用できる。また表示部3をタッチパネルとすることで、操作部と表示部を一体化することもできる。
The
例えば画像処理装置100を、画像処理プログラムをインストールしたコンピュータで構成した場合、表示部3上には画像処理プログラムのグラフィカルユーザインターフェース(GUI)画面が表示される。表示部3上に表示されたGUI上から各種の設定を行うことができ、またシミュレーション結果等の処理結果を表示させることができる。この場合、表示部3を各種の設定を行うための設定部として利用できる。
For example, when the
ロボットコントローラ6は、センサ部2で撮像した情報に基づいてロボットの動作を制御する。またロボット操作具7は、ロボット本体5の動作設定を行うための部材であり、ペンダントなどが利用できる。
A
ロボット本体5は、可動式のアーム部ARMと、アーム部ARMの先端に固定されたエンドエフェクタEETを備える。このロボット本体5はロボットコントローラ6に駆動されて、アーム部ARMを動作させ、一個のワークWKをピッキングして、これを所望の位置に移動させて載置した後、リリースする。このためアーム部ARMの先端には、ワークWKを把持するためのエンドエフェクタEETを備えている。またワークWKを載置する載置位置は、例えばトレイ上やコンベア上等が挙げられる。
The
ワークWKは、図1に示すように複数個が通い箱等の収容容器BXに無作為に収納されている。このような作業空間の上方には、センサ部2が配置されている。センサ部2はカメラや照明を備えており、このセンサ部2で、ワークWKの三次元形状を計測することができる。ロボットコントローラ6は、センサ部2で計測されたワークWKの三次元形状に基づいて、複数のワークの内から、把持対象のワークWKを特定して、このワークWKを把持するよう、ロボットを制御する。そして、ワークWKを把持したまま、アーム部ARMを動作させて予め定められた載置位置、例えばステージSTG上まで移動させ、所定の姿勢でワークWKを載置する。いいかえると、ロボットコントローラ6は、センサ部2でピッキング対象のワークWKを特定し、このワークWKをエンドエフェクタEETで把持して、把持したワークWKを所定の基準姿勢にて、載置する位置である載置位置に載置してエンドエフェクタEETを開放するようにロボットの動作を制御する。
As shown in FIG. 1, a plurality of works WK are randomly stored in a storage container BX such as a returnable box. A
ここで本明細書においてバラ積みピッキングとは、図4Aに示すような収納容器BXに入れられて無作為に積み上げられたワークWKを、ロボットで把持して、所定の位置に載置する他、図4Bに示すような収納容器を用いずに所定の領域に積み上げられたワークWKに対して把持、載置を行う例、あるいは図4Cに示すような所定の姿勢で並べられて積み上げられたワークWKを順次把持、載置する例も含む意味で使用する。また、必ずしもワーク同士が積み重ねられている状態であることは要さず、ワーク同士の重なりがない状態で平面上にランダムに置かれたワークについても、本明細書においてはバラ積みと呼ぶ(順次ピッキングされていき、ピッキングの終盤でワーク同士の重なりがない状態となった場合でも依然としてバラ積みピッキングと呼ばれるのと同じ理由である)。なお、本発明はバラ積みピッキングに必ずしも限定するものでなく、バラ積みされていないワークをピックアップする用途にも適用できる。 Here, in this specification, bulk picking means that workpieces WK placed in a storage container BX as shown in FIG. An example of gripping and placing works WK stacked in a predetermined area without using a storage container as shown in FIG. 4B, or works stacked in a predetermined posture as shown in FIG. 4C. It is used in the sense that it includes an example of sequentially gripping and placing WKs. In addition, it is not always necessary that the works are stacked on top of each other, and works that are randomly placed on a plane without overlapping each other are also referred to as random stacking in this specification (sequential (This is the same reason why picking is still called bulk picking, even when there is no overlap between works at the end of picking.) It should be noted that the present invention is not necessarily limited to picking in bulk, but can also be applied to pick up works that are not in bulk.
また、図1の例ではセンサ部2を作業空間の上方に固定しているが、作業空間を撮像できる位置であれば足り、例えば斜めや側方、下方など、任意の定位置に配置できる。ただし、アーム部ARM上のような、可動する不定位置にセンサ部を配置する態様は除かれる。さらにセンサ部2が有するカメラや照明の数も、一個に限らず複数個としてもよい。さらにまたセンサ部2やロボット、ロボットコントローラ6との接続は、有線接続に限られず、無線接続としてもよい。
In addition, in the example of FIG. 1, the
またワークの把持とは、図5Aに示すようにワークWKの外側を挟み込む他、図5Bに示すような、空洞を有するワークWK2の内部にエンドエフェクタEET2の爪部を挿入して拡開させることによって保持する例や、図5Cに示すような板状のワークWK3を吸引して保持するエンドエフェクタEET3の例を含む意味で使用する。以下では、ワークの把持の例としてワークの外側面を両側から掴む態様について説明する。またワークは、図1に示すように収納容器BXに多数個が収納されて無作為に積み上げられた状態で、このような複数のワークWKに対して一つづつ、エンドエフェクタEETで把持して、載置位置に載置する作業を繰り返すバラ積みピッキング動作における把持位置の設定(ティーチング作業)について、以下説明する。 Grasping of the work means pinching the outside of the work WK as shown in FIG. 5A, and inserting the claws of the end effector EET2 into the interior of the work WK2 having a cavity as shown in FIG. 5B to expand the work WK. It is used in the sense of including an example of holding by and an example of an end effector EET3 that sucks and holds a plate-shaped work WK3 as shown in FIG. 5C. In the following, as an example of gripping the work, a mode of gripping the outer surfaces of the work from both sides will be described. Also, as shown in FIG. 1, a large number of works are stored in a storage container BX and piled up at random. Next, the setting of gripping positions (teaching work) in the bulk picking operation in which the work of placing the objects at the mounting positions is repeated will be described below.
ロボットシステム1000でバラ積みピッキング動作を行うにあたり、予めバラ積みピッキング動作を行わせるための設定を含めたティーチングを行う。具体的には、ワークのどの部位を、エンドエフェクタがどのような姿勢で把持するのか、把持位置などの登録を行う。このような設定は、ペンダント等のロボット操作具7で行う。
(ティーチング作業)
When the
(teaching work)
上述した把持位置をティーチングする機能を実現する画像処理装置を含むロボットシステムの機能ブロック図を、図6に示す。この図に示すロボットシステム1000は、画像処理装置100と、表示部3と、操作部4と、センサ部2と、ロボットRBTを備える。
FIG. 6 shows a functional block diagram of a robot system including an image processing device that realizes the gripping position teaching function described above. A
センサ部2は、作業位置に配置されたワークの三次元形状を三次元計測する。このセンサ部2は、センサ制御部2bにより制御される。なお、この例ではセンサ制御部2bをセンサ部2と一体に構成しているが、これらを個別に設けてもよい。ロボット部は、アーム部ARMとエンドエフェクタEETを備える。このロボットは、画像処理装置100に制御されて、ワークを把持位置で把持して、把持位置に把持する。ここでは、基準姿勢でワークを把持して、基準姿勢で載置する状態を、センサ部2で撮像して登録していく。ここで基準姿勢には、ワークの位置と姿勢が含まれる。
(表示部3)
The
(Display section 3)
表示部3は、ワークの三次元形状を仮想的に表現するワークモデルや、エンドエフェクタの三次元形状を仮想的に表現する、三次元CADデータで構成されたエンドエフェクタモデルを、仮想的な三次元空間上でそれぞれ三次元状に表示させる。なお高さ画像は、高さ情報を有する画像であって、距離画像等とも呼ばれる。さらにこの表示部3は、ワークモデルの基本方向画像を六面図として表示させる六面図表示領域3aを有している。これにより、ワークモデルの各姿勢を六面図で表示させて、把持位置を設定し易い基本方向画像に対して把持位置の設定作業を行えるようになり、従来面倒であった把持位置の設定作業を容易に行えるようになる。
The
操作部4は、画像処理等の各種設定を行うための部材であり、キーボードやマウス等の入力デバイスが利用できる。また表示部3をタッチパネルとすることで、操作部と表示部を一体化することもできる。
(画像処理装置100)
The
(Image processing device 100)
図6の画像処理装置100は、入力画像取得部2cと、記憶部9と、演算部10と、入出力インターフェース4bと、表示インターフェース3fと、ロボットインターフェース6bを備える。
The
入力画像取得部2cは、センサ部2で測定された複数のワーク及びその周囲の物体を含む画像から三次元形状を有する入力画像を取得する。なお、三次元形状を有する入力画像は、センサ部やセンサ制御部側で構築してもよいし、あるいは画像処理装置側(例えば入力画像取得部)で構築してもよい。また図6の例では、センサ部2で取得された三次元形状を示す入力画像を、画像処理装置100が取得するための入力インターフェースを構成している。ただ、この構成に限らず、予め撮像されて記録媒体等の記憶部に把持された入力画像を読み出して取得する構成としてもよい。
The input
記憶部9は、各種設定を把持するための部材であり、不揮発性メモリやハードディスク、記憶媒体等が利用できる。この記憶部9は、ワークモデルやエンドエフェクタモデルの把持位置を保存するための把持位置保存部として機能する。
The
入出力インターフェース4bは、キーボードやマウス等の入力デバイスと接続され、データの入力を受け付ける。
The input/
表示インターフェース3fは、表示部との出力インターフェースを構成し、演算部10で構築された表示部に表示する画像データを表示するよう制御する。
The
ロボットインターフェース6bは、ロボットコントローラ6との通信インターフェースを構成する。
(演算部10)
The
(Calculation unit 10)
演算部10は、位置決め部8cと、基本方向画像生成部8e’と、基本方向画像選択部8eと、サーチモデル選択部8iと、ワークモデル登録部8tと、サーチモデル登録部8gと、エンドエフェクタモデル登録部8uと、把持位置特定部8dと、エンドエフェクタ取付面設定部8fと、回転角度制限部8hと、三次元サーチ部8kと、三次元ピック判定部8lとを備える。
The
位置決め部8cは、表示部3に表示されたワークモデルの位置及び姿勢を、仮想三次元空間上で調整するための部材である。
The
基本方向画像生成部8e’は、位置決め部8cで仮想三次元空間上において位置決めされたワークモデルに対して、この仮想三次元空間上で互いに直交する三軸の各軸方向からそれぞれ見た、少なくとも三つの高さ画像を基本方向画像として生成するための部材である。このように基本方向画像を自動的に生成させることで、ユーザは手動でワークの方向を変えて個別に基本方向画像を取得する必要がなくなり、把持位置の登録作業を省力化できる利点が得られる。
The basic direction
基本方向画像選択部8eは、表示部3に表示された少なくとも三つの基本方向画像に対して、見え方が他の基本方向画像と異なる複数の基本方向画像の中からいずれかを選択するための部材である。このように、見え方が共通する面を削除することで、不要な基本方向画像の表示等を排除して、設定作業をより簡素化できる。例えば円柱状のワークの天面と底面のように、見た目が同じ基本方向画像については一方を削除する。基本方向画像選択部8eは、表示部3に少なくとも三つの基本方向画像を表示させた状態で、ユーザに手動で選択させるように構成することができる。あるいは、基本方向画像選択部が、少なくとも三つの基本方向画像の内、見え方が共通する基本方向画像を自動で抽出して選択するよう構成してもよい。
The basic direction
サーチモデル選択部8iは、サーチモデルとして登録する基本方向画像を選択するための部材である。なお後述する通り、三次元サーチに用いるサーチモデルと、把持位置を特定するモデルとを共通化することで、サーチモデル選択部8iと基本方向画像選択部8eと共通の画像選択部8jで構成できる。
The search
ワークモデル登録部8tは、ワークの三次元形状を仮想的に表現するワークモデルを登録するための部材である。ここでは、例えば、ワークモデル登録部8tは、実際のワークを撮像した三次元点群データをワークモデルとする。この場合は、センサ部2や入力画像取得部2cで取得された三次元点群データを、ワークモデル登録部8tでワークモデルとして登録する。あるいは、別途作成したワークの形状を表す三次元CADデータを読み込んでワークモデルとして登録する。この場合は、入出力インターフェース4bを介して入力された三次元CADデータをワークモデル登録部8tでワークモデルとして登録する。あるいはまた、ワークを模した三次元CADデータを作成して登録してもよい。この場合はワークモデル登録部8tが、簡易的な三次元CADの機能を実現する。
(サーチモデル登録部8g)
The work
(Search
サーチモデル登録部8gは、入力画像取得部2cで取得された入力画像に含まれる複数のワーク群に対して、各ワークの姿勢と位置を特定する三次元サーチを行う際に用いる、ワークの三次元形状を仮想的に表現したサーチモデルを登録するための部材である。このようにサーチモデル登録部8gを設けたことで、三次元サーチを行うサーチモデルを、ワークモデルの把持位置を指定する基本方向画像と共通として登録することで、ユーザは設定作業を省力化できる。また実運用時においても、把持できるワークをサーチする基本方向画像毎に、ワークの把持位置を登録することで、把持位置のない基本方向画像をサーチするような無駄を無くし、逆にサーチされた基本方向画像に対して、この基本方向画像に設定された把持位置で把持可能かどうかを検討できるため、効率良く処理を行うことが可能となる。
The search
またサーチモデル登録部8gは、基本方向画像選択部8eで選択された基本方向画像に対して、三次元サーチ用のサーチモデルとして使用するか否かの選択を行うよう構成することが好ましい。これにより、基本方向画像に対して三次元サーチ用のサーチモデルとして使用するか否かを選択でき、いいかえると不要な基本方向画像を三次元サーチの対象から排除できるので、例えば板状のワークを側面から見た画像と誤検出する可能性がある基本方向画像を排除することで、板状のワークが直立した状態を三次元サーチしないように設定でき、実質的にワークモデルの姿勢に対する制限を簡単に設定することが可能となる。
The search
なおサーチモデル登録部8gと、ワークモデル登録部8tは、個別に設ける他、これらを統合することもできる。例えば図6のロボットシステム1000においては、サーチモデル登録部8gとワークモデル登録部8tを、共通のモデル登録部8g’として統合している。これにより、一のワークに関するモデルを登録することで、把持位置の登録と三次元サーチ用のサーチモデルの登録に共用することが可能となり、設定を簡素化できる利点が得られる。
The search
エンドエフェクタモデル登録部8uは、エンドエフェクタの三次元形状を三次元CADデータで仮想的に表現したエンドエフェクタモデルを登録するための部材である。
The end effector
エンドエフェクタ取付面設定部8fは、表示部3にエンドエフェクタモデルと、このエンドエフェクタモデルをロボットのアーム部の先端に取り付ける取付面を表示させると共に、この取付面を表示部3に表示させた状態で、この取付面に対するエンドエフェクタモデルの姿勢を規定するための部材である。
The end effector mounting
回転角度制限部8hは、基本方向画像のいずれかを、バラ積みされた複数のワーク群に対して、各ワークの姿勢と位置を特定する三次元サーチを行うためのサーチモデルとして登録するためのサーチモデル登録部8gと、選択された各サーチモデル毎に、該ワークモデルの回転に対して個別に、許容される回転角度の範囲を設定するための部材である。
(把持位置特定部8d)
The rotation
(Grip
把持位置特定部8dは、位置決め部8cで仮想三次元空間上において位置決めされたワークモデルに対して、この仮想三次元空間上で互いに直交する三軸の各軸方向からそれぞれ見た、少なくとも三つの基本方向画像を表示部3に表示させた状態で、少なくとも何れかの高さ画像に対して、このワークモデルをエンドエフェクタで把持する把持位置を特定するための部材である。この把持位置特定部8dは、ワーク側把持箇所指定部8d1と、エンドエフェクタ側把持設定部8d2と、相対位置設定部8d5を備える。
The gripping
ワーク側把持箇所指定部8d1は、基本方向画像選択部8eで選択された複数の基本方向画像を表示部3に表示させた状態で、いずれかの基本方向画像に対して、該基本方向画像が示すワークモデルをエンドエフェクタモデルで把持する際の把持位置を指定するための部材である。このワーク側把持箇所指定部8d1は、複数の基本方向画像のそれぞれに対して、複数の把持位置を登録可能に構成している。
(エンドエフェクタ側把持設定部8d2)
The work-side gripping point designation unit 8d1 displays a plurality of basic direction images selected by the basic direction
(End effector side gripping setting portion 8d2)
エンドエフェクタ側把持設定部8d2は、エンドエフェクタモデルに対して、ワークモデルの把持に関する設定を行う部材である。エンドエフェクタ側把持設定部8d2は、把持基準点設定部8d3と、把持方向設定部8d4を含むことができる。把持基準点設定部8d3は、エンドエフェクタモデルに対して、ワークモデルを把持する位置に対応した把持基準点を規定する。一方把持方向設定部8d4は、エンドエフェクタモデルでワークモデルを把持する把持方向を規定する。これら把持基準点設定部8d3、把持方向設定部8d4は、共通の部材としてもよいし、個別に構成することもできる。また把持基準点設定部8d3、把持方向設定部8d4は、それぞれ把持基準点や把持方向を予め設定された所定値とすることができる。例えば、把持基準点を、エンドエフェクタモデルの先端に設けられた、ワークを挟み込む爪部同士の間の中心とする。また把持方向は、エンドエフェクタモデルを規定するツール座標軸を構成する何れかの座標軸とする。例えばZ軸方向とすることで、Z軸方向すなわち高さ方向に沿ってエンドエフェクタモデルを移動させて、ワークモデルを把持するために接近させる動作に近付け、ユーザにおいて感覚的に把握し易くできる。あるいは、把持基準点設定部8d3、把持方向設定部8d4は、把持基準点や把持方向を、ユーザにより調整可能としてもよい。
(相対位置設定部8d5)
The end effector-side gripping setting unit 8d2 is a member that performs settings related to gripping of the work model for the end effector model. The end effector-side gripping setting portion 8d2 can include a gripping reference point setting portion 8d3 and a gripping direction setting portion 8d4. The gripping reference point setting unit 8d3 defines gripping reference points corresponding to positions at which the work model is gripped for the end effector model. On the other hand, the gripping direction setting section 8d4 defines the gripping direction for gripping the work model with the end effector model. The gripping reference point setting portion 8d3 and gripping direction setting portion 8d4 may be a common member or may be configured individually. The gripping reference point setting unit 8d3 and the gripping direction setting unit 8d4 can set the gripping reference point and the gripping direction to predetermined values, respectively. For example, the gripping reference point is the center between claws provided at the tip of the end effector model and sandwiching the workpiece. The gripping direction is any one of the coordinate axes forming the tool coordinate axes that define the end effector model. For example, by using the Z-axis direction, the end effector model is moved along the Z-axis direction, i.e., the height direction, to approximate the action of approaching the work model for gripping, which makes it easier for the user to intuitively grasp. Alternatively, the gripping reference point setting section 8d3 and the gripping direction setting section 8d4 may allow the user to adjust the gripping reference point and the gripping direction.
(Relative position setting unit 8d5)
相対位置設定部8d5は、表示部3に表示されたエンドエフェクタモデルを、ワークモデルに干渉するまで移動させ、干渉位置に至った位置から所定分だけ離間させた姿勢にて把持状態を自動的に規定するための部材である。これにより、ユーザが手動でエンドエフェクタモデルを移動させてワークに接触させることなく、自動でエンドエフェクタモデルを移動させてワークに接触させて、把持位置を示すことが可能となり、ユーザ側に必要な作業を大幅に省力化できる利点が得られる。
(把持位置の登録)
The relative position setting unit 8d5 moves the end effector model displayed on the
(Registration of grip position)
ティーチング作業においては、ワークを把持するときのワークとエンドエフェクタとの位置関係を把持位置として登録することが行われる。以下では、把持の代表例として、エンドエフェクタとしてハンド部を用いて、ハンド部でワークを把持する例について説明する。把持位置を登録した状態で、ロボットビジョンを用いたロボットピッキングの実運用時には、複数のワークがバラ積みされたワーク群の中から、ロボットビジョンで各ワークを検出し、検出されたワークの位置や姿勢に対して、エンドエフェクタ側の把持位置を計算して、計算された位置にエンドエフェクタが位置するようにロボットを動作させて、ピッキングする。ここで、把持位置の登録方法としては、実際にロボットを動作させて登録する方法や、三次元CADを用いた仮想三次元空間上でエンドエフェクタモデルを動作させて登録する方法がある。しかしながら、実際にロボットを動作させて把持位置を登録する方法では、実際にロボットを動かせながら手間のかかる登録作業が必要となり、大掛かりな検証環境を要したり、試行錯誤に時間がかかるといった問題があった。一方、三次元CADの空間上でロボットを仮想的に動作させて登録する方法では、ロボット不要で登録できる利点があるものの、仮想的なワークモデルの三次元的な姿勢に対し、仮想的なエンドエフェクタモデルの三次元的な姿勢を正確に合致させる必要があり、三次元の座標の位置合わせといった設定が難解であった。またこの方法ではワークとエンドエフェクタの三次元CADデータを必須とするため、三次元CADデータが手元にない状態では設定できなかった。 In the teaching work, the positional relationship between the workpiece and the end effector when gripping the workpiece is registered as the gripping position. In the following, as a representative example of gripping, an example of gripping a workpiece using a hand as an end effector will be described. With the gripping positions registered, during actual operation of robot picking using robot vision, each workpiece is detected by robot vision from a group of randomly stacked workpieces. The grip position on the end effector side is calculated with respect to the posture, and the robot is operated so that the end effector is positioned at the calculated position for picking. Here, as a grip position registration method, there is a method of actually operating a robot for registration, and a method of operating an end effector model in a virtual three-dimensional space using three-dimensional CAD for registration. However, the method of registering gripping positions by actually operating the robot requires time-consuming registration work while the robot is actually moving, requiring a large-scale verification environment, and the problems of trial and error taking time. there were. On the other hand, the method of registering a robot by virtually operating it in a three-dimensional CAD space has the advantage of being able to register without the need for a robot. It was necessary to accurately match the three-dimensional posture of the effector model, and it was difficult to make settings such as alignment of the three-dimensional coordinates. In addition, since this method requires three-dimensional CAD data of the workpiece and the end effector, it was not possible to set up without the three-dimensional CAD data at hand.
そこで本実施形態においては、三次元CADモデルの各軸方向から見た高さ画像を基本方向画像として複数表示させ、この中から、ユーザの所望する基本方向画像を選択させて、選択された基本方向画像に対して把持位置を設定することで、仮想三次元空間上での把持登録を容易に行えるようにしている。この結果、ワークを模した三次元CADデータのワークモデルを配置した仮想三次元空間上でエンドエフェクタモデルを動作させて登録する際に、仮想三次元空間を規定する各軸方向から見た基本方向画像を選択して把持登録を行うことで、各基本方向画像に対して略垂直方向から見たエンドエフェクタモデルの姿勢を基準に登録することができるため、把持の設定が簡単に行えるようになる。またこの方法によれば、三次元CADデータがない場合でも、実際のワークを三次元計測して得られるデータを基本方向画像として用いることができる。このため、三次元CADデータがない場合でも、同様の手順で仮想三次元空間上で簡単に把持登録を行うことができる。
(三次元ピック判定部8l)
Therefore, in this embodiment, a plurality of height images of the three-dimensional CAD model viewed from each axial direction are displayed as basic direction images, and from among these, a desired basic direction image is selected by the user, and the selected basic direction image is displayed. By setting the gripping position with respect to the directional image, it is possible to easily perform gripping registration in the virtual three-dimensional space. As a result, when operating and registering the end effector model in the virtual three-dimensional space in which the work model of the three-dimensional CAD data simulating the work is arranged, the basic direction viewed from each axial direction defining the virtual three-dimensional space By selecting an image and performing grip registration, it is possible to register the posture of the end effector model viewed from a direction substantially perpendicular to each basic direction image as a reference, so grip settings can be easily performed. . Further, according to this method, even if there is no three-dimensional CAD data, data obtained by three-dimensional measurement of an actual workpiece can be used as the basic direction image. Therefore, even if there is no three-dimensional CAD data, grip registration can be easily performed in the virtual three-dimensional space by the same procedure.
(Three-dimensional pick determination unit 8l)
三次元ピック判定部8lは、把持方向設定部8d4で規定した把持方向が、画像表示領域に表示されたワークモデルの姿勢を表すワーク平面に対して直交し、かつこの把持方向に沿うように把持基準点と把持位置を位置させるよう、エンドエフェクタモデルとワークモデルの相対位置を調整するための部材である。これにより、ワークをエンドエフェクタで把持する把持状態をシミュレーションする際、エンドエフェクタモデルでワークモデルを把持する位置の設定作業を容易に行える利点が得られる。特に、把持方向がワーク平面に直交し、かつ把持方向の軸上に把持基準点と把持位置を位置させることで、後はエンドエフェクタモデルを把持方向に沿ってワークモデルに近付けるだけで把持位置を調整できるようになるので、ユーザ側の作業負担が大幅に軽減される利点が得られる。従来はユーザが手動でエンドエフェクタを移動させながら、目視でワークを把持する姿勢に合わせ込む作業を行っており、エンドエフェクタの位置や姿勢をどのように調整するのか、パラメータが多く自由度が大きいことから、極めて繁雑な作業となっていた。これに対して、予めエンドエフェクタモデル側に把持基準位置と把持方向を規定し、把持方向がワーク平面と直交し、かつ把持方向の軸上に、エンドエフェクタモデルの把持基準点とワークの把持位置とが位置するように設定することで、エンドエフェクタモデルの移動方向が規定され、ユーザはエンドエフェクタモデルとワークモデルとの距離のみを調整することで把持状態を得ることができるようになる。この結果、従来極めて煩雑であったエンドエフェクタモデルとワークモデルとの把持位置の摺り合わせ作業の大幅な省力化が期待できる。 The three-dimensional pick determination unit 8l performs gripping such that the gripping direction defined by the gripping direction setting unit 8d4 is perpendicular to the work plane representing the orientation of the work model displayed in the image display area and along this gripping direction. A member for adjusting the relative positions of the end effector model and the workpiece model so as to position the reference point and the gripping position. As a result, when simulating a gripping state in which a workpiece is gripped by the end effector, it is possible to easily set the position where the workpiece model is gripped by the end effector model. In particular, the gripping direction is orthogonal to the work plane, and the gripping reference point and the gripping position are positioned on the axis of the gripping direction. Since it can be adjusted, there is an advantage that the work load on the user side is greatly reduced. Conventionally, the user manually moves the end effector and visually adjusts it to the posture of gripping the workpiece. There are many parameters and a large degree of freedom in how to adjust the position and posture of the end effector. Therefore, it was an extremely complicated task. On the other hand, a gripping reference position and a gripping direction are defined in advance on the end effector model side, and the gripping reference point of the end effector model and the gripping position of the workpiece are set so that the gripping direction is orthogonal to the workpiece plane and on the axis of the gripping direction. The moving direction of the end effector model is specified by setting the position of the end effector model so that the user can obtain the gripped state by adjusting only the distance between the end effector model and the work model. As a result, it can be expected that the work of adjusting the gripping positions of the end effector model and the work model, which has conventionally been extremely complicated, can be greatly reduced.
このようなエンドエフェクタモデルとワークモデルの相対位置を、把持方向がワーク平面に直交し、かつ把持方向の軸上に把持基準点と把持位置を位置させるよう調整する作業は、三次元ピック判定部8lにより自動で行わせることが好ましい。これにより、予めエンドエフェクタモデル側に把持基準位置と把持方向を規定し、把持方向がワーク平面と直交し、かつ把持方向の軸上に、エンドエフェクタモデルの把持基準点とワークの把持位置とが位置するように自動調整することで、エンドエフェクタモデルの移動方向が規定され、ユーザはエンドエフェクタモデルとワークモデルとの距離のみを調整することで把持状態を得ることができるようになる。この結果、従来極めて煩雑であったエンドエフェクタモデルとワークモデルとの把持位置の摺り合わせ作業の大幅な省力化が期待できる。 The operation of adjusting the relative positions of the end effector model and the workpiece model so that the gripping direction is orthogonal to the workpiece plane and the gripping reference point and gripping position are positioned on the axis of the gripping direction is performed by the three-dimensional pick determination unit. It is preferred to have it done automatically by 8l. As a result, the gripping reference position and the gripping direction are defined in advance on the end effector model side, and the gripping reference point of the end effector model and the gripping position of the workpiece are aligned so that the gripping direction is orthogonal to the workpiece plane and on the axis of the gripping direction. By automatically adjusting the position, the moving direction of the end effector model is specified, and the user can obtain the gripping state by adjusting only the distance between the end effector model and the workpiece model. As a result, it can be expected that the work of adjusting the gripping positions of the end effector model and the work model, which has conventionally been extremely complicated, can be greatly reduced.
ただ、必ずしも三次元ピック判定部による自動調整に限らず、例えば位置決め部8cでもってユーザが手動で把持方向をワーク平面と直交させ、かつ把持方向の軸上にエンドエフェクタモデルの把持基準点とワークの把持位置とを位置させる調整を行う際に、三次元ピック判定部がこのような調整作業を支援するように構成してもよい。例えば、第一段階としてワーク平面と把持方向を画像表示領域に表示させた状態で、これらが直交するように補助線をユーザに示したり、文字や画像でもって「ワーク平面に把持方向が直交するように、エンドエフェクタモデルを調整してください。」等と表示させて、ユーザに調整作業を促すように構成してもよい。さらに第二段階として、把持方向の軸上にエンドエフェクタモデルの把持基準点とワークの把持位置とを位置させるよう、把持方向の延長線を画像表示領域に表示させ、「把持方向の軸上にエンドエフェクタモデルの把持基準点とワークの把持位置とを位置させるよう、調整してください。」等のメッセージを表示させて、設定を促すように三次元ピック判定部が誘導することもできる。 However, it is not necessarily limited to the automatic adjustment by the three-dimensional pick determination unit. The three-dimensional pick determination unit may be configured to support such adjustment work when adjusting the holding position of the . For example, as a first step, the work plane and the gripping direction are displayed in the image display area, and an auxiliary line is shown to the user so that they are perpendicular to each other. Please adjust the end effector model as follows." may be displayed to prompt the user to perform adjustment work. Furthermore, as a second step, an extension line of the gripping direction is displayed in the image display area so that the gripping reference point of the end effector model and the gripping position of the workpiece are positioned on the axis of the gripping direction. Please adjust so that the gripping reference point of the end effector model and the gripping position of the workpiece are positioned."
また三次元ピック判定部8lでもって、フィット機能を実現することもできる。例えば三次元ピック判定部8lが、エンドエフェクタモデルとワークモデルの相対位置を、把持方向がワーク平面に直交し、かつ把持方向の軸上に把持基準点と把持位置を位置させた状態で、エンドエフェクタモデルを把持方向に沿ってワークモデルに干渉するまで移動させ、干渉位置に至った位置から所定分だけ離間させた姿勢にて把持状態を自動的に規定するよう構成できる。これにより、エンドエフェクタモデルでワークモデルを把持する位置及び姿勢に自動で調整することが可能となり、ユーザ側の作業負担を一層軽減できる利点が得られる。
(三次元サーチ部)
A fitting function can also be realized by the three-dimensional pick determination unit 8l. For example, the three-dimensional pick determination unit 8l determines the relative positions of the end effector model and the workpiece model in a state in which the gripping direction is orthogonal to the workpiece plane and the gripping reference point and gripping position are positioned on the axis of the gripping direction. The effector model can be moved along the gripping direction until it interferes with the workpiece model, and the gripping state can be automatically defined in a posture separated from the interference position by a predetermined amount. As a result, it becomes possible to automatically adjust the position and orientation of the end effector model to grip the work model, which is advantageous in that the work load on the user side can be further reduced.
(Three-dimensional search section)
三次元サーチ部は、入力画像中から、サーチモデル登録部で登録されたサーチモデルを用いて、各ワークの姿勢と位置を特定する三次元サーチを行うための部材である。三次元サーチに先立ち、サーチモデル登録部でもって、複数のワーク群をバラ積みした状態を示す入力画像中から、この入力画像に含まれる各ワークの姿勢と位置を特定する三次元サーチを行う際に用いる、ワークの三次元形状を仮想的に表現したサーチモデルを予め登録しておく。この状態で三次元ピック判定部8lが、三次元サーチ部でサーチされた入力画像中のサーチ結果に対して、ワーク側把持箇所指定部でこのワークに対して指定された把持位置において、エンドエフェクタで把持可能か否かを判定する。例えば入力画像取得部で、センサ部で測定された複数のワーク群の画像から三次元形状を有する入力画像を取得し、この入力画像中から、三次元サーチ部で、サーチモデル登録部で登録されたサーチモデルを用いて、各ワークの姿勢と位置を特定する三次元サーチを行う。これにより、実際にワークを撮像して取得した入力画像に対して、三次元サーチを行うことが可能となり、より実情に即した把持判定を行えるようになる。
(サーチモデル)
The three-dimensional search section is a member for performing a three-dimensional search for identifying the posture and position of each workpiece from the input image using the search model registered by the search model registration section. Prior to the three-dimensional search, the search model registration unit performs a three-dimensional search for specifying the orientation and position of each workpiece included in the input image from the input image showing the state in which a plurality of workpieces are randomly stacked. A search model that virtually expresses the three-dimensional shape of the work used for the work is registered in advance. In this state, the three-dimensional pick determination unit 8l determines whether the end effector is positioned at the gripping position specified for the work by the work-side gripping position specifying unit for the search result in the input image searched by the three-dimensional search unit. to determine whether it can be grasped. For example, an input image acquisition unit acquires an input image having a three-dimensional shape from images of a plurality of workpieces measured by a sensor unit, and from this input image, a three-dimensional search unit registers a search model in a search model registration unit. A three-dimensional search for specifying the posture and position of each workpiece is performed using the search model. As a result, it becomes possible to perform a three-dimensional search on an input image obtained by actually imaging a workpiece, and to perform gripping determination that is more in line with the actual situation.
(search model)
バラ積みピッキングにおいては、バラ積みされた複数のワーク群の中から、把持可能なワークを決定するために、まずワーク単位で抽出する必要がある。ここでは、センサ部で得られた高さ情報を有するワーク群の形状に対して、予め検索対象のワークの形状をワークモデルとして登録しておき、このワークモデルで三次元サーチを行い、ワーク毎に位置及び姿勢を検出する。
(基本方向画像)
In bulk picking, it is necessary to first extract each workpiece from among a plurality of randomly stacked workpieces in order to determine a grippable workpiece. Here, the shape of a workpiece to be searched is registered in advance as a workpiece model for the shape of a workpiece group having height information obtained by the sensor unit, and a three-dimensional search is performed using this workpiece model. Detects the position and orientation of the
(basic direction image)
ワークを三次元サーチするためのサーチモデルは、ワークを特定の方向から見たときの高さ画像を用いて作成する。サーチモデルとして用いる高さ画像は、ワークを三次元的に表現したワークモデルである三次元CADデータや、センサ部で実際にワークを撮像した実測データが利用できる。ここでは、三次元CADデータをサーチモデルとして登録する例について説明する。例えば、図7のような三次元CADデータで構築されたワークモデルCWMを、サーチモデルとして使用する場合を考える。このワークモデルCWMから、仮想三次元空間上で互いに直交する三軸(例えばX軸、Y軸、Z軸)の各軸方向の正方向、負方向からそれぞれ見た6枚の高さ画像、すなわち六面図を、基本方向画像として取得する。例えば図6の基本方向画像生成部8e’が、6枚の基本方向画像を生成して、表示部3の六面図表示領域3aに表示させる。6枚の基本方向画像は、例えばワークモデルCWMの「上」、「下」、「左」、「右」、「前」、「後」、すなわち平面図、底面図、左側面図、右側面図、正面図、背面図となるように、基本方向画像生成部8e’が自動的にワークモデルCWMの原点(詳しくは後述)やワークモデルCWMを構成する面から演算する。ここで「上」はZ軸の正方向(+側)から見た高さ画像、「下」はZ軸の負方向(-側)から見た高さ画像、「左」はX軸の負方向から見た高さ画像、「右」はX軸の正方向から見た高さ画像、「前」はY軸の負方向から見た高さ画像、「後」はY軸の正方向から見た高さ画像を、それぞれ示している。ただ、これらは一例であって、異なる座標系を用いてもよいし、X-Y平面におけるX=Yの直線を軸として、この軸と互いに直交する座標系に基づいて、各軸の正負方向から見た高さ画像を用いてもよい。また、三次元CADデータから、高さ画像を生成する際、必ずしもCADの軸に直交した方向(「上」、「下」、「左」、「右」、「前」、「後」)から見た高さ画像である必要はなく、例えばワークモデルの姿勢(視点)を任意に変えて、変えた状態の視点から高さ画像を生成するようにしても良い。
(ワークモデルの原点)
A search model for three-dimensionally searching a workpiece is created using a height image when the workpiece is viewed from a specific direction. For the height image used as the search model, three-dimensional CAD data, which is a work model expressing the work three-dimensionally, or actual measurement data obtained by actually imaging the work with the sensor section can be used. Here, an example of registering three-dimensional CAD data as a search model will be described. For example, consider a case where a workpiece model CWM constructed from three-dimensional CAD data as shown in FIG. 7 is used as a search model. From this workpiece model CWM, six height images viewed from the positive direction and negative direction of each of the three axes (for example, X-axis, Y-axis, Z-axis) orthogonal to each other in the virtual three-dimensional space, that is, Six views are acquired as cardinal direction images. For example, the basic direction
(Origin of work model)
ここでワークモデルの原点は、三次元CADデータが有する座標情報から、画像処理装置が自動的に決定する。例えば図7のワークモデルCWMの三次元CADデータに対して、図8において破線で示すように、ワークモデルCWMに外接する仮想直方体IBXを規定し、この仮想直方体IBXの重心をワークモデルの原点Oとして設定する。
(基本方向画像選択部8e)
Here, the origin of the work model is automatically determined by the image processing apparatus from the coordinate information of the three-dimensional CAD data. For example, for the three-dimensional CAD data of the work model CWM in FIG. 7, a virtual rectangular parallelepiped IBX circumscribing the work model CWM is defined as indicated by the dashed line in FIG. set as
(Basic direction
なお基本方向画像は必ずしも6枚とする必要はなく、少なくとも複数枚あれば足りる。例えば、直方体のように対向する面が同じ形状であれば、いずれか一方の面から見た基本方向画像で足りる。いいかえると、同じ形状になる基本方向画像を排除して、三次元サーチの処理負荷を低減できる。このような、見え方がいずれかの基本方向画像と共通する基本方向画像を削除する機能は、基本方向画像選択部8eにより実現される。一例として、図7のワークモデルCWMから取得した基本方向画像を図9A~図9Dに示す.これらの図において、図9Aは図7のワークモデルCWMをX軸の正方向から見た高さ画像であり、図9BはY軸の正方向から見た高さ画像であり、図9CはZ軸の正方向から見た高さ画像であり、図9DはZ軸の負方向から見た高さ画像である。ここでは高さ画像として、高さが高い点ほど明るく、低い点ほど暗くなるように、高さ情報を輝度値として表現した高さ画像を用いている。
Note that the number of basic direction images does not necessarily have to be six, and at least a plurality of images will suffice. For example, if the opposing surfaces have the same shape, such as a rectangular parallelepiped, a basic direction image viewed from one of the surfaces will suffice. In other words, the processing load of the three-dimensional search can be reduced by excluding basic direction images that have the same shape. Such a function of deleting a basic direction image whose appearance is common to any of the basic direction images is realized by the basic direction
ここで、見え方の一致/不一致は、ワークの上下(Z軸の±方向)、前後(Y軸の±方向)、左右(X軸の±方向)から見た、計六面の高さ画像を生成し、一致確認を行うことで確認する。ここでは90°の刻み角度で回転一致を確認し、他の面と一致する見え方となる面は、サーチモデルの登録対象から除外する。図7のワークモデルCWMにおいては、X軸の負方向から見た高さ画像と、Y軸の負方向から見た高さ画像は、見え方がそれぞれ図9A、図9Bと一致する状態になるため、サーチモデル生成の対象から除外される。このようにして、見え方が異なる面数分、サーチモデルが生成される。このようにして不要な高さ画像を除外した基本方向画像を、六面図表示領域3aに表示させる。なお六面図表示領域とは、その名称に限らず、必ずしもワークモデルの六面すべてを表示させる必要はなく、上述の通り見え方の共通する高さ画像を不要画像として排除し、五面以下で表示させる態様も含めて本明細書では六面図表示領域と呼ぶ。
(サーチモデル登録画面130)
Here, the match/mismatch of appearance is a total of six height images viewed from the top and bottom (± directions of the Z axis), front and back (± directions of the Y axis), and left and right (± directions of the X axis). is generated and checked by matching. In this case, rotation matching is confirmed at increments of 90°, and surfaces that appear to match other surfaces are excluded from search model registration targets. In the workpiece model CWM of FIG. 7, the height image viewed from the negative direction of the X-axis and the height image viewed from the negative direction of the Y-axis are in a state of appearance corresponding to FIGS. 9A and 9B, respectively. Therefore, it is excluded from search model generation. In this way, search models are generated for the number of faces with different appearances. The basic direction image from which the unnecessary height image is excluded in this way is displayed in the hexahedral
(Search model registration screen 130)
また、このような除外は、ユーザが手動で行うこともできるし、画像処理装置側で自動で行わせてもよいし、あるいはこれらを組み合わせてもよい。 Also, such exclusion can be manually performed by the user, automatically performed by the image processing apparatus, or a combination thereof.
例えば、図10に示す三次元サーチのサーチモデルとして基本方向画像BDIを登録するサーチモデル登録画面130において、基本方向画像生成部8e’が自動的に六面図に相当する基本方向画像BDIを生成し、表示部3の六面図表示領域3aに表示させる。この際、共通する基本方向画像が存在する場合は、サーチモデルの登録対象から排除するようユーザに促す。ここでは、サーチモデルの登録可否を設定するサーチモデル選択部8iとして、サーチモデルの候補となる基本方向画像BDIに対して、それぞれ「登録対象」チェックボックス131を設けている。ユーザは「登録対象」チェックボックス131をONにすると、この基本方向画像BDIをサーチモデルとして登録し、「登録対象」チェックボックス131をOFFにすると、この基本方向画像をサーチモデルから除外することができる。
For example, in the search
この際、見え方が共通する基本方向画像については、基本方向画像選択部8eによって、予め「登録対象」チェックボックス131をOFFにした状態でユーザにサーチモデル登録画面130を表示させる。ユーザは、初期状態としてサーチモデルに登録すべき基本方向画像BDI、及びサーチモデルから排除すべき基本方向画像が正しく選択されていることを確認した上で、この選択を承認したり、必要に応じて修正や入れ替えを行うことができる。このように、デフォルトで三次元サーチのサーチモデルとして登録すべき基本方向画像を選択し、かつ登録から排除すべき基本方向画像の候補を提示させることで、ユーザによるサーチモデルの登録作業を省力化できる。
(実測データMWM)
At this time, the search
(actual measurement data MWM)
以上は、三次元サーチのサーチモデルとして三次元CADデータを用いる例を説明した。ただ本発明は上述の通り、サーチモデルを必ずしも三次元CADデータに限定せず、例えば複数の二次元CADデータを解析して三次元データ化したものを用いたり、あるいはセンサ部で実際にワークを撮像した実測データを、サーチモデルとして利用することもできる。一例として、図7のワークモデルCWMに対応するワークをX軸の正方向から撮像した実測データMWMを、図11に示す。このように、ワークのCADデータがない場合は、実ワークを三次元計測したデータを用いることも可能である。図10で示したように、三次元サーチに必要な数の実測データMWMを撮像して登録していく。 An example of using three-dimensional CAD data as a search model for three-dimensional search has been described above. However, as described above, the present invention does not necessarily limit the search model to three-dimensional CAD data. It is also possible to use the captured actual measurement data as a search model. As an example, FIG. 11 shows actual measurement data MWM obtained by imaging a workpiece corresponding to the workpiece model CWM of FIG. 7 from the positive direction of the X axis. In this way, if there is no CAD data for the work, it is possible to use data obtained by three-dimensionally measuring the actual work. As shown in FIG. 10, the number of measured data MWM required for the three-dimensional search is imaged and registered.
なお、実ワークを登録する場合は、ワークを置いた底面の情報(例えばワーク周辺の床の形状)も三次元計測されることになる。そこで、例えば底面から一定以上の高さの箇所のみをしきい値処理で切り出す等して、不要な底面の情報を除外することが好ましい。これによって、三次元サーチに必要な形状部分のみを登録することが可能となる。
(特徴点の抽出)
When registering an actual work, the information on the bottom surface where the work is placed (for example, the shape of the floor around the work) is also three-dimensionally measured. Therefore, it is preferable to exclude unnecessary information on the bottom surface by, for example, cutting out only portions having a certain height or more from the bottom surface by threshold processing. This makes it possible to register only the shape portions necessary for three-dimensional search.
(Extraction of feature points)
次に、このようにしてサーチモデルの対象となるワークの各面に相当する高さ画像を登録した状態で、登録された面のサーチモデルを生成する。ここでは、登録された各面毎に、三次元サーチに必要な特徴点を抽出する。ここでは特徴点として、形状の輪郭を現す特徴点(輪郭上の特徴点)と、表面形状を表す特徴点(表面上の特徴点)の、2種類の特徴点を用いる例を説明する。図12Aに、X軸方向から見た高さ画像(図9Aに相当)のサーチモデルSMに対して、2種類の特徴点を抽出した状態を示す。またこのサーチモデルSMを斜視図で表示した状態を図12Bに示す。ここで表面上の特徴点SCPと輪郭上の特徴点OCPは、表示態様を変えて表示させることが好ましい。例えば表面上の特徴点SCPを白色で、輪郭上の特徴点OCPを水色で表示させる。あるいは、表面上の特徴点の白と、より区別がつきやすいように紫色で表示する等、他の配色としても良い。このように色を変えて特徴点を表示させることで、ユーザは各特徴点の意味合いを視覚的に区別することが容易となる。 Next, in a state in which the height images corresponding to the respective surfaces of the workpiece to be the search model are registered in this manner, a search model of the registered surfaces is generated. Here, feature points necessary for three-dimensional search are extracted for each registered surface. Here, an example using two types of feature points, that is, feature points representing the outline of the shape (feature points on the contour) and feature points representing the surface shape (feature points on the surface) will be described. FIG. 12A shows a state in which two types of feature points are extracted from the search model SM of the height image (corresponding to FIG. 9A) viewed from the X-axis direction. A perspective view of the search model SM is shown in FIG. 12B. Here, the feature points SCP on the surface and the feature points OCP on the contour are preferably displayed in different display modes. For example, the feature points SCP on the surface are displayed in white, and the feature points OCP on the contour are displayed in light blue. Alternatively, other color schemes may be used, such as displaying in purple to make it easier to distinguish from the white of the feature points on the surface. By displaying the feature points in different colors in this manner, the user can easily visually distinguish the meaning of each feature point.
表面上の特徴点SCPは、例えばワークモデルの表面を一定間隔で抽出する。一方、輪郭上の特徴点OCPは、例えば高さが変化する箇所等のエッジ抽出を行って、さらに細線化処理した箇所を、一定間隔で特徴点として抽出する。このように、各特徴点は、面の三次元的な形状を表す特徴となっている。
(三次元サーチ方法)
The feature points SCP on the surface are extracted, for example, at regular intervals on the surface of the work model. On the other hand, for feature points OCP on the contour, for example, edge extraction is performed on locations where the height changes, and the thinning-processed locations are extracted as feature points at regular intervals. Thus, each feature point is a feature representing the three-dimensional shape of the surface.
(Three-dimensional search method)
このようにして特徴点を抽出したサーチモデルを用いて、三次元サーチを行う。ここで、入力画像として、図13Aや図13Bに示すように複数のワークをバラ積みしたワーク群を撮像して三次元形状を取得した状態から、ワーク別に抽出するために三次元サーチを行う方法について説明する。まずサーチモデルの各特徴点が、最も一致する状態の、位置及び姿勢(X、Y、Z、RX、RY、RZ)を、入力画像の中から探索する。ここでRX、RY、RZは、それぞれX軸に対する回転角、Y軸に対する回転角、Z軸に対する回転角を表す。このような回転角度の表現方法は種々提案されているところ、ここではZ-Y-X系オイラー角を用いる(詳細は後述)。また一致する位置及び姿勢は、各サーチモデルに対して、一つである必要はなく、一定以上一致する位置及び姿勢を、複数検出しても良い。 A three-dimensional search is performed using a search model from which feature points are extracted in this way. Here, a method of performing a three-dimensional search for extracting each work from a state in which a work group in which a plurality of works are randomly stacked as shown in FIGS. 13A and 13B is imaged as an input image and a three-dimensional shape is acquired. will be explained. First, the input image is searched for the position and orientation (X, Y, Z, R X , R Y , R Z ) that best match each feature point of the search model. Here, R X , R Y , and R Z represent the rotation angle with respect to the X axis, the rotation angle with respect to the Y axis, and the rotation angle with respect to the Z axis, respectively. Various methods for expressing such a rotation angle have been proposed, and ZYX system Euler angles are used here (details will be described later). Also, the number of matching positions and orientations does not have to be one for each search model, and a plurality of matching positions and orientations above a certain level may be detected.
ここでは入力画像として、図13Aのような二次元表示、あるいはこれを三次元表示させた図13Bのようなワーク群に対して、三次元サーチを行い、入力画像全体を探索する。この結果、図13Cのような二次元表示、あるいはこれを三次元表示させた図13Dに示すようなサーチ済み画像が三次元サーチ結果として得られる。図13C、図13Dに示すように、サーチモデルの特徴点が入力画像中から検索されて、サーチモデルと対応するワークが検出されていることが判る。図13Dにおいては、サーチモデルAとサーチモデルBのサーチ結果が得られている様子を示している。これらサーチモデルA、サーチモデルBは、後述する図14のサーチモデル選択欄で表示されたサーチモデルA、Bと対応している。なお図13Dの右側のワークWKについては、同じワークでサーチモデルA、Bの2つのサーチ結果が得られている。よって、各サーチモデルに登録された把持位置での把持が可能であれば、複数の把持位置がこのワークでは得られていることになる。 Here, as an input image, a three-dimensional search is performed with respect to a two-dimensional display as shown in FIG. 13A, or a work group such as that shown in FIG. As a result, a two-dimensional display as shown in FIG. 13C or a searched image as shown in FIG. 13D, which is three-dimensionally displayed, is obtained as a three-dimensional search result. As shown in FIGS. 13C and 13D, it can be seen that the feature points of the search model are retrieved from the input image, and the workpiece corresponding to the search model is detected. FIG. 13D shows how the search results of search model A and search model B are obtained. These search models A and B correspond to the search models A and B displayed in the search model selection column of FIG. 14, which will be described later. For the work WK on the right side of FIG. 13D, two search results of search models A and B are obtained for the same work. Therefore, if the workpiece can be gripped at the gripping positions registered in each search model, a plurality of gripping positions are obtained for this workpiece.
このように三次元サーチに用いるサーチモデルとして、ワークを六面図のように、面ごとに見た画像を用いることで、斜視図などを用いる場合と比べ、三次元サーチの演算処理を簡素化でき、処理を軽負荷、高速化できる利点が得られる。また、サーチモデルの登録作業に際しても表示された状態が見易くなり、ユーザにも視覚的に判り易くできる。
(三次元サーチ結果の評価指標)
As a search model used for 3D search in this way, by using an image of the work viewed from each side like a 6-sided view, the arithmetic processing of 3D search is simplified compared to the case of using a perspective view, etc. It has the advantage of lightening the processing load and speeding up processing. In addition, the displayed state becomes easy to see even in the registration work of the search model, and the user can visually understand it easily.
(Evaluation index for three-dimensional search results)
さらに、三次元サーチ結果の評価指標を設定することもできる。例えば図13Cや図13Dに示す例において、対応する特徴点が、入力画像中に対してどの程度存在したか(例えばサーチ結果に対し、一定の距離以下の誤差で対応した特徴点の点数割合や、規定の計算式により特徴点の誤差量をペナルティとして減点した値などによって、三次元サーチ結果をスコア付けする。この方法では、三次元計測できなかった無効データ(無効画素)が多い状態では、スコアが低くなる。このようにスコアを、三次元サーチ結果の信頼性を表す指標として用いることができる。例えば、スコアが高い順に、優先的にワークを把持するように設定できる。また、一定のスコア以下の三次元サーチ結果は、誤検出している可能性が高いと判断して、ワークの把持対象から外すように設定してもよい。例えば図6の画像処理装置100において演算部10に評価指標演算部8qを設け、所定の基準に基づいてサーチ結果に対して評価指標を演算する。これにより、評価指標の高いサーチ結果から順に優先順位を設定し、この優先順位に従いワークを把持するように設定することができる。例えば、一定のスコア以上の結果の中で、Z方向の位置が最も高いものから優先的に把持するように設定することができる。Z方向の位置が高いものほど、他のワークと干渉しにくい特性があるため、Z方向の位置が最も高いものから優先的に把持するように設定することで、干渉判定の処理負荷を下げる効果を得られる。
Furthermore, it is also possible to set an evaluation index for the three-dimensional search results. For example, in the examples shown in FIG. 13C and FIG. 13D, how many corresponding feature points exist in the input image , score the 3D search result by deducting the error amount of the feature point according to the prescribed calculation formula as a penalty, etc. With this method, when there is a large amount of invalid data (invalid pixels) that could not be measured in 3D, The score becomes lower.In this way, the score can be used as an index representing the reliability of the three-dimensional search result.For example, it can be set so that workpieces are preferentially gripped in descending order of score. 3D search results with scores below the score may be determined to be highly likely to be erroneously detected, and may be set to be excluded from gripping targets for workpieces.For example, in the
このようにしてバラ積みされたワーク群から、ワーク毎に検出することで、把持対象のワークを画像処理装置側で認識できるようになる。次に、ワークをエンドエフェクタで把持するためには、ワーク毎に、ワークのどの位置をどのような姿勢で把持するかを認識させる必要がある。このため、ワークの把持位置を登録する。なお本明細書では、「把持位置」、「把持姿勢」の登録というとき、ワークを把持する位置と、そのときの姿勢を含む意味で使用する。ワークの把持位置は、ワークに対して一箇所以上を登録できる。また、把持位置の登録は、ワークの面単位で行うことで、把持登録の作業の容易性や把持位置の認識の点で好ましい。すなわちワークの姿勢を、特定の面を上面とした姿勢に規定した上で、把持位置を登録する。
(把持登録画面140)
By detecting each workpiece from the randomly stacked workpiece group, the image processing apparatus can recognize the workpiece to be gripped. Next, in order to grip a workpiece with an end effector, it is necessary to recognize which position of the workpiece and in what posture to grip each workpiece. Therefore, the workpiece gripping position is registered. In this specification, the terms "gripping position" and "gripping orientation" are used to include the position at which the workpiece is gripped and the orientation at that time. One or more workpiece gripping positions can be registered with respect to the workpiece. Moreover, it is preferable to register the gripping position for each surface of the workpiece in terms of easiness of the gripping registration work and recognition of the gripping position. That is, the gripping position is registered after the posture of the workpiece is defined as a posture in which a specific surface is the upper surface.
(Grip registration screen 140)
ここで、エンドエフェクタモデルがワークモデルを把持する把持位置を登録する把持登録を行うユーザインターフェース画面の例を、図14、図15に示す。把持登録画面140では、ワークモデルの登録する面を指定し、各面に対し、把持姿勢を登録する。図14の例では、4種類の面(サーチモデルの各面)を指定して、把持姿勢を登録するユーザインターフェース画面を示している。ここではA~Dのサーチモデルの内、サーチモデル「C」を選択しており、このサーチモデルCには3つの把持姿勢が表示されている。
FIGS. 14 and 15 show examples of user interface screens for gripping registration for registering a gripping position where the end effector model grips the work model. On the
図14の把持登録画面140では、左側に画像を表示させるための画像表示欄141、右側に各種の操作を行うための操作欄142を設けている。画像表示欄141には、ワークモデルCWMとエンドエフェクタモデルEEMが表示される。画像表示欄141の画面をドラッグすることで、視点を変更できる。このように、表示領域に表示されたワークモデルの位置や姿勢を、仮想三次元空間上で調整する位置決め部8cとして機能する。また画像表示欄141の表示態様を、二次元的な表示や三次元的な表示に切り替えることもできる。現在の表示態様を判り易く示すため、画像表示欄141には三次元の基準座標軸BAXを重ねて表示している。図14の例では、画像表示欄141には、操作欄142で選択されている把持姿勢001に登録された把持姿勢、すなわちワークモデルCWMの一部をエンドエフェクタモデルEEMで把持する様子が表示されている。なお、この例ではエンドエフェクタモデルEEMの全体を表示させているが、把持登録に際しては必ずしもエンドエフェクタモデルの全体を表示させる必要はなく、少なくともワークモデルCWMを把持する部位、例えば爪部を表示させれば足りる。
In the
また操作欄142には、サーチモデルを選択するためのサーチモデル選択欄143、及びサーチモデル選択欄143で選択されたサーチモデルに対して登録されている把持姿勢を示す把持姿勢表示欄144が設けられている。サーチモデル選択欄143で一覧表示された把持姿勢を選択すると、これに対応する登録済みの把持姿勢が、画像表示欄141に表示される。また、編集ボタン145を押下すると、登録済みの把持姿勢を修正することが可能となる。さらに操作欄142には、把持姿勢を追加する追加ボタン146や、登録済みの把持姿勢を削除する削除ボタン147が設けられている。削除ボタン147を押すと、選択されている把持姿勢が削除される。
(把持姿勢追加画面150)
The
(Gripping posture addition screen 150)
把持姿勢を新たに追加したい場合は、追加ボタン146を押す。これによって図15に示すように把持姿勢追加画面150が表示され、把持姿勢を追加することが可能となる。画像表示欄141にはエンドエフェクタモデルEEMとワークモデルCWMが表示される。また操作欄142には、把持姿勢を規定する把持姿勢座標情報153が表示される。ここで、把持姿勢座標情報153として表示される位置パラメータであるX、Y、Z、RX、RY、RZは、サーチモデルの原点に対する、エンドエフェクタモデルEEMの位置及び姿勢のデータを表している。なおサーチモデルの原点は、上述の通りワークモデルCWMの重心や、CADデータの中心座標などとできる。
If you want to add a new gripping posture, press the add button 146 . As a result, a gripping
把持姿勢座標情報153のX、Y、Z、RX、RY、RZの値を変更すると、画像表示欄141で三次元的に表示されているエンドエフェクタモデルEEMの位置及び姿勢がこれに応じて更新される。逆に、画像表示欄141のエンドエフェクタモデルEEMをドラッグして移動させることで、操作欄142における把持姿勢座標情報153の表示内容が移動後の把持姿勢座標に更新される。これにより、ユーザは画像表示欄141のエンドエフェクタモデルEEMと、操作欄142の把持姿勢座標情報153を確認しながら、把持位置及び姿勢を登録することができる。また画像表示欄141には、三次元の基準座標軸BAXを重ねて表示することができる。
When the values of X, Y, Z, R X , R Y , and R Z of the gripping posture coordinate
把持位置の登録に際して、画像表示欄141に表示されるエンドエフェクタモデルEEMに対して、ワークモデルCWMを把持する位置に対応した把持基準点と、エンドエフェクタモデルEEMでワークモデルCWMを把持する把持方向を規定する。これら把持基準点と把持方向は、画像処理装置100側でデフォルト値として設定しておくことが好ましい。そして、図15の把持姿勢追加画面150において、把持方向が、ワークモデルCWMの姿勢を表すワーク平面に対して直交するように、ワークモデルCWMの位置及び姿勢に応じて、エンドエフェクタモデルEEMの位置及び姿勢を自動的に調整する。この調整は、例えば三次元ピック判定部8lに行わせることができる。あるいは、ユーザが位置決め部8cを用いて、エンドエフェクタモデルEEMの把持方向が、ワークモデルCWMのワーク平面と直交するように、エンドエフェクタモデルEEMの位置及び姿勢を手動で調整するように構成してもよい。
When registering the gripping position, for the end effector model EEM displayed in the
さらに把持位置の登録に際して、図15の把持姿勢追加画面150を開いた初期状態において、エンドエフェクタモデルEEMの位置及び姿勢は、エンドエフェクタモデルEEMを下向きの姿勢として、ワークモデルCWMがエンドエフェクタモデルEEMの下方に位置する状態を初期値としている。このようにすれば、エンドエフェクタモデルEEMを降下させてワークモデルCWMに接触させるようにすれば把持姿勢が決まるため、ユーザ側の操作を直感的に行うことができ、従来、三次元での位置合わせが面倒であった問題を低減できる。すなわち、基本的にエンドエフェクタモデルEEMのX、Y、Z方向の位置合わせと、Z軸に対する回転を設定するのみで、簡単に把持姿勢を登録できる。
Furthermore, when registering the gripping position, in the initial state where the gripping
さらにまた、ワークモデルCWMに対して、エンドエフェクタモデルEEMで把持する把持位置を設定することで、この把持位置が把持方向を延長した軸上に位置するよう、エンドエフェクタモデルEEMの位置を自動的に調整するよう構成することもできる。 Furthermore, by setting a gripping position to be gripped by the end effector model EEM with respect to the work model CWM, the position of the end effector model EEM is automatically adjusted so that this gripping position is located on an axis extending from the gripping direction. It can also be configured to adjust to
なお、把持姿勢の登録は、ワークの画像を基準に行う。このため、必ずしもCADデータを用いる必要はなく、ワークを実際に撮像して得られた実測データに対し、把持姿勢を登録することもできることは上述の通りである。
(フィット機能)
Note that the registration of the gripping posture is performed based on the image of the workpiece. For this reason, it is not always necessary to use CAD data, and as described above, it is possible to register the gripping posture with respect to actual measurement data obtained by actually imaging the workpiece.
(fit function)
さらに、把持位置を指定する際、エンドエフェクタモデルをワークモデルの把持位置に移動させる作業をユーザが手動で行うのみならず、これを自動的に行うフィット機能を設けることもできる。従来、エンドエフェクタモデルでワークモデルを把持する把持位置X、Y、Zや把持姿勢RX、RY、RZを指定する際、例えば図15の画像表示欄141において、エンドエフェクタモデルをドラッグしてワークモデルに接触するまで移動させたり、操作欄142において高さ方向のZに数値を入力したりして設定していた。しかしながら、ユーザが目視によりエンドエフェクタモデルを移動させてワークモデルを把持する姿勢に合わせ込む作業は面倒であり、また位置パラメータの数値を指定するのも、6つの位置パラメータをどのように調整すればよいのかが判り難い。そこで、エンドエフェクタモデルをワークモデルの把持位置に位置させる作業を自動的に行うフィット機能を設けている。
Furthermore, when specifying the gripping position, not only the user manually moves the end effector model to the gripping position of the workpiece model, but also a fitting function for automatically performing this can be provided. Conventionally, when specifying gripping positions X, Y, Z and gripping postures R X , R Y , R Z at which a work model is gripped by an end effector model, the end effector model is dragged in the
ここで、ワークモデルやエンドエフェクタモデルが三次元CADデータのように高さ情報を有している場合は、ワークモデル上の把持させたい位置をマウスのクリック等により指定し、この位置の高さ方向、すなわちZ座標を取得し、そのZ座標にオフセットを加味した位置を、エンドエフェクタモデルの移動後のZ座標として設定する。これによって、把持位置までエンドエフェクタモデルをユーザが手動で移動させたり、Z座標などの位置パラメータを手動で入力させる手間を省き、しかも正確に把持位置を指定することができる。このようなフィット機能の一例として、図15の把持姿勢追加画面150に示す操作欄142には、相対位置設定部8d5の一態様である「フィット」ボタン154を配置している。「フィット」ボタン154を押下すると、エンドエフェクタモデルEEMがZ方向に仮想的に移動されて、ワークモデルCWMに接触する位置で停止され、この干渉位置から逆方向に、オフセット量だけ戻した位置を、把持位置とする。オフセット量は、エンドエフェクタモデルEEMの先端がワークモデルCWMと接触して干渉したり傷付けることを避けるため、若干離間させるための数値であり、例えば1mmなど、ワークや用途に応じて規定できる。
Here, if the work model or the end effector model has height information such as three-dimensional CAD data, a position on the work model to be gripped is specified by clicking the mouse, etc., and the height of this position is specified. A direction, that is, a Z coordinate is obtained, and a position obtained by adding an offset to the Z coordinate is set as the Z coordinate after movement of the end effector model. This eliminates the need for the user to manually move the end effector model to the gripping position and manually input position parameters such as the Z coordinate, and allows the gripping position to be specified accurately. As an example of such a fit function, a "fit"
以上の例では、三次元サーチを行うための三次元サーチモデル生成の際に用いた高さ画像を用いて、把持登録を行う方法を説明した。このようにワークを抽出するためのサーチモデルと、把持位置を登録するモデルとを共通化することで、ユーザは共通のワークに対して三次元サーチや把持位置の設定を行うことができ、操作に統一感が得られ感覚的にも理解し易くなる。ただ、本発明は必ずしも、三次元サーチのサーチモデルと把持登録の対象となるモデルとを一致させることを要しない。三次元サーチモデルと、把持登録に用いるモデルとの対応関係が判っておれば、必ずしもサーチモデルとして用いたモデルを把持登録に用いる必要はない。 In the above example, a method of carrying out gripping registration using a height image used when generating a three-dimensional search model for performing a three-dimensional search has been described. By standardizing the search model for extracting workpieces and the model for registering gripping positions in this way, the user can perform three-dimensional search and gripping position settings for common workpieces, and can perform operations. A sense of unity is obtained and it becomes easy to understand intuitively. However, the present invention does not necessarily require that the search model for three-dimensional search and the target model for gripping registration match. If the correspondence relationship between the three-dimensional search model and the model used for gripping registration is known, it is not necessary to use the model used as the search model for gripping registration.
また、三次元CADデータから高さ画像を生成した後の、見え方の一致確認は、各軸の正負方向同士の確認のみに限定する必要はない。例えば、立方体等のワークは、X軸の±方向、Y軸の±方向、Z軸の±方向の、どの方向から見ても見え方が一致するため、1つの面のみ、サーチモデルを生成すれば良い。同様に、把持位置の登録も、1つの面に対して把持を指定するだけで足りる。これだけで、全ての面(X軸の±方向、Y軸の±方向、Z軸の±方向)に対して、把持できる状態になる。例えば、図16Aに示すような立方体状のワークWKCのバラ積みに対しては、立方体の1面を、図16Bのようにモデル登録し、この面を真上から掴む把持姿勢を1つ登録するだけで、図16Cに示すように六面全ての面に対する三次元サーチ及びエンドエフェクタモデルEEMによる把持が可能となる。
(キャリブレーション)
In addition, after the height image is generated from the three-dimensional CAD data, it is not necessary to limit the confirmation of matching of appearances to only the confirmation of the positive and negative directions of each axis. For example, a workpiece such as a cube looks the same when viewed from any of the ± directions of the X axis, ± directions of the Y axis, and ± directions of the Z axis. Good luck. Similarly, it suffices to register gripping positions by designating gripping for one surface. With this alone, it is possible to grip all surfaces (± directions of the X axis, ± directions of the Y axis, and ± directions of the Z axis). For example, for a randomly stacked cubic workpiece WKC as shown in FIG. 16A, one face of the cube is model-registered as shown in FIG. 16C, three-dimensional search for all six faces and grasping by the end effector model EEM is possible.
(Calibration)
上述した把持登録画面140では、サーチモデルの原点に対して、ワークを把持する際のエンドエフェクタモデルEEMの相対的な位置及び姿勢を登録している。一方、実際のエンドエフェクタでワークをピッキングする際には、センサ部でワークを撮像した三次元空間(ビジョン空間)の座標であるビジョン座標から、ロボットコントローラ6がロボットを実際に駆動させる際に用いるロボット座標に変換する必要がある。具体的には、三次元サーチの結果得られるワークの位置及び姿勢は、ビジョン空間における、位置(X、Y、Z)と姿勢(RX、RY、RZ)で求められる(なお姿勢(RX、RY、RZ)は、後述するZ-Y-X系オイラー角で表現された姿勢を示している)。また、これを把持するエンドエフェクタの姿勢についても、同様に画像処理装置の仮想三次元空間における位置(X、Y、Z)と姿勢(RX、RY、RZ)として求められる。このようなビジョン空間における位置及び姿勢に基づいて、ロボットコントローラ6がロボットを駆動させるには、これらをロボット空間における位置(X’、Y’、Z’)と姿勢(RX’、RY’、RZ’)に変換する必要がある。このような画像処理装置で表示される座標系で算出された位置及び姿勢を、ロボットコントローラがエンドエフェクタを動作させる座標系の位置及び姿勢に座標変換するための変換式を算出する処理は、キャリブレーションと呼ばれる。
(実施形態2)
In the
(Embodiment 2)
このような画像処理装置(マシンビジョン装置)とロボット間のキャリブレーション機能を備えるロボットシステムの例を、実施形態2として図17の機能ブロック図に示す。この図に示すロボットシステム2000は、画像処理装置200と、表示部3と、操作部4と、センサ部2と、ロボットコントローラ6と、ロボットRBTを備える。なおこの図に示すロボットシステムにおいて、上述した図6等と共通する部材については、同じ符号を付して詳細説明を適宜省略する。
(画像処理装置200)
An example of a robot system having such an image processing device (machine vision device) and robot calibration function is shown in the functional block diagram of FIG. 17 as a second embodiment. A
(Image processing device 200)
画像処理装置200は、入力画像取得部2cと、記憶部9と、演算部10と、入出力インターフェース4bと、表示インターフェース3fと、ロボットインターフェース6bを備える。
The
入力画像取得部2cは、センサ部で測定されたエンドエフェクタを含む画像から三次元形状を有する入力画像を取得する。この入力画像取得部2cで、エンドエフェクタの入力画像を取得する際、ロボットのアーム部の先端のフランジ面に取り付けた取付位置を含むように撮像することが好ましい。また、エンドエフェクタの面積が大きくなる姿勢で入力画像を撮像する。例えば、エンドエフェクタを水平姿勢として横向きの姿勢から入力画像を撮像するよう、ユーザはロボットを操作する。
The input
演算部10は、エンドエフェクタモデル登録部8uと、ワークモデル登録部8tと、キャリブレーション部8wと、サーチモデル登録部8gと、三次元サーチ部8kと、変換部8xと、エンドエフェクタ取付位置較正部8yと、把持位置特定部8dとを備える。
The
エンドエフェクタモデル登録部8uは、エンドエフェクタの三次元形状を仮想的に表現する、三次元CADデータであるエンドエフェクタモデルを登録するための部材である。例えばエンドエフェクタモデル登録部8uは、別途作成したエンドエフェクタの形状を表す三次元CADデータを読み込んでエンドエフェクタモデルとして登録する。この場合は、入出力インターフェース4bを介して入力された三次元CADデータを、エンドエフェクタモデル登録部8uでエンドエフェクタモデルとして登録する。あるいは、実際のエンドエフェクタを撮像した三次元点群データをエンドエフェクタモデルとすることもできる。この場合は、センサ部2や入力画像取得部2cで取得された三次元点群データを、エンドエフェクタモデル登録部8uでエンドエフェクタモデルとして登録する。あるいはまた、エンドエフェクタを模した三次元CADデータを作成して登録してもよい。この場合はエンドエフェクタモデル登録部8uが、簡易的な三次元CADの機能を実現する。
The end effector
キャリブレーション部8wは、表示部上で表示される仮想的な三次元空間であるビジョン空間の座標系で算出された位置及び姿勢を、ロボットコントローラがエンドエフェクタを動作させるロボット空間の座標系の位置及び姿勢に座標変換するキャリブレーション情報を取得するための部材である。 The calibration unit 8w converts the position and orientation calculated in the coordinate system of the vision space, which is a virtual three-dimensional space displayed on the display unit, to the position in the coordinate system of the robot space in which the robot controller operates the end effector. and a member for acquiring calibration information for coordinate transformation into posture.
キャリブレーション部8wは、複数の位置座標について、ロボットのエンドエフェクタEETの実際の位置座標と、画像処理装置に表示されている画像上の位置座標との間の変換式を算出する。なお座標変換の方法は、特に限定されるものではなく、例えば三次元アフィン変換等、既知の方法を適宜利用できる。 For a plurality of position coordinates, the calibration unit 8w calculates a conversion formula between the actual position coordinates of the end effector EET of the robot and the position coordinates on the image displayed on the image processing device. The coordinate transformation method is not particularly limited, and known methods such as three-dimensional affine transformation can be used as appropriate.
記憶部9は、キャリブレーション部8wによるキャリブレーション情報を保存する。
The
三次元サーチ部8kは、入力画像取得部2cで取得された入力画像中から、エンドエフェクタモデルをサーチモデルとして、エンドエフェクタの位置及び姿勢に対応する画像領域を特定する三次元サーチを行うための部材である。
The three-
変換部8xは、キャリブレーション部8wで得られたキャリブレーション情報に基づいて、ビジョン座標をロボット座標に変換する。この変換部8xは、記憶部9に保存されたキャリブレーション情報を読み出す。
The
エンドエフェクタ取付位置較正部8yは、三次元サーチ部でサーチされたビジョン空間上のエンドエフェクタの位置及び姿勢を、変換部8xでロボット空間上の位置及び姿勢に変換して得られた情報でもって、エンドエフェクタのビジョン空間上の位置及び姿勢とロボット空間上の位置及び姿勢との誤差を較正する。これにより、エンドエフェクタモデルを用いて三次元サーチすることで、仮想的なエンドエフェクタモデルを実際のエンドエフェクタの取付状態に即して誤差を補正することが可能となり、より正確な設定作業を行えるようになる。
The end effector mounting
把持位置特定部8dは、ワークモデル登録部8tで登録されたワークモデルに対して、該ワークモデルをエンドエフェクタモデルで把持する把持位置を一以上、特定する。
(Z-Y-X系オイラー角)
The gripping
(ZYX system Euler angles)
ここで、Z-Y-X系オイラー角について説明する。従来より、ワークをエンドエフェクタで把持する把持位置を規定するために、三次元CADデータをワークモデルやエンドエフェクタモデルの姿勢の位置決めにZ-Y-X系オイラー角が用いられている。この場合、ワークモデルに対するエンドエフェクタモデルの位置及び姿勢は6つの位置パラメータ(X,Y,Z,RX,RY,RZ)で表現される。ここでX、Y、Zは三次元空間を規定する直交座標軸であり、RX、RY、RZはそれぞれX軸、Y軸、Z軸を中心として回転させる回転角度を示している。 Here, the ZYX system Euler angles will be described. Conventionally, ZYX system Euler angles are used for positioning the posture of a work model or an end effector model based on three-dimensional CAD data in order to define a gripping position for gripping a work by an end effector. In this case, the position and orientation of the end effector model with respect to the work model are expressed by six position parameters ( X , Y, Z , RX, RY , RZ). Here, X, Y, and Z are orthogonal coordinate axes that define a three-dimensional space, and R X , R Y , and R Z indicate rotation angles around the X, Y, and Z axes, respectively.
ここで、Z-Y-X系オイラー角に従ってエンドエフェクタモデルを回転させる例を、図18~図21に基づいて説明する。まず図18に、表示部3の画像表示領域にエンドエフェクタモデルEEMとワークモデルWM11を表示させた状態を示す。この例では、説明を判り易くするため、仮想三次元空間を規定する基準座標軸BAX(XYZ)と、回転させる回転対象物(ここではエンドエフェクタモデルEEM)が回転した後の三次元空間座標軸である回転済み座標軸RAX(XYZ)を、それぞれ表示させている。
Here, an example of rotating the end effector model according to the ZYX system Euler angles will be described with reference to FIGS. 18 to 21. FIG. First, FIG. 18 shows a state in which the end effector model EEM and the workpiece model WM11 are displayed in the image display area of the
図18の例では、ワークモデルWM11側を静止させ、エンドエフェクタモデルEEM側を回転させているため、基準座標軸BAXはワークモデルWM11の位置及び姿勢を、回転済み座標軸RAXはエンドエフェクタモデルEEMの位置及び姿勢を、それぞれ示している。なお、エンドエフェクタモデルEEM側の回転済み座標軸RAXは、その原点をエンドエフェクタモデルEEMの把持位置となる把持基準点HBPと一致させている(詳細は後述)。 In the example of FIG. 18, the work model WM11 side is stationary and the end effector model EEM side is rotated. and posture, respectively. The origin of the rotated coordinate axis RAX on the end effector model EEM side coincides with the gripping reference point HBP, which is the gripping position of the end effector model EEM (details will be described later).
さらに回転前の状態では、XYZ軸の回転角度RX、RY、RZはそれぞれRX=0°、RY=0°、RZ=0°であり、基準座標軸BAXと回転済み座標軸RAXは一致している。この状態で、エンドエフェクタモデルEEMをZ軸を中心として反時計回りに90°回転させると、図19に示すようになる。図19の状態では、回転角度RX、RY、RZはそれぞれRX=0°、RY=0°、RZ=90°となり、これに応じて画像表示領域に表示される回転済み座標軸RAXは、回転後の姿勢に更新される。さらに図19の状態から、Y軸を中心として時計回りに90°回転させると、図20のようになる。この状態では、回転角度RX、RY、RZはそれぞれRX=0°、RY=90°、RZ=90°となり、これに応じて回転済み座標軸RAXも同様に回転後の姿勢に更新される。さらに図20の状態から、X軸を中心として時計回りに90°回転させると、図21の状態となり、回転角度RX、RY、RZはそれぞれRX=90°RY=90°RZ=90°となる。 Furthermore, in the state before rotation, the rotation angles R X , R Y , and R Z of the XYZ axes are respectively R X =0°, R Y =0°, and R Z =0°, and the reference coordinate axis BAX and the rotated coordinate axis RAX are consistent. In this state, when the end effector model EEM is rotated 90 degrees counterclockwise around the Z axis, it becomes as shown in FIG. In the state of FIG. 19, the rotation angles R X , R Y , and R Z are respectively R X =0°, R Y =0°, and R Z =90°. The coordinate axis RAX is updated to the posture after rotation. Further, when the state shown in FIG. 19 is rotated 90 degrees clockwise about the Y-axis, the state shown in FIG. 20 is obtained. In this state, the rotation angles R X , R Y , and R Z are R X =0°, R Y =90°, and R Z =90°, respectively. is updated to Further, when the state of FIG. 20 is rotated clockwise about the X - axis by 90 °, the state of FIG. Z = 90°.
従来は、このようなZ-Y-X系オイラー角を用いて、ワークモデルやエンドエフェクタモデルの生成や位置を表現していた。しかしながら、操作可能な位置パラメータの数が6個と多いため、これらの位置パラメータを調整してユーザが想定している位置や姿勢に調整する作業は容易でなかった。また姿勢を維持したまま位置を移動させる際に用いるXYZ軸と、回転で用いるRX、RY、RZ軸とが異なるため、この位置パラメータを変化させると、どのように変化するのかが直感的に判り難いという問題があった。この様子を図22に基づいて説明する。 Conventionally, such ZYX system Euler angles have been used to express the generation and positions of workpiece models and end effector models. However, since the number of operable position parameters is as large as six, it is not easy to adjust these position parameters to achieve the position and posture expected by the user. In addition, since the XYZ axes used for moving the position while maintaining the posture are different from the R X , R Y , and R Z axes used for rotation, it is intuitive how the position parameters will change. There was a problem that it was difficult to understand. This situation will be described with reference to FIG.
今、図21の状態で、画像表示領域には、回転角度RX=90、RY=90、RZ=90の回転後の直交座標軸である回転済み座標軸RAXが表示されている。この状態からRYやRZを変更すると、表示されている回転済み座標軸RAXとは異なる軸を中心に回転することになる。例えばRYの回転は、図22の回転済み座標軸RAXで示すY軸ではなく、図22に破線で示すように、RX回転前のY軸(図19の回転済み座標軸RAXで示すY軸)を中心に回転することになる。またRZも、図22の回転済み座標軸RAXで示すZ軸を中心に回転するでなく、破線で示すRX,RY回転前のZ軸(図18の回転済み座標軸RAXで示すZ軸)を中心に回転することになる。 Now, in the state of FIG. 21, the rotated coordinate axes RAX, which are the orthogonal coordinate axes after the rotation angles R X =90, R Y =90, and R Z =90, are displayed in the image display area. If R Y or R Z is changed from this state, the rotation will be performed around an axis different from the displayed rotated coordinate axis RAX. For example, the rotation of R Y is not the Y -axis indicated by the rotated coordinate axis RAX in FIG. will rotate around. Also, R Z does not rotate around the Z-axis indicated by the rotated coordinate axis RAX in FIG. 22, but the Z-axis before the R X and R Y rotation indicated by broken lines (the Z-axis indicated by the rotated coordinate axis RAX in FIG. 18). will rotate around.
これは、Z-Y-X系オイラー角が、Z軸、Y軸、X軸の順に回転させることを前提に規定されていることによる。Z-Y-X系オイラー角によれば、Z軸が基準であり、Z軸回りのRZの回転によってRX、RYの回転軸がそれぞれ回転する。ここでZ軸回りの回転軸は動かない一方、RX、RYは、Z軸回りの回転RZによって回転軸自体が回転する。これに従って決定されたY軸回りにRYだけ回転させると、これに応じてX軸も回転される。ここでY軸回りの回転軸は、Z軸回りの回転RZによって決まっているため、X軸回りにRXだけ回転させても、Y軸回りの回転軸もZ軸回りの回転軸も変化しない。いいかえると、Z-Y-X系オイラー角では、RZが独立した回転軸を有し、RYはRZに従属した回転軸を有し、RXはRYに従属した回転軸を有するということができる。 This is because the ZYX system Euler angles are defined on the premise that they are rotated in the order of the Z-axis, Y-axis, and X-axis. According to the ZYX system Euler angles, the Z axis is the reference, and the rotation of R Z around the Z axis causes the rotation axes of R X and R Y to rotate. Here, the rotary shaft around the Z axis does not move, while the rotary shafts of R X and R Y are rotated by the rotation R Z around the Z axis. Rotation by R Y about the Y-axis thus determined causes the X-axis to rotate accordingly. Here, since the rotation axis around the Y axis is determined by the rotation R Z around the Z axis, even if it is rotated by R X around the X axis, both the rotation axis around the Y axis and the rotation axis around the Z axis change. do not do. In other words, in the ZYX system Euler angles, R Z has an independent axis of rotation, R Y has an axis of rotation dependent on R Z , and R X has an axis of rotation dependent on R Y. It can be said that
このように、従来よりロボットの制御で一般的に用いられているZ-Y-X系オイラー角では、3つの回転軸が相互に関連して、他の回転軸回りの回転後の軸でもって回転するため、ユーザにとってはどの軸が回転軸になるのかが極めて把握し難くなり、意図通りの方向に回転させることが容易でなかった。
(補正回転軸の表示)
In this way, in the ZYX system Euler angles generally used in conventional robot control, the three rotation axes are related to each other, and the axis after rotation about the other rotation axis is Since it rotates, it is extremely difficult for the user to grasp which axis is the rotation axis, and it is not easy to rotate in the intended direction.
(Display of correction rotation axis)
これに対して本実施形態に係る方法では、RX、RY、RZの回転軸を、それぞれ実際の回転軸を基準として表示するようにしている。この軸は、従来のZ-Y-X系オイラー角を用いた三次元空間の表示で行われていたもの(図18~図21)とは異なり、あくまでも他の回転軸回りの回転後の状態を考慮して補正した、現実の回転軸を補正回転軸として表示させるものである。例えば図22の状態で、RZの補正回転軸を表示する例を考える。この場合は図23に示すように、RX,RYを0°として計算したときのZ軸が、補正回転軸となる。ここで表示される補正回転Z軸AXZは、RX=0°、RY=0°、RZ=90°のときのZ軸である。 On the other hand, in the method according to the present embodiment, the rotation axes R X , R Y , and R Z are displayed based on the actual rotation axes. This axis is different from the conventional display of three-dimensional space using the ZYX system Euler angles (Figs. 18 to 21). The actual rotation axis corrected in consideration of is displayed as the corrected rotation axis. For example, let us consider an example of displaying the correction rotation axis of R Z in the state of FIG. 22 . In this case, as shown in FIG. 23, the Z-axis when calculated with R X and R Y at 0° becomes the correction rotation axis. The corrected rotational Z-axis AXZ displayed here is the Z-axis when R X =0°, R Y =0°, and R Z =90°.
一方、図22の状態でRYの補正回転軸を表示するには、図24に示すように、RXを0°として計算したときのY軸が、現実の回転軸となる。ここで表示される補正回転Y軸AXYは、RX=0°、RY=90°、RZ=90のときのY軸である。 On the other hand, in order to display the corrected rotation axis of R Y in the state of FIG. 22, the Y axis when calculated with R X being 0° becomes the actual rotation axis, as shown in FIG. The corrected rotation Y-axis AXY displayed here is the Y-axis when R X =0°, R Y =90°, and R Z =90.
さらに図22の状態でRXの補正回転軸を表示するには、そのままX軸を表示すればよい。補正回転軸として補正回転X軸を表示させた例を図25に示す。ここで表示される補正回転X軸AXXは、RX=90°、RY=90°、RZ=90°のときのX軸である。 Furthermore, in order to display the correction rotation axis of R X in the state of FIG. 22, the X axis should be displayed as it is. FIG. 25 shows an example in which the X axis of correction rotation is displayed as the correction rotation axis. The corrected rotation X-axis AXX displayed here is the X-axis when R X =90°, R Y =90°, and R Z =90°.
なお、これらの補正回転軸の始点は、エンドエフェクタモデルの回転の中心とすることが好ましい。例えば、エンドエフェクタモデルEEMの把持位置である一対の爪部の中間位置とする。
(X-Y-Zオイラー角)
The starting point of these correction rotation axes is preferably the center of rotation of the end effector model. For example, the intermediate position between the pair of claws, which is the gripping position of the end effector model EEM.
(X-Y-Z Euler angles)
この補正回転軸は、回転させる順番を変更した場合であっても、同様の考え方で回転軸を表示できる。例えば上述した図23~図25の例では、Z-Y-X系オイラー角を採用したため、RZ、RY、RXの順で回転させている。一方、X-Y-Zオイラー角を採用すると、RX、RY、RZの順で回転させることから、0°として計算する軸がZ-Y-X系オイラー角とは異なる。例えばX-Y-Zオイラー角で補正回転軸を得るために、図18~図21と同様にRX、RY、RZの順で回転させたと仮定すると、補正回転軸としてZ軸を表示するには、そのまま回転後のZ軸を表示させる。また補正回転軸としてY軸を表示するには、RZを0°として計算したときのY軸を表示させる。さらに補正回転軸としてX軸を表示させるには、RZとRYを0°として計算したときのX軸を表示させる。 Even when the order of rotation is changed, the correction axis of rotation can be displayed with the same concept. For example, in the above-described examples of FIGS. 23 to 25, since the ZYX system Euler angles are adopted, rotation is performed in the order of R Z , R Y , and R X . On the other hand, if the XYZ Euler angles are adopted, the rotation is performed in the order of R X , R Y , and R Z , so the axis calculated as 0° is different from the ZYX system Euler angles. For example, in order to obtain the corrected rotation axis in XYZ Euler angles, assuming that the rotation is performed in the order of R X , R Y , and R Z as in FIGS. 18 to 21, the Z axis is displayed as the correction rotation axis. To do so, display the Z-axis after rotation. To display the Y-axis as the correction rotation axis, the Y-axis when calculated with R Z being 0° is displayed. Furthermore, in order to display the X-axis as a correction rotation axis, the X-axis when calculated with R Z and R Y set to 0° is displayed.
このようにして、オイラー角を用いて把持位置や姿勢の設定をユーザが行うに際して、回転軸を判り易く表示させることができ、複雑なオイラー角の概念を理解せずとも感覚的に操作し易くできる。
(実施形態3)
In this way, when the user sets the gripping position and posture using the Euler angles, the rotation axis can be displayed in an easy-to-understand manner, and the operation can be intuitively performed without understanding the complicated concept of the Euler angles. can.
(Embodiment 3)
オイラー角のような、複数の位置パラメータで規定されるエンドエフェクタやワークの位置や姿勢を、ユーザが設定することは容易でない。そこで、複数の位置パラメータの内、指定可能な位置パラメータを制限してユーザに指定させるよう、位置パラメータの設定手順を誘導して、誘導に従い順次必要な位置パラメータを設定させることもできる。このような例を実施形態3に係るロボットシステム3000として、図26に示す。この図に示すロボットシステム3000は、画像処理装置300と、表示部3Bと、操作部4と、センサ部2と、ロボットコントローラ6と、ロボットRBTを備える。なおこの図に示すロボットシステムにおいて、図6等と共通する部材については、同じ符号を付して詳細説明を適宜省略する。
(画像処理装置300)
It is not easy for the user to set the position and orientation of the end effector and workpiece defined by multiple position parameters such as Euler angles. Therefore, it is also possible to guide the setting procedure of the positional parameters so that the user is allowed to specify limited positional parameters among the plurality of positional parameters, and to sequentially set the necessary positional parameters according to the guidance. FIG. 26 shows such an example as a
(Image processing device 300)
画像処理装置300は、入力画像取得部2cと、演算部10と、記憶部9と、入出力インターフェース4bと、表示インターフェース3fと、ロボットインターフェース6bを備える。記憶部9は、把持位置保存部9bを有する。把持位置保存部9bは、把持位置特定部8dで指定されたワークモデル又はエンドエフェクタモデルの把持位置を、保存するための部材である。
The
演算部10は、把持位置特定部8dと、把持位置コピー部8d8と、相対位置設定部8d5と、サーチモデル登録部8gと、三次元サーチ部8kと、三次元ピック判定部8lと、断面モデル生成部8sとを備える。
The
把持位置特定部8dは、表示部上の仮想三次元空間上に表示されたワークモデル又はエンドエフェクタモデルの何れか又は両方の、位置及び姿勢を特定する、X軸、Y軸、Z軸上の座標位置であるX座標、Y座標、Z座標、及びX軸、Y軸、Z軸を中心とする回転角度であるRX回転角、RY回転角、RZ回転角の6つの位置パラメータを、それぞれ指定するための部材である。
The gripping
把持位置コピー部8d8は、把持位置保存部9bに保存されたワークモデル又はエンドエフェクタモデルの把持位置を読み出して、該把持位置を変更して新たな把持位置として登録するための部材である。これにより、複数の把持位置を登録する際、既に登録された把持位置を読み出して、これをベースにして把持位置を変更し、新たな把持位置として登録可能とすることで、一から把持位置を登録する場合に比べ、より簡単に把持位置を追加でき、登録作業の省力化が図られる。
The gripping position copying unit 8d8 is a member for reading the gripping position of the work model or the end effector model stored in the gripping
三次元ピック判定部8lは、三次元サーチ部8kでサーチされた各サーチ結果に対して、把持位置特定部8dでワークモデルに対して指定された把持位置にて、エンドエフェクタで把持可能か否かを判定するための部材である。
The three-dimensional pick determination unit 8l determines whether or not the workpiece model can be gripped by the end effector at the gripping position specified by the gripping
断面モデル生成部8sは、エンドエフェクタモデルに対して一方向に設定された直線状の基本軸に沿って、この基本軸と直交する平面でエンドエフェクタモデルを切断した断面と、各断面を含む直交平面が基本軸と交差する点を断面位置として、複数の断面と断面位置との組で構成された断面モデルを生成する。この断面モデルを作成するためのエンドエフェクタモデルには、ポリゴンデータ等が用いられる。
(把持位置特定部8d)
The cross-sectional
(Grip
図26に示す把持位置特定部8dは、第一指定部8d9と、第二指定部8d6と、第三指定部8d7を含む。第一指定部8d9は、X座標、Y座標、Z座標の少なくともいずれかを指定可能で、かつ他の位置パラメータは指定不可能な部材である。第二指定部8d6は、第一指定部8d9で一部の位置パラメータが指定された状態のワークモデル又はエンドエフェクタモデルに対して、RX回転角、RY回転角、RZ回転角の少なくともいずれかを指定可能で、かつ他の位置パラメータは指定不可能な部材である。第三指定部8d7は、第一指定部8d9及び第二指定部8d6で一部の位置パラメータが指定された状態のワークモデル又はエンドエフェクタモデルに対して、RX回転角、RY回転角、RZ回転角の少なくともいずれかの内、第二指定部8d6で指定されていない位置パラメータを指定可能で、かつ他の位置パラメータは指定不可能とした部材である。
The grip
これにより、把持位置の指定を、6つの位置パラメータのすべてを一つの画面上で指定させるのでなく、指定可能なパラメータをそれぞれ限定した複数の指定部に分けて、それぞれで位置パラメータを個別に指定させることで、複数の位置パラメータが相互に絡み合って位置や姿勢の把握がし難くなる事態を避け、さらに順次位置パラメータを着ていさせることで、位置及び姿勢の特定に必要な情報を設定させることが可能となる。特に、第一指定部8d9で把持位置の初期位置を、表示部に平面状に表示させたワークモデル上の何れかの部位を、マウスのクリック等で指定させる構成としたことで、見易い姿勢としたワークモデル上を直接指定するという視覚的に判り易い方法でユーザに指定させることが可能となり、従来のような姿勢の確定や数値の規定といった複雑で面倒な作業と比べて遙かに簡単化できる。なお、第一指定部8d9では必ずしもワークモデルを二次元状に表示させる態様に限られず、三次元状に表示させてもよい。
(設定作成時の手順)
As a result, the gripping position is divided into a plurality of specification sections each limiting the parameters that can be specified, instead of allowing all six position parameters to be specified on a single screen, and the position parameters are specified individually in each section. This avoids a situation in which multiple position parameters are intertwined with each other, making it difficult to grasp the position and orientation. Further, by sequentially applying the position parameters, the information necessary for specifying the position and orientation can be set. becomes possible. In particular, the initial position of the gripping position in the first designating section 8d9 can be specified by clicking a mouse or the like on any part of the work model that is displayed in a plane on the display section. This makes it possible for the user to specify the work model in a visually easy-to-understand manner, making it much easier than the conventional complicated and troublesome tasks such as determining the posture and specifying numerical values. can. It should be noted that the work model is not necessarily displayed two-dimensionally in the first specifying section 8d9, and may be displayed three-dimensionally.
(Procedure for creating settings)
ここで、ロボットシステムを動作させるための設定作業を、実運用の前に行うティーチング作業の手順を図27のフローチャートに基づいて説明する。 Here, the setting work for operating the robot system will be described with reference to the flow chart of FIG. 27 for the procedure of the teaching work performed before the actual operation.
まずステップS2701において、ワークを三次元サーチするためのサーチモデルの登録を行う。ここでサーチモデルは、上述の通りワークモデル、ここでは三次元のCADデータを登録することができる。あるいは、センサ部で実際にワークを撮像した実測データをサーチモデルとして登録してもよい。 First, in step S2701, a search model for three-dimensionally searching a workpiece is registered. Here, the search model can be registered as a work model, here three-dimensional CAD data, as described above. Alternatively, measured data obtained by actually imaging a workpiece with a sensor unit may be registered as a search model.
次にステップS2702において、ロボットのエンドエフェクタモデルを登録する。ここでも、エンドエフェクタモデルとして、三次元CADデータを登録することができる。次にステップS2703において、把持するワークモデルの面を、高さ画像中から選択する。次にステップS2704において、選択した面に対する把持するときのロボットの位置及び姿勢を登録する。次にステップS2705において、必要数の位置及び姿勢を登録できたか否かを判定し、未だの場合はステップS2703に戻って上記処理を繰り返す。そして必要数の登録ができた場合は、処理を終了する。
(三次元CADデータをサーチモデルに登録する手順)
Next, in step S2702, the end effector model of the robot is registered. Also here, three-dimensional CAD data can be registered as an end effector model. Next, in step S2703, the surface of the work model to be gripped is selected from the height image. Next, in step S2704, the position and orientation of the robot when gripping the selected surface are registered. Next, in step S2705, it is determined whether or not the necessary number of positions and orientations have been registered. If not, the process returns to step S2703 to repeat the above processing. Then, when the required number of registrations has been completed, the processing ends.
(Procedure for registering three-dimensional CAD data in the search model)
ここで、ステップS2701において、サーチモデルとして三次元CADデータを用いる場合の、ワークのサーチモデルを登録する手順の例を、図28のフローチャートに基づいて説明する。まずステップS2801において、ワークの三次元CADデータモデルを読み込む。次にステップS2802において、三次元CADデータモデルの外接直方体の中心を、三次元CADデータの原点に補正する。さらにステップS2803において、「上」「下」「左」「右」「前」「後」の各方向から見た高さ画像を生成する。ここで、三次元CADデータから高さ画像を生成する際は、CADの原点が高さ画像の中心になるように生成する。 Here, in step S2701, an example of a procedure for registering a search model of a workpiece when three-dimensional CAD data is used as the search model will be described with reference to the flow chart of FIG. First, in step S2801, a three-dimensional CAD data model of a workpiece is read. Next, in step S2802, the center of the circumscribed cuboid of the three-dimensional CAD data model is corrected to the origin of the three-dimensional CAD data. Further, in step S2803, height images viewed from each direction of "up", "down", "left", "right", "front", and "back" are generated. Here, when generating a height image from three-dimensional CAD data, the height image is generated so that the origin of CAD is at the center of the height image.
次にステップS2804において、生成した高さ画像の中で、同じ見え方になる高さ画像を削除する。最後にステップS2805において、生成された高さ画像を用いてサーチモデルを登録する。 Next, in step S2804, height images having the same appearance are deleted from the generated height images. Finally, in step S2805, a search model is registered using the generated height image.
このようにして、三次元サーチに用いるサーチモデルを、ユーザはガイダンスに沿って登録することができる。
(エンドエフェクタモデルの登録)
In this way, the user can register the search model used for the three-dimensional search according to the guidance.
(Registration of end effector model)
次に、図27のステップS2702でエンドエフェクタモデルを登録する手順の詳細を、図29のフローチャートに基づいて説明する。ここでは、エンドエフェクタモデルを構成する三次元CADデータが、ポリゴンデータで構成されているものとする。 Next, details of the procedure for registering the end effector model in step S2702 of FIG. 27 will be described with reference to the flowchart of FIG. Here, it is assumed that the three-dimensional CAD data constituting the end effector model is composed of polygon data.
まず、ステップS2901において、エンドエフェクタモデルのポリゴンデータを読み込む。次にステップS2902において、断面を作成する方向を決定する。さらにステップS2903において、断面モデルを作成する。断面モデルは、図26の断面モデル生成部8sで作成される。断面モデルの作成の詳細については、後述する。このようにして、エンドエフェクタモデルが記憶部9に登録される。
(追加領域)
First, in step S2901, the polygon data of the end effector model are read. Next, in step S2902, the direction for creating the cross section is determined. Furthermore, in step S2903, a cross-sectional model is created. A cross-sectional model is created by the cross-sectional
(additional area)
また、エンドエフェクタモデルの登録に際して、元のエンドエフェクタモデルに追加領域を付加することもできる。このような手順を、図30のフローチャートに基づいて説明する。まずステップS3001において、エンドエフェクタモデルを登録する。例えばSTLデータ等の三次元CADデータで構成されたエンドエフェクタモデルを読み込む。 Also, when registering the end effector model, an additional region can be added to the original end effector model. Such a procedure will be described based on the flowchart of FIG. First, in step S3001, an end effector model is registered. For example, an end effector model composed of three-dimensional CAD data such as STL data is read.
次にステップS3002において、追加領域を設定する。追加領域は、例えば干渉判定(詳細は後述)に際して、実際のエンドエフェクタの形状や付加されているカバーやハーネス類等を模した形状を、エンドエフェクタモデルの表面に追加するものであり、これによって干渉判定の精度を向上させることができる。
(実施形態4)
Next, in step S3002, an additional area is set. For example, when determining interference (details will be described later), the additional area adds a shape that imitates the shape of the actual end effector and the attached cover, harness, etc. to the surface of the end effector model. Accuracy of interference determination can be improved.
(Embodiment 4)
このような追加領域の設定には、追加モデル作成機能を用いる。追加モデルの作成機能を付加したロボットシステムの例を、実施形態4として、図31のブロック図に示す。この図に示すロボットシステム4000は、画像処理装置400と、表示部3と、操作部4と、センサ部2と、ロボットコントローラ6と、ロボットRBTを備える。なおこの図に示すロボットシステムにおいて、図6等と共通する部材については、同じ符号を付して詳細説明を適宜省略する。
(画像処理装置400)
An additional model creation function is used to set such an additional region. An example of a robot system to which an additional model creation function is added is shown in the block diagram of FIG. 31 as a fourth embodiment. A
(Image processing device 400)
画像処理装置400は、入力画像取得部2cと、演算部10と、記憶部9と、入出力インターフェース4bと、表示インターフェース3fと、ロボットインターフェース6bを備える。
The
演算部10は、ワークモデル登録部8tと、エンドエフェクタモデル登録部8uと、追加モデル作成部8vと、把持位置特定部8dと、サーチモデル登録部8gと、三次元サーチ部8kと、干渉判定部8mと、断面モデル生成部8sとを備える。
The
追加モデル作成部8vは、予め規定された一以上の立体的な図形で表現した追加領域を、エンドエフェクタモデルの表面に追加した追加モデルを作成するための部材である。これにより、三次元CADデータを編集することなく、エンドエフェクタモデルに対して直方体や円柱などの単純形状で干渉判定領域を追加して、それぞれの領域に応じた干渉判定を行うことにより、簡便に干渉判定を行えるようになる。なお、立体的な図形には、予め画像処理装置側で用意されている基本的な図形の他、ユーザが自由に設計可能な図形も含まれる。
The additional
把持位置特定部8dは、ワークモデル登録部8tで登録されたワークモデルに対して、このワークモデルをエンドエフェクタモデルで把持する把持位置を一以上、特定するための部材である。
The gripping
三次元サーチ部8kは、入力画像取得部2cで取得された入力画像中から、サーチモデル登録部8gで登録されたサーチモデルを用いて、各ワークの位置及び姿勢に対応する画像領域を特定する三次元サーチを行うための部材である。
The three-
干渉判定部8mは、追加モデル作成部8vで作成された追加モデルでもって、エンドエフェクタを動作させた際に、該動作を妨げる可能性のある他の物体との干渉の有無を判定する干渉判定を行うための部材である。この干渉判定部8mは、入力画像取得部2cで取得された入力画像に含まれる複数のワークの何れかを把持しようとしてエンドエフェクタを当該位置に移動させる際に、このワークの周囲の物体がエンドエフェクタと干渉するか否かを判定するために、入力画像の内でこのワークの周囲の物体を構成する画像に対して、干渉判定を実行する。これにより、エンドエフェクタモデルを入力画像と対比して干渉判定することができる。干渉判定部8mは例えば、三次元サーチ部8kで入力画像中からサーチされた各ワークの位置及び姿勢に対応するサーチ結果に対して、このワークを把持するために把持位置特定部8dで特定された把持位置にエンドエフェクタモデルを配置する場合に、このワークの周囲に存在する物体との干渉の有無を判定する。
(追加領域設定画面310)
The
(Additional area setting screen 310)
追加領域は、三次元CADデータで構成されたエンドエフェクタモデルに付加される。ここで、追加モデル作成部8vの一態様として、エンドエフェクタモデルに追加領域を追加する追加領域設定画面310を、図32に示す。この追加領域設定画面310は、エンドエフェクタの三次元CADデータであるエンドエフェクタモデルEEMを読み込んで、これに図形を付加することができる。追加領域設定画面310は、画像表示欄141と操作欄142を備えている。画像表示欄141には、読み込まれたエンドエフェクタモデルEEMの三次元CADデータが表示されている。また操作欄142には、基本図形表示欄311が設けられている。基本図形表示欄311には、選択可能な基本図形が一覧表示されている。基本図形には、直方体や円柱、円錐や三角錐、六角柱等が挙げられる。ユーザは所望の基本図形を、基本図形表示欄311から選択して、「追加」ボタン312を押すことで、エンドエフェクタモデルEEM上の指定した位置に基本図形を追加することができる。また基本図形表示欄311で一覧表示された各行には、「編集」ボタン313が設けられており、このボタンを押下すると、選択した基本図形の設定を変更できる。例えば底面の一辺の長さや半径、高さ等の基本図形パラメータを調整できる。
The additional regions are added to the end effector model constructed from 3D CAD data. FIG. 32 shows an additional
図32の例では追加したい基本図形として直方体が選択されており、基本図形表示欄311でハイライト表示されている。この状態で「編集」ボタン313を押下すると、図33の基本図形編集画面320が表示される。基本図形編集画面320の操作欄142には、基本画像パラメータ調整欄321が設けられており、ここから基本図形のサイズや、エンドエフェクタの基準位置に対する位置や姿勢を変更できる。なお基本画像パラメータ調整欄321から基本図形パラメータを調整すると、これに応じて画像表示欄141の表示内容も更新される。
In the example of FIG. 32, a rectangular parallelepiped is selected as the basic figure to be added, and is highlighted in the basic
図32の例では、追加領域ADAを、アーム部の先端のフランジ面FLSとエンドエフェクタモデルEEMとの間に挿入している。これにより、アーム部とエンドエフェクタとの間に取付治具等が介在された状態を再現できる。また、アーム部先端のフランジ面が、画像処理装置側で演算用に設定された面とずれがある場合に、このずれ量をオフセットさせるために使用することもできる。 In the example of FIG. 32, the additional area ADA is inserted between the flange surface FLS at the tip of the arm and the end effector model EEM. As a result, it is possible to reproduce a state in which a mounting jig or the like is interposed between the arm portion and the end effector. In addition, when the flange surface at the tip of the arm portion deviates from the surface set for calculation on the image processing device side, it can be used to offset the amount of deviation.
さらに図形は、複数を追加できる。図32の例では、基本図形表示欄311から所望の基本図形を選択して「追加」ボタン312を押すことで、様々な基本図形を追加できる。これによって、複数の基本図形を組み合わせて、様々な形状を表現することが可能となる。
You can also add multiple shapes. In the example of FIG. 32, various basic figures can be added by selecting a desired basic figure from the basic
このように、エンドエフェクタモデルに対して追加領域を設定する機能を備えることで、従来のように三次元CADデータの形状を直接編集する等して形状を変更することなく、予め用意された基本図形を追加するだけで、容易に形状を付加することが可能となる。この結果、エンドエフェクタをワークを把持する把持位置に配置した際に、ワークの周囲の物体と干渉するかどうかを予め確認する干渉判定において、エンドエフェクタモデルに含まれていないが、実際には存在する部材が存在する場合、これらを模した形状として判定結果の精度を向上させることができる。例えば、エンドエフェクタを、アーム部の先端にジョイントを介して接続している際、エンドエフェクタ全体がオフセットされ、先端が若干突出した状態となることがある。また、エンドエフェクタの外側に、接触防止用のカバーを被せたり、あるいはエンドエフェクタからの延びるケーブルといった、付加的な要素が存在することがある。このような付加的な要素は、エンドエフェクタモデルの三次元CADデータに含まれていないことが多く、また別途CADデータが用意されていることも少ない。かといって、エンドエフェクタモデルの三次元CADデータを加工して、これらの付加的な要素に応じた形状に変更するよう編集するのは、手間がかかる。また複雑な形状をCADデータで表現できたとしても、このような複雑な形状の三次元CADデータを干渉判定に用いると、演算処理が複雑となって処理時間も長くなってしまう。 In this way, by providing the function of setting an additional region for the end effector model, it is possible to create a basic model prepared in advance without changing the shape by directly editing the shape of the three-dimensional CAD data as in the past. It is possible to easily add a shape just by adding a figure. As a result, when the end effector is placed at the gripping position for gripping the workpiece, in the interference judgment for confirming in advance whether or not there will be interference with objects around the workpiece, the end effector model does not actually exist. If there are any members that are similar to each other, it is possible to improve the accuracy of the determination result by using a shape that imitates them. For example, when an end effector is connected to the tip of an arm via a joint, the entire end effector may be offset and the tip may protrude slightly. Also, there may be additional elements such as a cover for preventing contact on the outside of the end effector, or a cable extending from the end effector. Such additional elements are often not included in the three-dimensional CAD data of the end effector model, and CAD data are rarely prepared separately. On the other hand, it is troublesome to process the three-dimensional CAD data of the end effector model and edit it so as to change the shape according to these additional elements. Further, even if a complicated shape can be represented by CAD data, if three-dimensional CAD data of such a complicated shape is used for interference determination, arithmetic processing becomes complicated and processing time becomes long.
そこで、このような付加的な要素を、図形で表現することで、面倒な編集作業を経ることなく、簡単な追加領域で実情に近付けた形態のエンドエフェクタモデルを得ることができ、実態に即した形状を容易に表現できるようになる。また、この方法であればCADデータの形は変えずに干渉判定領域を追加しているため、処理時間の増加量を抑えられる。
(把持位置の設定手順)
Therefore, by expressing such additional elements graphically, it is possible to obtain an end effector model that is close to the actual situation with a simple additional area without going through troublesome editing work. It becomes possible to easily express the shape of the object. Also, with this method, since the interference determination area is added without changing the form of the CAD data, an increase in the processing time can be suppressed.
(Procedure for setting gripping position)
次に、図27のステップS2704において、エンドエフェクタでワークを把持する把持位置及び姿勢を登録する手順について、図34のフローチャート及び図35A~図38に基づいて説明する。ここでは、三次元CADデータで構成されたワークモデルWM11及びエンドエフェクタモデルEEMを用いて、ワークモデルWM11を固定したまま、このワークモデルWM11を把持する際の、ワークモデルWM11に対するエンドエフェクタモデルEEMの位置及び姿勢(以下、これらを纏めて「把持位置」と呼ぶ。)を規定する6つの位置パラメータ、すなわち把持位置X,Y,Zと把持姿勢RX,RY,RZを、図34のフローチャートに示す手順で順に設定していく。
(X-Y指定部)
Next, in step S2704 of FIG. 27, the procedure for registering the gripping position and posture of gripping the workpiece with the end effector will be described with reference to the flowchart of FIG. 34 and FIGS. 35A to 38. FIG. Here, using a work model WM11 and an end effector model EEM configured by three-dimensional CAD data, the end effector model EEM for the work model WM11 is used to grip the work model WM11 while the work model WM11 is fixed. Six position parameters that define the position and orientation (hereinafter collectively referred to as "gripping positions"), that is, gripping positions X, Y, Z and gripping orientations R X , R Y , R Z are shown in FIG. The settings are made in order according to the procedure shown in the flow chart.
(XY designation part)
まずステップS3401において、把持位置のX座標及びY座標を指定する。ここでは、X-Y指定部でもってワークをある平面に投影した二次元状の平面画像を表示させて、この平面画像上で把持位置を指定する。このようなX-Y指定部の一形態として、X-Y指定画面230を図35Bに示す。この図に示すX-Y指定画面230は、図35Aに示すワークの三次元CADデータを、画像表示欄141で平面図状に表示させている。この状態でユーザに、平面図状に表示されたワークモデルWM11Fのどの位置をエンドエフェクタモデルで把持させたいかを指定させる。図35Bのように平面図上で把持位置をマウス等のポインティングデバイスで選択させることで、姿勢や回転角などを意識することなく、判り易い態様で所望の位置を指定させることができる。特に、平面図状に表示されたワークモデルWM11F上で把持する位置をクリックで指定することで、数値を入力して位置を調整するのに比べて、容易に指定できる利点が得られる。そして、ユーザが手動で指定した位置と画像の縮尺から、把持位置のX、Y座標を決定できる。なお、X、Y座標を数値で表示させるX、Y座標表示欄をX-Y指定画面に設けてもよい。
(Z-RZ指定部)
First, in step S3401, the X and Y coordinates of the gripping position are designated. Here, a two-dimensional planar image obtained by projecting the workpiece onto a certain plane is displayed by the XY specifying section, and the grip position is specified on this planar image. FIG. 35B shows an
(Z-R Z designation part)
次にステップS3402において、把持位置Z及び把持姿勢RZをZ-RZ指定部から指定する。Z-RZ指定部の一形態として、Z-RZ指定画面240を図36に示す。この図に示すZ-RZ指定画面240は、画像表示欄141と、操作欄142を備える。操作欄142には、把持位置のZ座標を指定するためのZ座標指定欄241と、把持姿勢のRZ回転角を指定するためのRZ回転角指定欄242が設けられる。この段階では、X、Y座標はステップS3401において既に決定されているので、Z軸のみを表示すれば足りる。このためエンドエフェクタモデルEEMとワークモデルWM11を画像表示欄に表示させた状態で、補正回転軸として補正回転Z軸AXZのみを重ねて表示させている。これにより、ユーザは回転角度を変更した際に、画像表示欄141で表示されるエンドエフェクタモデルEEMがどのように回転されるかをイメージし易くなり、エンドエフェクタモデルEEMの位置調整作業を容易にできる利点が得られる。特に、他の回転軸を表示させないことで、ユーザは混乱することなく、回転方向を視覚的に把握できる。さらにZ座標とRZ回転角以外の他の位置パラメータは指定不能としたことで、誤って他の位置パラメータを変更するといったことも排除され、ユーザは指定可能な位置パラメータのみに集中して設定することができ、誤解や誤設定といった混乱を排除した状態で必要な設定のみに専念できる。
Next, in step S3402, the gripping position Z and gripping orientation R Z are designated from the ZR Z designating section. FIG. 36 shows a ZRZ
エンドエフェクタモデルEEMの回転は、RZ回転角指定欄242で数値を入力すると、これに応じて画像表示欄141におけるエンドエフェクタモデルEEMが自動的に回転されて表示される。また、画像表示欄141で表示されるエンドエフェクタモデルEEMをドラッグして回転させると、これに応じてRZ回転角指定欄242で表示されるRZ回転角の値も変更される。
(RY指定部)
As for the rotation of the end effector model EEM, when a numerical value is entered in the RZ rotation
( RY designation part)
さらにステップS3403において、把持姿勢RYを指定する。ここでは、図37に示すRY指定画面250を用いて、RY回転角をRY回転角指定欄251から指定する。この例では、エンドエフェクタモデルEEMやワークモデルWM11の姿勢をZ-Y-X系オイラー角で表現している。そのためステップS3402で指定したRZの値を用いることで、RYの回転軸の方向を補正できる。計算された補正回転軸である補正回転Y軸AXYは、上記と同様に画像表示欄141に表示される。このように回転軸を表示させることで、RY回転角を調整するとエンドエフェクタモデルEEMがどのように変化するのかをユーザが想像し易くなリ、設定のし易さに?がる。
(RX指定部)
Furthermore, in step S3403, the gripping orientation R Y is specified. Here, the R Y rotation angle is designated from the R Y rotation
(R X designation part)
最後にステップS3404において、把持姿勢RXを指定する。ここでは、図38に示すRX指定画面260を用いて、RX回転角をRX回転角指定欄261から指定する。ここでも同様に、RXの回転軸の方向を示す補正回転X軸AXXを、画像表示欄141に表示させる。
Finally, in step S3404, the grip orientation R X is designated. Here, the R X rotation angle is designated from the R X rotation
このようにして、エンドエフェクタでワークを把持する把持位置として、X,Y,Z、RX,RY,RZの6つの位置パラメータをユーザが指定できる。特に、調整可能な位置パラメータを画面毎に制限し、また表示させる回転軸も、指定に係る位置パラメータに関する回転軸のみの表示に限定することで、ユーザはこのようなガイダンスに従って設定していくことで、必要な位置パラメータを順次規定することができる。この結果、従来難解であった、三次元の位置及び姿勢を指定した把持位置の指定作業をスムーズに行わせることができる。また、オイラー角のRX、RY、RZ回転角を設定する際に、その回転軸を計算して、補正回転軸として画像表示欄141に表示させることで、ユーザが設定中の位置パラメータの変更により、どう動くのかが容易に想像できるようになる。
In this manner, the user can designate six position parameters X, Y, Z, R X , R Y , and R Z as the grip position for gripping the workpiece with the end effector. In particular, by limiting the adjustable position parameters for each screen and limiting the displayed rotation axis to display only the rotation axis related to the specified position parameter, the user can set according to such guidance. , the necessary positional parameters can be defined in turn. As a result, it is possible to smoothly perform the work of designating a grip position designating a three-dimensional position and orientation, which has been difficult in the past. Further, when setting the rotation angles R X , R Y , and R Z of the Euler angles, the rotation axis is calculated and displayed in the
さらに、把持位置の登録を複数のステップに分けて、各ステップで調整できる位置パラメータを限定することで、その位置パラメータを動かすとどう動くのかが容易に想像できるようになる。特に、各ステップ毎に指定画面を設けて、異なる指定画面で異なる位置パラメータを登録させることで、混乱無くユーザに設定すべき位置パラメータを提示でき、設定作業を誘導することが可能となる。なお、図36~図38の例では、異なる指定画面を設ける例を説明したが、この例に限られない。例えば図39の位置パラメータ指定画面270に示すように、複数の位置パラメータを指定する共通の指定画面を用いつつ、ステップ毎に、指定可能な位置パラメータを制限することもできる。図39の例では、X、Y座標のみX、Y座標指定欄271から指定可能で、他の位置パラメータについては指定できないようにグレーアウトさせて選択不能としている。そしてX、Y座標を指定し終えると、「次へ」ボタン272を押下させることで、次のステップとして別の位置パラメータ、例えばZ座標とRZ回転角のみをZ座標、RZ回転角指定欄273から指定可能として、これ以外の位置パラメータについては、指定済みのX、Y座標も含め、すべてグレーアウトさせたり、非表示とする等して、選択不能とする。そしてZ座標とRZ回転角の指定後に再度「次へ」ボタン272を押下させることで、次のステップとしてさらに別の位置パラメータ、例えばRX、RY回転角のみをRX、RY回転角指定欄274から指定可能とし、他の位置パラメータは選択不能とする。このような構成でも、ユーザに対し、指定可能な位置パラメータを制限して提示し、順次設定させていくガイダンス機能を実現できる。
Furthermore, by dividing the gripping position registration into a plurality of steps and limiting the position parameters that can be adjusted in each step, it becomes possible to easily imagine how the robot will move when the position parameters are moved. In particular, by providing a designation screen for each step and registering different position parameters on different designation screens, the position parameters to be set can be presented to the user without confusion, and the setting work can be guided. In the examples of FIGS. 36 to 38, examples of providing different designation screens have been described, but the present invention is not limited to this example. For example, as shown in a positional
さらに、位置パラメータを順次規定するステップの数や区分けについても、上述の例に限定されるものでない。例えば、Z座標とRZ回転角は別ステップになっていてもよいし、あるいはRX回転角とRY回転角が同じステップで設定できるようになっていてもよい。例えば、位置のステップを複数のステップに分割する例として、Z-RZ指定部を、Z座標を指定するためのZ指定部と、Z軸を中心としたRZ回転角を指定するためRZ指定部で構成する。あるいは、RX-RY指定部を、X軸を中心としたRX回転角を指定するためのRX指定部と、Y軸を中心としたRY回転角を指定するためのRY指定部で構成することもできる。あるいはまた、図37と図38を統合し、RX回転角とRY回転角を一画面で指定可能なRX-RY指定部としてもよい。 Furthermore, the number and division of steps for sequentially defining position parameters are not limited to the above example. For example, the Z coordinate and the R Z rotation angle may be set in separate steps, or the R X rotation angle and the R Y rotation angle may be set in the same step. For example, as an example of dividing the position step into a plurality of steps, the Z-R Z designating part is composed of a Z designating part for designating the Z coordinate and an R Consists of the Z specification part. Alternatively, the R X -R Y designating part may be replaced by an R X designating part for designating the R X rotation angle about the X axis and an R Y designating part for designating the R Y rotation angle about the Y axis. It can also consist of parts. Alternatively, FIG. 37 and FIG. 38 may be integrated to form an R X -R Y designating section in which the R X rotation angle and the R Y rotation angle can be designated on one screen.
なお、以上の例ではワークモデル側を固定した状態で、エンドエフェクタモデルの位置及び姿勢を調整する例を説明したが、これに限らず、エンドエフェクタモデルを固定した状態で、ワークモデル側の位置及び姿勢を調整させてもよい。あるいは、エンドエフェクタモデルとワークモデルの両方の位置及び姿勢を調整するように構成してもよい。 In the above example, the position and orientation of the end effector model are adjusted while the work model is fixed. and posture. Alternatively, the positions and orientations of both the end effector model and the work model may be adjusted.
また以上の例では、X,Y,Z、RX,RY,RZの6つの位置パラメータを、X-Y指定部でX、Y座標、Z-RZ指定部でZ座標とRZ回転角、RX-RY指定部でRX、RY回転角を順に規定する例を説明したが、各位置パラメータを規定する順序や組み合わせは、上記構成に限定されない。例えば、X-Y-Z指定部と、RZ指定部と、RX-RY指定部を用意し、X-Y-Z指定部で、エンドエフェクタモデルやワークモデルのX、Y、Z座標を指定し、次にRZ指定部で、Z軸を中心としたRZ回転角を指定し、最後にRX-RY指定部でX軸を中心としたRX回転角と、Y軸を中心としたRY回転角を指定させてもよい。この場合、X-Y-Z指定部は、例えば図40に示すようなX-Y-Z指定画面280が利用でき、三次元的に表示させたエンドエフェクタモデルEEMやワークモデルに対して、X、Y、Z座標をX、Y、Z座標指定欄281から指定することができる。このように、把持位置を最初に指定させるための画像は、図35Bに示したようなXY平面に投影した平面画像に限られず、異なる投影方向が利用でき、例えば図41に示すような、斜め方向から投影させた斜視図WM11Pを用いて指定させることもできる。
In the above example, the six position parameters X, Y, Z, R X , R Y , and R Z are set as X and Y coordinates in the XY designation section, and as Z and R Z coordinates in the ZR Z designation section. An example has been described in which the R X and R Y rotation angles are specified in order by the rotation angle and R X -R Y specifying section, but the order and combination of specifying each position parameter are not limited to the above configuration. For example, prepare an XYZ designation part, an R Z designation part, and an R X -R Y designation part. Next, specify the R Z rotation angle around the Z axis in the R Z specification section, and finally specify the R X rotation angle around the X axis and the Y axis in the R X -R Y specification section. You may specify the RY rotation angle around . In this case, the XYZ designation unit can use, for example, an
さらに、上述した図35Bのように平面に一旦投影させた画像上から把持位置を指定させる方法に限らず、図35Aのような投影しない状態で把持位置を指定させてもよい。例えば図42に示すような三次元画像ビューワ290上でワークモデルWM11を三次元的に表示させた状態で、この画面上から把持位置をマウス等のポインティングデバイスで構成された操作部を用いて指定する。
(変形例)
Further, the gripping position may be specified in a non-projected state as shown in FIG. 35A without being limited to the method of specifying the gripping position from the image once projected onto the plane as in FIG. 35B described above. For example, while the workpiece model WM11 is displayed three-dimensionally on a three-
(Modification)
さらに、以上の例ではZ-Y-X系オイラー角に従い、X,Y,Z、RX,RY,RZの6つの位置パラメータを指定する手順について説明したが、本発明はこの態様に限定されず、エンドエフェクタやワークの位置及び姿勢を規定する他の態様、例えばX-Y-Z系オイラー角、X-Z-Y系オイラー角、Y-X-Z系オイラー角、Y-Z-X系オイラー角、Z-X-Y系オイラー角、X-Y-X系オイラー角、X-Z-X系オイラー角、Y-X-Y系オイラー角、Y-Z-Y系オイラー角、Z-X-Z系オイラー角、Z-Y-Z系オイラー角、あるいはロール・ピッチ・ヨー角表現、回転軸・回転角表現等に従って、エンドエフェクタ等の位置及び姿勢を規定することもできる。 Furthermore, in the above example, the procedure for specifying the six positional parameters X, Y, Z, R X , R Y , and R Z according to the ZYX system Euler angles was explained, but the present invention can be applied to this aspect. Other aspects that define the position and orientation of the end effector and workpiece, such as XYZ system Euler angles, XZY system Euler angles, YXZ system Euler angles, YZ -X system Euler angles, ZXY system Euler angles, XYX system Euler angles, XZX system Euler angles, YXY Y system Euler angles, YZY system Euler angles , ZXZ system Euler angles, ZYZ system Euler angles, roll/pitch/yaw angle expressions, rotation axis/rotation angle expressions, etc. .
また、以上の例では補正回転軸として、指定しようとする位置パラメータに関する補正回転軸のみを表示させる例について説明したが、他の補正回転軸については、完全に非表示とする構成に限定するものでない。例えば、他の補正回転軸を含めて直交する3軸を表示させつつ、指定しようとする回転角に係る回転軸を、他の補正回転軸よりも強調して表示させても、同様の効果を得ることができる。一例として、回転角を指定中の回転軸を太字で表示させたり、着色や点滅などのハイライト表示させたり、逆に指定不可とされた回転軸をグレーアウトさせたり、細線で表示させるなどして、外観上区別するようにする。特に画像の三次元表示においては、直交する座標軸があると三次元表示中であることをユーザが直感的に把握できるので、三軸の表示を維持しつつも、対象となる回転軸を他と区別することで、ユーザに対し混同を起こさせ難くできる。さらにこのような三軸を表示させる際の原点は、回転の中心とすることが好ましい。例えば、上述したエンドエフェクタモデルEEMの把持位置である一対の爪部の中間位置とする。
(把持位置コピー機能)
In the above example, only the correction rotation axis related to the position parameter to be specified is displayed as the correction rotation axis. not. For example, the same effect can be achieved by displaying three orthogonal axes including other correction rotation axes and emphasizing the rotation axis related to the rotation angle to be specified more than the other correction rotation axes. Obtainable. As an example, the rotation axis for which the rotation angle is specified is displayed in bold, highlighted by coloring or blinking, and conversely, the rotation axis that cannot be specified is grayed out or displayed with a thin line. , to distinguish them visually. Especially in 3D display of images, if there are orthogonal coordinate axes, the user can intuitively understand that 3D display is in progress. The distinction makes it difficult for users to get confused. Furthermore, it is preferable that the origin when displaying such three axes should be the center of rotation. For example, the intermediate position between the pair of claws, which is the gripping position of the end effector model EEM described above.
(Grip position copy function)
さらに、複数の把持位置を登録する際、既に登録された把持位置を読み出して、これをベースにして把持位置を変更し、新たな把持位置として登録可能とする把持位置コピー機能を備えてもよい。一般に、一のワークに対して把持位置を複数登録することが多い。これは、把持位置を複数登録しておけば、複数の把持解の中から最適な解を選ぶことができるため、仮に得られた把持解候補が干渉する場合であっても、他の把持解候補があれば、把持可能と判定される可能性が高まるからである。このような把持解を複数登録する際、その都度把持登録を一から行うと、同様の把持位置を登録する際に手数が多くなり作業が面倒となる。そこで、既に登録済みの把持位置をコピーして、この把持位置で設定された位置パラメータの一部を変更して、新たな把持位置として保存可能とすることで、手間を省いて複数の把持位置を容易に登録できるようになる。また、同様に既存の把持位置の読み出して、位置パラメータを適宜修正して上書き保存することも可能である。
(把持位置コピー部8d8)
Furthermore, when registering a plurality of gripping positions, a gripping position copy function may be provided that reads the gripping positions that have already been registered, changes the gripping position based on this, and registers it as a new gripping position. . In general, a plurality of gripping positions are often registered for one workpiece. This is because if a plurality of gripping positions are registered, the optimum solution can be selected from a plurality of gripping solutions. This is because if there is a candidate, the possibility of being determined to be grippable increases. When registering a plurality of such gripping solutions, if the gripping registration is performed from the beginning each time, the number of steps increases and the work becomes troublesome when registering the same gripping position. Therefore, by copying an already registered gripping position, changing some of the position parameters set at this gripping position, and saving it as a new gripping position, it is possible to save time and effort and create a plurality of gripping positions. can be easily registered. Similarly, it is also possible to read the existing grip position, correct the position parameter as appropriate, and overwrite and save it.
(Grip position copy unit 8d8)
このような把持位置コピー機能や把持位置編集機能は、図26で示した把持位置コピー部8d8でもって実現される。把持位置コピー部8d8は、把持位置保存部9bに保存されたワークモデルやエンドエフェクタモデルの把持位置を読み出して、把持位置を構成する位置パラメータを変更して登録する。また、把持位置コピー部8d8で把持位置を変更する際にも、上述したように、ガイダンスに従って順を登録するように構成すると、どのステップでどの位置パラメータを変更すればよいかが判り易くなり、より把持の登録が簡単になる。
Such gripping position copying function and gripping position editing function are realized by the gripping position copying section 8d8 shown in FIG. The gripping position copying unit 8d8 reads the gripping positions of the workpiece model and the end effector model stored in the gripping
さらに、把持位置を指定する際に、エンドエフェクタモデルをワークモデルの把持位置に自動的に移動させるフィット機能を付加してもよいことは、上述の通りである。例えば図36のZ-RZ指定画面240で操作欄142に「フィット」ボタン154を設けることで、フィット機能を実行させて、Z座標を自動的に設定させることができる。
(実施形態5)
Furthermore, as described above, a fitting function may be added to automatically move the end effector model to the gripping position of the workpiece model when specifying the gripping position. For example, by providing a "fit"
(Embodiment 5)
さらに、三次元サーチの精度を向上させるために、サーチモデルの取り得る姿勢や角度を制限することもできる。例えば、図43に示すような平板状のワークWK9を複数個バラ積みしたワーク群から三次元サーチでワークの位置及び姿勢を検出することを考える。この場合、図43のワークWK9を三次元CADデータで示したワークモデルWM9の各面は、図44A~図44Fに示すようになる。すなわち、図44AはワークモデルWM9の平面図、図44Bは底面図、図44Cは正面図、図44Dは背面図、図44Eは右側面図、図44Fは左側面図をそれぞれ示している。これらの基本方向画像の内から、重複する面を除いてサーチモデルとして登録する。ここでは、図44A、図44B、図44C、図44Eの四面を登録したとする。この状態で、バラ積みワーク群を撮像して三次元情報を有する点群データを取得して、三次元サーチを行う。この結果、図45においてXで示すような縦置きの姿勢でワークが存在しているかのように誤検出されることがある。実際には、薄い平板状のワークが直立した姿勢で存在することは考え難いところ、平板状のワークの正面図は図44Cに示すようにほぼ直線状、あるいは矩形状となるため、ワークの表面を構成する他の部位、例えば図44Aや図44Bの一部の形状と共通することがあり、その結果誤検出が生じる。 Furthermore, in order to improve the accuracy of the three-dimensional search, it is also possible to limit the poses and angles that the search model can take. For example, let us consider detecting the position and posture of a work by three-dimensional search from a work group in which a plurality of plate-like works WK9 as shown in FIG. 43 are randomly stacked. In this case, the surfaces of the work model WM9 representing the work WK9 of FIG. 43 as three-dimensional CAD data are as shown in FIGS. 44A to 44F. 44A is a plan view of the workpiece model WM9, FIG. 44B is a bottom view, FIG. 44C is a front view, FIG. 44D is a rear view, FIG. 44E is a right side view, and FIG. 44F is a left side view. Duplicate faces are excluded from these basic direction images and registered as search models. Here, it is assumed that the four surfaces shown in FIGS. 44A, 44B, 44C, and 44E are registered. In this state, the group of randomly piled workpieces is imaged to obtain point group data having three-dimensional information, and a three-dimensional search is performed. As a result, the work may be erroneously detected as if it were in a vertically placed posture as indicated by X in FIG. Actually, it is difficult to imagine that a thin plate-like work exists in an upright position. 44A and 44B, for example, some of the shapes shown in FIGS. 44A and 44B, resulting in erroneous detection.
これに対して、ワークの取り得る姿勢を制限して三次元サーチを行うことも考えられるが、姿勢制限を行う条件の設定が極めて難解となる。例えば、図46に示すようなZ-Y-Z系のオイラー角を用いて、Z軸、Y軸、Z軸の回転角度範囲を規定することで、ワークのあらゆる姿勢を表現できることが知られているものの、この方法で各軸の回転角度を、ユーザが所望する姿勢範囲となるように規定することは容易ではない。 On the other hand, it is conceivable to perform a three-dimensional search by restricting the postures that the workpiece can take, but setting the conditions for restricting the postures is extremely difficult. For example, it is known that any posture of the workpiece can be represented by defining the rotation angle ranges of the Z-axis, Y-axis, and Z-axis using the ZYZ system Euler angles as shown in FIG. However, it is not easy to define the rotation angle of each axis by this method so that the posture range is desired by the user.
そこで実施形態5においては、このような面倒な概念を用いずともユーザがワークの取り得る姿勢を容易に設定できるようにした。具体的には、サーチモデルを登録する際に、ばら積みしたときに起こりそうにない姿勢を排除することで、このような面が検出されることがないようにする。このような設定には、図6に示したサーチモデル登録部8gを用いる。サーチモデル登録部8gは、基本方向画像のいずれかの中から、バラ積みされた複数のワーク群に対して、各ワークの位置と姿勢を特定する三次元サーチを行うためのサーチモデルとして登録する基本方向画像を選択する。サーチモデル登録部8gと基本方向画像選択部8eとの違いは、基本方向画像選択部8eが、見え方が同じ基本方向画像に対していずれか一を選択するものである。これに対してサーチモデル登録部8gは、三次元サーチに際してサーチの対象外としたい基本方向画像を、サーチモデルの登録対象から除外するためのものである。好ましくは、基本方向画像選択部8eで見え方が重複する基本方向画像を排除した状態で、さらにサーチモデル登録部8gでもって、不要な基本方向画像をサーチモデルの登録対象から除外する。あるいは、サーチしたい基本方向画像を選択する。これによって、予めサーチモデルの登録の候補となる基本方向画像に絞り込んだ状態でユーザに選択させることで、候補数を少なくしてサーチモデルの登録作業をより行い易くできるようになる。
(サーチモデル登録画面130B)
Therefore, in the fifth embodiment, the user can easily set possible postures of the workpiece without using such a troublesome concept. Specifically, when registering the search model, by excluding attitudes that are unlikely to occur when bulk loading, such surfaces are prevented from being detected. For such setting, the search
(Search
ここで、上述した図43のワークに対して、サーチモデルを登録するサーチモデル登録画面130Bの例を図47に示す。この図に示すサーチモデル登録画面130Bでは、図43のワークWK9に対応するワークモデルWM9から、基本方向画像生成部8e’で生成された六面図に相当する6枚の基本方向画像に対し、予め基本方向画像選択部8eが、見え方が重複する基本方向画像、図44の例では図44Dと図44Fの2枚を排除した状態で、残りの4枚の基本方向画像を表示部の六面図表示領域3aに表示させている。この状態で、サーチモデルの登録可否を設定するサーチモデル登録部8gの一形態として、サーチモデル登録画面130B中の各基本方向画像に表示された「登録する」との選択チェックボックス131Bを設けている。ユーザが、選択チェックボックス131Bをチェックすれば、この基本方向画像をサーチモデルとして登録され、逆に選択チェックボックス131Bをオフすれば、この基本方向画像をサーチモデルの登録対象から除外する。ユーザは、六面図表示領域3aに表示された各基本方向画像を見ながら、実際のバラ積み状態では起こり難い姿勢を排除することができる。図47の例では、モデルCとモデルDの選択チェックボックス131Bをオフしており、このような側面が見える姿勢、すなわち板状のワークが直立した姿勢を、三次元サーチの対象から除外することができる。これによって、面倒なワークの角度計算や範囲指定といった作業を経ること無く、ユーザはワークの姿勢を示す基本方向画像を見ながら、サーチの必要の無い画像を排除し、あるいは必要な画像のみを選択して、容易に三次元サーチの対象となるワークの姿勢に制限をかけることが可能となる。
FIG. 47 shows an example of a search
なお、サーチモデル登録部8gは、ユーザが手動でサーチモデルの登録対象、あるいは排除対象を選択する態様のみに限られず、ワークモデルの形状や重心等を演算して、生じ難い姿勢の基本方向画像を自動で抽出して排除するように構成してもよい。
Note that the search
あるいは、自動演算と手動選択の組み合わせ、例えば図47に示すように、サーチモデル登録画面130Bで、基本方向画像選択部8eで選択済みの基本方向画像をすべて表示させつつ、演算により生じ難いと判定された基本方向画像については、初期状態として選択チェックボックス131Bをオフして表示させるように構成してもよい。ユーザはサーチモデル登録部8gによる自動判定の結果を参照しながら、手動で必要に応じて選択の修正を行い、OKを押すことで、より確実にサーチモデルの登録を適切に行うことができる。
Alternatively, a combination of automatic calculation and manual selection, for example, as shown in FIG. The selected basic direction image may be displayed with the
また図47においては、基本方向画像選択部8eによる選択を自動演算とした例を説明したが、基本方向画像選択部による自動判定、あるいは手動選択についても、同様に組み合わせることができる。例えば基本方向画像選択部による判定の結果、見え方が共通する基本方向画像と判定された一方の画像については、グレーアウトさせて六面図表示領域に表示させることで、ユーザに対して基本方向画像選択部による自動判定の結果を確認させることができる。判定結果が誤っている場合は、ユーザが当該基本方向画像を手動で選択して、基本方向画像として残したり、あるいは逆に排除したりすることができる。このように、自動演算の結果を表示させてユーザに確認させることで、より画像の選択の精度を高めることができる。また、自動判定結果に基づいて予め選択/非選択を設定した状態を初期状態とすることで、自動判定による選択の結果が正しければユーザがOKを押してこれを承認することができ、ユーザ側の手間も最小限とすることができる。
In FIG. 47, an example in which selection by the basic direction
また、不要な面を三次元サーチの対象から除外する目的は、ワークの直立状態以外にも適用できる。例えば完全にランダムにワークを積む態様以外に、特定の面のみが表出するような態様でワーク群が入力画像として与えられる場面においては、表出しない面を排除することで誤検出を回避できる。特に、表裏の形状が似ており、裏面が誤検出し易いようなワークに対しては有効となる。このように、実際には見えることのない裏面のサーチモデルを三次元サーチの対象から外すだけで、ワークの裏面側が検出されないようにワークの姿勢を制限したことと同様の効果を得ることができる。
(サーチモデルを登録する手順)
Moreover, the purpose of excluding unnecessary surfaces from the three-dimensional search target can be applied to other than the upright state of the workpiece. For example, in a situation where a group of workpieces is given as an input image in such a manner that only a specific surface appears, in addition to an aspect in which workpieces are stacked completely randomly, erroneous detection can be avoided by excluding surfaces that do not appear. . In particular, it is effective for workpieces whose front and back surfaces are similar in shape and whose back surface is likely to be erroneously detected. In this way, by simply excluding the search model of the back side, which cannot actually be seen, from the target of the three-dimensional search, it is possible to obtain the same effect as restricting the posture of the work so that the back side of the work is not detected. .
(Procedure for registering a search model)
上述した、姿勢制限を設けたサーチモデルの登録手順を、図48のフローチャートに基づいて説明する。ここでは、ワークの三次元CADデータをサーチモデルとして登録する手順について説明する。 The procedure for registering the search model with the attitude restriction described above will be described with reference to the flow chart of FIG. Here, a procedure for registering three-dimensional CAD data of a workpiece as a search model will be described.
まずステップS4801において、ワークの三次元CADデータを読み込む。次にステップS4802において、三次元CADデータモデルの外接直方体の中心を、三次元CADデータの原点に補正する。さらにステップS4803において、「上」「下」「左」「右」「前」「後」の各方向から見た高さ画像を生成する。ここで、三次元CADデータから高さ画像を生成する際は、CADの原点が高さ画像の中心になるように生成する。さらにまたステップS4804において、生成した高さ画像の中で、同じ見え方になる高さ画像を削除する。 First, in step S4801, three-dimensional CAD data of a work is read. Next, in step S4802, the center of the circumscribed cuboid of the three-dimensional CAD data model is corrected to the origin of the three-dimensional CAD data. Further, in step S4803, height images viewed from each direction of "up", "down", "left", "right", "front", and "back" are generated. Here, when generating a height image from three-dimensional CAD data, the height image is generated so that the origin of CAD is at the center of the height image. Furthermore, in step S4804, height images that look the same are deleted from the generated height images.
次にステップS4805において、残った高さ画像の中で、三次元サーチに用いるサーチモデルを選択する。ここでは、サーチモデル選択部8iでもって、不要な基本方向画像を排除し、必要な基本方向画像を選択する。
Next, in step S4805, a search model to be used for three-dimensional search is selected from the remaining height images. Here, the search
最後にステップS4806において、選択された高さ画像をサーチモデルとして登録する。ここでは、サーチモデル登録部8gでもってサーチモデルを登録する。このようにして、不要な姿勢の基本方向画像を排除することで、実質的に姿勢制限を設けた状態でサーチモデルを登録することが可能となる。
(実施形態6)
Finally, in step S4806, the selected height image is registered as a search model. Here, the search model is registered by the search
(Embodiment 6)
以上は、数値でなく実際の画像を用いて三次元サーチの対象を制限する例について説明した。ただ、本発明はこの態様に限られず、これに代えて、あるいはこれに加えて、サーチモデルの傾斜角度や回転角度で姿勢を制限することもできる。これによって、ワークの実際の積まれ方に応じて三次元サーチの条件を適切に設定し、サーチの誤検出を減らすことが可能となる。このような傾斜角度及び回転角度による姿勢制限を行う傾斜角度・回転角度設定画面160の例を、実施形態6として図49に示す。この図に示す傾斜角度・回転角度設定画面160は、姿勢制限を行うサーチモデルを選択するための姿勢制限サーチモデル選択欄161、傾斜を許容する角度の上限を指定するための傾斜角度上限設定欄162、回転を許容する角度範囲を規定する回転角度範囲設定欄163を備えている。
(傾斜角度・回転角度設定画面160)
The above is an example of limiting the three-dimensional search target using actual images instead of numerical values. However, the present invention is not limited to this aspect, and instead of or in addition to this, it is also possible to limit the orientation by the tilt angle or rotation angle of the search model. This makes it possible to appropriately set the three-dimensional search conditions according to how the workpieces are actually stacked, thereby reducing erroneous search detections. FIG. 49 shows an example of the tilt angle/rotation
(Tilt angle/rotation angle setting screen 160)
この傾斜角度・回転角度設定画面160では、ワークに対して三次元的な姿勢、例えば座標軸の回転角度を示すRX、RY、RZで指定するといった難解な方法ではなく、専門的知識がなくても理解が容易なパラメータとして、サーチモデルの登録時の姿勢からの「傾斜角度」、「回転角度」を用いて指定させる。ここでは、サーチモデルとして登録した基本方向画像を登録姿勢として、この状態からの傾斜角度と回転角度を指定していく(詳細は後述)。
This tilt angle/rotation
具体的に、図49の傾斜角度・回転角度設定画面160において、姿勢制限サーチモデル選択欄161では、姿勢制限を加える対象となるサーチモデルを選択する。図49の例では、図47のサーチモデル登録画面130Bで登録されたモデルAのサーチモデルを選択している。
Specifically, in the tilt angle/rotation
また傾斜角度上限設定欄162では、登録時の姿勢に対して、何度以内の傾斜角度を三次元サーチの結果として出力するかを設定する。
In addition, in the tilt angle upper
さらに回転角度範囲設定欄163では、基準角度と角度範囲を設定する。まず基準角度設定欄では、登録時の姿勢に対する回転角度を入力する。ここで設定した回転角度が、回転角度範囲を指定する際の基準角度となる。さらに範囲設定欄では、基準角度設定欄で設定した基準角度に対し、三次元サーチの結果として出力する回転角度範囲を設定する。
(傾斜角度・回転角度による姿勢制限方法)
Further, in the rotation angle
(Position restriction method by tilt angle/rotation angle)
ここで、サーチモデルの三次元上の姿勢から、傾斜角度、回転角度を求める方法について説明する。上述した三次元サーチにおいてサーチモデルとして登録する面を限定する方法では、自動的に姿勢制限が加わる形となる。一方で、サーチモデルとして登録した面に対して姿勢制限を加えるには、面で登録していることを利用する。 Here, a method of obtaining the tilt angle and the rotation angle from the three-dimensional posture of the search model will be described. In the method of limiting the surface to be registered as a search model in the above-described three-dimensional search, posture restrictions are automatically added. On the other hand, in order to add orientation restrictions to a plane registered as a search model, the fact that the plane is registered is used.
ここでは、登録した姿勢に対する「傾斜角度」と、登録した姿勢に対する真上から見た「回転角度」の2つの角度で姿勢制限を行う。この2つの角度であれば、概念としても判り易く、比較的簡単に角度制限を行うことができるようになる。
(傾斜角度)
Here, the attitude is restricted by two angles, the "tilt angle" with respect to the registered attitude and the "rotational angle" with respect to the registered attitude viewed from directly above. With these two angles, the concept is easy to understand, and the angle can be limited relatively easily.
(tilt angle)
まず傾斜角度は、図50A~図50Cに示すように、サーチモデルとしての登録時のワークモデルの姿勢のZ鉛直方向に対する角度で規定される。図50Aはサーチモデル登録時のワークモデルWMRの姿勢及びこのワークモデルの鉛直方向として規定されたZ軸を示している。これに対して、入力画像として得られたワークWKIの姿勢、及びこのワークWKIの鉛直方向として規定されたZ’軸が図50Bに示すような状態であったとする。このような状態で、「傾斜角度」を図50Cに示すように、Z軸とZ’軸の傾斜角度、すなわちワークの鉛直方向の傾きと定義する。これによって、傾斜の方向に関係なく、サーチモデルの登録状態からの傾きという、一つの角度で表すことができる。また、ユーザにとっても概念としても把握し易い利点が得られる。
(回転角度)
First, as shown in FIGS. 50A to 50C, the tilt angle is defined by the angle of the attitude of the work model at the time of registration as the search model with respect to the Z vertical direction. FIG. 50A shows the posture of the work model WMR at the time of registering the search model and the Z-axis defined as the vertical direction of this work model. On the other hand, it is assumed that the posture of the work WKI obtained as an input image and the Z'-axis defined as the vertical direction of this work WKI are in the state shown in FIG. 50B. In this state, the "tilt angle" is defined as the tilt angle between the Z-axis and the Z'-axis, that is, the vertical tilt of the workpiece, as shown in FIG. 50C. As a result, regardless of the direction of inclination, the inclination from the registered state of the search model can be represented by one angle. In addition, there is an advantage that both the user and the concept can be easily grasped.
(rotation angle)
一方回転角度は、登録時の鉛直方向すなわちZ軸から見たときの回転角で定義される。ここで回転角度を図51A~図51Cに基づいて説明する。これらの図において、図51Aはサーチモデル登録時のワークモデルWMR、及びXY平面を規定するY軸を示している。これに対して入力画像として得られたワークWKIの姿勢及びXY平面を規定するY’軸が図51Bに示すような状態であったとする。このような状態で、図51Cに示すように「回転角度」を、鉛直方向すなわちZ軸から見た時の回転角と定義する。この例では、ワークモデルやワークを規定するY軸方向の座標軸を基準に、Z軸方向から見たY軸の角度でもって回転角度としている。このように規定することで、従来の二次元でのパターンサーチにおける角度と同じ概念として、ユーザにおいても把握し易い利点が得られる。 On the other hand, the rotation angle is defined by the rotation angle when viewed from the vertical direction at the time of registration, that is, the Z-axis. Here, the rotation angle will be explained with reference to FIGS. 51A to 51C. In these figures, FIG. 51A shows the work model WMR at the time of registering the search model and the Y axis that defines the XY plane. On the other hand, it is assumed that the posture of the workpiece WKI obtained as an input image and the Y'-axis defining the XY plane are in the state shown in FIG. 51B. In such a state, as shown in FIG. 51C, the "rotation angle" is defined as the rotation angle when viewed from the vertical direction, that is, the Z-axis. In this example, the rotation angle is defined as the Y-axis angle viewed from the Z-axis direction, with the Y-axis coordinate axis that defines the workpiece model and the workpiece as a reference. By defining in this way, the same concept as the angle in the conventional two-dimensional pattern search can be obtained with the advantage that it is easy for the user to comprehend.
なお、ワークに対して原点及びXYZ軸を規定する手法は、既知のアルゴリズムが利用できる。例えば、図8で示したようにワークモデルや入力画像が有するワークの形状情報から、ワークに外接する図形、例えば直方体や球を演算し、その重心を演算してこれをワークの原点とし、XYZ軸を規定する。XYZ軸の規定方法は、CADデータを用いる場合、元のCADデータの座標軸の方向をそのまま各XYZ軸の方向として用いれば良い。実際にワークを3D撮像した実測データを用いる場合は、実測データの鉛直方向をZ軸とし、Y軸については実測データの平面視の上方向とし、X軸については実測データの平面視の右方向とすれば良い。原点については、ワークモデルの重心や、CADデータの中心座標を原点としてもよい。
(三次元姿勢から傾斜角度と回転角度を求める手順)
A known algorithm can be used to define the origin and the XYZ axes for the workpiece. For example, as shown in FIG. 8, a figure circumscribing the workpiece, such as a rectangular parallelepiped or a sphere, is calculated from the workpiece shape information possessed by the workpiece model or the input image, and the center of gravity is calculated to set this as the origin of the workpiece. Define an axis. As for the method of defining the XYZ axes, when CAD data is used, the directions of the coordinate axes of the original CAD data may be used as the directions of the respective XYZ axes. When using actual measurement data obtained by actually capturing a workpiece in 3D, the vertical direction of the actual measurement data is the Z axis, the Y axis is the upper direction of the actual measurement data in plan view, and the X axis is the right direction of the actual measurement data in plan view. and should be. As for the origin, the center of gravity of the workpiece model or the central coordinates of the CAD data may be used as the origin.
(Procedure for obtaining the tilt angle and rotation angle from the three-dimensional posture)
ここで、三次元姿勢から傾斜角度と回転角度を求める手順を、図52のフローチャートに基づいて説明する。まずステップS5201において、傾斜角度を求める。例えば図53Aに示すような状態の登録時のワークモデルWMRに対して、入力画像として得られたワークWKIの姿勢が図53Bのようであった場合は、図53Cに示すようにZ軸の鉛直方向の傾きとして傾斜角度を求める。 Here, a procedure for obtaining the tilt angle and the rotation angle from the three-dimensional posture will be described with reference to the flowchart of FIG. First, in step S5201, the tilt angle is obtained. For example, when the posture of the workpiece WKI obtained as the input image is as shown in FIG. The tilt angle is obtained as the tilt of the direction.
次にステップS5202において、Z’軸をZ軸に一致させるように、入力画像を三次元的に回転させる。いいかえると、傾斜を無くす。例えば図53Cの入力画像WKIに対して、図54Aに示すようにZ’軸のベクトルとZ軸のベクトルとの外積ベクトルVPを回転軸として、Z’軸がZ軸と重なるように回転させる。この結果、図54Bのように回転された入力画像WKI’が得られ、傾斜が取り除かれた状態となる。 Next, in step S5202, the input image is three-dimensionally rotated so that the Z'-axis is aligned with the Z-axis. In other words, the tilt is eliminated. For example, as shown in FIG. 54A, the input image WKI of FIG. 53C is rotated around the outer product vector VP of the Z'-axis vector and the Z-axis vector so that the Z'-axis overlaps with the Z-axis. As a result, a rotated input image WKI' is obtained as shown in FIG. 54B, and the tilt is removed.
最後にステップS5203において、回転角度を求める。例えば図55Aに示す登録時のワークモデルWMRのY軸と、図55Bに示すように傾斜を除いた状態の入力画像WKI’のY’軸を、それぞれ求める。この状態で、図55Cに示すように、鉛直方向すなわちZ軸から見た時のY軸とY’軸の角度を、回転角度として求める。このようにして、入力画像の三次元姿勢から傾斜角度と回転角度を求めることができる。
(傾斜角度の上限の設定)
Finally, in step S5203, the rotation angle is obtained. For example, the Y-axis of the work model WMR at the time of registration shown in FIG. 55A and the Y'-axis of the input image WKI' in the state where the tilt is removed as shown in FIG. 55B are obtained. In this state, as shown in FIG. 55C, the angle between the Y-axis and the Y'-axis when viewed from the vertical direction, that is, the Z-axis, is obtained as the rotation angle. In this way, the tilt angle and rotation angle can be obtained from the three-dimensional posture of the input image.
(Setting the upper limit of the tilt angle)
図49の傾斜角度・回転角度設定画面160で傾斜角度上限を設定する例として、例えば光沢の強い金属ワークの場合は、面が傾斜するにつれて、三次元計測ができない範囲が増えてくる。このような状態で三次元サーチを行うと、三次元サーチが誤検出となるリスクが高まる。そこで、この誤検出のリスクのある一定以上傾き過ぎた姿勢を三次元サーチの対象から除外することで、信頼性の高いサーチ結果のみを残すことが可能となる。例えば、40度以上傾くと、誤検出し易くなるワークに対しては、傾斜角度上限を40度に設定することで、40度以上傾くサーチ結果を除外することができる。
(回転角度範囲の上限の設定)
As an example of setting the upper limit of the tilt angle on the tilt angle/rotation
(Setting the upper limit of the rotation angle range)
一方、図49の傾斜角度・回転角度設定画面160で回転角度範囲を設定する例として、例えば上述した図47のモデルAやモデルBは、180度回転した状態でも、全体の形状特徴が似ている部分が多いため、多重反射等の影響で三次元計測できていない箇所が増えると、回転姿勢を180度誤るケースが生じ得る。また、実際のワークの積まれ方として、一定の向きしか生じない場合には、この姿勢制限を用いることで、逆向きの結果を排除することができる。例えば、回転角度範囲を、基準角度に対し±30度に設定した場合は、この角度範囲内のサーチ結果のみが検出される形になる。
(エンドエフェクタ取付位置設定画面170)
On the other hand, as an example of setting the rotation angle range on the tilt angle/rotation
(End effector mounting position setting screen 170)
以上のオイラー角を用いた位置及び姿勢の規定方法は、ワークモデルをエンドエフェクタモデルで把持する位置及び姿勢の規定のみならず、エンドエフェクタをロボットのアーム部先端に取り付ける位置の規定においても利用できる。ここで、エンドエフェクタを、ロボットのアーム部の先端に取り付ける位置を設定する手順について説明する。このようなエンドエフェクタの取り付け位置の設定は、図56に示すようなエンドエフェクタ取付位置設定画面170で行う。この図に示すエンドエフェクタ取付位置設定画面170は、画像表示欄141と、操作欄142を備えている。画像表示欄141には、エンドエフェクタモデルを表示させる。エンドエフェクタモデルは、予め作成された三次元CADデータを読み込む。あるいは、エンドエフェクタを模して直方体や円柱などの基本図形で構成して、表示させてもよい。
The method of defining the position and posture using the Euler angles described above can be used not only to define the position and posture of gripping a work model with an end effector model, but also to define the position at which an end effector is attached to the tip of a robot arm. . Here, the procedure for setting the position at which the end effector is attached to the tip of the arm of the robot will be described. The setting of such an end effector mounting position is performed on an end effector mounting
操作欄142には、アーム部の先端に装着されるエンドエフェクタの取付位置を規定するエンドエフェクタ取付位置設定欄171を設けている。エンドエフェクタ取付位置設定欄171で設定するエンドエフェクタ取付位置パラメータは、エンドエフェクタモデルの取付位置(X,Y,Z)と取付姿勢(RX,RY,RZ)である。例えば、アーム部先端のフランジ面FLSの中心に対して、オイラー角を用いて規定する。
The
なお、上述した図14等で示したワークモデルの把持位置の登録画面では、ワークモデルを把持するエンドエフェクタモデルの部位(例えば先端に設けられた一対の爪部)と、把持するワークとの位置関係を登録している。これに対し、エンドエフェクタ取付位置設定画面170では、エンドエフェクタモデルをアーム部の先端に装着する取付位置を登録している。よって、ワークモデル等の表示は不要で、画像表示欄141には、エンドエフェクタモデルとフランジ面FLSが表示される。
(把持位置指定画面180)
Note that on the registration screen for the work model gripping position shown in FIG. Registering relationships. On the other hand, on the end effector mounting
(Grip position designation screen 180)
これに対して、ワークモデルの把持位置を指定する把持位置指定画面180では、図57に示すように、エンドエフェクタモデルとワークモデルを表示させて、ワークモデルを把持する箇所を指定する。この図に示す把持位置指定画面180は、画像表示欄141と操作欄142を設けており、画像表示欄141には、把持対象のワークを選択して、このワークを把持する面を上面に向けた姿勢で三次元状に画像を描画して表示させる。さらにエンドエフェクタモデルを表示させて、ワークモデルを把持する位置及び姿勢に調整する。操作欄142には、把持位置を指定する把持位置指定欄181が設けられる。ユーザはワークモデルとエンドエフェクタモデルとの相対関係が正しくなるよう、把持位置指定欄181から位置パラメータを調整する。あるいは、画像表示欄141で表示されるエンドエフェクタモデルやワークモデルをドラッグするなどして、画面上で位置や姿勢を調整する。画面上で調整された位置パラメータは、把持位置指定欄181に反映される。この把持位置指定欄181での位置パラメータの表記も、上述したオイラー角を用いることができる。(複数把持位置選択画面190)
On the other hand, on the grip
さらに、把持位置の登録は一のワークの一の面(例えば基本方向画像)に対して一箇所に限られず、上述の通り複数箇所を指定することができる。また、複数箇所で登録された把持位置を、画像で確認することもできる。例えば図58に、複数把持位置選択画面190の一例を示す。この複数把持位置選択画面190も、画像表示欄141と、操作欄142を備えている。操作欄142には、把持位置を規定したワークモデルの面を選択する面選択欄191と、面選択欄191で選択された面に設定された把持位置を一覧表示する把持位置一覧表示192が設けられる。この例では、面選択欄191で面Cが選択され、この面Cに設定された把持位置として把持1~3が、把持位置一覧表示192に一覧表示されている。この内、把持2を選択すると、これに応じて画像表示欄141において、把持2で登録された把持位置、姿勢で、エンドエフェクタモデルがワークモデルを把持する様子が表示される。このようにしてユーザは、登録済みの複数の把持位置を選択して確認することができる。また、必要に応じて登録済みの把持位置を修正して、更新することもできる。ここでも、上述したオイラー角を用いて把持姿勢を表示させることができる。このようにして、オイラー角を用いた登録を行いつつも、ユーザ側においては、難解なオイラー角の概念を詳細に理解せずとも、視覚的に判り易く表示させ、かつ回転軸も補正して表示させ、さらにガイダンス機能により調整可能なパラメータを制限することで、混乱を少なくして設定作業を進めることが可能となる。
(エンドエフェクタ取付位置の較正機能)
Furthermore, the registration of the gripping position is not limited to one position for one surface of one workpiece (for example, the basic direction image), and a plurality of positions can be designated as described above. In addition, it is also possible to confirm gripping positions registered at a plurality of locations in an image. For example, FIG. 58 shows an example of a multiple grip
(Calibration function for end effector mounting position)
上述の通り、エンドエフェクタは、ロボットのアーム部の先端に取り付けられる。一方、上述した把持位置の登録(ティーチング)や、登録された位置及び姿勢でエンドエフェクタモデルがワークモデルを把持できるかどうかの把持判定(シミュレーション)等は、実際のエンドエフェクタでなく、画像処理装置側(ロボットビジョン側)の仮想三次元空間上で行われている。そして仮想三次元空間であるビジョン空間の座標位置から、実空間であるロボット空間の座標位置への変換は、図17のキャリブレーション部8wで得られたキャリブレーション情報に基づいて、変換部8xによって行われている。
As described above, the end effector is attached to the tip of the arm of the robot. On the other hand, the registration (teaching) of the gripping position described above and the gripping determination (simulation) of whether or not the end effector model can grip the work model at the registered position and orientation are performed by the image processing device, not by the actual end effector. It is performed in the virtual three-dimensional space on the side (robot vision side). Transformation from the coordinate position in the vision space, which is the virtual three-dimensional space, to the coordinate position in the robot space, which is the real space, is performed by the
しかしながら、画像処理装置側で仮想的に設定しているエンドエフェクタモデルの取付状態と、実際のロボットRBTのエンドエフェクタEETの取付状態が異なると、キャリブレーション情報で規定されたビジョン空間とロボット空間との対応関係が維持されなくなり、実際のロボットRBTを使ってワークを把持しようとする際に、ずれが生じてしまう。 However, if the mounting state of the end effector model set virtually on the image processing device side differs from the actual mounting state of the end effector EET of the robot RBT, the vision space and the robot space defined by the calibration information may differ. is no longer maintained, and a deviation occurs when an actual robot RBT is used to grip a workpiece.
ここで、エンドエフェクタモデルとフランジ面FLSの位置関係を図59に示す。この図において、ロボットのアーム部の先端のフランジ面FLSの原点OFと、エンドエフェクタモデルEEMの位置として、エンドエフェクタモデルEEMの中心OEを、それぞれ示している。このエンドエフェクタモデルEEMの位置は、画像処理装置側では、ロボットのアーム部先端のフランジ面FLSに対する、位置(X,Y,Z)、姿勢(RX,RY,RZ)として設定されている。すなわち、図59の例ではフランジ面FLSの原点OFから見た、エンドエフェクタモデルEEMの中心OEの、位置(X,Y,Z)と姿勢(RX,RY,RZ)が設定されている。ここで、エンドエフェクタの実際の取付状態に誤差が生じると、フランジ面FLSの原点に対するエンドエフェクタモデルEEMの位置にずれが生じ得る。この結果、エンドエフェクタの取付状態に起因して、画像処理装置側とロボット側とで、ずれた位置で把持を行ってしまうことになる。 FIG. 59 shows the positional relationship between the end effector model and the flange surface FLS. In this figure, the origin OF of the flange surface FLS at the tip of the arm of the robot and the center O E of the end effector model EEM are shown as the position of the end effector model EEM. The position of the end effector model EEM is set as a position (X, Y, Z) and a posture (R X , R Y , R Z ) with respect to the flange surface FLS at the tip of the arm portion of the robot on the image processing device side. there is That is, in the example of FIG . 59, the position (X, Y, Z) and orientation (R X , R Y , R Z ) of the center O E of the end effector model EEM viewed from the origin OF of the flange surface FLS are set. It is Here, if an error occurs in the actual mounting state of the end effector, a deviation may occur in the position of the end effector model EEM with respect to the origin of the flange surface FLS. As a result, due to the mounting state of the end effector, the image processing apparatus side and the robot side grip the object at different positions.
そこで本実施形態においては、このようなずれや誤差が生じないように、実際のエンドエフェクタの取付状態を、画像処理装置側に反映させるエンドエフェクタ取付位置の較正機能を備えている。エンドエフェクタ取付位置の較正機能は、図17に示したエンドエフェクタ取付位置較正部8yで行われる。具体的には、ワークの把持位置の登録や、エンドエフェクタを配置したときの干渉判定に用いたエンドエフェクタモデルである、エンドエフェクタの三次元形状を仮想的に表現した三次元CADデータを使って、実際のエンドエフェクタを撮像して三次元計測した実測データに対し、三次元サーチを行い、実際の取付位置の位置及び姿勢を取得することで、このような誤差を検出して、画像処理装置側のエンドエフェクタの取付位置の設定を較正する。このように、実際のエンドエフェクタを三次元計測した点群と、画像処理装置側で仮想三次元空間上で規定したエンドエフェクタモデルの取付状態とのずれを、ユーザが表示部の画像表示領域上で確認しながら手動で調整することができる。
(ずれの自動補正の手順)
Therefore, in the present embodiment, an end effector mounting position calibration function is provided to reflect the actual mounting state of the end effector on the image processing apparatus side so as to prevent such deviations and errors from occurring. The function of calibrating the end effector attachment position is performed by the end effector
(Procedure for automatic deviation correction)
ここで、実際のエンドエフェクタと、三次元CADデータ等で構成されたエンドエフェクタモデルとの誤差を自動で補正する較正機能について、図60のフローチャートに基づいて説明する。なお、予め仮想空間であるビジョン空間の座標位置を、実空間であるロボット空間の座標位置に変換するキャリブレーションを、図17に示したキャリブレーション部8wで実行し、キャリブレーション情報を記憶部9に把持しているものとする。さらに、エンドエフェクタモデルも三次元CADデータとして用意されているものとする。
(エンドエフェクタ撮像画面330)
Here, a calibration function for automatically correcting errors between an actual end effector and an end effector model configured by three-dimensional CAD data or the like will be described with reference to the flow chart of FIG. Note that the calibration unit 8w shown in FIG. It is assumed that the Furthermore, it is assumed that an end effector model is also prepared as three-dimensional CAD data.
(End effector imaging screen 330)
まずステップS6001において、センサ部で実際のエンドエフェクタを撮像するための準備を行う。具体的には、センサ部の一形態である三次元カメラにエンドエフェクタが映るように、ロボットを操作してエンドエフェクタを移動させる。次にステップS6002において、エンドエフェクタに対し三次元計測を実施する。 First, in step S6001, the sensor unit prepares for imaging the actual end effector. Specifically, the robot is operated to move the end effector so that the end effector is captured by a three-dimensional camera, which is one form of the sensor unit. Next, in step S6002, three-dimensional measurement is performed on the end effector.
このような、センサ部で実際のエンドエフェクタを撮像するためのエンドエフェクタ撮像部の一態様として、例えば、図61に示すエンドエフェクタ撮像画面330を利用する。このエンドエフェクタ撮像画面330は、画像表示欄141と、操作欄142を設けている。画像表示欄141にはセンサ部2で撮像されたアーム部ARM先端のフランジ部に取り付けられたエンドエフェクタEETがリアルタイムで表示される。また操作欄142には、エンドエフェクタEETの位置及び姿勢を示すエンドエフェクタ位置指定欄331が設けられる。このエンドエフェクタ撮像画面330から、センサ部を構成するカメラにロボットのエンドエフェクタEETが映るように、ユーザが手動でロボットを操作する。このとき、撮像の対象となるのはワークを把持するエンドエフェクタEETの爪部でなく、アーム部との取付状態である。よってエンドエフェクタEETの面積が大きくなるように撮像することが望ましい。好ましくは、エンドエフェクタEETを、通常のワークを把持し易い下向きの姿勢から、横向きの姿勢として、全体像がカメラに映るようにする。このようにして、ユーザはエンドエフェクタEETの姿勢を位置決めした後、「撮像」ボタン332を押下する。これにより、エンドエフェクタの三次元撮像画像が取得される。いいかえると、エンドエフェクタに対し三次元計測が実施される。
An end
次にステップS6003において、ロボット座標系のフランジ部の位置姿勢Aを取得する。ここでロボット座標系の位置姿勢Aは、例えば撮像したエンドエフェクタが取り付けられているフランジ部FLSの、ロボット座標系の位置及び姿勢とする。なお、ステップS6003とステップS6002の工程の順序は、入れ替えてもよい。 Next, in step S6003, the position and orientation A of the flange portion in the robot coordinate system are acquired. Here, the position and orientation A of the robot coordinate system are, for example, the position and orientation of the flange portion FLS to which the imaged end effector is attached in the robot coordinate system. Note that the order of steps S6003 and S6002 may be interchanged.
さらにステップS6004において、ロボット座標系のフランジ部の位置姿勢Aをビジョン空間上の位置姿勢Bに変換する。ここでは、予めキャリブレーションを実行して得られたロボット空間とビジョン空間との座標変換を行うキャリブレーション情報に基づいて、図17の変換部8xが実空間と仮想空間との変換を行う。
Further, in step S6004, the position and orientation A of the flange portion in the robot coordinate system are transformed into the position and orientation B in the vision space. Here, the
さらにステップS6005において、三次元サーチを実施し、ビジョン空間上のエンドエフェクタの位置姿勢Cを検出する。ここでは、エンドエフェクタモデルに使用したCADデータをサーチモデルとして、ステップS6002で得た三次元計測データに対して三次元サーチを実施する。三次元サーチの方法は、既知のアルゴリズムを適宜利用できる。これにより、ビジョン空間上のエンドエフェクタの位置及び姿勢が検出される。 Furthermore, in step S6005, a three-dimensional search is performed to detect the position and orientation C of the end effector in the vision space. Here, using the CAD data used for the end effector model as a search model, a three-dimensional search is performed on the three-dimensional measurement data obtained in step S6002. Known algorithms can be used as appropriate for the three-dimensional search method. Thereby, the position and orientation of the end effector on the vision space are detected.
さらにステップS6006において、ビジョン空間上のフランジ部FLSの位置姿勢Bに対するエンドエフェクタの位置姿勢Cの相対的な位置姿勢を算出する。ここで得られた座標位置が、フランジ部FLSに対する正確な、いいかえると位置ずれ等を考慮したエンドエフェクタモデルの位置及び姿勢となる。 Furthermore, in step S6006, the relative position and orientation of the position and orientation C of the end effector with respect to the position and orientation B of the flange portion FLS in the vision space are calculated. The coordinate position obtained here is the accurate position and orientation of the end effector model with respect to the flange portion FLS, in other words, the position and orientation of the end effector model taking into consideration the positional deviation and the like.
最後にステップS6007において、得られた位置及び姿勢をビジョン側のエンドエフェクタ設定に反映する。すなわち、ビジョン側のエンドエフェクタモデルの位置及び姿勢の設定に反映する。このようにして、実際のエンドエフェクタの取付状態を、ビジョン側に自動反映することができる。
(ずれの手動補正の手順)
Finally, in step S6007, the obtained position and orientation are reflected in the end effector settings on the vision side. That is, it is reflected in the setting of the position and orientation of the end effector model on the vision side. In this way, the actual mounting state of the end effector can be automatically reflected on the vision side.
(Procedure for manual deviation correction)
以上は、ロボット空間とビジョン空間のずれを自動で補正する手順について説明した。ただ、本発明はずれの補正を自動で行う構成に限られず、手動で行わせることもできる。次に、手動でずれ補正を行う手順について、図150のフローチャートに基づいて説明する。ここで、ステップS1501~ステップS1504においては、上述した自動補正に係る図60のステップS6001~S6004の手順と同じであり、詳細説明を省略する。すなわち、ステップS1501において、三次元カメラにロボットのエンドエフェクタが映るようロボットを操作し、ステップS1502において、エンドエフェクタに対し三次元計測の実施し、ステップS1503において、ロボット座標系のフランジ部の位置姿勢Aを取得し、ステップS1504において、ロボット座標系のフランジ部の位置姿勢Aをビジョン空間上の位置姿勢Bに変換する。 The procedure for automatically correcting the deviation between the robot space and the vision space has been described above. However, the present invention is not limited to a configuration in which deviation correction is performed automatically, and can be performed manually. Next, a procedure for manually performing deviation correction will be described with reference to the flowchart in FIG. Here, steps S1501 to S1504 are the same as steps S6001 to S6004 in FIG. 60 relating to the automatic correction described above, and detailed description thereof will be omitted. That is, in step S1501, the robot is operated so that the end effector of the robot is captured by the three-dimensional camera. A is acquired, and in step S1504, the position and orientation A of the flange portion in the robot coordinate system are transformed into the position and orientation B in the vision space.
次にステップS1505において、ビジョン空間上のフランジ部の位置姿勢Bから、エンドエフェクタ設定に基づいてエンドエフェクタの位置姿勢Dを算出する。ここでは、ビジョン空間上のロボットの先端であるフランジ部の位置姿勢Bと、エンドエフェクタ設定に設定されたフランジ部に対するエンドエフェクタの位置姿勢の情報から、エンドエフェクタの位置姿勢Dを求める。 Next, in step S1505, the position and orientation D of the end effector are calculated from the position and orientation B of the flange portion in the vision space based on the end effector setting. Here, the position and orientation D of the end effector are obtained from the position and orientation B of the flange, which is the tip of the robot in the vision space, and information on the position and orientation of the end effector with respect to the flange set in the end effector setting.
次にステップS1506において、三次元計測された点群と、エンドエフェクタの位置姿勢DのCAD表示を重畳表示させる。ここでは、ステップS1505で求めたエンドエフェクタの位置姿勢Dの位置に、エンドエフェクタの三次元CADデータであるエンドエフェクタモデルEEMを表示させると共に、実際のエンドエフェクタについて三次元計測して得られた点群PCを重畳表示させる。このような重畳表示をさせた、ずれ補正画面の例を、図151及び図152に示す。 Next, in step S1506, the three-dimensionally measured point cloud and the CAD display of the position and orientation D of the end effector are superimposed and displayed. Here, the end effector model EEM, which is three-dimensional CAD data of the end effector, is displayed at the position and orientation D of the end effector obtained in step S1505, and points obtained by three-dimensional measurement of the actual end effector are displayed. The group PC is superimposed and displayed. 151 and 152 show examples of deviation correction screens displayed in such a superimposed manner.
そしてステップS1507において、点群とCAD表示との間に、無視できないずれがあるか否かを判定する。無視できないずれがある場合は、ステップS1508に進み、ずれを補正するようにエンドエフェクタ設定を変更して、ステップS1505に戻って上述した処理を繰り返す。このエンドエフェクタ設定は、フランジ部に対するエンドエフェクタの位置及び姿勢を含む。一方、ずれがない場合は、処理を終了する。
(ずれ補正部)
Then, in step S1507, it is determined whether or not there is an unignorable deviation between the point cloud and the CAD display. If there is a non-negligible deviation, the flow advances to step S1508 to change the end effector settings to correct the deviation, and returns to step S1505 to repeat the above-described processing. This end effector setting includes the position and orientation of the end effector relative to the flange. On the other hand, if there is no deviation, the process ends.
(deviation correction unit)
このようなずれ補正を行うずれ補正部の一態様として、ずれ補正画面の例を図151及びcに示す。これらの図において、図151は、無視できないずれが存在する場合を示している。この図に示すずれ補正画面840は、画像表示欄141に、エンドエフェクタモデルEEMに点群PCを重畳表示させている。この図に示すように、白点で示す、実際にエンドエフェクタを三次元計測した点群PCが、エンドエフェクタモデルEEMよりも左斜め下方向にずれている状態が確認できる。
An example of a deviation correction screen is shown in FIGS. 151 and c as one aspect of the deviation correction unit that performs such deviation correction. In these figures, FIG. 151 shows the case where there is a non-negligible deviation. The
また操作欄142には、エンドエフェクタ設定欄841が設けられており、フランジ部に対するエンドエフェクタの位置(X、Y、Z)と姿勢(RX、RY、RZ)を規定する。ここでは、図において右側に示す長い方のXYZの座標軸が、ロボット先端であるフランジ部FLSの原点OFを示している。また左側に示す短い方のXYZの座標軸が、ロボット先端(フランジ部)に対する、エンドエフェクタモデルEEMの三次元CADデータの原点OEを表している。ユーザは、画像表示欄141に表示されたエンドエフェクタモデルEEMと点群PCを確認しながら、エンドエフェクタモデルEEMの位置及び姿勢を調整する。例えば操作欄142のエンドエフェクタ設定欄841で、エンドエフェクタモデルEEMの位置姿勢を数値で指定したり、画像表示欄141上でエンドエフェクタモデルEEMをドラッグして移動させる等して、エンドエフェクタモデルEEMが点群PCと重なるように調整する。
An end
このようにしてエンドエフェクタモデルEEMを点群PCと合致させた例を、図152に示す。この例では、エンドエフェクタ設定欄841において、Z方向の位置を90mmに設定して、Z方向にエンドエフェクタモデルEEMをオフセットさせることで合致させている。エンドエフェクタモデルの位置及び姿勢が調整された後、「OK」ボタン842を押下すると、エンドエフェクタ設定が更新される。これにより、実際のエンドエフェクタの取付状態に応じて、ビジョン側の位置姿勢を調整できる。
FIG. 152 shows an example of matching the end effector model EEM with the point group PC in this way. In this example, in the end
さらに、上述したずれの手動補正を、自動補正と組み合わせて行うことも可能である。このような例を図153のずれ補正画面850に基づいて説明する。この図に示すずれ補正画面850は、操作欄142に、手動でエンドエフェクタモデルEEMの位置姿勢を調整するためのエンドエフェクタ設定欄841を設けると共に、下段に「自動補正」ボタン843を設けている。この「自動補正」ボタン843を押下すると、内部的に三次元サーチが実行されて、自動でエンドエフェクタモデルEEMの位置姿勢が点群PCと一致するように補正される。例えば、画像表示欄141で重畳表示させたエンドエフェクタモデルEEMと点群PCの状態を確認しながら、ずれの自動補正を実行したり、自動補正結果を手動で微調整することができる。特に、エンドエフェクタに光沢の強い金属を使っており、反射光によって点群PCが正確に検出されないことなどから自動補正がうまく機能できない場合、例えば三次元サーチに失敗する場合などには、手動による調整で対応できる。このようにして、ユーザが手動で、ロボット空間とビジョン空間のずれを補正することが可能となる。
Furthermore, the manual correction of deviations described above can be combined with the automatic correction. Such an example will be described based on the
従来、フランジ部とエンドエフェクタの取付部分に、例えば実際にはコネクタのような取り付け用の部材が組み付けられているにもかかわらず、ビジョン側でそのオフセット分を設定し忘れているような場合に、位置や姿勢がずれてしまう問題が生じていた。このような場合に、ずれを確認する機能や、ずれを補正する機能がないと、実運用時にロボットで把持させる際に、うまく把持できなかったり、衝突等の問題が生じることがあった。このような誤差が発生する要因は様々であり、従来は原因追究やデバッグに非常に時間や労力がかかってしまっていた。これに対して本実施形態によれば、このようなずれを手動や自動で補正することが可能となり、実際のエンドエフェクタの取付状態に応じた柔軟な調整を容易に行うことができる。 Conventionally, even though a mounting member such as a connector is actually assembled to the mounting portion of the flange and the end effector, the vision side forgets to set the offset. , there was a problem that the position and posture were shifted. In such a case, if there is no function for checking or correcting the deviation, problems such as poor gripping or collision may occur when the robot grips the workpiece during actual operation. There are various factors that cause such an error, and conventionally, it took a lot of time and effort to investigate the cause and debug. On the other hand, according to the present embodiment, it is possible to manually or automatically correct such a deviation, and it is possible to easily perform flexible adjustment according to the actual mounting state of the end effector.
なお、図59の例では、エンドエフェクタモデルEEMの位置を、三次元CADデータの中心位置としているが、この例に限らず、他の位置を規定することもできる。例えば図59では、三次元CADデータに外接する直方体の中心としたが、外接直方体の端部分や、入力元の三次元CADデータの原点を基準にしても良い。
(実測データをサーチモデルに登録する手順)
In the example of FIG. 59, the position of the end effector model EEM is the center position of the three-dimensional CAD data, but it is not limited to this example and other positions can be defined. For example, in FIG. 59, the center of the rectangular parallelepiped circumscribing the three-dimensional CAD data is used, but the end portion of the circumscribing rectangular parallelepiped or the origin of the input source three-dimensional CAD data may be used as the reference.
(Procedure for registering measured data in the search model)
以上は、三次元CADデータをサーチモデルとして登録する場合の手順について説明した。ただ本発明は上述の通り、サーチモデルとして三次元CADデータに限らず、例えばセンサ部で実際にワークを撮像した実測データをサーチモデルとして登録することもできる。ここで、図27のステップS2701において、このような実測データをサーチモデルとして登録する手順を、図62のフローチャートに基づいて説明する。 The procedure for registering three-dimensional CAD data as a search model has been described above. However, as described above, the present invention is not limited to three-dimensional CAD data as a search model, and for example, actual measurement data obtained by actually imaging a workpiece with a sensor unit can be registered as a search model. Here, the procedure for registering such measured data as a search model in step S2701 of FIG. 27 will be described with reference to the flowchart of FIG.
まずステップS6201において、ワークの登録したい面を上向きにして、ワークを平面上に載置して、センサ部で三次元計測を行う。 First, in step S6201, the surface of the work to be registered faces upward, the work is placed on a flat surface, and three-dimensional measurement is performed by the sensor unit.
次にステップS6202において、得られた実測データをサーチモデルとして登録する。 Next, in step S6202, the obtained measured data is registered as a search model.
最後にステップS6203において、三次元サーチに必要な分のサーチモデルを登録し終えたか否かを判定し、未だの場合はステップS6201に戻って上記の処理を繰り返し、必要数を登録し終えた場合は処理を終了する。これらの手順の詳細は、図102~図106を参照しながら後述する。
(実運用時の手順その1)
Finally, in step S6203, it is determined whether or not the number of search models required for the three-dimensional search has been registered. If not, the process returns to step S6201 to repeat the above process. terminates the process. Details of these procedures will be described later with reference to FIGS.
(
以上のようにして必要な設定作業が終了した状態で、実際にバラ積みされたワーク群に対して、ピッキング動作を行う。ここで、図28の手順でサーチモデルが登録された状態で、実運用時に、ワークの把持可能かどうか、すなわち検出された各ワークに対して把持解があるか否かを判定する手順を、図63のフローチャートに基づいて説明する。ここでは、図6の演算部10が把持解の有無を判定する。
After the necessary setting work is completed as described above, the picking operation is performed for the group of works that are actually randomly stacked. Here, in a state in which the search model is registered in the procedure of FIG. Description will be made based on the flow chart of FIG. Here, the
まずステップS6301において、バラ積みワークに対して三次元計測を開始する。ここでは、センサ部でバラ積みされたワーク群を撮像して三次元計測を行い、高さ情報を有する三次元形状を取得する。 First, in step S6301, three-dimensional measurement is started for randomly stacked works. Here, a group of randomly stacked workpieces is imaged by the sensor unit, three-dimensional measurement is performed, and a three-dimensional shape having height information is obtained.
次にステップS6302において、得られたワーク群の三次元形状に対して、ワークモデルを用いて三次元サーチを実施し、各ワークの位置及び姿勢を検出する。 Next, in step S6302, the three-dimensional shape of the obtained work group is subjected to a three-dimensional search using the work model to detect the position and orientation of each work.
次にステップS6303において、検出された一のワークに対して、このワークの位置と、設定時に登録したワークの把持姿勢に基づいて、エンドエフェクタを配置すべき位置と姿勢を計算する。 Next, in step S6303, the position and orientation at which the end effector should be arranged are calculated for the detected one work based on the position of this work and the gripping orientation of the work registered at the time of setting.
次にステップS6304において、計算された位置において、エンドエフェクタが周囲の物体と干渉しないかどうかを、エンドエフェクタモデルを用いて干渉判定を実施する。 Next, in step S6304, an end effector model is used to determine whether or not the end effector interferes with surrounding objects at the calculated position.
そしてステップS6305において、エンドエフェクタが干渉するか否かを判定し、干渉していない場合は、このワークに対して把持解ありとして処理を終了する。 Then, in step S6305, it is determined whether or not the end effector interferes with the workpiece.
一方、干渉していると判定された場合は、ステップS6306に進み、このワークに対して登録された別の把持位置があるか否かを判定する。別の把持位置が登録されている場合は、ステップS6303に戻って、この把持位置に対して上記処理を繰り返す。 On the other hand, if it is determined that there is interference, the process advances to step S6306 to determine whether or not there is another gripping position registered for this workpiece. If another gripping position is registered, the process returns to step S6303 to repeat the above processing for this gripping position.
一方、別の把持位置が登録されていない場合は、ステップS6307に進み、検出された別のワークがあるか否かを判定する。別のワークがある場合は、ステップS6303に戻って、ワークを代えて上記処理を繰り返す。別のワークが無い場合は、把持解なしとして処理を終了する。 On the other hand, if another gripping position is not registered, the process advances to step S6307 to determine whether or not there is another workpiece detected. If there is another work, return to step S6303, change the work, and repeat the above process. If there is no other workpiece, the process is terminated as no gripping solution.
このようにして、図6の演算部10がワークを把持可能な把持解の有無を判定する。そして把持解が得られた場合は、そのワークに対して、エンドエフェクタでもって決定された把持位置にてピックするよう、ロボットコントローラ6に指示を送る。これに従いロボットコントローラ6は、指示されたワークをピックするようにエンドエフェクタを制御する。
In this manner, the
以上の手順では、いずれかのワークで把持解が得られると、その時点で把持位置を検討する処理を終了して、得られた把持解に該当する把持位置でワークを把持するように制御している。ただ、この方法に限らず、例えば把持可能なすべての把持位置を把持位置候補として求めた上で、いずれの把持位置候補を選択するかを決定するように構成してもよい。例えば各把持位置候補の評価指標として評価指標演算部8qでスコアを算出して、得られたスコアの最も高いものを把持位置として選択する。また、ワークの置かれた高さ情報に注目し、ワークが置かれた高さが高いもの、いいかえると、バラ積みされたワーク群の内で、より上方に位置するものを把持位置として選択することもできる。好ましくは、スコアと高さ情報の両方を考慮して、演算部10が複数の把持解の中から選択していく。このようにすることで、より適切なピッキングを行うことが可能となる。
(実運用時の手順2)
In the above procedure, when a gripping solution is obtained for any workpiece, the process of examining the gripping position is terminated at that point, and the workpiece is gripped at the gripping position corresponding to the obtained gripping solution. ing. However, the method is not limited to this method. For example, it may be configured such that, after obtaining all possible gripping positions as gripping position candidates, it is determined which gripping position candidate is to be selected. For example, the score is calculated by the
(
以上は、図28の手順でサーチモデルが登録された状態で、実運用時の手順を説明した。サーチモデルの登録に際しては、図48で示したとおり、サーチモデルの姿勢に制限を加えた状態で登録することもできる。ここで、図48の手順でサーチモデルを登録した状態で、実際にバラ積みされたワーク群に対して、ピッキング動作を行う実運用時の手順を、図64のフローチャートに基づいて説明する。まずステップS6401において、バラ積みワークに対して三次元計測を開始する。ここでは、センサ部でバラ積みされたワーク群を撮像して三次元計測を行い、高さ情報を有する三次元形状を取得する。 The procedure for actual operation has been described above with the search model registered in the procedure of FIG. When registering the search model, as shown in FIG. 48, it is possible to register the search model in a state in which the orientation of the search model is restricted. Now, with the search model registered according to the procedure in FIG. 48, the procedure for actual operation of picking a group of works that are actually randomly stacked will be described with reference to the flow chart in FIG. First, in step S6401, three-dimensional measurement is started for randomly stacked works. Here, a group of randomly stacked workpieces is imaged by the sensor unit, three-dimensional measurement is performed, and a three-dimensional shape having height information is acquired.
次にステップS6402において、得られたワーク群の三次元形状に対して、ワークモデルを用いて三次元サーチを実施し、各ワークの位置及び姿勢を検出する。 Next, in step S6402, a three-dimensional search is performed on the obtained three-dimensional shape of the work group using the work model to detect the position and orientation of each work.
次にステップS6403において、傾斜角度、回転角度の範囲設定から範囲外の姿勢を除外する。 Next, in step S6403, attitudes outside the ranges of the tilt angle and the rotation angle are excluded.
次にステップS6404において、検出された一のワークに対して、このワークの位置と、設定時に登録したワークの把持姿勢に基づいて、エンドエフェクタを配置すべき位置と姿勢を計算する。 Next, in step S6404, the position and orientation at which the end effector should be arranged are calculated for the detected one work based on the position of this work and the gripping orientation of the work registered at the time of setting.
次にステップS6405において、計算された位置において、エンドエフェクタが周囲の物体と干渉しないかどうかを、エンドエフェクタモデルを用いて干渉判定を実施する。 Next, in step S6405, an end effector model is used to determine whether or not the end effector interferes with surrounding objects at the calculated position.
そしてステップS6406において、エンドエフェクタが干渉するか否かを判定し、干渉していない場合は、このワークに対して把持解ありとして処理を終了する。 Then, in step S6406, it is determined whether or not the end effector interferes with the workpiece.
一方、干渉していると判定された場合は、ステップS6407に進み、このワークに対して登録された別の把持位置があるか否かを判定する。別の把持位置が登録されている場合は、ステップS6404に戻って、この把持位置に対して上記処理を繰り返す。 On the other hand, if it is determined that there is interference, the process advances to step S6407 to determine whether or not there is another gripping position registered for this workpiece. If another gripping position is registered, the process returns to step S6404 to repeat the above processing for this gripping position.
一方、別の把持位置が登録されていない場合は、ステップS6408に進み、検出された別のワークがあるか否かを判定する。別のワークがある場合は、ステップS6404に戻って、ワークを代えて上記処理を繰り返す。別のワークが無い場合は、把持解なしとして処理を終了する。
(干渉判定)
On the other hand, if another gripping position is not registered, the process advances to step S6408 to determine whether there is another workpiece detected. If there is another work, return to step S6404, change the work, and repeat the above process. If there is no other workpiece, the process is terminated as no gripping solution.
(Interference judgment)
ここで、上述した図63のステップS6304や図64のステップS6405における、エンドエフェクタモデルを用いた干渉判定の方法について説明する。ワークをエンドエフェクタで把持する際に、エンドエフェクタが他のワークや収納容器など、周囲の障害物と干渉してしまうと、把持を正しく行うことができない。そこで、予め把持位置候補でエンドエフェクタモデルがワークモデルを把持する際の、エンドエフェクタの位置や姿勢を図31の干渉判定部8mで演算することで、周囲の部材との干渉判定を行う。この際、周囲の部材としては、実際にセンサ部2で実測して得られたバラ積みされたワーク群や収納容器の三次元点群が用いられる。また、事前に収納容器などの位置を登録しておき、エンドエフェクタモデルと干渉判定を行うこともできる。一方、エンドエフェクタの三次元CADデータは一般にポリゴンデータで構成される。例えば三次元CADデータとして多用されるSTLデータは、ポリゴンと呼ばれる微小な三角形の集合体で表現されている。
Here, a method of determining interference using the end effector model in step S6304 of FIG. 63 and step S6405 of FIG. 64 described above will be described. When gripping a workpiece with the end effector, if the end effector interferes with surrounding obstacles such as other workpieces or storage containers, gripping cannot be performed correctly. Therefore, the position and orientation of the end effector when the end effector model grips the work model at the gripping position candidates are calculated in advance by the
このようなポリゴンデータと三次元点群データとで干渉判定を行うには、従来、三次元点群データを構成する各三次元点が、エンドエフェクタモデルの内側にあるか外側にあるを調べ、内側にある場合は干渉、外側にある場合は干渉しないと判定していた。しかしながらこの方法では、各点毎に演算や対比を行う必要があり、データが大きくなると演算量が膨大になってしまう。
(断面モデルを用いた干渉判定の手順)
In order to perform interference judgment between such polygon data and 3D point cloud data, conventionally, each 3D point constituting the 3D point cloud data is examined whether it is inside or outside the end effector model, It was determined that there was no interference if it was on the inside and that there was no interference if it was on the outside. However, with this method, it is necessary to perform calculations and comparisons for each point, and the amount of calculation becomes enormous when the data becomes large.
(Procedure for interference judgment using cross-sectional model)
そこで本発明の各実施形態においては、エンドエフェクタモデルのポリゴンデータから断面モデルを作成し、三次元点群データの各点を断面モデルに投影して、内外を判定することにより、干渉を判定している。このような干渉判定は、図31の干渉判定部8mにて行われる。ここで、干渉判定を行う手順を図65のフローチャートに基づいて説明する。
Therefore, in each embodiment of the present invention, a cross-sectional model is created from the polygon data of the end effector model, each point of the three-dimensional point cloud data is projected onto the cross-sectional model, and interference is determined by determining inside and outside. ing. Such interference determination is performed by the
まず、ステップS6501において、エンドエフェクタのポリゴンデータを読み込む。次にステップS6502において、エンドエフェクタのポリゴンデータから断面モデルを作成する。断面モデルは、図26の断面モデル生成部8sでもって生成する。ここで、断面モデル生成部8sが断面モデルを作成する方法を、図66~図67Eに基づいて説明する。まず、図66に示すエンドエフェクタモデルEEMのポリゴンデータに対して、基本軸BSLを設定する。好ましくは、基本軸BSLはエンドエフェクタモデルEEMの長手方向に沿って設定される。さらに、この基本軸BSLに直交する直交平面でエンドエフェクタモデルを切断して、断面を複数作成する。ここで、断面を作成する位置は、例えばポリゴンデータの頂点位置とする。あるいは、基本軸に沿って一定距離ごとに断面を複数作成した上で、得られた断面の内、形状に応じて整理してもよい。例えば、同じ形状の断面は排除する。断面の作成は、必要な断面の総数が少なくなるように、基本軸BSLを設定することが好ましい。例えば断面モデル生成部が、断面の数が少なくなるような基本軸BSLの方向を自動的演算するように構成してもよい。また、設定された基本軸BSLにおいて断面を取得する断面位置の指定は、例えば変化の大きい断面を自動的に抽出するように指定することもできる。
First, in step S6501, the polygon data of the end effector are read. Next, in step S6502, a cross-sectional model is created from the polygon data of the end effector. A cross-sectional model is generated by the cross-sectional
このようにして、エンドエフェクタモデルEEMの基本軸BSLに沿った各断面の形状と、各断面と対応する基本軸BSL上の断面位置を持った断面モデルが作成できる。例えば図66の例では、基本軸BSL上に沿った断面位置SP1~SP5の5つの位置で、それぞれ、図67A~図67Eに示す形状の断面SS1~断面SS5が得られる。このようにして得られた断面モデルを用いて、エンドエフェクタモデルが三次元点群と干渉するか否かを判定する。 In this way, a cross-sectional model having the shape of each cross section along the basic axis BSL of the end effector model EEM and the cross-sectional position on the basic axis BSL corresponding to each cross section can be created. For example, in the example of FIG. 66, cross sections SS1 to SS5 having shapes shown in FIGS. 67A to 67E are obtained at five cross section positions SP1 to SP5 along the basic axis BSL. Using the cross-sectional model thus obtained, it is determined whether or not the end effector model interferes with the three-dimensional point group.
具体的には、ステップS6503において、三次元点群を構成する内、干渉判定の対象となる三次元点を選び、この点の基本軸BSL方向における位置から、断面モデルが有する複数の断面の内、どの断面と干渉判定するかを選択する。この選択には、各断面に設定された断面位置を用いる。例えば三次元点の内、図68Aに示す三次元点TDPに対して、エンドエフェクタモデルEEMとの干渉判定を行う場合を考える。三次元点TDPは、基本軸BSLに沿う方向において、断面位置SP3とSP4の間に位置する。よってこの間の断面形状を示す断面SS3でもって、三次元点TDPとの干渉判定を行う。 Specifically, in step S6503, a three-dimensional point to be subjected to interference determination is selected from among the three-dimensional point cloud, and from the position of this point in the direction of the basic axis BSL, one of the plurality of cross sections of the cross-sectional model is selected. , to select which section to judge interference with. For this selection, the cross-section position set for each cross-section is used. For example, let us consider a case where a three-dimensional point TDP shown in FIG. 68A among three-dimensional points is subjected to interference determination with the end effector model EEM. The three-dimensional point TDP is located between the cross-sectional positions SP3 and SP4 in the direction along the basic axis BSL. Therefore, interference with the three-dimensional point TDP is determined using the cross-section SS3 representing the cross-sectional shape therebetween.
具体的には、ステップS6504において、三次元点TDPから断面SS3を含む直交平面上に投影した投影点PP3を演算する。そしてステップS6505において干渉判定を行う。ここでは、三次元点の投影点PP3の位置が、図68Bに示すように断面SS3の外側であれば干渉していないと判定する。一方、図68Cのように断面SS3の内側であれば、干渉していると判定する。最後にステップS6506において、他の三次元点があるか否かを判定し、未処理の三次元点が残っている場合はステップS6503に戻って上記処理を繰り返す。そしてすべての三次元点で干渉判定を終えると、処理を終了する。 Specifically, in step S6504, a projection point PP3 projected onto an orthogonal plane including the cross section SS3 from the three-dimensional point TDP is calculated. Then, in step S6505, interference determination is performed. Here, if the position of the projection point PP3 of the three-dimensional point is outside the cross section SS3 as shown in FIG. 68B, it is determined that there is no interference. On the other hand, if it is inside the cross section SS3 as shown in FIG. 68C, it is determined that there is interference. Finally, in step S6506, it is determined whether or not there is another 3D point, and if an unprocessed 3D point remains, the process returns to step S6503 to repeat the above processing. When the collision determination is completed for all three-dimensional points, the process ends.
このようにして、計測した三次元点群とエンドエフェクタモデルとの干渉判定を行うことができる。また、以上では三次元点群データとの干渉判定について説明したが、本発明は干渉判定の対象を三次元点に限らず、他の物体、例えば線や面についても、同様の手順でも干渉判定を実施できる。 In this way, it is possible to determine interference between the measured three-dimensional point group and the end effector model. In addition, although the collision judgment with 3D point cloud data has been described above, the object of the present invention is not limited to 3D points for interference judgment. can be implemented.
さらに、以上の例ではエンドエフェクタのCADデータがポリゴンデータの例について説明したが、エンドエフェクタの断面形状が計算できる形式であれば、ポリゴンデータに限らず、他のCADデータ形式でも同様に干渉判定を行える。さらに以上の例では、断面形状を二次元状の平面図で表現する場合について説明したが、断面形状のデータの持ち方もこの形態に限られず、例えば輪郭線の集合のような形式のデータで持っていてもよい。
(追加領域を加えた追加モデルでの干渉判定)
Furthermore, in the above example, the CAD data of the end effector is polygon data. can do Furthermore, in the above example, the case where the cross-sectional shape is represented by a two-dimensional plan view has been explained, but the way of holding cross-sectional shape data is not limited to this form. You may have
(Interference judgment with additional model with additional area added)
またエンドエフェクタモデルの干渉判定において、エンドエフェクタモデルに立体的な基本図形で表現した追加領域を追加した追加モデルを用いて干渉判定を行うこともできる。このような追加モデルを用いた干渉判定の手順を、図69のフローチャートに基づいて説明する。ここでは、基本図形として直方体と円柱を組み合わせた追加領域を、三次元CADモデルに追加した追加モデルに対して干渉判定を行う例を説明する。 Further, in the collision judgment of the end effector model, it is also possible to judge interference using an additional model obtained by adding an additional region represented by a three-dimensional basic figure to the end effector model. A procedure for determining interference using such an additional model will be described with reference to the flowchart of FIG. Here, an example will be described in which interference is determined with respect to an additional model added to a three-dimensional CAD model by adding an additional region obtained by combining a rectangular parallelepiped and a cylinder as a basic figure.
まず、ステップS6901において、追加領域を構成する基本図形の内、直方体の領域について干渉判定を実行する。この結果に応じて、ステップS6902において、干渉ありと判定された場合は、干渉判定の処理を中止し、干渉ありと出力して処理を終了する。 First, in step S6901, interference determination is performed for a rectangular parallelepiped area among the basic figures forming the additional area. If it is determined in step S6902 that there is interference according to this result, the processing for determining interference is stopped, and the presence of interference is output to end the processing.
一方、干渉なしと判定された場合は、ステップS6903に進み、追加領域を構成する基本図形の内、他の図形である円柱との干渉判定を行う。この結果、ステップS6904において、干渉ありと判定されれば、干渉判定の処理を中止し、干渉ありと出力して処理を終了する。 On the other hand, if it is determined that there is no interference, the process advances to step S6903 to determine whether there is interference with another figure, which is a cylinder, among the basic figures forming the additional area. As a result, if it is determined in step S6904 that there is interference, the process of determining interference is stopped, and the process ends by outputting that there is interference.
一方、干渉なしと判定された場合は、ステップS6905に進み、三次元CADデータとの干渉判定を行う。この結果、ステップS6906において、干渉ありと判定されれば、干渉判定の処理を中止し、干渉ありと出力して処理を終了する。 On the other hand, if it is determined that there is no interference, the process advances to step S6905 to determine interference with the three-dimensional CAD data. As a result, if it is determined that there is interference in step S6906, the process of determining interference is stopped, and the process ends by outputting that there is interference.
一方、干渉なしと判定された場合は、干渉なしとして処理を終了する。 On the other hand, if it is determined that there is no interference, the processing is terminated assuming that there is no interference.
このように、基本図形毎、あるいは三次元CADデータ単位で干渉判定を順次行い、いずれで干渉ありと判定されると、その時点で干渉判定処理を中止して干渉判定ありと出力する。なお、以上は追加領域が直方体と円柱の2つの基本図形で構成された例について説明したが、基本図形が多くなっても手順は同じで、基本図形毎に干渉判定を順次行い、その都度、干渉ありと判定されれば処理を中止する。
(実施形態7)
(把持可否判定検証機能)
In this way, the collision judgment is sequentially performed for each basic figure or for each three-dimensional CAD data, and when it is judged that there is interference, the collision judgment processing is stopped at that point, and it is output that there is interference. Although the example in which the additional area is composed of two basic figures, a rectangular parallelepiped and a cylinder, has been described above, the procedure is the same even if the number of basic figures increases. If it is determined that there is interference, the process is stopped.
(Embodiment 7)
(Gripperability judgment verification function)
以上は、実運用時に干渉判定の結果、把持解の有無を判別する手順について説明した。ただ本発明は、把持解の有無を判別するのみならず、把持解が得られなかった把持位置の候補について、どのような理由で把持解が得られなかったのかを検証する把持可否判定検証機能を設けてもよい。例えば、把持解候補を一覧表示させ、干渉判定の結果、把持解ありと判定された把持位置はOK、把持解なしと判定された把持位置候補はNGと表示させる。この状態で、NGと判定された把持位置を選択して、どのような理由で把持解なしと判定されたかを表示させることで、ユーザはこの情報を参考にして、どのような把持位置であれば把持解として選択されうるかを検討し、把持位置を修正したり、新たな把持位置を追加できるようになる。このような例を実施形態7に係るロボットシステム7000として、図70のブロック図に示す。この図に示すロボットシステム7000は、画像処理装置700と、表示部3Bと、操作部4と、センサ部2と、ロボットコントローラ6と、ロボットRBTを備える。なお、図6と同じ部材については、同じ符号を付して詳細説明を適宜省略する。
(表示部3B)
The procedure for determining whether or not there is a gripping solution based on the results of interference determination during actual operation has been described above. However, the present invention not only determines whether or not there is a gripping solution, but also has a gripping possibility determination verification function that verifies for what reason a gripping solution could not be obtained for a candidate of a gripping position for which no gripping solution could be obtained. may be provided. For example, a list of gripping solution candidates is displayed, and as a result of interference determination, a gripping position determined as having a gripping solution is displayed as OK, and a gripping position candidate determined as having no gripping solution is displayed as NG. In this state, by selecting the gripping position determined as NG and displaying the reason why it was determined that there is no gripping solution, the user can refer to this information and select any gripping position. It is possible to examine whether it can be selected as a gripping solution, modify the gripping position, or add a new gripping position. Such an example is shown in the block diagram of FIG. 70 as a
(
表示部3Bは、画像表示領域3bと、把持解候補表示領域3cを備える。把持解候補表示領域3cは、ワーク把持可否表示領域3dと、ワーク把持不能要因表示領域3eを含む。
The
画像表示領域3bは、エンドエフェクタの三次元形状を仮想的に表現する、三次元CADデータで構成されたエンドエフェクタモデルを、仮想的な三次元空間上で三次元状に表示させるための部材である。
The
把持解候補表示領域3cは、三次元サーチ部8kでサーチされた一以上のワークのサーチ結果の任意の一に対して、設定されている把持位置を全て列挙して表示させるための部材である。
The gripping solution
ワーク把持可否表示領域3dは、三次元ピック判定部8lによる、各ワークに対して指定された把持位置における把持の可否の判定結果を表示させるための部材である。
The workpiece
ワーク把持不能要因表示領域3eは、三次元ピック判定部8lによる、各ワークに対して指定された把持位置における把持が不能と判定された把持位置に対して、該把持不能とされた要因を表示させるための部材である。
(画像処理装置700)
The workpiece gripping impossible
(Image processing device 700)
画像処理装置700は、入力画像取得部2cと、演算部10と、記憶部9と、入出力インターフェース4bと、表示インターフェース3fと、ロボットインターフェース6bを備える。演算部10は、エンドエフェクタモデル登録部8uと、ワークモデル登録部8tと、把持位置特定部8dと、サーチモデル登録部8gと、三次元サーチ部8kと、三次元ピック判定部8lと、傾斜角度設定部8nとを備える。
The
この把持位置特定部8dは、ワーク側把持箇所指定部8d1と、エンドエフェクタ側把持設定部8d2を備える。ワーク側把持箇所指定部8d1は、画像表示領域3bにエンドエフェクタモデルを表示させた状態で、ワークの三次元形状を仮想的に表現する、三次元CADデータで構成されたワークモデルをエンドエフェクタモデルで把持する際の把持位置を指定するための部材である。エンドエフェクタ側把持設定部8d2は、画像表示領域3bに表示されるエンドエフェクタモデルに対して、ワークを把持する把持位置を指定するための部材である。
The gripping
サーチモデル登録部8gは、ワークの三次元形状を仮想的に表現する第二ワークモデルを、入力画像に含まれる複数のワーク群に対して、各ワークの姿勢と位置を特定する三次元サーチを行うためのサーチモデルとして登録するための部材である。なおサーチモデルとして登録する第二ワークモデルを、ワーク側把持箇所指定部8d1で把持位置を指定するワークモデルと同じとすることが好ましい。これにより、三次元サーチを行うサーチモデルを、把持位置を指定するワークモデルと共通化することで、ユーザは設定作業を省力化できる。また実運用時においても、把持できるワークをサーチするワークモデルと、把持判定を行うワークモデルと一致させることで、サーチされたワークモデルに対して、このワークモデルに設定された把持位置で把持可能かどうかを検討できるため、効率良く処理を行うことが可能となる。
A search
傾斜角度設定部8nは、ワークの姿勢に対し、許容される傾斜角度の範囲を設定するための部材である。
The tilt
三次元ピック判定部8lは、三次元サーチ部8kでサーチされた各ワークのサーチ結果に対して、ワーク側把持箇所指定部8d1で当該ワークに対して指定された把持位置にて、エンドエフェクタで把持可能か否かを判定するための部材である。この三次元ピック判定部8lは、干渉判定部8mと、角度判定部8oとを含む。
The three-dimensional pick determination unit 8l uses the end effector to pick up the search result of each workpiece searched by the three-
干渉判定部8mは、三次元サーチ部8kでサーチされた各ワークのサーチ結果に対して、ワーク側把持箇所指定部8d1でこのワークに対して指定された把持位置について、該ワークの周囲に存在する物体との干渉の有無を判定するための部材である。また干渉判定部8mにより干渉ありと判定されたワークに対して、三次元ピック判定部8lが把持不能と判定する。これにより、ワークを把持できない場合の原因が示されることで、ユーザは例えば、どのような把持位置を追加すればよいかを検討しやすくなる等、把持位置の再設定に資することができる。
With respect to the search results of each workpiece searched by the three-
角度判定部8oは、三次元サーチ部8kでサーチされたワークのサーチ結果の姿勢が、傾斜角度設定部8nで設定された傾斜角度範囲内か否かを判定するための部材である。
The angle determination unit 8o is a member for determining whether or not the posture of the workpiece searched by the three-
三次元ピック判定部8lは、角度判定部8oにより、三次元サーチ部8kでサーチされたワークのサーチ結果の姿勢が、傾斜角度設定部8nで設定された傾斜角度範囲内でないと判定された場合に、該ワークを把持不能と判定するよう構成される。これにより、ワークの姿勢が急峻すぎて把持ができない、あるいは三次元測定の精度が期待できない場合に、これを排除することで把持位置の選択や判定の誤判定を回避し、信頼性を高めることができる。
(把持解候補一覧表示機能)
When the angle determination unit 8o determines that the posture of the workpiece searched by the three-
(Grip solution candidate list display function)
次に、把持解NGの理由を表示させる手順を、図71のフローチャートに基づいて説明する。なお、設定時の手順、及び実運用時の手順は、上述した図27、図28、図63等と基本的に同様であり、詳細説明を適宜省略する。 Next, a procedure for displaying the reason for gripping solution NG will be described with reference to the flowchart of FIG. It should be noted that the procedure for setting and the procedure for actual operation are basically the same as those in FIGS.
まずステップS7101において、対象となるワーク群に対して三次元計測を行う。ここではバラ積みされたワーク群に対して、センサ部を用いて形状の情報を有する実測データを取得し、これを入力画像とする。 First, in step S7101, three-dimensional measurement is performed on a target work group. Here, for a group of randomly stacked workpieces, actual measurement data having shape information is acquired using the sensor unit, and this is used as an input image.
次にステップS7102において、入力画像に対して三次元サーチを実施し、入力画像中における各ワークの位置及び姿勢をそれぞれ検出する。 Next, in step S7102, a three-dimensional search is performed on the input image to detect the position and orientation of each workpiece in the input image.
そしてステップS7103において、検出されたワークの中から、検証対象のワークを一、選択する。 Then, in step S7103, one work to be verified is selected from the detected works.
さらにステップS7104において、選択したワークの検出位置と、このワークに対して予め登録された把持姿勢から、このワークをエンドエフェクタで把持しようとする場合の、エンドエフェクタモデルの位置及び姿勢を計算する。 Further, in step S7104, the position and orientation of the end effector model when the end effector attempts to grip this workpiece are calculated from the detected position of the selected workpiece and the gripping orientation registered in advance for this workpiece.
次にステップS7105において、演算されたエンドエフェクタモデルの位置及び姿勢における傾斜角度が、設定された範囲外か否かを判定する。ここで設定範囲外と判定された場合はステップS7106に進み、把持NGと判定とすると共に、NGの要因を「傾斜角度」と設定した上で、ステップS7111にジャンプする。 Next, in step S7105, it is determined whether or not the calculated tilt angle in the position and orientation of the end effector model is outside the set range. If it is determined to be out of the set range, the process advances to step S7106 to determine that the gripping is NG, sets the NG factor to the "inclination angle", and jumps to step S7111.
一方、ステップS7105において、エンドエフェクタモデルの傾斜角度が設定範囲内と判定された場合はステップS7107に進み、計算した位置においてエンドエフェクタモデルと周囲の物体との干渉判定を実施する。ここで周囲の物体とは、エンドエフェクタモデルの周囲に存在する、収納容器や他のワーク等である。予め周囲の物体を、三次元CADデータ等でモデル化しておき、ワークモデルを把持する位置及び姿勢にエンドエフェクタモデルを移動させた場合、これらとエンドエフェクタモデルとが干渉するか否かを演算により判定する。 On the other hand, if it is determined in step S7105 that the tilt angle of the end effector model is within the set range, the process advances to step S7107 to determine interference between the end effector model and surrounding objects at the calculated position. Here, the surrounding objects are storage containers, other workpieces, and the like that exist around the end effector model. When the surrounding objects are modeled in advance using three-dimensional CAD data, etc., and when the end effector model is moved to the position and orientation where the work model is gripped, it is determined whether or not the end effector model interferes with these by calculation. judge.
そしてステップS7108において、干渉判定の結果、エンドエフェクタモデルが周囲の物体と干渉していると判定された場合は、ステップS7109において、把持NG判定とし、NGの要因を「点群干渉」と設定した上で、ステップS7111にジャンプする。 Then, in step S7108, if it is determined that the end effector model interferes with the surrounding object as a result of the interference determination, in step S7109, the gripping NG determination is made, and the NG factor is set to "point group interference". Above, jump to step S7111.
一方、ステップS7108において、干渉判定の結果、エンドエフェクタモデルが周囲の物体と干渉していないと判定された場合は、ステップS7110において、把持OK判定とした上で、ステップS7111に進む。 On the other hand, if it is determined in step S7108 that the end effector model does not interfere with the surrounding object as a result of the interference determination, then in step S7110 it is determined that gripping is OK, and the process proceeds to step S7111.
そしてステップS7111において、選択したワークに別の把持姿勢が設定されているか否かを判定し、別の把持姿勢がある場合は、ステップS7104に戻り、上記の処理を繰り返す。一方、把持姿勢がないと判定された場合は、ステップS7112において、全ての把持解の候補について、把持OK/把持NGの判定結果と、把持NGの場合の要因をワーク把持不能要因表示領域3eに表示させる。
Then, in step S7111, it is determined whether or not another gripping orientation is set for the selected work. On the other hand, if it is determined that there is no gripping posture, in step S7112, for all gripping solution candidates, the determination results of gripping OK/gripping NG and the factors in the case of gripping NG are displayed in the work gripping impossible
このようにして、与えられたワーク群に対して把持が可能かどうかを検証し、さらに把持できない場合の要因をリストアップすることができる。
(把持シミュレーション)
In this way, it is possible to verify whether or not a given workpiece group can be gripped, and to list the factors that prevent it from being gripped.
(Gripping simulation)
次に、具体的な把持の判定を行う把持シミュレーションの詳細について説明する。ここでは、図72に示すようなワークWK10を用いてバラ積みピッキングを行う場合に、把持が可能かどうかの判定を行う例について説明する。このワークWK10について、基本方向画像生成部8e’で六面図に相当する基本方向画像を生成し、各基本方向画像をサーチモデルとして、サーチモデル登録部8gで登録する。基本方向画像の例を、図73A~図73Eに示す。これらの図において、図73Aは図72のワークをZ軸の正方向側から見た高さ画像Aであり、図73BはZ軸の負方向側から見た高さ画像Bであり、図73CはX軸の正方向側から見た高さ画像Cであり、図73DはX軸の負方向側から見た高さ画像Dであり、図73EはY軸の正方向側から見た高さ画像Eであり、図73FはY軸の負方向側から見た高さ画像Fを、それぞれ示している。
(ワーク選択画面210)
Next, the details of the gripping simulation for performing a specific determination of gripping will be described. Here, an example will be described in which it is determined whether or not the work WK10 shown in FIG. 72 can be gripped when bulk picking is performed. For this work WK10, a basic direction
(Work selection screen 210)
ワークをエンドエフェクタで把持可能かどうかの判定を行うために、バラ積みされたワーク群を撮像した入力画像に対して三次元サーチを行い、ワークを検出した状態において、対象となるワークを選択する(図71のステップS7103)。ワークの選択は、例えば図74に示すワーク選択画面210から行う。この図に示すワーク選択画面210は、画像表示欄141と操作欄142を備える。画像表示欄141には、バラ積みされたワーク群を撮像した実測データである入力画像が表示されている。また入力画像に対し、ワークが検出された位置に重ねてサーチ結果が点群で表示されている。画像表示欄141の画面をドラッグすることで、視点を変更できる。
(ラベル番号、モデル番号)
In order to determine whether or not a workpiece can be gripped by the end effector, a three-dimensional search is performed on the input image of a group of randomly piled workpieces, and when the workpiece is detected, the target workpiece is selected. (Step S7103 in FIG. 71). Selection of a work is performed from a
(label number, model number)
操作欄142には、対象となるワークを選択するための対象ワーク選択欄211と、この対象ワークを三次元サーチするために用いたサーチモデルを示す検出サーチモデル表示欄212と、選択されたワークに対する、すべての把持位置候補を一覧表示させるための「把持確認」ボタン213が設けられる。図74の例では、入力画像に対して三次元サーチした結果、ワークが18個存在しており、この中で3番目のワークを選択している状態を示している。ここで検出されたサーチ結果を区別するため、サーチ結果には識別情報が設定される。ここでは識別情報として、通し番号のラベル番号が設定されている。図74の対象ワーク選択欄211には、選択中の対象ワークのラベル番号として「3」が表示されている。また画像表示欄141中では、選択された対象ワークのサーチ結果が、表示されている。具体的には、サーチ結果の様子として、該当するサーチモデルの特徴点が入力画像の点群に重畳表示した形で表示されている。この状態で対象ワークのラベル番号を変更すると、これに応じて画像表示欄141中で選択されているワークも変更される。さらに検出サーチモデル表示欄212には、対象ワークを三次元サーチするために用いたサーチモデルとして、サーチモデルE(図73Eの高さ画像)が表示されている。なお、サーチモデルにも個別の識別情報が付与されており、ここではモデル番号と呼ぶ。図74では検出サーチモデル表示欄212にモデル番号として、通し番号のラベル番号3のワークモデルの「E」が表示されている。
(把持解候補表示画面220)
The
(Gripping solution candidate display screen 220)
さらに、ワーク毎に設定されている把持位置、すなわち把持解候補を把持解候補表示領域3cに一覧表示させることもできる。図74のワーク選択画面210の例では、「把持確認」ボタン213を押下すると、図75の把持解候補表示画面220が表示部に表示される。把持解候補表示領域3cの一形態である把持解候補表示画面220では、図74の対象ワーク選択欄211で選択された対象ワークに対して設定されたすべての把持位置が把持解候補として把持解候補表示欄221に列挙される。把持解候補表示欄221には、把持解毎に、把持位置のラベル番号を示すワーク把持位置表示欄223と、ワークの把持可否判定結果を示すワーク把持可否表示欄224と、把持不能の場合にその理由を示すワーク把持不能要因表示欄225が設けられる。図75の例では、対象ワーク選択欄211で選択された選択された3番目のサーチ結果の対象ワークに対し、すべて把持候補である5つがリストアップされ、把持OK、NGの判定結果と共に、NGとなった原因が表示される。また把持解候補表示欄221で選択されているワークの把持位置に対応して、画像表示欄141で選択されたワークと、これを把持するエンドエフェクタモデルが、把持位置を把持する姿勢で表示される。そして把持解候補表示欄221で把持位置の選択を変更すると、これに応じて画像表示欄141中のワークも変更され、さらにこのワークを把持するエンドエフェクタモデルの姿勢も更新される。
Furthermore, gripping positions set for each workpiece, that is, gripping solution candidates can be displayed in a list in the gripping solution
図75の例では、図73Eのワークをラベル番号3番の把持位置候補で把持する状態を示している。ここでは把持OKの判定結果であるため、ワーク把持不能要因表示欄225には何も表示されない。一方、ワーク把持不能要因表示欄225でラベル番号4番の把持位置候補を選択すると、図76に示すように画像表示欄141中の表示も変更される。ラベル番号4の把持位置候補は把持NGの判定結果であるため、ワーク把持不能要因表示欄225には把持不能と判定された理由が表示される。さらに画像表示欄141中では、これに対応するエンドエフェクタモデルが表示され、実際に把持姿勢がどのような状態となっているかを視覚的に確認することができる。ここでは「点群干渉」と表示され、エンドエフェクタが収納容器の平面と干渉していることが確認できる。この結果、ユーザはこのような姿勢のワークに対し、干渉しない位置や姿勢での把持位置の追加を検討することが可能となる。
The example of FIG. 75 shows a state in which the workpiece of FIG. 73E is gripped at the gripping position candidate with
同様に、ワーク把持不能要因表示欄225でラベル番号2番の把持位置候補を選択すると、図77に示す把持解候補表示画面220となり、ラベル番号2の把持位置候補が把持NGの判定結果となった理由として、「傾斜角度」とワーク把持不能要因表示欄225に表示される。さらに画像表示欄141中では、これに対応するエンドエフェクタモデルが表示され、エンドエフェクタが急峻な傾斜角度で把持しようとした状態となっており、そもそも干渉判定対象から除外されていることが判る。
Similarly, when the gripping position candidate with
また、判定結果に応じて、画像表示欄141で表示されるエンドエフェクタの表示態様を変更させてもよい。図75の例では、把持OKの場合にエンドエフェクタモデルを白色で表示させ、また図76や図77の例では、把持NGの場合にエンドエフェクタモデルを赤色で表示させている。これによりユーザは視覚的に把持の判定結果を容易に区別できる。また、把持位置を追加する際に、エンドエフェクタモデルの姿勢を調整して、干渉しない状態となった時点で表示態様を変更するように、画像表示欄141における表示を更新させる構成にしてもよい。このように構成することで、ユーザは例えばエンドエフェクタモデルの姿勢を、赤色から白色になるまで変更することができ、姿勢の調整作業を判り易く行える利点が得られる。
Also, the display mode of the end effector displayed in the
このように把持可否判定検証機能を設けることで、把持したいワークが把持不能と判定された場合に、どのように把持を設定すればよいか、例えば新たな把持位置を追加したり、既存の把持位置の設定を変更するなどの作業を検討する際の指針となる。例えば、図78、図79に示す例では、サーチモデルC(図73C)のワークに対して2つの把持位置候補が存在しているものの、いずれも点群干渉が理由で把持不能ととなっている。いずれも、画像表示欄141中に破線の円で示すように、エンドエフェクタモデルの爪の先端が別のワークに干渉していることが原因であることが判る。このことから、現在の把持位置の反対側の箇所を把持するように、新たな把持位置を追加すれば、OKの把持解が得られることが判る。そこで、現在の把持位置の反対側にも新たな把持位置(把持姿勢C-002)を追加するよう把持位置特定部8dで設定すると、図80に示すように、把持OKの判定結果を得られるようになる。このようにして、把持位置や姿勢の調整作業をユーザが行う際、対応策を検討しやすい環境が与えられ、設定が容易なロボットシステムが実現される。
By providing a grippability determination verification function in this way, when it is determined that a workpiece to be gripped cannot be gripped, how to set gripping, for example, adding a new gripping position or adjusting an existing gripping position. It serves as a guideline when considering work such as changing the position settings. For example, in the examples shown in FIGS. 78 and 79, there are two gripping position candidates for the workpiece of the search model C (FIG. 73C), but both of them cannot be gripped due to point group interference. there is In both cases, as indicated by the dashed circle in the
また、エンドエフェクタの傾斜角度のしきい値を、ユーザによる設定で変更することも可能である。例えば、ワークの収納容器として底の深い箱を用いる場合には、エンドエフェクタの傾斜が大きくなると、エンドエフェクタ以外にロボットのアーム部分が収納容器の壁と衝突し易くなるため、角度範囲を狭く設定する。逆に、収納容器として底の浅い箱を用いる場合は、エンドエフェクタさえ干渉しなければ、ロボットのアーム部分が箱に衝突するケースは生じ難いため、角度範囲を広く設定することができる。このように、角度範囲の設定を調整することで、実際の状況に応じて把持の可否判定を柔軟に調整することが可能となる。 It is also possible for the user to change the threshold value of the inclination angle of the end effector. For example, when using a deep-bottomed box as a storage container for workpieces, if the tilt of the end effector becomes large, the arm part of the robot other than the end effector will easily collide with the wall of the storage container, so the angle range should be narrowed. do. Conversely, when a box with a shallow bottom is used as the storage container, the arm of the robot is unlikely to collide with the box unless the end effector interferes with the box, so a wide angle range can be set. In this way, by adjusting the setting of the angle range, it is possible to flexibly adjust whether or not the grip is possible depending on the actual situation.
以上のようにして、選択したワークに対する全ての把持解が一覧表示され、NGだったものについては、そのNG要因が合わせて表示されるため、取れそうなのに、いつまでの把持解の候補とならないワークがあった場合に、それがどういう要因で把持されないのか、原因を特定することが容易になる。また、原因が特定できるため、新たにどのような把持姿勢を追加すれば良いかも判り易くなる。
(実施形態8)
As described above, all gripping solutions for the selected workpiece are displayed in a list, and for those that were NG, the NG factors are also displayed. If there is, it becomes easy to identify the cause of why it is not gripped. In addition, since the cause can be identified, it becomes easy to understand what kind of new gripping posture should be added.
(Embodiment 8)
以上の例では、三次元サーチに際して、サーチモデル毎に個別にサーチ結果を取得する例について説明した。すなわち、同じワークの異なる面を示す複数の基本方向画像でもって三次元サーチを行い、得られた結果についてもそれぞれ別々のワークとして認識される。いいかえると、同じワークの異なる面についても、それぞれ個別にサーチされる結果、異なるワークとして検出されることが起こり得る。一方、従来の三次元サーチでは、一のワークモデルを示す三次元形状でもってサーチされるため、このようなことは生じず、同じワークの異なる面も、一つのワークとして検出される。ただし、多くの面が存在するワークではサーチが複雑になる上、誤検出の可能性も高くなる。これに対して上述した実施形態に係る方法では、単純な面でサーチすることから、サーチの処理を簡素化でき、低負荷化、高速化等の点で有利となる。反面、面ごとにサーチされる結果、上述の通り得られるサーチ結果が、別個のワークとして捉えられ、同じワークであっても別の面がそれぞれ個別に検出されるという問題があった。 In the above example, an example in which search results are individually obtained for each search model during a three-dimensional search has been described. That is, three-dimensional search is performed using a plurality of basic direction images showing different surfaces of the same work, and the obtained results are also recognized as separate works. In other words, different surfaces of the same workpiece may be detected as different workpieces as a result of being individually searched. On the other hand, in the conventional three-dimensional search, since the three-dimensional shape representing one workpiece model is used for searching, such a situation does not occur, and different surfaces of the same workpiece are detected as one workpiece. However, in the case of works with many surfaces, the search becomes complicated and the possibility of false detection increases. On the other hand, in the method according to the above-described embodiment, since the search is performed in a simple manner, the search processing can be simplified, which is advantageous in terms of low load, high speed, and the like. On the other hand, as a result of searching for each surface, the search results obtained as described above are regarded as separate works, and there is a problem that different surfaces are individually detected even if the same work is used.
そこで、得られたサーチ結果を統合し、ワーク毎に纏めたり、ある面のサーチ結果から別の面のサーチ結果を推定することで、三次元サーチでは検出できなかった面や、検出精度が低い面についても、把持解の候補として利用できるようにすることができる。このような例を実施形態8に係るロボットシステムとして、図81のブロック図に示す。この図に示すロボットシステム8000は、画像処理装置800と、表示部3Bと、操作部4と、センサ部2と、ロボットRBTを備える。なお、図6、図70等と同じ部材については、同じ番号を付して詳細説明を適宜省略する。
(画像処理装置800)
Therefore, by integrating the obtained search results and grouping them for each workpiece, or estimating the search result of another surface from the search result of one surface, it is possible to detect surfaces that could not be detected by three-dimensional search, and detection accuracy is low. Faces can also be made available as gripping solution candidates. Such an example is shown in the block diagram of FIG. 81 as a robot system according to the eighth embodiment. A
(Image processing device 800)
画像処理装置800は、入力画像取得部2cと、演算部10と、記憶部9と、入出力インターフェース4bと、表示インターフェース3fと、ロボットインターフェース6bを備える。演算部10は、基本方向画像生成部8e’と、把持位置特定部8dと、サーチモデル登録部8gと、三次元サーチ部8kと、画像推定部8zと、サーチ結果統合部8pと、三次元ピック判定部8lと、傾斜角度設定部8nとを備える。
The
基本方向画像生成部8e’は、ワークモデルに対して、仮想三次元空間上で互いに直交する三軸の各軸方向のいずれかから見た複数の高さ画像を、基本方向画像として生成するための部材である。
The basic direction
把持位置特定部8dは、基本方向画像生成部8e’で生成された基本方向画像の一に対して、該基本方向画像が示すワークモデルをエンドエフェクタで把持する把持位置を複数、特定するための部材である。この把持位置特定部8dは、ワーク側把持箇所指定部8d1と、エンドエフェクタ側把持設定部8d2を備える。
The gripping
ワーク側把持箇所指定部8d1は、画像表示領域3bにエンドエフェクタモデルを表示させた状態で、ワークの三次元形状を仮想的に表現する、三次元CADデータで構成されたワークモデルをエンドエフェクタモデルで把持する際の把持位置を指定するための部材である。
The work-side gripping point designation unit 8d1 designates a work model composed of three-dimensional CAD data, which virtually expresses the three-dimensional shape of the work as an end effector model, with the end effector model displayed in the
エンドエフェクタ側把持設定部8d2は、画像表示領域3bに表示されるエンドエフェクタモデルに対して、ワークを把持する把持位置を指定するための部材である。
The end effector-side gripping setting section 8d2 is a member for designating a gripping position for gripping a workpiece with respect to the end effector model displayed in the
サーチモデル登録部8gは、基本方向画像生成部8e’で生成された複数の基本方向画像を、入力画像取得部2cで取得された入力画像に含まれる複数のワーク群に対して、各ワークの姿勢と位置を特定する三次元サーチを行う際に用いるサーチモデルとしてそれぞれ登録するための部材である。またサーチモデル登録部8gは、複数登録されるサーチモデル同士の相対位置を関係性情報として登録することもできる(詳細は後述)。
The search
画像推定部8zは、三次元サーチ部8kでサーチされ、入力画像中からサーチモデル単位で抽出された、各サーチ結果に対して、このサーチに用いられた各サーチモデルが、元のワークモデルをどの方向から見た基本方向画像であり、このワークモデルに対して登録されている他のサーチモデルの基本方向画像との相対的な位置関係に基づいて、このサーチ結果が示すワークモデルに対して、三次元サーチ部のサーチ結果に含まれていない未サーチの基本方向画像の位置及び姿勢を推定画像として推定するための部材である。この画像推定部8zは、例えば後述する角度判定部8oにより、三次元サーチ部8kでサーチされたワークのサーチ結果の姿勢が、傾斜角度設定部8nで設定された傾斜角度範囲内にある場合は、このサーチ結果と相対的な位置関係を有する推定画像を推定するよう構成できる。
The
サーチ結果統合部8pは、三次元サーチ部8kでサーチされ、入力画像中からサーチモデル単位で抽出された、各サーチ結果に対して、サーチに用いられた各サーチモデルが、元のワークモデルをどの方向から見た基本方向画像であるかの相対的な位置関係に基づいて、複数のサーチ結果の内、隣接するもの同士を共通のワークに関する統合結果として統合するための部材である。
The search
三次元ピック判定部8lは、サーチ結果統合部8pで統合された統合結果、及び三次元サーチ部8kでサーチされた未統合の各サーチ結果に対して、把持位置特定部8dでワークモデルに対して指定された把持位置にて、エンドエフェクタで把持可能か否かを判定するための部材である。この三次元ピック判定部8lは、干渉判定部8mと、角度判定部8oとを備える。
The three-dimensional pick determination unit 8l uses the gripping
これにより、三次元サーチされたサーチ結果に対して、個別に保持判定を行うのでなく、面同士の関係性情報を用いてワークの位置及び姿勢をより正確に推定できるので、サーチされていない面、あるいはサーチ結果の精度が低い面についても、検出できるようになり、通常であればサーチが困難な面も含めて保持位置候補として検討することが可能となり、保持解が得られる可能性を高めることが可能となる。
(面同士の関係性情報を含めたサーチモデルを登録する手順)
As a result, the position and orientation of the workpiece can be estimated more accurately using the relational information between the surfaces, instead of individually determining whether to hold the search results of the three-dimensional search. Alternatively, it becomes possible to detect faces with low accuracy in search results, and it is possible to consider faces that are normally difficult to search as holding position candidates, increasing the possibility of obtaining a holding solution. becomes possible.
(Procedure for registering a search model including relationship information between faces)
以上の画像処理装置に対して、ワークモデルやエンドエフェクタモデルの登録、把持位置の登録などの設定を行う手順は、例えば図27のフローチャートで示した手順が利用できる。ここで、図27のステップS2701において、サーチモデルとして三次元CADデータを用いると共に、ワークの面同士の関係性情報を含めたサーチモデルを登録する手順を、図82のフローチャートに基づいて説明する。 For the image processing apparatus described above, the procedure shown in the flowchart of FIG. 27, for example, can be used as the procedure for setting the registration of the work model and the end effector model, the registration of the gripping position, and the like. Here, in step S2701 of FIG. 27, a procedure for registering a search model including relationship information between surfaces of a workpiece while using three-dimensional CAD data as a search model will be described with reference to the flow chart of FIG.
まずステップS8201において、ワークの三次元CADデータモデルを読み込む。 First, in step S8201, a three-dimensional CAD data model of a workpiece is read.
次にステップS8202において、三次元CADデータモデルの外接直方体の中心を、三次元CADデータの原点に補正する。 Next, in step S8202, the center of the circumscribed cuboid of the three-dimensional CAD data model is corrected to the origin of the three-dimensional CAD data.
さらにステップS8203において、「上」「下」「左」「右」「前」「後」の各方向から見た高さ画像を基本方向画像として生成する。基本方向画像は、図81の基本方向画像生成部8e’で行われる。ここで、三次元CADデータから高さ画像を生成する際は、CADの原点が高さ画像の中心になるように生成する。
Further, in step S8203, height images viewed from each of the "top", "bottom", "left", "right", "front", and "back" directions are generated as basic direction images. The basic direction image is generated by the basic direction
次にステップS8204において、生成した高さ画像の中で、同じ見え方になる高さ画像を削除する。 Next, in step S8204, height images that look the same are deleted from the generated height images.
さらにステップS8205において、複数登録されるサーチモデル同士の相対位置を関係性情報として登録する。ここでは、サーチモデル登録部8gが、残った高さ画像と、上下左右前後の各面の関係性情報を保存する。
Further, in step S8205, the relative positions of multiple registered search models are registered as relationship information. Here, the search
最後にステップS8205において、生成された高さ画像を用いてサーチモデルを登録する。このようにして、ワークの面同士の関係性情報を含めたサーチモデルが登録される。
(面の関係性情報)
Finally, in step S8205, a search model is registered using the generated height image. In this way, a search model including relationship information between surfaces of a work is registered.
(Relationship information of faces)
ここでワークを特定方向から見た面同士の相対位置関係を示す関係性情報について説明する。例えば、図7に示したようなワークの場合、見え方の異なる面は、図9A~図9Dで示した4面となる。これらの図において、図9Aで示すモデルAは、X軸の正方向から見た高さ画像である。ただ、X軸の負方向から見た画像にも一致する。また図9Bに示すモデルBはY軸の正方向から見た高さ画像であるところ、Y軸の負方向から見た画像にも一致する。一方で図9Cに示すモデルCは、Z軸の正方向から見た画像のみに一致する。また図9Dに示すモデルDは、Z軸の負方向から見た画像のみに一致する。 Here, the relationship information indicating the relative positional relationship between the surfaces of the work viewed from a specific direction will be described. For example, in the case of the workpiece as shown in FIG. 7, the surfaces with different views are the four surfaces shown in FIGS. 9A to 9D. In these figures, model A shown in FIG. 9A is a height image viewed from the positive direction of the X axis. However, it also matches the image viewed from the negative direction of the X axis. Also, while model B shown in FIG. 9B is a height image viewed from the positive direction of the Y-axis, it also matches an image viewed from the negative direction of the Y-axis. On the other hand, model C shown in FIG. 9C only matches images viewed from the positive direction of the Z axis. Also, model D shown in FIG. 9D matches only the image viewed from the negative direction of the Z-axis.
ここで、予め生成された高さ画像であるモデルA、B、C、Dが、図7に示すワークの三次元CADデータを、どの座標軸方向から、どの回転状態で見た画像と一致するかという情報を、面の関係性情報を表す情報とする。このような、面の関係性情報があれば、各モデルのサーチ結果から、元の三次元CADモデルの姿勢を求めることができるようになる。例えば、図9AにおけるモデルAの左右の面には、図9BのモデルBがそれぞれ隣り合って存在する。またモデルAの上面には図9CのモデルCが、下面には図9DのモデルDが、それぞれ隣り合って存在する。この結果、三次元サーチの結果得られたサーチ済み画像において、モデルAとモデルBの検出結果が隣り合っていた場合に、同じワークに対するサーチが行われた結果であることが判る。よってこれらのサーチ結果を、1つのサーチ結果として統合することができる。ここで、統合されたサーチ結果の集合を統合結果と呼ぶ。 Here, the models A, B, C, and D, which are height images generated in advance, match the images of the three-dimensional CAD data of the workpiece shown in FIG. is information representing the relationship information of the face. If such surface relationship information is available, the posture of the original three-dimensional CAD model can be obtained from the search results of each model. For example, on the left and right sides of model A in FIG. 9A, model B in FIG. 9B exists adjacent to each other. On the upper surface of model A, model C of FIG. 9C is present, and on the lower surface thereof, model D of FIG. 9D is present, both adjacent to each other. As a result, in the searched image obtained as a result of the three-dimensional search, when the detection results of model A and model B are adjacent to each other, it can be seen that they are the results of searching for the same workpiece. Therefore, these search results can be integrated as one search result. Here, a set of integrated search results is called an integrated result.
またサーチ結果を統合することで、評価指標を更新することもできる。すなわち、精度が高くないサーチ結果であっても、統合結果に精度の高いサーチ結果が得られている場合は、統合結果の評価指数を高くして、把持位置の選択等に際して正しい把持解としてより優先させることができる。
(未サーチ基本方向画像)
In addition, the evaluation index can be updated by integrating the search results. That is, even if the search result is not highly accurate, if the integrated result is a highly accurate search result, the evaluation index of the integrated result is increased so that the correct gripping solution can be obtained when selecting the gripping position. can be prioritized.
(Unsearched basic direction image)
さらに、三次元サーチに失敗した場合やサーチ自体が行われなかった場合のように、サーチされない面があっても、統合結果を利用して推定することが可能となる。すなわち、複数のサーチ結果を統合してワークの統合結果を得た際に、このワークを構成する面の内で三次元サーチで検出されなかった面が存在する場合であっても、他の面でサーチ結果が得られていれば、ワーク自体の姿勢や位置を演算できる。この結果、予めワークに対して把持位置を登録したワークモデルや三次元サーチ用のサーチモデルが登録されている場合は、サーチされていない面の情報も、ワークの姿勢から推定できる。よって、このようなサーチの結果として得られたのでない、推定によって得られた面(未サーチ基本方向画像と呼ぶ。)をも、把持位置の候補に利用することで、実際にサーチされなかった面の把持位置をも把持解の候補として検討でき、適切な把持解が得られ易くなる利点が得られる。例えば三次元サーチの結果、図9Bに示すモデルBが得られた場合に、その横には図9Aに示すモデルAの面が存在するものと推定できる。これにより、仮にモデルAがサーチ結果として実際に検出されていなかったとしても、モデルBのサーチ結果から、モデルAの面を推定することができるため、把持解の候補としてモデルAの面に登録された把持姿勢を用いることができるようになり、この結果、把持解の候補が増えてピッキングされ易くなる。
(面の関係性情報を用いた把持解の算出)
Furthermore, even if there are faces that are not searched, such as when the three-dimensional search fails or when the search itself is not performed, it is possible to make an estimation using the integration result. That is, even if there is a surface that is not detected in the three-dimensional search among the surfaces constituting the workpiece when obtaining the integrated result of the workpiece by integrating a plurality of search results, the other surfaces If search results are obtained in , the posture and position of the work itself can be calculated. As a result, when a workpiece model in which gripping positions are registered in advance with respect to a workpiece or a search model for three-dimensional search is registered, information on unsearched surfaces can also be estimated from the orientation of the workpiece. Therefore, by using a surface obtained by estimation (referred to as an unsearched basic direction image), which is not obtained as a result of such a search, as a candidate for the gripping position, it is possible to obtain an image that was not actually searched. The grasping position of the surface can also be examined as a candidate for the grasping solution, and an advantage is obtained that an appropriate grasping solution can be easily obtained. For example, when the model B shown in FIG. 9B is obtained as a result of the three-dimensional search, it can be estimated that the surface of the model A shown in FIG. 9A exists next to it. As a result, even if model A is not actually detected as a search result, the surface of model A can be estimated from the search result of model B. Therefore, the surface of model A can be registered as a gripping solution candidate. As a result, the number of gripping solution candidates is increased, making it easier to pick.
(Calculation of grasping solution using surface relationship information)
次に、面の関係性情報を用いた把持解算出の効果について、図72に示したワークWK10を用いて説明する。このワークWK10の三次元CADデータから、図73A~図73Fに示す基本方向画像を基本方向画像生成部8e’でもって生成し、これらをサーチモデルとしてサーチモデル登録部8gで登録する。これらの図において、図73AはZ軸の正方向から見た高さ画像であり、これをモデルAとする。同様に図73BはZ軸の負方向から見た高さ画像であり、これをモデルBとする。また図73CはX軸の正方向から見た高さ画像であり、モデルCとする。さらに図73DはX軸の負方向から見た高さ画像であってモデルD、図73EはY軸の正方向から見た高さ画像であってモデルE、図73FはY軸の負方向から見た高さ画像であってモデルFを、それぞれ示している。
Next, the effect of gripping solution calculation using surface relationship information will be described using the workpiece WK10 shown in FIG. Basic direction images shown in FIGS. 73A to 73F are generated from the three-dimensional CAD data of the workpiece WK10 by the basic direction
ここで、これらの各基本方向画像に対し、図83A~図83Fに示すように、ワークモデルWM10をエンドエフェクタモデルEM10で把持する把持姿勢が1つずつ、把持位置特定部8dで登録されているものとする。ここで図83Aは、図73Aの基本方向画像に対して、把持姿勢A-000を登録している状態を示している。また図83Bは、図73Bの基本方向画像に対して、把持姿勢B-000を登録している状態を示している。さらに図83Cは、図73Cの基本方向画像に対して、把持姿勢C-000を登録している状態、図83Dは、図73Dの基本方向画像に対して、把持姿勢D-000を登録している状態、図83Eは、図73Eの基本方向画像に対して、把持姿勢E-000を登録している状態、図83Fは、図73Fの基本方向画像に対して、把持姿勢F-000を登録している状態を、それぞれ示している。この場合に、面の関係性情報を用いた把持解の算出について、図84、図85、図86に基づいて説明する。
Here, for each of these basic direction images, as shown in FIGS. 83A to 83F, one gripping posture for gripping the work model WM10 with the end effector model EM10 is registered by the gripping
図84のワーク選択画面210は、バラ積みされたワーク群を撮像した入力画像に対して三次元サーチを行った結果、12個のワークが検出されている状態を示している。画像表示欄141には、入力画像が表示されている。また操作欄142には、対象となるワークを選択するための対象ワーク選択欄211と、検出サーチモデル表示欄212と、選択されたワークにおける把持位置候補を一覧表示させるための「把持確認」ボタン213が設けられている。図84の例では、三次元サーチされた12個のワークの内、2番目のワークが対象ワーク選択欄211で選択されており、また画像表示欄141中では、選択された2番目の対象ワークのサーチ結果が表示されている。具体的には、サーチ結果の様子として、該当するサーチモデルの特徴点が入力画像の点群に重畳表示した形で表示されている。さらに検出サーチモデル表示欄212には、2番目の対象ワークを検出したサーチモデルとして、サーチモデルC,F,Aが表示されている。この状態で、3種類のサーチモデルC、F、A(図73C、図73F、図73A)が統合されている。
The
ここで、仮にワークの面の関係性情報を用いなかったとすると、モデルFやモデルAは、画像表示欄141に示すように入力画像上で側面の一部しか見えていない状態であるため、サーチ結果としては検出困難であったと思われる。また仮に検出できていたとしても、評価指標が低く、優先度の低い結果となると思われる。これに対し、関係性情報を用いることで、図84のように、サーチモデルCのみならず、サーチモデルFやサーチモデルAも検出され、あるいは推定されて、把持位置候補として利用すること可能となる。
Here, assuming that the relationship information of the surfaces of the work is not used, the model F and the model A are in a state in which only part of the side surface is visible on the input image as shown in the
図84のワーク選択画面210において、「把持確認」ボタン213を押下すると、図85の把持解候補表示画面220が表示される。この把持解候補表示画面220では、図84の対象ワーク選択欄211で選択された2番目の対象ワークに対して設定された把持位置が把持解候補として把持解候補表示欄221に列挙される。把持解候補表示欄221には、検出サーチモデル表示欄212で表示されたサーチモデルC、F、Aに対し、それぞれ設定された把持位置(図83C、図83F、図83A)に対するワークの把持可否判定結果がワーク把持可否表示欄224に、把持不能の理由がワーク把持不能要因表示欄225に、それぞれ表示されている。まずサーチモデルCについては、判定結果が把持NGであり、その理由が点群データの干渉であることが示されている。また画像表示領域においては、把持位置C-000に対応する姿勢でワークを把持しようとするエンドエフェクタモデルEM10が赤色に表示されており、干渉して把持できない様子を示している。ここで、仮に面の関係性情報を用いなかったとすると、サーチモデルCのみが三次元サーチされる結果、把持解の候補はこのサーチモデルのC-000のみであり、結果として把持解を得られないこととなる。
On the
これに対して、関係性情報を用いることで、図85、図86に示すようにサーチモデルC以外にサーチモデルF、Aも対象となり、把持位置候補もF-000とA-000が追加されていることが判る。そして追加された把持位置候補の内、サーチモデルFの把持位置候補F-000においては、把持NGの判定結果となっているが、サーチモデルAの把持位置候補A-000においては、把持OKの判定結果が得られており、図86に示すようにエンドエフェクタが白色で表示され、点群データに干渉することなく、無事に把持解が得られている。この結果、関係性情報を用いないと把持解が得られなかった場合でも、関係性情報を用いることで、把持解を得ることが可能となる。すなわち、三次元サーチの設定を変更、例えば照明やカメラの配置を調整したり、サーチのアルゴリズム等を変更することなく、同じサーチ条件のままで、言い換えると三次元サーチの精度を変更することなく、把持解が得られる可能性を高めることが可能となる。このように、面の関係性情報を用いることで、把持解の候補を増やし、ピッキングされ易い結果が得られる。
(実運用時の手順その3)
On the other hand, by using the relationship information, as shown in FIGS. 85 and 86, search models F and A are also targeted in addition to search model C, and F-000 and A-000 are added as gripping position candidates. It turns out that Among the added gripping position candidates, the gripping position candidate F-000 of the search model F is determined as gripping NG, but the gripping position candidate A-000 of the search model A is gripped OK. A determination result has been obtained, the end effector is displayed in white as shown in FIG. 86, and a grasping solution has been successfully obtained without interfering with the point cloud data. As a result, even if a grasping solution cannot be obtained without using the relationship information, the grasping solution can be obtained by using the relationship information. That is, without changing the settings of the three-dimensional search, for example, adjusting the lighting and camera arrangement, or changing the search algorithm, etc., the search conditions remain the same, in other words, without changing the accuracy of the three-dimensional search. , it is possible to increase the possibility of obtaining a grasping solution. In this way, by using surface relationship information, it is possible to increase the number of gripping solution candidates and obtain results that are likely to be picked.
(
ここで、図82の手順でサーチモデルが登録された状態で、実運用時に、三次元サーチと把持可否判定を行う手順を、図87のフローチャートに基づいて説明する。 Here, a procedure for performing a three-dimensional search and a graspability determination at the time of actual operation with the search model registered according to the procedure in FIG. 82 will be described with reference to the flowchart in FIG. 87 .
まずステップS8701において、バラ積みワークに対して三次元計測を開始する。ここでは、図81に示すセンサ部2でバラ積みされたワーク群を撮像して三次元計測を行い、高さ情報を有する三次元形状を入力画像として入力画像取得部2cでもって取得する。
First, in step S8701, three-dimensional measurement is started for randomly stacked works. In this case, the
次にステップS8702において、得られたワーク群の三次元形状に対して、ワークモデルを用いて三次元サーチを実施し、各ワークの位置及び姿勢を検出する。三次元サーチは、図81の三次元サーチ部8kで行われる。
(統合結果の生成)
Next, in step S8702, the three-dimensional shape of the obtained work group is subjected to a three-dimensional search using the work model to detect the position and orientation of each work. A three-dimensional search is performed by the three-
(Generation of integration result)
さらにステップS8703において、三次元サーチのサーチ結果と、各面の関係性情報から、同じワークを示す結果を統合する。ここではサーチ結果統合部8pが、サーチに用いたサーチモデルに登録された関係性情報を利用して、同じワークを撮像したサーチ結果同士を関連付ける。すなわち、サーチ結果をサーチした元となる共通のワークモデルをどの方向から見た基本方向画像であるかの相対的な位置関係に基づいて、複数のサーチ結果の内、隣接するもの同士を、サーチ結果統合部8pで統合する。このようにして得られた統合結果は、同じワークを示すものとして共通に扱う。
(未サーチ基本方向画像の生成)
Further, in step S8703, the search results of the three-dimensional search and the results indicating the same work are integrated from the relationship information of each surface. Here, the search
(Generation of unsearched basic direction image)
さらにステップS8704において、三次元サーチ結果と各面の関係性情報から、検出されていない面を推定する。ここでは、統合結果が示すワークの姿勢及び位置に基づいて、このワークに関して三次元サーチの結果には含まれていない未サーチの基本方向画像の位置及び姿勢を推定する。そして、この未サーチ基本方向画像に対して把持位置特定部8dで設定された把持位置を、把持可否判定の対象とする。これにより、三次元サーチの結果、本来サーチされなかったワークの面についても、統合されたサーチ結果が示すワークの姿勢及び位置から推定することで、把持可否判定の対象とすることができ、把持解が得られる可能性をより高めることができる。
Further, in step S8704, surfaces that have not been detected are estimated from the three-dimensional search result and relationship information of each surface. Here, based on the orientation and position of the work indicated by the result of integration, the position and orientation of unsearched basic direction images that are not included in the three-dimensional search results for this work are estimated. Then, the gripping position set by the gripping
次にステップS8705において、検出された一のワークに対して、このワークの位置と、設定時に登録したワークの把持姿勢に基づいて、エンドエフェクタを配置すべき位置と姿勢を計算する。 Next, in step S8705, the position and orientation at which the end effector should be arranged are calculated for the one detected workpiece based on the position of this workpiece and the gripping orientation of the workpiece registered at the time of setting.
次にステップS8706において、計算された位置において、エンドエフェクタが周囲の物体と干渉しないかどうかを、エンドエフェクタモデルを用いて干渉判定を実施する。 Next, in step S8706, an end effector model is used to determine whether or not the end effector interferes with surrounding objects at the calculated position.
そしてステップS8707において、エンドエフェクタが干渉するか否かを判定し、干渉していない場合は、このワークに対して把持解ありとして処理を終了する。 Then, in step S8707, it is determined whether or not the end effector interferes with the workpiece.
一方、干渉していると判定された場合は、ステップS8708に進み、このワークに対して登録された別の把持位置があるか否かを判定する。別の把持位置が登録されている場合は、ステップS8705に戻って、この把持位置に対して上記処理を繰り返す。 On the other hand, if it is determined that there is interference, the process advances to step S8708 to determine whether or not there is another gripping position registered for this workpiece. If another gripping position is registered, the process returns to step S8705 to repeat the above processing for this gripping position.
一方、別の把持位置が登録されていない場合は、ステップS8709に進み、検出された別のワークがあるか否かを判定する。別のワークがある場合は、ステップS8705に戻って、ワークを代えて上記処理を繰り返す。別のワークが無い場合は、把持解なしとして処理を終了する。 On the other hand, if another gripping position is not registered, the process advances to step S8709 to determine whether there is another workpiece detected. If there is another work, return to step S8705, change the work, and repeat the above process. If there is no other workpiece, the process is terminated as no gripping solution.
このようにして、統合結果や未サーチ基本方向画像を用いて、ワークを把持可能な把持解の有無を判定する。そして把持解が得られた場合は、そのワークに対して、エンドエフェクタでもって決定された把持位置にてピックするよう、ロボットコントローラ6を制御する。
In this manner, the presence or absence of a gripping solution capable of gripping the workpiece is determined using the integration result and the unsearched basic direction image. Then, when a gripping solution is obtained, the
なお、本明細書において画像とは、厳密に連続したデータに限られず、例えば点群データの集合のような離散的なデータの集合も含む意味で使用する。
(実施形態9)
(評価指標の統合)
In the present specification, the term "image" is not limited to strictly continuous data, and is used in the sense of including a set of discrete data such as a set of point cloud data.
(Embodiment 9)
(Integration of evaluation indicators)
また、以上の手順に加えて、統合結果に対して、優先順位を規定する評価指標を統合することもできる。このような例を実施形態9に係るロボットシステム9000として、図88に示す。この図に示す画像処理装置900は、評価指標演算部8qと、把持優先順位決定部8rを備える。なお、図81等に示す部材と共通の部材については、同じ符号を付して詳細説明を省略する。
In addition to the above procedure, it is also possible to integrate an evaluation index that defines the order of priority with respect to the integrated results. Such an example is shown in FIG. 88 as a
評価指標演算部8qは、三次元ピック判定部8lで把持可能と判定された把持位置を把持位置候補として、各把持位置候補について、評価指標を演算するための部材である。
The evaluation
また把持優先順位決定部8rは、評価指標演算部8qで演算された評価指標に基づいて、ワークをエンドエフェクタで把持する優先順位を決定するための部材である。
The gripping
この画像処理装置は、評価指標演算部8qでもって、サーチ結果に対してそれぞれ評価指標を演算する。評価指標としては、上述の通り、例えばサーチ結果に含まれる、一定の距離以下の誤差で対応した特徴点の点数割合等が利用できる。
This image processing apparatus uses an
ここで、サーチ結果統合部8pが、統合結果を構成する各サーチ結果に対して評価指標演算部8qで演算された評価指標の内、最も高い評価指標を統合結果に付与する。一般に三次元サーチの評価指標では、サーチの条件やワークの姿勢(例えばワークの傾斜角度が大きく、十分な反射光が得られない場合、逆に光沢のあるワークによって反射光が強すぎる場合)等に左右される。このため、サーチ結果の評価指数が低く演算されることがあり、低い優先順位となったり、あるいはそもそも反射光が得られない等の理由で三次元サーチの対象から除外されることがある。これらは、把持位置の候補として下位になったり、候補に挙がらないことになるが、このようなワークの中には、単に三次元サーチに適切な姿勢で配置されていないというだけで、把持には適した姿勢で配置されていることも考えられる。このような場合であっても、従来であれば三次元サーチの段階で除外されたり低い優先順位となっていたため、把持解として選択される可能性が低く、十分に活用することができなかった。これに対して本実施形態によれば、たとえ三次元サーチの結果としては、評価指数が低いサーチ結果であっても、隣接する他のサーチ結果で高い評価値が得られている場合は、これを利用することで、高い優先順位でもって把持位置の候補として利用することが可能となる。これにより、従来であれば活用されなかった把持位置の候補であっても、利用できるようになり、把持解を得られる可能性を高めることができるようになる。いいかえると、三次元サーチの精度によらず、適切なワークを把持することが可能となる。
Here, the search
以上の方法では、統合結果を構成する各サーチ結果の内で、最も高い評価指標でもって、統合結果全体を評価したり、あるいは各サーチ結果の評価指数を本来の評価値からより高い評価値に書き換える態様について説明した。これは、高い評価指数を得たサーチ結果については、三次元サーチ結果の信頼性が高いとの信頼性に基づくものである。ただ、本発明はこの態様に限らず、他の態様、例えば、統合結果を構成する各サーチ結果の評価指数を平均して、この統合結果の評価指数として扱うようにしてもい。いずれの場合も、元々低い評価指標だったサーチ結果を、他の評価指数の高いサーチ結果を利用して、把持位置等の候補となり得るように元の評価指数よりも高い評価指数でもって評価されるようにすることが、本実施形態の趣旨である。
(画像処理プログラムのGUI)
In the above methods, the overall result of the integration is evaluated with the highest evaluation index among the search results that make up the integration result, or the evaluation index of each search result is increased from the original evaluation value to a higher evaluation value. The mode of rewriting has been described. This is based on the reliability that the reliability of the three-dimensional search results is high for search results with high evaluation indexes. However, the present invention is not limited to this aspect, and may be handled in another aspect, for example, by averaging the evaluation index of each search result that constitutes the integrated result and treating it as the evaluation index of this integrated result. In either case, a search result originally with a low evaluation index is evaluated with a higher evaluation index than the original evaluation index so that it can become a candidate for a gripping position or the like by using other search results with a high evaluation index. It is the gist of this embodiment to make it so.
(GUI of image processing program)
ここで、画像処理プログラムのGUIの一例を図89~図149に基づいて説明する。図89は各種機能を選択するための機能選択画面340を示しており、利用可能な機能が機能一覧表示欄341にボタン状に一覧表示されている。この状態から「3Dサーチ」ボタン342を押下すると、三次元サーチ機能が実行される。
(三次元サーチ画面)
An example of the GUI of the image processing program will now be described with reference to FIGS. 89 to 149. FIG. FIG. 89 shows a
(3D search screen)
三次元サーチ機能の実行にあたり、必要な設定を行う必要がある。具体的には、サーチモデルの登録、ワークを載置する床面や収納容器の登録、三次元サーチの条件設定などが挙げられる。これらの設定は、すべての項目をユーザが任意に設定可能とする他、必要な手順をユーザに順次示しながら、項目毎に設定させることもできる。このような設定のガイダンス機能について、図90~図101の三次元サーチ画面に基づいて説明する。 Before executing the three-dimensional search function, it is necessary to make necessary settings. Specifically, registration of a search model, registration of a floor on which a workpiece is placed and a storage container, setting of three-dimensional search conditions, and the like are mentioned. These settings can be set by the user arbitrarily for all items, or can be set for each item while sequentially showing the necessary procedures to the user. The guidance function for such setting will be described based on the three-dimensional search screens shown in FIGS. 90 to 101. FIG.
これらの三次元サーチ画面では、画面左下の画像表示欄141の上段に、設定すべき手順のフローを表示させるフロー表示部351を設けている。フロー表示部351では、各手順の概要をテキストや図柄等で示すと共に、現在設定中の手順がハイライト表示される。図90の例では、「モデル登録」アイコン352が明るい色に表示され、他の「床・箱設定」アイコン353や「サーチ設定」アイコン354は暗い色で表示されており、ユーザに対し現在設定を行っている対象を告知することができる。さらに三次元サーチ画面の右側に設けられた操作欄142には、現在設定中の項目の説明がテキスト等で表示され、ユーザに対して行うべき設定を文字で説明することができる。説明はテキスト情報のみならず、必要に応じて、図柄や動画を適宜組み合わせてもよい。また、設定すべきパラメータの設定欄等も設けられている。
(実測データに基づくサーチモデルの登録)
In these three-dimensional search screens, a
(Registration of search model based on measured data)
図90~図101の三次元サーチ画面では、センサ部でワークの現物を撮像した実測データをサーチモデルとして登録する例を示している。この登録手順は、図27のフローチャートで説明した手順にて行うことができる。これら図90~図101の三次元サーチ画面では、上述の通りフロー表示部351に、1番目の手順として「モデル登録」アイコン352がハイライト表示されている。
The three-dimensional search screens of FIGS. 90 to 101 show an example of registering actual measurement data obtained by imaging the actual workpiece with the sensor unit as a search model. This registration procedure can be performed according to the procedure described in the flow chart of FIG. In the three-dimensional search screens of FIGS. 90 to 101, the "model registration"
図90は、サーチモデルとして登録する方法を選択するためのサーチモデル登録方法選択画面350を示している。このサーチモデル登録方法選択画面350の操作欄142には、モデルを登録する方法を選択するためのモデル登録方法選択欄355が設けられている。このモデル登録方法選択欄355では、モデル登録方法として、実際のワークを撮像して登録するか、CADデータから登録するかをラジオボタンで選択できる。図90のサーチモデル登録方法選択画面350の例では、実ワークを撮像して登録することを選択しており、これに応じて操作欄142には、実ワークを撮像して登録する手順の説明が文字と図柄で表示されている。この例では、「カメラから見えるワーク表面の三次元情報をモデル化します。サーチさせたい面の数だけ登録します。本ツールでは、さまざまな姿勢を取るワークに対して、登録した表面モデルをマッチングさせることで、そのワークの位置と姿勢を認識します。」とテキスト情報と図柄でもって、行うべき作業をユーザに示している。これによってユーザは、この画面で行うべき作業を容易に把握できるようになる。図90のサーチモデル登録方法選択画面350で実ワークの登録を選択した上で「OK」ボタン356を押下すると、ワークの撮像に移行する。
(実測データ撮像部)
FIG. 90 shows a search model registration
(Actual measurement data imaging unit)
実際に実ワークを登録する手順は、図91~図93のようになる。この例では、モデル登録の作業を3つの画面に分けて、ユーザに対して順次説明していく。まず図91の実測データ撮像画面360では、モデル登録の1番目の作業として、ワークを撮像する。この例では、操作欄142に、ユーザが行うべき作業として「1.登録したいワーク表面がカメラに見えるようにワークを平面上に配置して、右下の「計測実行」ボタンを押して下さい。2.左のカメラ画面上でワークを囲むようにモデル領域を配置して下さい。」と説明される。さらに、最適なワークの配置についての詳細な説明を、「?」ボタン364を押下して、別画面で表示させることもできる。これにより、多くの情報を画面上に表示させて画面が見づらくなったりユーザを混乱させる事態を回避できる。このようにしてユーザは、ワークをセンサ部で撮像可能な位置に配置して、画像表示欄141でワークの様子を確認しながら位置決めを行う。そして、「計測実行」ボタン361を押下すると、図91に示すように撮像されたワークが表示される。ここでは三次元状の画像として、得られたワークの高さに応じて色を変えた画像として表示される。なお、カラー表示に限らず、画素の輝度値で高さを表現する高さ画像としてもよい。図91の例では、同じ形状のワークを6個並べて、それぞれ異なる姿勢で配置している。この状態でユーザは、サーチモデルとして登録したいワークの画像を囲むよう、モデル領域362を設定する。モデル領域362の設定を終えると、「次へ」ボタン363を押下する。これによって、図92に示すサーチモデル除外領域設定画面370に切り替わる。
(背景除去設定部)
The procedure for actually registering an actual work is shown in FIGS. 91-93. In this example, the work of model registration is divided into three screens, which are sequentially explained to the user. First, on the actual measurement
(Background removal setting part)
図92のサーチモデル除外領域設定画面370においては、モデル登録の2番目の作業として、サーチモデルとして登録する際に除外する除外領域を設定する。サーチモデル除外領域の一例として、実ワークの登録に際して、ワークを載置した床面のような背景を除去する機能が挙げられる。図92のサーチモデル除外領域設定画面370では、モデル登録の2番目の作業として、操作欄142に、「1.登録したいワーク表面だけが残るように背景除去を設定してください。」と説明される。また「?」ボタン371を押下して、背景除去の設定方法の詳細説明を別画面で表示させることもできる。さらに操作欄142の中段には、背景除去設定欄372が設けられ、背景として除去する高さを数値で指定する。この例では1.5mmが指定されており、モデル領域362として指定された範囲の内、高さ0~1.5mmまでの範囲がサーチモデルの登録対象から除外される。この背景除去設定欄372での設定に応じて、画像表示欄141で表示されるモデル領域362が更新され、サーチモデルの登録対象から除外された領域が黒塗りで表示される。ユーザはこの様子を確認しながら、除外領域の設定が妥当かどうかを判断でき、必要に応じて再設定等を行える。
(マスク領域設定部)
On the search model exclusion
(Mask area setting section)
さらに高さ方向のみならず、平面方向においてサーチモデルの登録対象から除外したい範囲を、マスク領域として指定することもできる。図92のサーチモデル除外領域設定画面370の背景除去設定欄372の下には、「2.登録したいワーク表面以外のものが残ってしまう場合はマスク領域を配置してください。」と説明される。同様に「?」ボタン373を押下して、マスク領域の設定方法の詳細説明を別画面で表示させることもできる。「マスク領域」ボタン374を押下すると、モデル領域362として指定された範囲内に、サーチモデルの登録対象から除外する領域としてマスク領域を設定することが可能となる。マスク領域は、矩形状や円形などの規定の図形の他、自由曲線や境界部分の自動検出などによって設定できる。また、マスク領域の設定に応じて、画像表示欄141で表示されるモデル領域362が更新されることも上述の通りである。
In addition to the height direction, it is also possible to specify a range to be excluded from search model registration targets as a mask region in the planar direction. Below the background
なお、図92の例では、背景除去設定の後、マスク領域設定を行わせているが、これらの順序を入れ替えてもよい。このようにして、サーチモデルの登録から除外したい領域の設定を終えると、「次へ」ボタン375を押下する。これによって、図93に示す回転対称性設定画面380に切り替わる。
(回転対称性設定部)
In the example of FIG. 92, mask area setting is performed after background removal setting, but the order of these may be changed. After completing the setting of the area to be excluded from the registration of the search model in this manner, the "Next"
(Rotational symmetry setting part)
図93の回転対称性設定画面380においては、モデル登録の3番目の作業として、回転対称性を設定する。この例では、操作欄142に、「1.登録するワーク表面が回転対称性を持つ場合は、該当するものを指定して下さい。」と説明される。同様に「?」ボタン381を押下して、回転対称の設定方法の詳細説明を別画面で表示させることもできる。操作欄142の中段には、回転対称設定欄382が設けられ、回転対称性の候補として、円対称、N回対称、なし等の選択肢から選択することができる。さらに、N回対称を選択した場合は、対称数の数値入力ボックスが表示され、ワーク表面の形状に応じた回転対称数を設定する。例えば、ワーク表面が長方形状であり、ワーク表面を真上か見た軸に対し180度回転した見え方が同一になる場合、回転対称数は2が適切値となる。あるいは、ワーク表面が正方形上で、ワーク表面を真上か見た軸に対し90度毎に回転した見え方が全て同一になる場合、回転対称数は4が適切値となる。あるいはまた、ワーク表面が6角形状で、ワーク表面を真上か見た軸に対し30度毎に回転した見え方が同一になる場合、回転対称数は6が適切値となる。一方、円対称については、球体や円柱状のワークを真上から見た時に、ワーク表面が円形に見える場合など、任意の回転角度の対し、回転した見え方が全て同一になる場合に設定するのが推奨される。回転対称性が設定されると、サーチモデルの登録時に、回転対称性として指定された姿勢にワークがある場合も、同じワークとして認識されるようになる。例えば、回転対称数が2と設定された2回対称のワークの場合、180度回転した姿勢も、回転前の姿勢も、同じワークとして認識されるようになる。
In the rotational
このようにして、回転対称性の設定を終えると、「登録」ボタン383を押下する。これによって、設定された条件に従ってサーチモデルが登録される。なお、モデル登録に必要な3つの作業の内、2番目と3番目は入れ替えてもよい。
(サーチモデルの複数登録)
After completing the setting of the rotational symmetry in this manner, the “Register”
(Multiple registration of search models)
サーチモデルが登録されると、図94に示すサーチモデル登録画面390が表示される。サーチモデル登録画面390の操作欄142には、登録済みのサーチモデルの一覧を表示させるモデル一覧表示欄391が設けられている。ここでは、登録済みのサーチモデルとしてモデル番号0のサーチモデルが、縮小画像と共に表示される。また当該サーチモデルについて、回転対称性の設定が「なし」であることも表示される。
When the search model is registered, a search
さらに追加のサーチモデルを登録するには、「追加」ボタン392を押下する。これにより、上述したのと同様の手順でサーチモデルを登録できる。なおサーチモデルの登録の方法として、実ワークを撮像して登録するか、あるいは三次元CADデータから登録するかを、モデル登録方法指定欄393で選択できる。ここではモデル登録方法指定欄393で「実ワークで登録」を選択して追加登録する。
To register additional search models, press the “Add”
このようにしてサーチモデルを追加したサーチモデル登録画面410を図95に示す。この図に示すサーチモデル登録画面410では、新たにサーチモデルとして、画像表示欄141に並べた6個のワークの内、左下に配置されたワークを追加登録している。追加登録されたサーチモデルは、モデル一覧表示欄391にモデル番号1として追加されている。
(簡易三次元サーチ結果の表示)
FIG. 95 shows a search
(Display of simple three-dimensional search results)
さらに、図94、図95のサーチモデル登録画面では、登録済みのサーチモデルを用いて簡易的に三次元サーチを行った結果を表示させることもできる。例えば図94の例では、モデル番号0のサーチモデルを用いて、画像表示欄141で表示される6つのワークに対して三次元サーチを行った結果、登録に用いた左上のワークがサーチされている。サーチされたワーク上には、サーチモデルに合致した点群が表示されている。この例では、サーチモデルの表面形状の内、面状の点群を白色で、輪郭を示す点群を紫色で、それぞれ表示させている。さらに簡易三次元サーチ結果の評価指標として演算されたスコアを、数値で表示させることもできる。図94の例ではスコア値として96.4が表示されている。なお、サーチモデルとして登録した元のワークに対して、スコアが最高値(この例では99.9)とならないのは、モデル登録時の撮像状態と、三次元サーチ実行時の入力画像とに変動があり、若干スコアが下がった結果となっているためである。スコア値の結果から、おおよそ96%以上、モデル登録時の状態と一致している状態であると捉えることができる。
(サーチ領域設定部)
Furthermore, on the search model registration screens of FIGS. 94 and 95, it is possible to display the result of a simple three-dimensional search using a registered search model. For example, in the example of FIG. 94, as a result of performing a three-dimensional search on the six works displayed in the
(Search area setting section)
このようにしてサーチモデルが登録されると、次に三次元サーチ機能の設定として、サーチ領域を設定する。具体的には、図95のサーチモデル登録画面410で、必要なサーチモデルの登録を終えた後、右下の「完了」ボタン411を押下すると、図96のサーチ領域設定画面420に進む。このサーチ領域設定画面420では、三次元サーチを行うサーチ領域を指定する。画面上部のフロー表示部351には、ハイライト表示が「モデル登録」アイコン352から「床・箱設定」アイコン353に移り、モデル登録が終了して現在はワークを載置する床面や収納容器の登録を行う段階であることがユーザに示される。
After the search model is registered in this manner, a search area is set as the setting of the three-dimensional search function. Specifically, after completing the registration of the necessary search models on the search
サーチ領域設定画面420の操作欄142には、サーチ領域設定欄421が設けられる。サーチ領域設定欄421には、三次元サーチを行うサーチ領域の指定方法のユーザに説明するための「指定方法選択ナビ」ボタン422と、サーチ領域の指定方法を選択する指定方法選択欄423が設けられる。「指定方法選択ナビ」ボタン422を押下すると、三次元サーチを行うサーチ領域の指定方法をユーザに案内するナビゲーション画面が表示される。一方、指定方法選択欄423では、ドロップボックスから、選択肢として、床指定、箱指定、箱サーチ、指定なしの何れかを選択できる。この内、床指定を選択すると図97のサーチ領域設定画面430となって、床面指定ダイヤログ431が表示され、「床面を算出するための3点をクリックしてください。」との説明がユーザに示される。これに従いユーザが画像表示欄141上から、床面を示す任意の点をマウス等のポインティングデバイスで指定すると、指定された点の空間座標(X,Y,Z)が表示される。また、抽出領域としてゲージが表示される。この抽出領域は、クリックした点におけるZ座標値算出の際に、クリックした位置を中心に、どの範囲まで参照して求めるかを表している。三次元計測された1点1点のデータには誤差も含まれるため、誤差の影響を抑えるために、一定範囲内のデータの平均値や、中央値(メディアン)によって求めた値を用いるのが好ましい。今回のケースでは、抽出領域によって指定される範囲の平均値によって、Z座標値を求めている。このようにして床面が指定されると、床面の情報が演算されて、図98のサーチ領域設定画面440のように、サーチ領域設定欄421において演算された床面情報が床面情報表示欄441に表示される。ここでは床面情報表示欄421において、床面のX傾き、Y傾き、Z切片がそれぞれ数値で床面情報として表示されている。また必要に応じて、オフセット量を設定することもできる。例えば収納容器の床面の厚さの変動などを考慮して、床面からの所定の高さ分をサーチ領域から除去する。図98の例では、床面からのノイズ除去のため、ノイズ除去欄442を設けている。ここでは、指定された床面の高さから、ノイズ除去欄442で指定された高さ1.5mmまでの範囲を、三次元サーチの対象領域から除外する。以上のようにして床面の設定が終了すると、「完了」ボタン443を押下する。これによって図99のサーチパラメータ設定画面450に切り替わる。
(サーチパラメータ設定部)
A search
(Search parameter setting section)
図99のサーチパラメータ設定画面450では、三次元サーチを実行する条件としてサーチパラメータを設定する。画面上部のフロー表示部351には、ハイライト表示が「床・箱設定」アイコン353から「サーチ設定」アイコン354に移り、サーチ領域設定が終了して現在はサーチ条件を設定する段階に移行していることがユーザに示される。サーチパラメータ設定画面450の操作欄142には、三次元サーチの実行に必要なサーチパラメータをそれぞれ設定するための欄が設けられている。具体的には、検出条件設定欄451と、特徴抽出条件設定欄452と、判定条件設定欄453が設けられている。この内、特徴抽出条件設定欄452は、入力画像中からワークを検出するにあたり、エッジを抽出する閾値(しきいち)であるエッジ抽出閾値を設定する。また判定条件設定欄453では、スコアの計測値に対して上限や下限、あるいは位置のX座標の計測値に対して上限や下限を設定し、サーチ結果として選択するか否かの判定条件を設定する。
On the search
検出条件設定欄451では、ワークを検出する条件を設定する。この例では、ワークを検出する個数の上限を指定する検出個数指定欄454、検出されるワークの傾斜角度の上限を指定する傾斜角度上限指定欄455、評価指標であるスコアの下限を指定するスコア下限指定欄456が設けられている。また、指定は数値で行う他、スライダ等によって連続的に調整することもできる。さらに、詳細設定ボタン457を押下すると、、図100のサーチパラメータ設定画面460に切り替わり、より詳細な検出条件を設定するための検出詳細条件設定ダイヤログ461が表示される。
In the detection
検出詳細条件設定ダイヤログ461においては、基本設定欄462、検出条件詳細設定欄463、オプション設定欄464が設けられている。基本設定欄462においては、検出個数指定欄454に加えて、三次元サーチの感度を設定するサーチ感度設定欄465、三次元サーチの精度を設定するサーチ精度設定欄466が設けられている。また検出条件詳細設定欄463においては、傾斜角度上限指定欄455、スコア下限指定欄456に加えて、回転角度範囲設定欄163として、基準角度を設定するための基準角度設定欄163a、角度範囲を設定するための範囲設定欄163bを設けている。
In the detection detailed
加えて、検出条件はサーチモデル共通で設定する他、サーチモデル毎に個別に設定することもできる。図100の例では、サーチモデル個別指定欄467を設けており、このチェックボックスをONすることで、サーチモデル毎に個別に三次元サーチの検出条件を設定することができる。このような例を図101のサーチパラメータ設定画面470に示す。ここでは、サーチモデル個別指定欄467のチェックボックスをONにすると、サーチモデル選択欄467bが表示され、検出条件を設定するサーチモデルを選択できる。この例ではサーチモデルAが選択された状態を示しており、図94等のモデル一覧表示欄391に示されたサーチモデルAに関する検出条件として、傾斜角度上限指定欄455、基準角度設定欄163a、範囲設定欄163b、スコア下限指定欄456をそれぞれ個別に指定することができる。
In addition, the detection conditions can be set in common for all search models, or can be set individually for each search model. In the example of FIG. 100, an individual search
一方、図100等に示すオプション設定欄464においては、サーチ結果を識別するための通し番号として振られるラベル番号に対し、ラベルの順序を規定するラベル順序指定欄468、判定ラベルを指定する判定ラベル指定欄469を設けている。ラベル順序指定欄468では、相関値の降順、昇順やZ方向の高さの降順、昇順などを選択できる。ここでいう相関値とは、上述の「スコア」と同意語である。判定ラベル指定欄469では、特定のサーチ結果に対し、想定と異なる位置や姿勢になっていないか、判定する対象を指定できる。ここではサーチ結果を識別するための通し番号により指定する。例えば、サーチ結果が想定外の位置や、回転角度・傾斜角度になっていないかなど、サーチ結果として信頼性のないデータとなっていないかを判定する必要がある場合に設定を行う。
On the other hand, in the
このようにして、三次元サーチのサーチ設定を順に終えると、操作欄142の右下に設けられらた「OK」ボタン471を押下して、三次元サーチの条件設定を終了する。
(三次元CADデータに基づくサーチモデルの登録)
When the search settings for the three-dimensional search are sequentially completed in this way, the "OK"
(Registration of search model based on three-dimensional CAD data)
以上の例では、サーチモデルとして実際のワークを撮像して登録する手順を説明した(図62等に対応)。ただ本発明は上述した図28等で説明した通り、予め作成されたワークの形状を示す三次元CADデータをサーチモデルとして登録することもできる。以下、このような三次元CADデータをワークモデルとして登録する手順を図102~図106に基づいて説明する。 In the above example, the procedure for photographing and registering an actual workpiece as a search model has been described (corresponding to FIG. 62, etc.). However, as described with reference to FIG. 28 and the like, the present invention can also register three-dimensional CAD data representing the shape of a pre-made workpiece as a search model. A procedure for registering such three-dimensional CAD data as a work model will be described below with reference to FIGS. 102 to 106. FIG.
まず図102のサーチモデル登録方法選択画面480において、モデル登録方法選択欄355から、CADデータ(STL形式)から登録するをラジオボタンで選択する。これに応じて操作欄142には、三次元CADデータをサーチモデルとして登録する手順の説明が文字と図柄で表示されている。この例では、「三次元CADデータ中のXYZ軸の各正負方向(計6方向)から見えるワーク表面の三次元情報をモデル化します。生成されたモデルの中からサーチさせたい面のみ選択します。本ツールでは、さまざまな姿勢を取るワークに対して、登録した表面モデルをマッチングさせることで、そのワークの位置と姿勢を認識します。」とテキスト情報と図柄でもって、行うべき作業をユーザに示している。このようにして102のサーチモデル登録方法選択画面480でCADデータからの登録を選択した上で「OK」ボタン481を押下すると、図103のCADデータの読み込み画面に移行する。具体的には、サーチモデル登録画面490に移行し、CADデータ読み込みダイヤログ491が表示される。
(CADデータ読み込み部)
First, in the search model registration
(CAD data reading unit)
図103に示すCADデータ読み込みダイヤログ491では、読み込むCADデータの格納先を指定し、さらにCADデータを選択する。読み込み先は、記憶部9の他、半導体メモリ等の読み取り媒体を選択することもできる。ファイル一覧表示欄492からファイルを選択して「実行」ボタン493を押下すると、三次元CADデータの読み込みが実行される。
(登録モデル選択部)
In the CAD
(Registered model selection part)
三次元CADデータが読み込まれると、サーチモデルとして登録する面を選択する。ここでは図104に示すサーチモデル登録画面510が表示されて、ワークモデルの基本方向画像に対応する六面図が登録モデル選択画面511に自動的に表示される。この状態でユーザは、登録したい面を選択できる。ここでは、デフォルトでチェックボックスがONされており、サーチモデルとして登録が不要な面についてはチェックボックスをOFFにすることで、サーチモデルから排除することができる。このようにして登録対象を選択すると、「次へ」ボタン512を押下して図105のサーチモデル登録画面520に進む。
(回転対称指定部)
When the three-dimensional CAD data is read, a surface to be registered as a search model is selected. Here, the search
(rotational symmetry specification part)
図105のサーチモデル登録画面520では、回転対称指定ダイヤログ521が表示されており、ユーザは登録対象として選択した基本方向画像の内、回転対称性を有するものについて、上下や前後、左右など、回転させても対称な形状を有する面を設定できる。このようにして回転対称性の設定を終えると、「登録」ボタンを押下して、サーチモデルの登録を実行する。
In the search
サーチモデルが登録されると、図106のサーチモデル登録画面530のように、モデル一覧表示欄391に登録されたサーチモデルが一覧表示される。なお一のワークに対して、複数のサーチモデルを登録可能であることは上述の通りである。例えば図106の例では、モデル番号0の三次元CADワークモデルに対して、図105等で示したA、B、C、D、E、Fの6つのサーチモデルを登録している。よってモデル一覧表示欄391には、モデル番号0のサーチモデルA~Fが一覧表示されている。モデル一覧表示欄391において一画面で表示しきれないサーチモデルは、スクロールして表示を切り替えることができる。
(サーチモデル編集部)
When the search model is registered, a list of the registered search models is displayed in the model
(Search model editorial department)
さらに、登録済みのサーチモデルを編集することもできる。図106の例では、操作欄142の「編集」ボタン531を押下すると、図114に示すモデル編集画面620が表示される。このモデル編集画面620では、画像表示欄141に登録済みのサーチモデルが表示されると共に、操作欄142には、設定済みの項目が表示される。ここでは、モデル領域設定欄621、特徴設定欄622として背景除去設定欄327、回転対称設定欄382、モデル登録欄623としてモデル番号表示欄が設けられる。ユーザは変更したい項目を選択して適宜変更することができる。
(モデル領域詳細設定部)
Furthermore, it is also possible to edit registered search models. In the example of FIG. 106, pressing the "Edit"
(Model area detail setting part)
モデル領域設定欄621に設けられた詳細設定ボタン624を押下すると、図115に示すモデル領域詳細設定画面630が表示される。モデル領域詳細設定画面630は、画像表示欄141に表示されたモデル領域362の範囲内に、サーチモデルの登録対象から除外したい領域としてマスク領域を設定することが可能となる。操作欄142には、モデル領域指定欄621、マスク領域指定欄631、重み付け領域指定欄632が設けられている。マスク領域指定欄631では、複数のマスク領域を設定できる。各マスク領域は、矩形状や円形などの規定の図形の他、自由曲線や境界部分の自動検出などによって設定できる。また各マスク領域とは別に、重み付け領域指定欄632でもって重み付けを設定することができる。
When a
サーチ結果に対するスコア付けを行う際に、サーチモデルに含まれる他の特徴点よりも重視したい特徴点の箇所があれば、重み付け領域で囲むことでスコア結果を調整することができる。例えば、全体の形状の中で一部の特徴の有無によってサーチモデルの特定に繋がったり、回転方向の姿勢が定まるような形状があった場合に、その重要な特徴に対して重み付け領域を設定することで、サーチの検出能力を向上させることができる。また、他の特徴点に対する重み付け度合を、比率によって指定することもできる。例えば、重み付け度合を「3」と設定した場合には、他の特徴点よりも3倍の影響度でスコア値を算出するように調整できる。
(特徴詳細設定部)
When the search results are scored, if there is a feature point that is to be emphasized more than other feature points included in the search model, the score result can be adjusted by surrounding it with a weighting area. For example, if there is a shape in which the presence or absence of some features in the overall shape leads to the identification of the search model, or if there is a shape in which the posture in the direction of rotation is determined, a weighting region is set for that important feature. By doing so, it is possible to improve the detection capability of the search. Also, the degree of weighting for other feature points can be designated by a ratio. For example, when the weighting degree is set to "3", the score value can be calculated with the degree of influence three times higher than that of other feature points.
(Feature detail setting section)
さらに、特徴設定欄622に設けられた詳細設定ボタン625を押下すると、図116に示す特徴詳細設定画面640が表示される。特徴詳細設定画面640では、画像表示欄141に表示されたモデル領域362に対して、特徴設定や回転対称の有無を設定する。操作欄142には、特徴詳細設定欄641と回転対象設定欄382が設けられる。特徴詳細設定欄641には、特徴の抽出間隔を指定する特徴抽出間隔指定欄642、背景除去設定欄327、エッジ抽出閾値設定欄643が設けられる。特徴の抽出間隔は、サーチモデル生成時の特徴点の抽出間隔に影響するパラメータであり、「精度優先」と「標準」と「速度優先」が選択できるようになっている。「精度優先」を選択した場合、サーチモデルにおける特徴点の抽出間隔が狭くなり、より細かい特徴まで捉えられて検出精度が上がる反面、データ量が増えて処理時間は遅くなる。一方、「速度優先」を選択した場合、サーチモデルにおける特徴点の抽出間隔が広くなり、細かい特徴が抜けて検出精度が下がる反面、データ量が少なくなり処理時間は速くなる。用いるワークの形状や大きさや、許容される処理時間・検出精度によって、調整することができる。
Further, when a
このようにしてユーザは、簡易三次元サーチの結果や得られたスコアなどを参照しながら、より適切なサーチ結果が得られるように、必要な項目を調整できる。このようにしてサーチモデルの登録を終えると、これに続く以降の手順(サーチ領域設定、サーチパラメータ設定)は、上述した図96~図101で説明した、実ワークを撮像してサーチモデルを登録する手順と同様であり、説明を省略する。 In this way, the user can refer to the results of the simple three-dimensional search, the scores obtained, etc., and adjust the necessary items so as to obtain more appropriate search results. After the registration of the search model is completed in this way, the subsequent procedures (search area setting, search parameter setting) are performed by imaging the actual workpiece and registering the search model, as explained with reference to FIGS. The procedure is the same as the procedure for performing this procedure, so the explanation is omitted.
以上のようにして事前にサーチモデルを登録した上で、三次元サーチを行う。三次元サーチは、実運用、すなわちバラ積みされたワーク群をセンサ部で撮像して、把持可能なワークの把持位置を特定するバラ積みピッキングを行う際に用いる他、事前に三次元ピックのシミュレーションを行う場合等にも用いられる。三次元ピックのシミュレーションとは、三次元サーチ部8kでサーチされた各サーチ結果に対して、把持位置特定部8dで予めワークモデルに対して指定された把持位置にて、エンドエフェクタで把持可能か否かを判定する動作である。
(サーチ結果表示部)
After registering the search model in advance as described above, the three-dimensional search is performed. The 3D search is used in actual operation, that is, when picking a group of randomly piled workpieces by imaging them with a sensor and specifying the gripping position of a workpiece that can be gripped. It is also used when performing The three-dimensional pick simulation refers to whether or not each search result searched by the three-
(Search result display area)
次に、バラ積みされたワークに対して三次元サーチを行う例を、図107~図113に基づいて説明する。図107は、バラ積みされたワーク群に対して三次元サーチを実行した結果を示すサーチ結果表示画面540の例を示している。サーチ結果表示画面540には画像表示欄141と操作欄142が設けられ、操作欄142には三次元サーチに用いたサーチモデルの一覧がモデル一覧表示欄391に縦方向に表示される。一方画像表示欄141には、入力画像として得られたバラ積み状態のワークに対して、サーチ結果として得られたワークに重ねて、サーチ結果である点群と、その評価指標であるスコアを表示させている。
(サーチ結果一覧部)
Next, an example of performing a three-dimensional search on randomly stacked works will be described with reference to FIGS. 107 to 113. FIG. FIG. 107 shows an example of a search
(Search result list section)
また画像表示欄141の上段には、サーチ結果一覧表示欄541が設けられ、サーチされたサーチ結果に対して、用いたサーチモデルとスコアの一覧が表示される。ここでは、サーチされた個数、ワークの有無、総体積/ワークの体積、特定のラベル番号のサーチ結果のモデル番号やスコア、位置(X,Y,Z)などが表示される。総体積/ワークの体積は、床面や通い箱の底面よりも高い位置にある点群の総体積を、登録されているサーチモデルから想定される平均体積で割った値を示しており、入力画像中に、ワークが何個相当分存在するかを示したデータとなる。この数値が一定以上大きい場合、ワークの有無の結果が有り(1)と判定される。サーチされた個数が0個で把持解が得られなかった場合などに、このワーク有無の結果が有りか無しかを確認することで、ワークが実際になくなった状態でピッキングが終了したのか、ワークが残存した状態で終了したのかを確認することができる。
A search result
サーチ結果一覧表示欄541の表示は切り替えることができる。例えば図107に示すサーチ結果表示画面540のサーチ結果一覧表示欄541の右下に、表示内容を切り替える切り替えボタン542が設けられている。切り替えボタン542は左右の矢印で構成されており、さらにその上部に画面数543が表示されている。この例では画面数543として11画面中の1番目であることを示す「1/11」が表示されており、切り替えボタン542を押下して番号を上限させることで、これに応じてサーチ結果一覧表示欄541の表示内容を切り替えることができる。例えば切り替えボタン542を操作して画面数543を「2/11」に変更すると、図108に示すサーチ結果表示画面550に切り替わり、サーチ結果一覧表示欄541には三次元サーチ結果の概要が表示される。ここではサーチされた個数、ワークの有無、総体積/ワークの体積に加え、傾斜角度、回転角度、姿勢(RX,RY,RZ)等が表示される。また画面数543を「3/11」に変更すると、図109に示すサーチ結果表示画面560に切り替わり、サーチ結果一覧表示欄541には三次元サーチ結果の概要として、サーチされた個数、ワークの有無、総体積/ワークの体積に加え、床面の情報としてXYZの傾き等が表示される。
The display of the search result
さらに画面数543を「4/11」に変更すると、図110に示すサーチ結果表示画面570に切り替わり、サーチ結果一覧表示欄541には三次元サーチ結果の概要として、サーチ結果を識別するラベル番号毎に、このサーチ結果の検出に用いたサーチモデルのモデル番号とスコアを横方向に表示している。さらにまた画面数543を「5/11」に変更すると、図111に示すサーチ結果表示画面580に切り替わり、サーチ結果一覧表示欄541には三次元サーチ結果の概要として、サーチ結果を識別するラベル番号毎に、位置(X,Y,Z)が表示される。さらにまた画面数543を「6/11」に変更すると、図112に示すサーチ結果表示画面590に切り替わり、サーチ結果一覧表示欄541には三次元サーチ結果の概要として、サーチ結果を識別するラベル番号毎に傾斜角度及び回転角度が表示される。さらにまた画面数543を「7/11」に変更すると、図113に示すサーチ結果表示画面610に切り替わり、サーチ結果一覧表示欄541には三次元サーチ結果の概要として、サーチ結果を識別するラベル番号毎に姿勢(RX,RY,RZ)が表示される。
(三次元ピック)
Further, when the number of
(three-dimensional pick)
次に、三次元サーチされた各サーチ結果に対して、エンドエフェクタで把持可能か否かを判定する三次元ピックのシミュレーションを行う手順について、図117~図149に基づいて説明する。図89の機能選択画面340において、「3Dピック」ボタン343を押下すると、図117の三次元ピック初期設定画面650が表示され、ユーザに対して三次元ピックを行うために必要な設定を順次行うよう、ガイダンス機能が実行される。ここでは、操作欄142の上段に、3Dピックガイダンス欄655が表示され、順次行われる作業がアイコンで表示される。この例では、「初期設定」、「把持登録」、「条件・懸賞」、「プレース設定」の4つの工程が表示されている。
(三次元ピック初期設定画面)
Next, a procedure for simulating a three-dimensional pick to determine whether or not each search result of the three-dimensional search can be gripped by the end effector will be described with reference to FIGS. 117 to 149. FIG. When the "3D pick"
(3D pick initial setting screen)
図117の三次元ピック初期設定画面650では、まず三次元ピックを行うための初期設定を行う。操作欄142上段の3Dピックガイダンス欄655では、「初期設定」アイコンがハイライト表示され、ユーザに対してこの段階で行うべき作業が示される。操作欄142には、キャリブレーションデータ選択欄651と、検出ツール設定欄652と、ハンド登録欄653が設けられる。キャリブレーションデータ選択欄651では、予め画像処理装置で表示される座標系を、ロボットコントローラがエンドエフェクタを動作させる座標系に座標変換するために演算されたキャリブレーションデータを呼び出して登録する。検出ツール設定欄652では、ワークを検出するための手段を指定する。この例では、ツール番号100番に設定されたワーク検出用三次元サーチが選択されている。上述した三次元サーチの設定を経て登録されたサーチモデルの設定が読み込まれる。別のツール番号に異なるワークのサーチモデルが予め設定されていた場合、この検出ツールの選択を切り替えることで、三次元ピックの設定対象を切り替えることができる。
(エンドエフェクタモデル設定部)
On the 3D pick
(End effector model setting part)
ハンド登録欄653では、エンドエフェクタモデルを登録する。ここで「ハンドモデルの作成」ボタン654を押下すると、図118に示すエンドエフェクタモデル設定画面660が表示される。エンドエフェクタモデル設定画面660では、登録済みのエンドエフェクタモデルの一覧が、ハンドモデル一覧表示欄661に表示される。図118の例は未登録のため、画像表示欄141にも、操作欄142のエンドエフェクタモデル一覧表示欄661にも、エンドエフェクタモデルは表示されていない。そこで、「追加」ボタン662を押下して、エンドエフェクタモデルを追加する。なおエンドエフェクタモデル設定画面660の画像表示欄141には、エンドエフェクタモデルを配置するロボットのアーム部先端の基準面としてフランジ面FLSが表示される。さらに、エンドエフェクタモデルEEM側の座標軸を示すツール座標軸TAXも表示される(詳細は後述)。
(エンドエフェクタモデル編集部)
In the
(End effector model editorial department)
図118で「追加」ボタン662を押下すると、図119に示すエンドエフェクタモデル編集画面670が表示される。エンドエフェクタモデル編集画面670では、エンドエフェクタモデルを構成するパーツを設定する。ここでは、登録済みのパーツがパーツ一覧表示欄671に表示される。図119の例では未だパーツが登録されていないため、パーツ一覧表示欄671には何も表示されていない。この状態で「追加」ボタン672を押下すると、図120に示すパーツ追加ダイヤログが表示され、追加するパーツをCADデータを読み込んで登録するか、直方体モデル、または円柱モデルで新たに作成するかをラジオボタンで選択する。なお、追加パーツは上述した追加領域の一形態であり、直方体や円柱に限らず、角柱状や三角形状、球状等、任意の形状を利用できる。図120の例ではCADデータを選択している。「追加」ボタン681を押下して作成済みの三次元CADデータを選択すると、図121に示すCAD位置姿勢設定画面690となり、三次元CADデータが読み込まれて画像表示欄141にCADで作成されたCADモデルCDMが表示されると共に、操作欄142には、このCADモデルCDMの位置及び姿勢を指定する位置姿勢欄691が表示される。CADモデルCDMの位置及び姿勢は、フランジ面FLSを基準に指定される。ユーザは、位置姿勢欄691から、エンドエフェクタモデルの取付位置や角度を指定する。例えば図121の状態から回転角RXとして20°を指定すると、図122に示すように画像表示欄141で表示されるCADモデルCDMが、X軸を中心として20°回転した姿勢に表示される。あるいは図121の状態からZ方向に50mmを指定すると、図123に示すようにCADモデルCDMがZ方向に50mmオフセットされて表示される。このようにしてCADモデルCDMの位置及び姿勢を調整して、図121の「OK」ボタン692を押下すると、CADデータが登録されて、パーツ一覧表示欄671に表示される。
When the "Add"
パーツは複数を追加することができる。例えば図124のエンドエフェクタモデル編集画面から「追加」ボタン682を押下して、図120のパーツ追加ダイヤログ680で円柱モデルを選択して「追加」ボタン681を押下すると、図125の追加領域位置姿勢設定画面となり、画像表示欄141には新たに追加領域ADAとして、円柱状のモデルが表示される。なお、編集中のパーツはハイライト表示される。図125の例では、追加領域ADAが赤色で表示され、CADモデルCDMは灰色やワイヤフレームで表示される。これによってユーザに対し、現在編集中のパーツを視覚的に把握させ易くできる。また同様に、追加される追加領域ADAの位置及び姿勢を位置姿勢欄691から指定する。この例では位置姿勢欄691でZ位置を-50mmに指定しており、フランジ面FLSからCADモデルCDMと逆方向に追加領域ADAが配置されている。また追加領域ADAのサイズとして、円柱状モデルの半径や高さをサイズ指定欄693で指定できる。このようにして追加領域ADAの条件を設定した後、「OK」ボタン692を押下すると、追加領域ADAが登録されて、図126に示すようにエンドエフェクタモデル編集画面のパーツ一覧表示欄671に円柱が追加されて表示される。
(ツール座標指定部)
Multiple parts can be added. For example, when the "Add" button 682 is pressed from the end effector model edit screen of FIG. 124, the cylinder model is selected in the
(Tool coordinate specification part)
また、登録されたパーツの位置及び姿勢を調整することもできる。例えば図126のエンドエフェクタモデル編集画面から、選択されるパーツを追加領域ADAからCADモデルCDMに、画像表示欄141またはパーツ一覧表示欄671から変更すると図127のようになり、この状態でユーザは、ツール座標指定欄673で、位置(X,Y,Z)及び姿勢(RX,RY,RZ)を調整できる。例えば図128に示すように、Z位置を145mmに指定すると、画像表示欄141においてツール座標軸TAXが、指定された距離だけフランジ面FLSからZ方向に移動されて表示される。さらにこの状態で図129に示すように回転RXを20°に指定すると、ツール座標軸TAXがX軸を中心に時計回りに20°回転されて表示される。
It is also possible to adjust the position and orientation of the registered parts. For example, if the part to be selected is changed from the additional area ADA to the CAD model CDM from the end effector model edit screen of FIG. , the position (X, Y, Z) and orientation (R X , R Y , R Z ) can be adjusted in the tool coordinate
このようにして複数のパーツを登録していき、これらを組み合わせてエンドエフェクタモデルEEMを構築していく。各パーツの設定が終わると、図128等のエンドエフェクタモデル編集画面で「OK」ボタン674を押下すると、複数のパーツが合成されてエンドエフェクタモデルEEMとして登録され、図130のエンドエフェクタモデル設定画面660に示すように、ハンドモデル一覧表示欄661に「ハンド0」として表示される。また、画像表示欄141には、ばらばらに表示されていたパーツが一体のエンドエフェクタモデルEEMとして表示される。
A plurality of parts are registered in this way, and the end effector model EEM is constructed by combining them. When the setting of each part is completed, pressing the "OK"
なお、この例ではパーツを組み合わせてエンドエフェクタモデルを構成する例を説明したが、パーツは必ずしもエンドエフェクタモデルやその一部に限定されず、例えばケーブル類などをパーツで表現することもできる。このようにパーツは、エンドエフェクタモデルの一部やその表面に追加した物体、あるいは周辺部材などを表現する追加モデルの一形態をなす。
(把持基準点HBP)
In this example, an example in which parts are combined to form an end effector model has been described, but parts are not necessarily limited to end effector models or parts thereof, and cables and the like can also be represented by parts. In this way, a part is a form of an additional model representing a part of the end effector model, an object added to its surface, or a peripheral member.
(Grip reference point HBP)
さらに、エンドエフェクタモデルEEMの把持基準点HBPが、画像表示欄141に重ねて表示される。把持基準点HBPは、エンドエフェクタモデルEEMでワークを把持する位置を示している。例えば、エンドエフェクタモデルEEMの内、ワークを把持する爪部同士の間の中間を把持基準点HBPとする。なお、把持基準点HBPは、所定の規則に従って決定されるように画像処理装置側で演算する他、ユーザが任意の位置を指定できるように構成してもよい。
Furthermore, the gripping reference point HBP of the end effector model EEM is superimposed on the
さらに、エンドエフェクタモデルEEMの位置及び姿勢を規定するツール座標軸も、画像表示欄141に重ねて表示させることが好ましい。このツール座標軸は、エンドエフェクタモデルEEMの回転に応じて変化させた回転済み座標軸RAXとすることが好ましい。さらに、回転済み座標軸RAXの原点を、把持基準点HBPと一致させることがより好ましい。これによって、把持位置を設定する際のエンドエフェクタモデルEEMの状態をユーザが視覚的に把握し易くできる。
(把持登録部)
Furthermore, it is preferable that the tool coordinate axes that define the position and orientation of the end effector model EEM are also displayed superimposed on the
(Grip registration unit)
このようにして初期設定としてエンドエフェクタモデルEEMが登録されると、次に把持位置の登録を行う。図131の把持登録画面710では、3Dピックガイダンス欄655でハイライト表示が「初期設定」アイコンから「把持登録」アイコンに移る。操作欄142には、登録済みのサーチモデルを選択するサーチモデル切替欄711と、サーチモデル切替欄712で選択されたサーチモデルに対して、登録された把持位置の一覧を示す把持登録一覧表示欄712が表示されている。なお上述の通り、この例では把持位置を登録するワークモデルを、三次元サーチに用いるサーチモデルと共通にしている。ここでは、サーチモデル切替欄711には、登録済みのサーチモデルとして、図104で登録したモデル番号0のサーチモデルA~Fの6つが登録されているものとする。また図131の例では、未だ把持位置が登録されていないため、把持登録一覧表示欄712には何も表示されていない。サーチモデル切替欄711ではサーチモデルAが選択されており、画像表示欄141にはAに対応するサーチモデルSMAが表示されている。さらに、サーチモデルSMAの位置姿勢を示す座標軸である基準座標軸BAXが重ねて表示されている。この状態からユーザは、サーチモデルAに対して把持位置を登録していく。具体的には「追加」ボタン713を押下すると、図132の把持登録画面に切り替わり、把持設定ダイヤログ720が表示される。
(把持設定部)
After the end effector model EEM is registered as the initial setting in this manner, the holding position is registered. On the
(Grip setting part)
把持設定ダイヤログ720では、操作欄142に、基本設定欄721と、把持位置座標指定欄724と、移動量設定欄727が設けられている。基本設定欄721は、把持ラベル設定欄722とハンド選択欄723を設けている。把持ラベル設定欄722では、把持位置を特定する識別情報である把持ラベルを設定する。ここでは把持ラベルとして、サーチモデルを示す「A」と、把持位置の通し番号「000」を設定している。またハンド選択欄723では、把持ラベル設定欄722で設定された把持位置を把持するエンドエフェクタモデルEEMを選択する。この例ではハンド選択欄723で「ハンド0」が選択されており、これに応じて画像表示欄141には、エンドエフェクタモデルEEMが表示される。このように、把持位置は、エンドエフェクタモデルEEMと紐付けて設定される。
In the
把持位置座標指定欄724では、把持位置を示す座標位置(X,Y,Z)と姿勢(RX,RY,RZ)を、ユーザが数値で直接指定可能な座標姿勢指定欄725と、把持位置の設定をユーザに案内するガイダンス機能を実行するための「簡単設定ナビ」ボタン726が設けられる。
In the grip position coordinate
また移動量設定欄727では、エンドエフェクタモデルEEMを移動させる方向を規定する。ここではエンドエフェクタモデルEEMでサーチモデルSMAを把持するように、エンドエフェクタモデルEEMをサーチモデルSMAに近付けるアプローチ移動量を、X方向、Y方向、Z方向の距離として規定している。図132の例では、Z方向に100mm移動させる例を示している。
(把持位置設定ガイダンス機能)
Also, in the movement
(Grip position setting guidance function)
図132の画面から「簡単設定ナビ」ボタン726を押下すると、把持位置設定ガイダンス機能が実行される。具体的には図133に示すように設定方法選択ダイヤログ730が表示され、ユーザに対し、把持位置を三次元ビューワを使って設定するか、あるいはロボットを使って選択するかの何れかを、ラジオボタンで選択させる。この例では、三次元ビューワ上で設定することを選択している。この状態で「OK」ボタン731を押下すると、三次元ビューワ上での登録ガイダンス機能が実行される。
(三次元ビューワ上での登録ガイダンス機能)
When the "simple setting navigation"
(Registration guidance function on 3D viewer)
三次元ビューワ上での登録ガイダンス機能では、4つの工程を経て把持位置を登録させる。ここでは、図134~図141に示す三次元ビューワ登録画面を経て、ユーザに対し把持位置を指定させる。具体的には図133で「OK」ボタン731を押下すると、図134のX-Y指定画面740に切り替わる。
(第一工程:X-Y指定)
In the registration guidance function on the 3D viewer, the gripping position is registered through four steps. Here, the user is prompted to specify the gripping position through the three-dimensional viewer registration screens shown in FIGS. Specifically, when the "OK"
(First step: XY designation)
図134では、X-Y指定部の一形態としてX-Y指定画面740が表示される。ここでは、把持位置を登録するための第一工程として、サーチモデルSMAを平面図状に表示させた状態で、平面図上から把持位置を指定させる。具体的には、サーチモデルSMAをXY平面における二次元状に画像表示欄141に表示させて、把持するX、Y座標をサーチモデルSMA上で指定させる。操作欄142には、STEP1として、ユーザに対し行うべき作業をテキスト等で説明する。ここでは「把持するXY位置をカメラ画像上で選択してください。」と表示される。また図134の例では、画像表示欄141には、サーチモデルAが高さ画像(サーチモデルSMA)として拡大表示されており、この状態でユーザはマウス等のポインティングデバイスを用いて、把持する部位P1を選択する。この把持指定位置P1に応じて、XY座標がXY座標指定欄741に入力される。また、XY座標指定欄741のX座標、Y座標を調整すると、これに応じて画像表示欄141の把持指定位置P1も更新される。なお、このX-Y指定画面740では、位置パラメータの内、X座標とY座標の指定のみを可能としており、言い換えると他の位置パラメータの指定は不可能としている。このように、従来のような多数の位置パラメータを同時に設定可能としたことでユーザが混乱する事態を避け、設定可能な位置パラメータを制限することで、ユーザは設定可能な位置パラメータを的確に把握して、順次位置パラメータを設定するように案内される。このようにしてXY座標の指定を終えると、「次へ」ボタン742を押下する。これにより、第二工程に移り、図135のZ-RZ指定画面750に切り替わる。
(第二工程:Z-RZ指定)
In FIG. 134, an
(Second process: Z-R Z designation)
図135のZ-RZ指定画面750は、Z-RZ指定部の一形態であり、Z座標と姿勢RZをユーザに指定させるための画面である。操作欄142には、第二工程でユーザが行うべき作業をテキストで表示して説明する。ここでは「STEP2 把持するZ位置と、ハンドの姿勢角度RZを指定してください」と表示させている。また操作欄142には、Z-RZ指定欄751として、Z位置を指定するZ指定欄752とRZ姿勢を指定するRZ指定欄753が設けられる。また画像表示欄141には、エンドエフェクタモデルEEMとサーチモデルSMAが三次元状に表示されている。すなわち画像表示欄141は、エンドエフェクタモデルやサーチモデルを三次元状に表示させる三次元ビューワとして機能する。Z指定欄752やRZ指定欄753の数値を変更すると、これに応じて画像表示欄141のエンドエフェクタモデルEEMやサーチモデルSMAの三次元状表示内容が更新される。また、画像表示欄141をドラッグすることで、ユーザは三次元ビューアの視点を変更することができるため、把持の設定状態を詳細に確認することができる。
A ZRZ
加えて三次元ビューワである画像表示欄141には、座標軸の内、現在設定中の位置パラメータに関する座標軸として、Z軸のみを表示させている。このZ軸は、上述したZ-Y-Xオイラー角で表示した補正後の補正回転Z軸AXZである。このように、現在調整可能な座標軸のみを表示させ、さらに他の位置パラメータの調整をこの画面上では不可能とすることで、ユーザに対して無用な混乱を生じさせず、所定の順序に従い適切な位置パラメータのみを順次設定させるように適切に案内することが実現される。
In addition, in the
また図135等の例では、把持基準点HBPを通って把持方向の軸(ここでは補正回転Z軸AXZ)が延びるように表示させることで、ユーザに対し、エンドエフェクタモデルEEMをワークモデルに近付けるための移動方向を判り易く示すことができる。また、エンドエフェクタモデルの移動方向を矢印で示すように構成してもよい。この際、エンドエフェクタモデルの移動方向は、把持方向の軸上に重ねて表示してもよいし、あるいは別の位置に表示させてもよい。 Also, in the example of FIG. 135 and the like, the end effector model EEM is brought closer to the work model for the user by displaying the gripping direction axis (here, the correction rotation Z-axis AXZ) extending through the gripping reference point HBP. It is possible to clearly indicate the direction of movement for the purpose. Alternatively, the direction of movement of the end effector model may be indicated by an arrow. At this time, the movement direction of the end effector model may be displayed superimposed on the gripping direction axis, or may be displayed at a different position.
さらにZ-RZ指定画面750は、相対位置設定部の一形態として「フィット」ボタン154を設けている。上述の通り「フィット」ボタン154は、エンドエフェクタモデルをワークモデルの把持位置に自動的に移動させるフィット機能を実現する。「フィット」ボタン154を押下すると、図136に示すようにエンドエフェクタモデルEEMが移動され、サーチモデルSMAに接触された状態に変化する。すなわち、エンドエフェクタモデルEEMの把持基準点HBPが、サーチモデルSMAの把持指定位置P1に向かって移動される。この移動方向がZ軸と一致するように、図135の状態で、エンドエフェクタモデルEEMの表示させる際の初期位置を調整することが好ましい。これによって、エンドエフェクタモデルEEMをZ方向にのみ移動させることで、サーチモデルSMAに接触させることができ、感覚的に判り易く表示させることができる上、ユーザがエンドエフェクタモデルEEMを移動させる作業も簡便に行える。
Furthermore, the ZR Z designation screen 750 is provided with a “fit”
また画像表示欄141におけるエンドエフェクタモデルEEMの移動に応じて、操作欄142におけるZ指定欄752のZ位置が変更される。この例では、図135の200mmから50mmに変更されている。ここでは、フィット機能により、図134で指定された把持指定位置P1に向かって、エンドエフェクタモデルEEMを高さ方向すなわちZ軸方向に移動させたとき、サーチモデルSMAに接触する位置を基準として、ここから所定のオフセット量だけ手前に戻した位置に移動される。また、把持指定位置P1を基準として、座標軸の内、現在設定中のZ軸のみを画像表示欄141に表示させている。
Also, according to the movement of the end effector model EEM in the
この状態でユーザは、さらに姿勢RZをRZ指定欄753から指定する。図136に示すエンドエフェクタモデルEEMの姿勢では、ハ字状に傾斜されたサーチモデルSMAの側面を把持している状態となっているため、エンドエフェクタモデルEEMをZ軸方向に回転させて、平行な面を把持するように調整する。この際、RZ指定欄753にユーザが直接回転角を入力する他、所定の角度を入力する角度選択ボタン754を設けることで、より簡便にエンドエフェクタモデルEEMの回転を指定することができる。この例では角度選択ボタン754として、0°、90°、180°、-90°の4つの角度ボタンを配置している。ユーザは90°ボタンを押下することで、RZ指定欄753に90°が入力されて、図137に示すようにエンドエフェクタモデルEEMがZ軸方向に90°回転され、サーチモデルSMAを正しく把持できる状態に修正できる。
(第三工程:RY指定)
In this state, the user further designates the posture R Z from the R Z designation field 753 . In the posture of the end effector model EEM shown in FIG. 136, the side surface of the search model SMA inclined in a V shape is gripped. Adjust to grip a smooth surface. At this time, the rotation of the end effector model EEM can be designated more simply by providing an
(Third process: R Y designation)
このようにして第二工程のZ-RZ指定を終えると、「次へ」ボタン755を押下して、第三工程のRY指定に進む。具体的には、「次へ」ボタン755を押下すると、図138のRY指定画面760に移行する。RY指定画面760はRY指定部の一形態であり、姿勢RYを指定する。RY指定画面760の操作欄142には、RY指定欄761が表示され、またユーザに対して第三工程で行うべき作業として、「STEP3 ハンドの姿勢角度RYを指定してください」と表示される。さらに画像表示欄141には、座標軸の内、現在設定中のY軸である補正回転Y軸AXYのみを表示させている。この状態からユーザは、サーチモデルSMAを把持するエンドエフェクタモデルEEMの姿勢に応じて、姿勢RYをRY指定画面760から指定する。あるいは三次元ビューワである画像表示欄141上で、エンドエフェクタモデルEEMをドラッグして回転させる。例えば図138の状態で、RY指定画面760から姿勢RYとして90°を指定すると、図139のRY指定画面に切り替わり、エンドエフェクタモデルEEMがY軸を中心に90°回転された姿勢に表示される。このようにして第三工程のRY指定を終えると、「次へ」ボタン762を押下して、第四工程のRY指定に移行する。
(第四工程:RY指定)
After completing the ZR Z specification of the second step in this manner, the "next"
(Fourth step: R Y designation)
図140は、第四工程のRX指定画面770を示している。RX指定画面770はRX指定部の一形態であり、姿勢RXを指定するためのRX指定欄771を設けている。また画像表示欄141には、エンドエフェクタモデルEEMとサーチモデルSMAに重ねて、座標軸の内でRX指定画面770で設定可能な位置パラメータRXに関するX軸である補正回転X軸AXXが表示される。この状態でユーザは、RX指定欄771から姿勢RXを指定する。あるいは画像表示欄141でエンドエフェクタモデルEEMをドラッグして回転させる。例えば姿勢RXとして、図140の例ではRX指定欄771に、現在の把持位置と対応して180°が入力されているところ、150°を指定すると、図141のように、指定された姿勢RXに応じてエンドエフェクタモデルEEMとサーチモデルSMAの姿勢が三次元ビューワである画像表示欄141において変化する。
FIG. 140 shows the R X designation screen 770 of the fourth step. The R X designation screen 770 is one form of the R X designation section, and is provided with an R X designation field 771 for designating the posture R X . In the
このようにして姿勢RXの指定を終えると、「完了」ボタン772を押下して、把持位置を登録を終了する。把持位置が登録されると、図142に示すように、把持登録一覧表示欄712に、把持登録A-000が追加される。また把持登録A-000と対応するサーチモデルAが、サーチモデル切替欄711においてハイライト表示される。さらに画像表示欄141には、この把持登録されたエンドエフェクタモデルEEMの位置及び姿勢でサーチモデルSMAを把持する様子が三次元状に表示される。さらに座標軸として、サーチモデルSMA側の基準座標軸BAXが重ねて表示されている。
After specifying the posture R X in this way, the user presses the "Complete"
以下同様にして、サーチモデルAに別の把持位置を登録したり、あるいは他のサーチモデルB~Fに、把持位置を追加していく。把持位置の追加は、上述の通り把持登録一覧表示欄712に設けられた「追加」ボタン713を押下することで行える。図143の例では、サーチモデルBに対する把持登録B-000を登録した例を示している。
(コピー機能)
In the same way, other gripping positions are registered in search model A, or gripping positions are added to other search models BF. A gripping position can be added by pressing the “Add”
(copy function)
また、把持位置を追加登録する際に、既に登録した把持位置をコピーするコピー機能を利用できる。図142等の画面で把持登録一覧表示欄712に設けられた「コピー」ボタン714を押下すると、登録済みの把持位置を複製できる。さらにコピーした把持位置をベースにして修正することで、効率的に把持位置の登録作業を行うこともできる。図142等の状態から、「編集」ボタン715を押下すると、把持設定ダイヤログが表示されて、上述の通り把持位置の設定を行うことができる。ここで、上述の通り「簡単設定ナビ」ボタン726を押下して把持位置設定ガイダンス機能を実行し、必要な箇所を修正することもできる。
(条件検証画面780)
Also, when additionally registering gripping positions, a copy function for copying already registered gripping positions can be used. By pressing a "copy"
(Condition verification screen 780)
以上のようにしてサーチモデルA~Fに把持位置を登録し終えると、図143等の画面で「完了」ボタン716を押下して、把持登録工程を終了し、条件検証工程に移行する。条件検証工程においては、バラ積みされたワーク群に対して、三次元サーチを行いワークを検出して、このワークを指定された把持位置でエンドエフェクタで把持できるかを検証する。ここでは、エンドエフェクタモデルEEMとサーチモデルを用いてシミュレーションを行う。条件検証画面780の例を図144に示す。この条件検証画面780では、3Dピックガイダンス欄655でハイライト表示が「把持登録」アイコンから「条件・検証」アイコンに移る。操作欄142には、三次元サーチ結果を元に把持位置を検出する条件を設定する検出条件設定欄781と、検出されたワークの把持可否を検証するための検証欄785が設けられる。検出条件設定欄781では、検出する把持解の個数の上限を指定する検出個数指定欄782と、エンドエフェクタモデルの傾斜角度の上限を指定するハンド傾斜角度上限指定欄783と、エンドエフェクタモデルが干渉する範囲を拡張するため、収納容器の壁面からのマージンを設定するマージン設定欄784を設けている。マージン設定欄784で指定された距離(図144では5mm)の範囲に、エンドエフェクタモデルEEMが浸入すると、干渉すると判断される。
After registering the gripping positions in the search models A to F as described above, the user presses the "Complete"
一方、検証欄785には、三次元サーチのシミュレーションの結果、実際に検出されたサーチ結果の個数を示す検出個数表示欄786と、検出されたサーチ結果の内で検証したいサーチモデルのラベル番号を指定する表示ラベル指定欄787と、ワーク毎に検証を実行するための「ワーク毎の検証」ボタン788を設けている。表示ラベル指定欄787で指定されたラベル番号のサーチ結果が、画像表示欄141に表示される。
(ワーク毎の検証)
On the other hand, in the
(Verification for each workpiece)
また「ワーク毎の検証」ボタン788を押下すると、図145に示す検証ダイヤログ790が表示される。検証ダイヤログ790は、図74で説明したワーク選択画面210の一形態である。図145の検証ダイヤログ790では、検出されたワーク毎に、把持可能かどうかを検証する。この例では、検証ダイヤログ790は対象ワーク選択欄791と、検出サーチモデル表示欄792と「把持確認」ボタン793を設けている。「把持確認」ボタン783を押下すると、図146に示す検出結果表示ダイヤログ810が表示される。この検出結果表示ダイヤログ810は、図75等で示した把持解候補表示画面220の一形態である。ここでは、対象ワーク選択欄791で選択したワーク(図145では2番目のワーク)に対して検出された面(サーチ画像及び推定画像)毎に、設定された把持位置での把持可否の判定結果が把持解候補表示欄811に一覧表示される。図146の例では把持ラベルC-000が選択されており、これに応じて画像表示欄141には、対応する把持位置にエンドエフェクタモデルEEMを配置して表示させると共に、判定結果に応じてエンドエフェクタモデルEEMを着色表示させる。この例では、判定結果がNGであるため、エンドエフェクタモデルEEMは赤色に表示される。また把持解候補表示欄811には、把持不能となった原因として、点群干渉エラーと表示される。これにより、ユーザは必要な対策、例えば把持位置の修正や追加等を行う際の指針が与えられる。
Also, when the "verify for each work" button 788 is pressed, a
また、図147の検出結果表示ダイヤログで、判定OKである把持ラベルA-000を選択すると、これに応じて画像表示欄141には、対応する把持位置で把持するエンドエフェクタモデルEEMが、白色にて表示される。このようにして、把持の可否を判定すると共に、必要に応じて適切な対策を講じることが可能となる。
147, when the gripping label A-000, which is determined as OK, is selected, the end effector model EEM gripped at the corresponding gripping position is displayed in the
さらに、図144の条件検証画面780において、検出条件設定欄781に設けられた検出条件詳細設定ボタン789を押下すると、図148の検出条件詳細設定画面820に切り替わる。検出条件詳細設定画面820には、把持位置の検出条件設定欄821と、エンドエフェクタと箱、床との干渉判定設定欄822と、エンドエフェクタと三次元点群との干渉判定設定欄823が設けられている。
Further, when a detection condition
このようにして、条件検証工程を終えると、最後にワークの載置位置を規定するプレース設定工程に移行する。プレース設定画面830の一例を図149に示す。プレース設定画面830の3Dピックガイダンス欄655では、ハイライト表示が「条件・検証」アイコンから「プレース設定」アイコンに移る。操作欄142には、ツール座標設定欄831と、プレース位置登録欄832が設けられている。この画面からユーザは、ワークのプレースに関する設定を行う。
When the condition verification process is finished in this manner, the place setting process is finally performed to define the placement position of the workpiece. An example of the
本発明の画像処理装置は、ロボットのバラ積みピッキングの動作を検証する用途に好適に利用できる。 INDUSTRIAL APPLICABILITY The image processing apparatus of the present invention can be suitably used for verifying the operation of a robot in bulk picking.
1000、2000、3000、4000、7000、8000、9000…ロボットシステム
100、200、300、400、700、800、900…画像処理装置
2…センサ部:2b…センサ制御部;2c…入力画像取得部
3、3B…表示部;3a…六面図表示領域;3b…画像表示領域;3c…把持解候補表示領域;3d…ワーク把持可否表示領域;3e…ワーク把持不能要因表示領域;3f…表示インターフェース
4…操作部;4b…入出力インターフェース
5…ロボット本体
6…ロボットコントローラ;6b…ロボットインターフェース
7…ロボット操作具
8c…位置決め部;8d…把持位置特定部;8d1…ワーク側把持箇所指定部;8d2…エンドエフェクタ側把持設定部;8d3…把持基準点設定部;8d4…把持方向設定部;8d5…相対位置設定部;8d6…第二指定部;8d7…第三指定部;8d8…把持位置コピー部;8d9…第一指定部;8e…基本方向画像選択部;8f…エンドエフェクタ取付面設定部;8g…サーチモデル登録部;8g’…モデル登録部;8h…回転角度制限部;8i…サーチモデル選択部;8j…画像選択部;8k…三次元サーチ部;8l…三次元ピック判定部;8m…干渉判定部;8n…傾斜角度設定部;8o…角度判定部;8p…サーチ結果統合部;8q…評価指標演算部;8r…把持優先順位決定部;8s…断面モデル生成部;8t…ワークモデル登録部;8u…エンドエフェクタモデル登録部;8v…追加モデル作成部;8w…キャリブレーション部;8x…変換部;8y…エンドエフェクタ取付位置較正部;8z…画像推定部
9…記憶部;9b…把持位置保存部
10…演算部
8e’…基本方向画像生成部
130、130B…サーチモデル登録画面
131…「登録対象」チェックボックス;131B…選択チェックボックス
140…把持登録画面
141…画像表示欄
142…操作欄
143…サーチモデル選択欄
144…把持姿勢表示欄
145…編集ボタン
146…追加ボタン
147…削除ボタン
150…把持姿勢追加画面
153…把持姿勢座標情報
154…「フィット」ボタン
160…傾斜角度・回転角度設定画面
161…姿勢制限サーチモデル選択欄
162…傾斜角度上限設定欄
163…回転角度範囲設定欄;163a…基準角度設定欄;163b…範囲設定欄
170…エンドエフェクタ取付位置設定画面
171…エンドエフェクタ取付位置設定欄
180…把持位置指定画面
181…把持位置指定欄
190…複数把持位置選択画面
191…面選択欄
192…把持位置一覧表示
210…ワーク選択画面
211…対象ワーク選択欄
212…検出サーチモデル表示欄
213…「把持確認」ボタン
220…把持解候補表示画面
221…把持解候補表示欄
223…ワーク把持位置表示欄
224…ワーク把持可否表示欄
225…ワーク把持不能要因表示欄
230…X-Y指定画面
240…Z-RZ指定画面
241…Z座標指定欄
242…RZ回転角指定欄
250…RY指定画面
251…RY回転角指定欄
260…RX指定画面
261…RX回転角指定欄
270…位置パラメータ指定画面
271…X、Y座標指定欄
272…「次へ」ボタン
273…Z座標、RZ回転角指定欄
274…RX、RY回転角指定欄
280…X-Y-Z指定画面
281…X、Y、Z座標指定欄
290…三次元画像ビューワ
310…追加領域設定画面
311…基本図形表示欄
312…「追加」ボタン
313…「編集」ボタン
320…基本図形編集画面
321…基本画像パラメータ調整欄
327…背景除去設定欄
330…エンドエフェクタ撮像画面
331…エンドエフェクタ位置指定欄
332…「撮像」ボタン
340…機能選択画面
341…機能一覧表示欄
342…「3Dサーチ」ボタン
343…「3Dピック」ボタン
350…サーチモデル登録方法選択画面
351…フロー表示部
352…「モデル登録」アイコン
353…「床・箱設定」アイコン
354…「サーチ設定」アイコン
355…モデル登録方法選択欄
356…「OK」ボタン
360…実測データ撮像画面
361…「計測実行」ボタン
362…モデル領域
363…「次へ」ボタン
364…「?」ボタン
370…サーチモデル除外領域設定画面
371…「?」ボタン
372…背景除去設定欄
373…「?」ボタン
374…「マスク領域」ボタン
375…「次へ」ボタン
380…回転対称性設定画面
381…「?」ボタン
382…回転対称設定欄
383…「登録」ボタン
390…サーチモデル登録画面
391…モデル一覧表示欄
392…「追加」ボタン
393…モデル登録方法指定欄
410…サーチモデル登録画面
411…「完了」ボタン
420…サーチ領域設定画面
421…サーチ領域設定欄
422…「指定方法選択ナビ」ボタン
423…指定方法選択欄
430…サーチ領域設定画面
431…床面指定ダイヤログ
440…サーチ領域設定画面
441…床面情報表示欄
442…ノイズ除去欄
443…「完了」ボタン
450…サーチパラメータ設定画面
451…検出条件設定欄
452…特徴抽出条件設定欄
453…判定条件設定欄
454…検出個数指定欄
455…傾斜角度上限指定欄
456…スコア下限指定欄
457…詳細設定ボタン
460…サーチパラメータ設定画面
461…検出詳細条件設定ダイヤログ
462…基本設定欄
463…検出条件詳細設定欄
464…オプション設定欄
465…サーチ感度設定欄
466…サーチ精度設定欄
467…サーチモデル個別指定欄;467b…サーチモデル選択欄
468…ラベル順序指定欄
469…判定ラベル指定欄
470…サーチパラメータ設定画面
471…「OK」ボタン
480…サーチモデル登録方法選択画面
481…「OK」ボタン
490…サーチモデル登録画面
491…CADデータ読み込みダイヤログ
492…ファイル一覧表示欄
493…「実行」ボタン
510…サーチモデル登録画面
511…登録モデル選択画面
512…「次へ」ボタン
520…サーチモデル登録画面
521…回転対称指定ダイヤログ
522…「登録」ボタン
530…サーチモデル登録画面
531…「編集」ボタン
540…サーチ結果表示画面
541…サーチ結果一覧表示欄
542…切り替えボタン
543…画面数
550…サーチ結果表示画面
560、570、580、590、610…サーチ結果表示画面
620…モデル編集画面
621…モデル領域設定欄
622…特徴設定欄
623…モデル登録欄
624…詳細設定ボタン
625…詳細設定ボタン
630…モデル領域詳細設定画面
631…マスク領域指定欄
632…重み付け領域指定欄
640…特徴詳細設定画面
641…特徴詳細設定欄
642…特徴抽出間隔指定欄
643…エッジ抽出閾値設定欄
650…三次元ピック初期設定画面
651…キャリブレーションデータ選択欄
652…検出ツール設定欄
653…ハンド登録欄
654…「ハンドモデルの作成」ボタン
655…3Dピックガイダンス欄
660…エンドエフェクタモデル設定画面
661…ハンドモデル一覧表示欄
662…「追加」ボタン
670…エンドエフェクタモデル編集画面
671…パーツ一覧表示欄
672…「追加」ボタン
673…ツール座標指定欄
674…「OK」ボタン
680…パーツ追加ダイヤログ
681…「追加」ボタン
690…CAD位置姿勢設定画面
691…位置姿勢欄
692…「OK」ボタン
693…サイズ指定欄
710…把持登録画面
711…サーチモデル切替欄
712…把持登録一覧表示欄
713…「追加」ボタン
714…「コピー」ボタン
715…「編集」ボタン
716…「完了」ボタン
720…把持設定ダイヤログ
721…基本設定欄
722…把持ラベル設定欄
723…ハンド選択欄
724…把持位置座標指定欄
725…座標姿勢指定欄
726…「簡単設定ナビ」ボタン
727…移動量設定欄
730…設定方法選択ダイヤログ
731…「OK」ボタン
740…X-Y指定画面
741…XY座標指定欄
742…「次へ」ボタン
750…Z-RZ指定画面
751…Z-RZ指定欄
752…Z指定欄
753…RZ指定欄
754…角度選択ボタン
755…「次へ」ボタン
760…RY指定画面
761…RY指定欄
762…「次へ」ボタン
770…RX指定画面
771…RX指定欄
772…「完了」ボタン
780…条件検証画面
781…検出条件設定欄
782…検出個数指定欄
783…ハンド傾斜角度上限指定欄
784…マージン設定欄
785…検証欄
786…検出個数表示欄
787…表示ラベル指定欄
788…「ワーク毎の検証」ボタン
789…検出条件詳細設定ボタン
790…検証ダイヤログ
791…対象ワーク選択欄
792…検出サーチモデル表示欄
793…「把持確認」ボタン
810…検出結果表示ダイヤログ
811…把持解候補表示欄
820…検出条件詳細設定画面
821…把持位置の検出条件設定欄
822…エンドエフェクタと箱、床との干渉判定設定欄
823…エンドエフェクタと三次元点群との干渉判定設定欄
830…プレース設定画面
831…ツール座標設定欄
832…プレース位置登録欄
840、850…ずれ補正画面
841…エンドエフェクタ設定欄
842…「OK」ボタン
843…「自動補正」ボタン
TAX…ツール座標軸
BAX…基準座標軸
RAX…回転済み座標軸
HBP…把持基準点
EET、EET2、EET3…エンドエフェクタ
ARM…アーム
WK、WK6、WK7、WK10…ワーク
WK2…空洞を有するワーク
WK3…板状のワーク
WK9…平板状のワーク
WKC…立方体状のワーク
CWM…三次元CADデータのワークモデル
CDM…CADモデル
WM9…平板状のワークモデル
WM10、WM11…ワークモデル
WM11F…平面図状に表示されたワークモデル
WM11P…斜視図状に表示されたワークモデル
WMR…サーチモデル登録時のワークモデル
WKI…入力画像として得られたワーク
ADA…追加領域
FLS…フランジ面
VP…外積ベクトル
WKI’…回転された入力画像
IBX…仮想直方体
MWM…実測データ
BDI…基本方向画像
SM…サーチモデル
SMA…サーチモデル
P1…把持指定位置
SCP…表面上の特徴点
OCP…輪郭上の特徴点
EEM、EM10…エンドエフェクタモデル
PRJ…プロジェクタ
CME1、CME2、CME3、CME4…カメラ
PC…点群
BSL…基本軸
SP1~SP5…断面位置
SS1~SS5…断面
TDP…三次元点
PP3…投影点
RBT…ロボット
BX…収納容器
STG…ステージ
AXX…補正回転X軸
AXY…補正回転Y軸
AXZ…補正回転Z軸
1000, 2000, 3000, 4000, 7000, 8000, 9000...
Claims (8)
作業空間に配置されたワークの三次元形状を測定するセンサ部から、複数のワークの三次元形状を示す入力画像を取得する入力画像取得部と、
前記入力画像から、前記ワークの位置及び姿勢を特定する三次元サーチに用いるサーチモデルを登録するサーチモデル登録部と、
前記ロボットコントローラにより制御されるエンドエフェクタの三次元形状を仮想的に表現する、エンドエフェクタモデルを登録するためのエンドエフェクタモデル登録部と、
前記ワークの三次元形状を仮想的に表現するワークモデルを仮想的な三次元空間上で三次元状に表示させる表示部と、
前記表示部に表示されたワークモデルに対して、該ワークモデルを前記エンドエフェクタモデルで把持する把持位置を特定する把持位置特定部と、
前記入力画像から、前記サーチモデルを用いて、一のワークの位置及び姿勢を特定する三次元サーチを行う三次元サーチ部と、
前記三次元サーチ部で三次元サーチされた前記一のワークに対して、許容される傾斜角度範囲を設定する傾斜角度設定部と、
前記三次元サーチ部により特定された前記一のワークの位置及び姿勢と、該一のワークに対応するワークモデルに対して前記把持位置特定部により特定された前記把持位置とに基づいて、該一のワークを前記エンドエフェクタモデルにより把持可能か否かを判定する三次元ピック判定部と、
を備え、
前記三次元ピック判定部は、
前記三次元サーチ部で三次元サーチされた前記一のワークを前記エンドエフェクタモデルで把持する際に、該エンドエフェクタが周囲の物体と干渉するか否かを判定する干渉判定部と、
前記三次元サーチ部で三次元サーチされた前記一のワークが、前記傾斜角度範囲内か否かを判定する角度判定部と、
を備え、
前記表示部は、前記入力画像上に、前記一のワークを把持する際の前記エンドエフェクタモデルを表示すると共に、前記三次元ピック判定部により前記一のワークが前記エンドエフェクタモデルにより把持不能と判定された場合には、該一のワークの把持不能要因を表示可能に構成しており、さらに、前記干渉判定部と前記角度判定部の判定結果に応じて、異なる把持不能要因を表示可能に構成してなる画像処理装置。 Image processing for controlling a robot that performs a picking operation by measuring the three-dimensional shape of multiple workpieces stacked in a work space with a sensor unit and gripping them with an end effector provided at the tip of the arm of the robot with a robot controller. a device,
an input image acquisition unit that acquires an input image representing the three-dimensional shape of a plurality of works from a sensor unit that measures the three-dimensional shape of the work placed in the work space;
a search model registration unit for registering a search model used for a three-dimensional search for specifying the position and orientation of the workpiece from the input image;
an end effector model registration unit for registering an end effector model that virtually represents a three-dimensional shape of an end effector controlled by the robot controller;
a display unit that displays a work model that virtually represents the three-dimensional shape of the work in a three-dimensional manner in a virtual three-dimensional space;
a gripping position specifying unit that specifies a gripping position at which the end effector model grips the work model displayed on the display unit;
a three-dimensional search unit that performs a three-dimensional search for specifying the position and orientation of one workpiece from the input image using the search model;
an inclination angle setting unit that sets an allowable inclination angle range for the one workpiece three-dimensionally searched by the three-dimensional search unit;
Based on the position and orientation of the one workpiece specified by the three-dimensional search unit and the gripping position specified by the gripping position specifying unit for the work model corresponding to the one workpiece, the one a three-dimensional pick determination unit that determines whether or not the workpiece can be gripped by the end effector model;
with
The three-dimensional pick determination unit
an interference determination unit that determines whether or not the end effector interferes with a surrounding object when the one workpiece three-dimensionally searched by the three-dimensional search unit is gripped by the end effector model;
an angle determination unit that determines whether the one workpiece three-dimensionally searched by the three-dimensional search unit is within the tilt angle range;
with
The display unit displays the end effector model when gripping the one workpiece on the input image, and the three-dimensional pick determination unit determines that the one workpiece cannot be gripped by the end effector model. In the case where the gripping failure factor is determined, the gripping failure factor of the one work can be displayed , and further, different gripping failure factors can be displayed according to the determination results of the interference determination unit and the angle determination unit. image processing device .
作業空間に配置されたワークの三次元形状を測定するセンサ部から、複数のワークの三次元形状を示す入力画像を取得する入力画像取得部と、
前記入力画像から、前記ワークの位置及び姿勢を特定する三次元サーチに用いるサーチモデルを登録するサーチモデル登録部と、
前記ロボットコントローラにより制御されるエンドエフェクタの三次元形状を仮想的に表現する、エンドエフェクタモデルを登録するためのエンドエフェクタモデル登録部と、
前記ワークの三次元形状を仮想的に表現するワークモデルを仮想的な三次元空間上で三次元状に表示させる表示部と、
前記表示部に表示されたワークモデルに対して、該ワークモデルを前記エンドエフェクタモデルで把持する把持位置を特定する把持位置特定部と、
前記入力画像から、前記サーチモデルを用いて、一のワークの位置及び姿勢を特定する三次元サーチを行う三次元サーチ部と、
前記三次元サーチ部により特定された前記一のワークの位置及び姿勢と、該一のワークに対応するワークモデルに対して前記把持位置特定部により特定された前記把持位置とに基づいて、該一のワークを前記エンドエフェクタモデルにより把持可能か否かを判定する三次元ピック判定部と、
を備え、
前記表示部は、前記入力画像上に、前記一のワークを把持する際の前記エンドエフェクタモデルを表示すると共に、前記三次元ピック判定部により前記一のワークが前記エンドエフェクタモデルにより把持不能と判定された場合には、該一のワークの把持不能要因を表示可能に構成しており、さらに、前記三次元ピック判定部の判定結果に応じて、前記エンドエフェクタモデルの表示態様を変化させて表示可能に構成してなる画像処理装置。 Image processing for controlling a robot that performs a picking operation by measuring the three-dimensional shape of multiple workpieces stacked in a work space with a sensor unit and gripping them with an end effector provided at the tip of the arm of the robot with a robot controller. a device,
an input image acquisition unit that acquires an input image representing the three-dimensional shape of a plurality of works from a sensor unit that measures the three-dimensional shape of the work placed in the work space;
a search model registration unit for registering a search model used for a three-dimensional search for specifying the position and orientation of the workpiece from the input image;
an end effector model registration unit for registering an end effector model that virtually represents a three-dimensional shape of an end effector controlled by the robot controller;
a display unit that displays a work model that virtually represents the three-dimensional shape of the work in a three-dimensional manner in a virtual three-dimensional space;
a gripping position specifying unit that specifies a gripping position at which the end effector model grips the work model displayed on the display unit;
a three-dimensional search unit that performs a three-dimensional search for specifying the position and orientation of one workpiece from the input image using the search model;
Based on the position and orientation of the one workpiece specified by the three-dimensional search unit and the gripping position specified by the gripping position specifying unit for the work model corresponding to the one workpiece, the one a three-dimensional pick determination unit that determines whether or not the workpiece can be gripped by the end effector model;
with
The display unit displays the end effector model when gripping the one workpiece on the input image, and the three-dimensional pick determination unit determines that the one workpiece cannot be gripped by the end effector model. In the case where the one workpiece is not grippable, it is configured to be able to display the cause of the inability to grip the one workpiece, and furthermore, the display mode of the end effector model is changed and displayed according to the determination result of the three-dimensional pick determination unit. An image processing device configured to be able to:
作業空間に配置されたワークの三次元形状を測定するセンサ部から、複数のワークの三次元形状を示す入力画像を取得する入力画像取得部と、
前記入力画像から、前記ワークの位置及び姿勢を特定する三次元サーチに用いるサーチモデルを登録するサーチモデル登録部と、
前記ロボットコントローラにより制御されるエンドエフェクタの三次元形状を仮想的に表現する、エンドエフェクタモデルを登録するためのエンドエフェクタモデル登録部と、
前記ワークの三次元形状を仮想的に表現するワークモデルを仮想的な三次元空間上で三次元状に表示させる表示部と、
前記表示部に表示されたワークモデルに対して、該ワークモデルを前記エンドエフェクタモデルで把持する把持位置を特定する把持位置特定部と、
前記入力画像から、前記サーチモデルを用いて、一のワークの位置及び姿勢を特定する三次元サーチを行う三次元サーチ部と、
前記三次元サーチ部により特定された前記一のワークの位置及び姿勢と、該一のワークに対応するワークモデルに対して前記把持位置特定部により特定された前記把持位置とに基づいて、該一のワークを前記エンドエフェクタモデルにより把持可能か否かを判定する三次元ピック判定部と、
を備え、
前記三次元サーチ部は、前記入力画像に含まれるワークの輪郭を表す輪郭上の特徴点と、表面形状を表す表面上の特徴点とに基づいて、前記入力画像から前記一のワークの位置及び姿勢を特定する三次元サーチを実行するよう構成しており、
前記表示部は、前記入力画像上に、前記一のワークを把持する際の前記エンドエフェクタモデルを表示すると共に、前記三次元ピック判定部により前記一のワークが前記エンドエフェクタモデルにより把持不能と判定された場合には、該一のワークの把持不能要因を表示可能に構成してなる画像処理装置。 Image processing for controlling a robot that performs a picking operation by measuring the three-dimensional shape of multiple workpieces stacked in a work space with a sensor unit and gripping them with an end effector provided at the tip of the arm of the robot with a robot controller. a device,
an input image acquisition unit that acquires an input image representing the three-dimensional shape of a plurality of works from a sensor unit that measures the three-dimensional shape of the work placed in the work space;
a search model registration unit for registering a search model used for a three-dimensional search for specifying the position and orientation of the workpiece from the input image;
an end effector model registration unit for registering an end effector model that virtually represents a three-dimensional shape of an end effector controlled by the robot controller;
a display unit that displays a work model that virtually represents the three-dimensional shape of the work in a three-dimensional manner in a virtual three-dimensional space;
a gripping position specifying unit that specifies a gripping position at which the end effector model grips the work model displayed on the display unit;
a three-dimensional search unit that performs a three-dimensional search for specifying the position and orientation of one workpiece from the input image using the search model;
Based on the position and orientation of the one workpiece specified by the three-dimensional search unit and the gripping position specified by the gripping position specifying unit for the work model corresponding to the one workpiece, the one a three-dimensional pick determination unit that determines whether or not the workpiece can be gripped by the end effector model;
with
The three-dimensional search unit searches for the position and position of the one workpiece from the input image based on the feature points on the contour representing the outline of the workpiece and the feature points on the surface representing the surface shape included in the input image. configured to perform a three-dimensional search to identify poses ,
The display unit displays the end effector model when gripping the one workpiece on the input image, and the three-dimensional pick determination unit determines that the one workpiece cannot be gripped by the end effector model. an image processing device capable of displaying a cause of incapability of gripping the one workpiece when
作業空間に配置されたワークの三次元形状を測定するセンサ部から、複数のワークの三次元形状を示す入力画像を取得する入力画像取得部と、
前記入力画像から、前記ワークの位置及び姿勢を特定する三次元サーチに用いるサーチモデルを登録するサーチモデル登録部と、
前記ロボットコントローラにより制御されるエンドエフェクタの三次元形状を仮想的に表現する、エンドエフェクタモデルを登録するためのエンドエフェクタモデル登録部と、
前記ワークの三次元形状を仮想的に表現するワークモデルを仮想的な三次元空間上で三次元状に表示させる表示部と、
前記表示部に表示されたワークモデルに対して、該ワークモデルを前記エンドエフェクタモデルで把持する把持位置を特定する把持位置特定部と、
前記入力画像から、前記サーチモデルを用いて、一のワークの位置及び姿勢を特定する三次元サーチを行う三次元サーチ部と、
前記三次元サーチ部により特定された前記一のワークの位置及び姿勢と、該一のワークに対応するワークモデルに対して前記把持位置特定部により特定された前記把持位置とに基づいて、該一のワークを前記エンドエフェクタモデルにより把持可能か否かを判定する三次元ピック判定部と、
を備え、
前記表示部は、前記入力画像上に、前記一のワークを把持する際の前記エンドエフェクタモデルを表示すると共に、前記三次元ピック判定部により前記一のワークが前記エンドエフェクタモデルにより把持不能と判定された場合には、該一のワークの把持不能要因を表示可能に構成しており、
前記表示部は、
前記三次元サーチの選択を受け付ける三次元サーチボタンと、
前記三次元ピック判定部による三次元ピック判定の選択を受け付ける三次元ピックボタンと、
を並べて配置した機能選択画面を表示可能としており、
前記機能選択画面から、前記三次元サーチボタンの選択を受け付けると、
前記サーチモデルを登録する画面を前記表示部に表示させるためのアイコンと、
前記三次元サーチを行うサーチ領域を設定する画面を前記表示部に表示させるためのアイコンと、
前記三次元サーチを実行する条件を設定する画面を前記表示部に表示させるためのアイコンと、
を、この順に並べて前記表示部に表示させ、
前記機能選択画面から、前記三次元ピックボタンの選択を受け付けると、
前記表示部上で表示される仮想的な三次元空間であるビジョン空間の座標系で算出された位置及び姿勢と、ロボットコントローラがエンドエフェクタを動作させるロボット空間の座標系の位置及び姿勢とを変換するキャリブレーション情報を選択する画面を前記表示部に表示させるためのアイコンと、
前記把持位置を登録する画面を前記表示部に表示させるためのアイコンと、
前記把持位置を検出する条件を設定する画面を前記表示部に表示させるためのアイコンと、
を、この順に並べて前記表示部に表示させるよう構成してなる画像処理装置。 Image processing for controlling a robot that performs a picking operation by measuring the three-dimensional shape of multiple workpieces stacked in a work space with a sensor unit and gripping them with an end effector provided at the tip of the arm of the robot with a robot controller. a device,
an input image acquisition unit that acquires an input image representing the three-dimensional shape of a plurality of works from a sensor unit that measures the three-dimensional shape of the work placed in the work space;
a search model registration unit for registering a search model used for a three-dimensional search for specifying the position and orientation of the workpiece from the input image;
an end effector model registration unit for registering an end effector model that virtually represents a three-dimensional shape of an end effector controlled by the robot controller;
a display unit that displays a work model that virtually represents the three-dimensional shape of the work in a three-dimensional manner in a virtual three-dimensional space;
a gripping position specifying unit that specifies a gripping position at which the end effector model grips the work model displayed on the display unit;
a three-dimensional search unit that performs a three-dimensional search for specifying the position and orientation of one workpiece from the input image using the search model;
Based on the position and orientation of the one workpiece specified by the three-dimensional search unit and the gripping position specified by the gripping position specifying unit for the work model corresponding to the one workpiece, the one a three-dimensional pick determination unit that determines whether or not the workpiece can be gripped by the end effector model;
with
The display unit displays the end effector model when gripping the one workpiece on the input image, and the three-dimensional pick determination unit determines that the one workpiece cannot be gripped by the end effector model. is configured so as to be able to display the reason why the one work cannot be gripped,
The display unit
a three-dimensional search button for accepting selection of the three-dimensional search;
a three-dimensional pick button for accepting selection of three-dimensional pick determination by the three-dimensional pick determination unit ;
It is possible to display a function selection screen that is arranged side by side,
When the selection of the three-dimensional search button is accepted from the function selection screen,
an icon for displaying a screen for registering the search model on the display unit;
an icon for displaying on the display unit a screen for setting a search area for performing the three-dimensional search;
an icon for displaying on the display unit a screen for setting conditions for executing the three-dimensional search;
are arranged in this order and displayed on the display unit,
When the selection of the three-dimensional pick button is accepted from the function selection screen,
Convert the position and orientation calculated in the coordinate system of the vision space, which is a virtual three-dimensional space displayed on the display unit, to the position and orientation of the coordinate system in the robot space in which the robot controller operates the end effector. an icon for displaying a screen for selecting calibration information to be displayed on the display unit;
an icon for displaying a screen for registering the grip position on the display unit;
an icon for displaying on the display unit a screen for setting conditions for detecting the gripping position;
are arranged in this order and displayed on the display section.
前記入力画像を前記センサ部から取得する入力インターフェースと、
前記表示部に対して前記入力画像および前記エンドエフェクタモデルを表示するための表示データを出力する表示インターフェースと、
前記三次元ピック判定部により前記一のワークを把持可能と判定された場合に、該一のワークをピックするようにロボットコントローラに対して該ロボットコントローラに接続された前記ロボットの制御に必要な情報を出力するロボットインターフェースと、
を備えてなる画像処理装置。 The image processing device according to any one of claims 1 to 4 , further comprising:
an input interface that acquires the input image from the sensor unit;
a display interface that outputs display data for displaying the input image and the end effector model on the display;
Information necessary for controlling the robot connected to the robot controller so that the robot controller picks the one work when the three-dimensional pick determination unit determines that the one work can be gripped. a robot interface that outputs
An image processing device comprising:
前記干渉判定部は、干渉判定を行う際の前記エンドエフェクタモデルの拡張量の設定を受け付け、前記エンドエフェクタモデルと、前記拡張量とに基づいて、干渉判定を行うよう構成してなる画像処理装置。 The image processing device according to claim 1 ,
The image processing apparatus configured such that the interference determination unit receives a setting of an extension amount of the end effector model when performing interference determination, and performs interference determination based on the end effector model and the extension amount. .
三次元サーチの結果に対して評価指標を演算する評価指標演算部を備え、
前記評価指標演算部は、前記サーチモデル登録部で登録した前記サーチモデルに対応する特徴点の存在割合に応じて、前記評価指標を算出するよう構成してなる画像処理装置。 The image processing device according to claim 3 , further comprising:
An evaluation index calculation unit that calculates an evaluation index for the result of the three-dimensional search,
The image processing apparatus, wherein the evaluation index calculation unit is configured to calculate the evaluation index according to the existence ratio of feature points corresponding to the search model registered by the search model registration unit.
エンドエフェクタで把持するワークの優先順位を決定する把持優先順位決定部を備え、
前記把持優先順位決定部は、前記評価指標と、前記ワークのZ方向の位置とに基づいて、前記優先順位を決定するよう構成してなる画像処理装置。 8. The image processing apparatus according to claim 7, further comprising a gripping priority determination unit that determines the priority of workpieces to be gripped by the end effector,
The image processing device, wherein the gripping priority determining unit is configured to determine the priority based on the evaluation index and the position of the workpiece in the Z direction.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2021074635A JP7128933B2 (en) | 2017-03-03 | 2021-04-27 | Image processing device |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017040981A JP6877192B2 (en) | 2017-03-03 | 2017-03-03 | Image processing equipment, image processing methods, image processing programs, computer-readable recording media, and recording equipment |
JP2021074635A JP7128933B2 (en) | 2017-03-03 | 2021-04-27 | Image processing device |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017040981A Division JP6877192B2 (en) | 2017-03-03 | 2017-03-03 | Image processing equipment, image processing methods, image processing programs, computer-readable recording media, and recording equipment |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021121461A JP2021121461A (en) | 2021-08-26 |
JP7128933B2 true JP7128933B2 (en) | 2022-08-31 |
Family
ID=63590391
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017040981A Active JP6877192B2 (en) | 2017-03-03 | 2017-03-03 | Image processing equipment, image processing methods, image processing programs, computer-readable recording media, and recording equipment |
JP2021074635A Active JP7128933B2 (en) | 2017-03-03 | 2021-04-27 | Image processing device |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017040981A Active JP6877192B2 (en) | 2017-03-03 | 2017-03-03 | Image processing equipment, image processing methods, image processing programs, computer-readable recording media, and recording equipment |
Country Status (1)
Country | Link |
---|---|
JP (2) | JP6877192B2 (en) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019139815A1 (en) | 2018-01-12 | 2019-07-18 | Duke University | Apparatus, method and article to facilitate motion planning of an autonomous vehicle in an environment having dynamic objects |
US11738457B2 (en) | 2018-03-21 | 2023-08-29 | Realtime Robotics, Inc. | Motion planning of a robot for various environments and tasks and improved operation of same |
JP2020049558A (en) * | 2018-09-25 | 2020-04-02 | ファナック株式会社 | Article extraction system |
KR102214434B1 (en) * | 2019-03-14 | 2021-02-09 | 하이윈 테크놀로지스 코포레이션 | System for eliminating interference of randomly stacked workpieces |
EP3831547A4 (en) * | 2019-03-15 | 2022-03-23 | OMRON Corporation | Settings support device, settings support method, and program |
JP7417851B2 (en) * | 2019-10-11 | 2024-01-19 | パナソニックIpマネジメント株式会社 | End effectors, sets of end effectors, and control systems |
CN115297999A (en) * | 2020-03-18 | 2022-11-04 | 实时机器人有限公司 | Digital representation of a robot operating environment useful in motion planning of a robot |
JP7481591B1 (en) | 2023-03-14 | 2024-05-10 | ファナック株式会社 | Apparatus and method for generating search model, apparatus and method for teaching work position, and control device |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010207989A (en) | 2009-03-11 | 2010-09-24 | Honda Motor Co Ltd | Holding system of object and method of detecting interference in the same system |
JP2011230245A (en) | 2010-04-28 | 2011-11-17 | Yaskawa Electric Corp | Robot system |
JP2014205209A (en) | 2013-04-11 | 2014-10-30 | 三菱電機株式会社 | Robot system and control method of the same |
JP2014210332A (en) | 2013-04-02 | 2014-11-13 | トヨタ自動車株式会社 | Work change apparatus, work change method, and work change program |
JP2015009314A (en) | 2013-06-28 | 2015-01-19 | キヤノン株式会社 | Interference determination apparatus, interference determination method, and computer program |
JP2015100866A (en) | 2013-11-22 | 2015-06-04 | 三菱電機株式会社 | Robot simulation device, program, recording medium and method |
JP2015171745A (en) | 2014-03-12 | 2015-10-01 | ファナック株式会社 | Robot simulation device for simulating workpiece unloading process |
JP2015182213A (en) | 2014-03-26 | 2015-10-22 | セイコーエプソン株式会社 | Robot control apparatus, robot, robot system, instruction method, and program |
JP2016078180A (en) | 2014-10-17 | 2016-05-16 | 株式会社リコー | Abnormality cause estimating device, picking device, and abnormality cause estimating method for picking device |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6243706A (en) * | 1985-08-21 | 1987-02-25 | Hitachi Ltd | Interference checking method in robot |
JP2785086B2 (en) * | 1992-06-17 | 1998-08-13 | ファナック株式会社 | Robot manual feed method |
JPH0736519A (en) * | 1993-07-23 | 1995-02-07 | Kobe Steel Ltd | Nearmiss checking method for robot |
JP2966706B2 (en) * | 1993-10-05 | 1999-10-25 | 株式会社日立製作所 | Automatic teaching method of polishing robot |
JP3203305B2 (en) * | 1996-05-28 | 2001-08-27 | 宇部興産株式会社 | Simple interference check method for mold spray robot |
JP2000039911A (en) * | 1998-07-22 | 2000-02-08 | Meidensha Corp | Robot controller |
JP4574580B2 (en) * | 2006-03-30 | 2010-11-04 | 株式会社小松製作所 | Offline teaching device for work robots |
JP2009274148A (en) * | 2008-05-12 | 2009-11-26 | Kanto Auto Works Ltd | Simulation device |
JP5618067B2 (en) * | 2010-08-23 | 2014-11-05 | 株式会社Ihi | Bulk picking apparatus and method |
CN106255471B (en) * | 2014-02-05 | 2018-10-26 | 直观外科手术操作公司 | System and method for dynamic virtual collision object |
DE102015204641B4 (en) * | 2014-06-03 | 2021-03-25 | ArtiMinds Robotics GmbH | Method and system for programming a robot |
-
2017
- 2017-03-03 JP JP2017040981A patent/JP6877192B2/en active Active
-
2021
- 2021-04-27 JP JP2021074635A patent/JP7128933B2/en active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010207989A (en) | 2009-03-11 | 2010-09-24 | Honda Motor Co Ltd | Holding system of object and method of detecting interference in the same system |
JP2011230245A (en) | 2010-04-28 | 2011-11-17 | Yaskawa Electric Corp | Robot system |
JP2014210332A (en) | 2013-04-02 | 2014-11-13 | トヨタ自動車株式会社 | Work change apparatus, work change method, and work change program |
JP2014205209A (en) | 2013-04-11 | 2014-10-30 | 三菱電機株式会社 | Robot system and control method of the same |
JP2015009314A (en) | 2013-06-28 | 2015-01-19 | キヤノン株式会社 | Interference determination apparatus, interference determination method, and computer program |
JP2015100866A (en) | 2013-11-22 | 2015-06-04 | 三菱電機株式会社 | Robot simulation device, program, recording medium and method |
JP2015171745A (en) | 2014-03-12 | 2015-10-01 | ファナック株式会社 | Robot simulation device for simulating workpiece unloading process |
JP2015182213A (en) | 2014-03-26 | 2015-10-22 | セイコーエプソン株式会社 | Robot control apparatus, robot, robot system, instruction method, and program |
JP2016078180A (en) | 2014-10-17 | 2016-05-16 | 株式会社リコー | Abnormality cause estimating device, picking device, and abnormality cause estimating method for picking device |
Also Published As
Publication number | Publication date |
---|---|
JP2021121461A (en) | 2021-08-26 |
JP6877192B2 (en) | 2021-05-26 |
JP2018144166A (en) | 2018-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7128933B2 (en) | Image processing device | |
CN108527362B (en) | Robot setting apparatus, robot setting method, and computer-readable recording medium | |
JP6823502B2 (en) | Robot setting device, robot setting method, robot setting program, computer-readable recording medium, and recording equipment | |
JP6877191B2 (en) | Image processing equipment, image processing methods, image processing programs and computer-readable recording media | |
JP4309439B2 (en) | Object take-out device | |
US8964001B2 (en) | Method for displaying measurement effective area in three-dimensional visual sensor and three-dimensional visual sensor | |
JP6892286B2 (en) | Image processing equipment, image processing methods, and computer programs | |
JP2010210458A (en) | Display method of recognition result by three-dimensional visual sensor, and the three-dimensional visual sensor | |
JP2009053147A (en) | Three-dimensional measuring method and three-dimensional measuring device | |
US11833697B2 (en) | Method of programming an industrial robot | |
JP2018144167A (en) | Image processing device, image processing method, image processing program and recording medium readable by computer as well as equipment with the same recorded | |
JP2018144162A (en) | Robot setting device, robot setting method, robot setting program, computer-readable recording medium, and recorded device | |
US20190255706A1 (en) | Simulation device that simulates operation of robot | |
US20190197676A1 (en) | Object inspection system and object inspection method | |
CN111199533B (en) | Image processing apparatus and method | |
US10434650B2 (en) | Programming device which generates operation program and method for generating program | |
JP6857052B2 (en) | Robot setting device, robot setting method, robot setting program, computer-readable recording medium, and recording equipment | |
JP2018144163A (en) | Robot setting device, robot setting method, robot setting program, computer-readable recording medium, and recorded device | |
Fuchs et al. | Assistance for telepresence by stereovision-based augmented reality and interactivity in 3D space | |
CN116175542A (en) | Grabbing control method, grabbing control device, electronic equipment and storage medium | |
JP2022017738A (en) | Image processing apparatus | |
WO2023157083A1 (en) | Device for acquiring position of workpiece, control device, robot system, and method | |
JP7437343B2 (en) | Calibration device for robot control | |
WO2022250152A1 (en) | Hold position determination device and hold position determination method | |
Nowak et al. | Point Clouds With Color: A Simple Open Library for Matching RGB and Depth Pixels from an Uncalibrated Stereo Pair |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210427 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20220228 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220308 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220415 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220802 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220819 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7128933 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |