JP6877191B2 - Image processing equipment, image processing methods, image processing programs and computer-readable recording media - Google Patents
Image processing equipment, image processing methods, image processing programs and computer-readable recording media Download PDFInfo
- Publication number
- JP6877191B2 JP6877191B2 JP2017040980A JP2017040980A JP6877191B2 JP 6877191 B2 JP6877191 B2 JP 6877191B2 JP 2017040980 A JP2017040980 A JP 2017040980A JP 2017040980 A JP2017040980 A JP 2017040980A JP 6877191 B2 JP6877191 B2 JP 6877191B2
- Authority
- JP
- Japan
- Prior art keywords
- end effector
- model
- work
- unit
- gripping
- 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
- 238000012545 processing Methods 0.000 title claims description 120
- 238000003672 processing method Methods 0.000 title claims description 9
- 239000012636 effector Substances 0.000 claims description 752
- 238000000034 method Methods 0.000 claims description 247
- 230000008569 process Effects 0.000 claims description 77
- 238000003860 storage Methods 0.000 claims description 46
- 238000003384 imaging method Methods 0.000 claims description 38
- 238000006243 chemical reaction Methods 0.000 claims description 33
- 238000005520 cutting process Methods 0.000 claims description 5
- 230000009466 transformation Effects 0.000 claims description 5
- 230000036544 posture Effects 0.000 description 285
- 238000010586 diagram Methods 0.000 description 135
- 238000001514 detection method Methods 0.000 description 69
- 230000006870 function Effects 0.000 description 68
- 238000012937 correction Methods 0.000 description 63
- 238000004364 calculation method Methods 0.000 description 43
- 238000011156 evaluation Methods 0.000 description 42
- 238000005259 measurement Methods 0.000 description 35
- 238000012795 verification Methods 0.000 description 27
- 238000000605 extraction Methods 0.000 description 18
- 230000010354 integration Effects 0.000 description 15
- 230000008901 benefit Effects 0.000 description 14
- 238000012790 confirmation Methods 0.000 description 11
- 230000007717 exclusion Effects 0.000 description 11
- 238000003825 pressing Methods 0.000 description 11
- 230000008859 change Effects 0.000 description 10
- 210000000078 claw Anatomy 0.000 description 9
- 230000002452 interceptive effect Effects 0.000 description 7
- 238000004088 simulation Methods 0.000 description 7
- 238000013499 data model Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 239000000284 extract Substances 0.000 description 4
- 230000005484 gravity Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000035945 sensitivity Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 239000012141 concentrate Substances 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 239000002184 metal Substances 0.000 description 2
- 229910052751 metal Inorganic materials 0.000 description 2
- 230000010363 phase shift Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- PXFBZOLANLWPMH-UHFFFAOYSA-N 16-Epiaffinine Natural products C1C(C2=CC=CC=C2N2)=C2C(=O)CC2C(=CC)CN(C)C1C2CO PXFBZOLANLWPMH-UHFFFAOYSA-N 0.000 description 1
- 230000004397 blinking Effects 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013481 data capture Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000005305 interferometry Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000010845 search algorithm Methods 0.000 description 1
- 238000002366 time-of-flight method Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Landscapes
- Length Measuring Devices By Optical Means (AREA)
- Manipulator (AREA)
- Image Processing (AREA)
Description
本発明は、画像処理装置、画像処理方法、画像処理プログラム及びコンピュータで読み取り可能な記録媒体に関し、例えば作業空間に積み上げられたピッキングの対象である複数のワークの三次元形状をセンサ部により測定し、ロボットのアーム部の先端に設けたエンドエフェクタで把持するピッキング動作を行うロボットを制御するための画像処理装置、画像処理方法、画像処理プログラム及びコンピュータで読み取り可能な記録媒体に関する。
The present invention is measured, the image processing apparatus, image processing method, a readable recording medium body by the image processing program and a computer, a three-dimensional shape of a plurality of workpieces are picked for which e.g. piled up in the working space by the sensor unit and, an image processing unit for controlling the robot to perform the picking operation for gripping the end effector provided at the tip of the arm of the robot, image processing method, and a readable recording medium body by the image processing program and a computer.
マニピュレータにロボットビジョンを組み合わせて、対象となるワークをロボットビジョンで撮像して高さ情報を取得した上で、適切な位置を把持(ピック)して、所望の位置に載置(プレース又はプレースメント)可能なロボット装置が開発されている。このようなロボット装置を用いて、バラ積みピッキングと呼ばれる、通い箱に入れられた多数のワークを、ロボットビジョンを構成するカメラやセンサ部で撮像して姿勢を把握し、適切な把持位置を把握した上で、この把持位置までロボットのアームを移動させ、アームの先端に設けられたハンド部等のエンドエフェクタで把持して、通い箱の外の、決められた位置に載置することが行われている。 By combining robot vision with a manipulator, the target work is imaged with robot vision to acquire height information, then an appropriate position is grasped (picked) and placed at a desired position (placement or placement). ) Possible robot devices have been developed. Using such a robot device, a large number of workpieces placed in a returnable box, which is called bulk picking, are imaged by the cameras and sensors that make up the robot vision to grasp the posture and grasp the appropriate gripping position. After that, the robot arm is moved to this gripping position, gripped by an end effector such as a hand part provided at the tip of the arm, and placed in a fixed position outside the return box. It has been.
このようなロボットビジョンを用いたバラ積みピッキングでは、設定時においてワークを掴むときのワークとロボットとの位置関係を把持位置として登録しておき、実運用時にはロボットビジョンで検出したワークに対するロボットの把持位置を計算し、計算された位置にロボットを移動させてピッキングする。 In bulk picking using such robot vision, the positional relationship between the work and the robot when gripping the work is registered as the gripping position at the time of setting, and the robot grips the work detected by the robot vision during actual operation. The position is calculated, and the robot is moved to the calculated position for picking.
ここで、エンドエフェクタによるワークの把持位置の登録方法としては、三次元のCADデータで表現した仮想空間上でエンドエフェクタモデルを移動させて登録する方法が挙げられる。この際、CAD空間上で把持位置を登録するため、ロボットビジョン側で設定しているエンドエフェクタの取付状態と、実際のエンドエフェクタの取付状態が異なると、実際のロボットを使って把持する際に、ずれが生じてしまうという問題があった。 Here, as a method of registering the gripping position of the work by the end effector, there is a method of moving and registering the end effector model in the virtual space represented by the three-dimensional CAD data. At this time, since the gripping position is registered in the CAD space, if the mounting state of the end effector set on the robot vision side and the mounting state of the actual end effector are different, when gripping using an actual robot, , There was a problem that a deviation would occur.
本発明は、このような事情に鑑みてなされたものであり、その目的の一は、エンドエフェクタの取付状態を、ロボットビジョン側に容易に反映させられるようにした画像処理装置、画像処理方法、画像処理プログラム及びコンピュータで読み取り可能な記録媒体を提供することにある。
The present invention has been made in view of such circumstances, and one of the purposes thereof is an image processing device, an image processing method, and an image processing device so that the mounting state of an end effector can be easily reflected on the robot vision side. and to provide a readable recording medium body by the image processing program and a computer.
本発明の第1の側面に係る画像処理装置によれば、作業空間に積み上げられた複数のワークの三次元形状を、該作業空間の撮像が可能な定位置に配置されたセンサ部により測定し、ロボットコントローラでもってロボットのアーム部の先端に設けたエンドエフェクタで把持するピッキング動作を行うロボットを制御するための画像処理装置であって、エンドエフェクタの三次元形状を仮想的に表現する、三次元CADデータであるエンドエフェクタモデルを登録するためのエンドエフェクタモデル登録部と、前記エンドエフェクタモデルを、仮想的な三次元空間上で三次元状に表示させるための表示部と、前記表示部上で表示される仮想的な三次元空間であり、センサ部でエンドエフェクタを撮像したビジョン空間の座標系で算出されたエンドエフェクタの位置及び姿勢と、ロボットコントローラがエンドエフェクタを動作させるロボット空間の座標系の位置及び姿勢とを座標変換するためのキャリブレーション情報を取得するキャリブレーション部と、前記キャリブレーション部で得られたキャリブレーション情報に基づいて、ビジョン空間の座標系とロボット空間の座標系との間で座標を変換する変換部と、センサ部で測定されたエンドエフェクタを含む画像から三次元形状を有する入力画像を取得する入力画像取得部と、前記入力画像取得部で取得された入力画像中から、前記エンドエフェクタモデルをサーチモデルとして、エンドエフェクタの位置及び姿勢に対応する画像領域を特定する三次元サーチを行うための三次元サーチ部と、ロボット空間の座標系でエンドエフェクタが取り付けられるフランジ部の位置及び姿勢と、エンドエフェクタの位置及び姿勢との差分を、前記エンドエフェクタモデル登録部により登録された前記エンドエフェクタモデルの位置及び姿勢に反映させることで、前記エンドエフェクタモデルの位置及び姿勢を較正するためのエンドエフェクタ取付位置較正部とを備え、前記変換部は、ロボット空間の座標系におけるフランジ部の位置及び姿勢を取得してビジョン空間の座標系に変換し、前記エンドエフェクタ取付位置較正部は、前記変換部により変換されたビジョン空間の座標系におけるフランジ部の位置及び姿勢と、前記三次元サーチ部でサーチすることにより検出されたビジョン空間の座標系におけるエンドエフェクタの位置及び姿勢との差分を算出し、該算出された差分を前記エンドエフェクタモデルの位置及び姿勢に反映させることで、前記エンドエフェクタモデル登録部により登録された前記エンドエフェクタモデルをフランジ部から該差分ずれた位置及び姿勢で取り付けられている状態に較正することができる。上記構成により、エンドエフェクタモデルを用いて三次元サーチすることで、仮想的なエンドエフェクタモデルを実際のエンドエフェクタの取付状態に即して誤差を補正することが可能となり、より正確な設定作業を行えるようになる。
According to the image processing apparatus according to the first aspect of the present invention, the three-dimensional shape of a plurality of works stacked in the work space is measured by a sensor unit arranged at a fixed position capable of imaging the work space. , An image processing device for controlling a robot that performs a picking operation that is gripped by an end effector provided at the tip of the arm of the robot with a robot controller, and is a tertiary that virtually expresses the three-dimensional shape of the end effector. An end effector model registration unit for registering an end effector model that is original CAD data, a display unit for displaying the end effector model in a three-dimensional manner in a virtual three-dimensional space, and a display unit on the display unit. Ri virtual three-dimensional space der displayed in the position and orientation of the end effector calculated in the coordinate system of the vision space of the captured end effector by the sensor unit, the robot controller of a robot space for operating the end effector a calibration unit you get the calibration information for coordinate transformation and the position and orientation of the coordinate system, based on the calibration information obtained by the calibration unit, coordinates of the vision space and coordinates of the robot space A conversion unit that converts coordinates between the system and an input image acquisition unit that acquires an input image having a three-dimensional shape from an image including an end effector measured by the sensor unit, and an input image acquisition unit that acquires the input image. From the input image, the end effector model is used as a search model, and the three-dimensional search unit for specifying the image area corresponding to the position and orientation of the end effector, and the end effector in the coordinate system of the robot space By reflecting the difference between the position and orientation of the attached flange portion and the position and orientation of the end effector in the position and orientation of the end effector model registered by the end effector model registration unit, the end effector model can be used. It is provided with an end effector mounting position calibration unit for calibrating the position and orientation , and the conversion unit acquires the position and orientation of the flange portion in the coordinate system of the robot space, converts it into the coordinate system of the vision space, and converts the end The effector mounting position calibration unit includes the position and orientation of the flange portion in the vision space coordinate system converted by the conversion unit and the end effector in the vision space coordinate system detected by searching with the three-dimensional search unit. The difference between the position and the posture is calculated, and the calculated difference is used as described above. By reflecting the position and orientation of the end effector model, you to calibrate the end effector model registered by the end effector model registration unit in the state mounted in position and orientation offset said difference from the flange portion it can. With the above configuration, by performing a three-dimensional search using the end effector model, it is possible to correct the error in the virtual end effector model according to the actual mounting state of the end effector, and more accurate setting work can be performed. You will be able to do it.
また、第2の側面に係る画像処理装置によれば、作業空間に積み上げられた複数のワークの三次元形状を、該作業空間の撮像が可能な定位置に配置されたセンサ部により測定し、ロボットコントローラでもってロボットのアーム部の先端に設けたエンドエフェクタで把持するピッキング動作を行うロボットを制御するための画像処理装置であって、エンドエフェクタの三次元形状を仮想的に表現する、三次元CADデータであるエンドエフェクタモデルを登録するためのエンドエフェクタモデル登録部と、前記エンドエフェクタモデルを、仮想的な三次元空間上で三次元状に表示させるための表示部と、前記表示部上で表示される仮想的な三次元空間であり、センサ部でエンドエフェクタを撮像したビジョン空間の座標系で算出されたエンドエフェクタの位置及び姿勢と、ロボットコントローラがエンドエフェクタを動作させるロボット空間の座標系の位置及び姿勢とを座標変換するためのキャリブレーション情報を取得するキャリブレーション部と、前記キャリブレーション部で得られたキャリブレーション情報に基づいて、ビジョン空間の座標系とロボット空間の座標系との間で座標を変換する変換部と、センサ部で測定されたエンドエフェクタを含む画像から三次元形状を有する入力画像を取得する入力画像取得部と、前記入力画像取得部で取得された入力画像中から、前記エンドエフェクタモデルをサーチモデルとして、エンドエフェクタの位置及び姿勢に対応する画像領域を特定する三次元サーチを行うための三次元サーチ部と、ロボット空間の座標系でエンドエフェクタが取り付けられるフランジ部の位置及び姿勢と、エンドエフェクタの位置及び姿勢との差分を、前記エンドエフェクタモデル登録部により登録された前記エンドエフェクタモデルの位置及び姿勢に反映させることで、前記エンドエフェクタモデルの位置及び姿勢を較正するためのエンドエフェクタ取付位置較正部とを備え、前記変換部は、ビジョン空間の座標系におけるエンドエフェクタの位置及び姿勢を取得してロボット空間の座標系に変換し、前記エンドエフェクタ取付位置較正部は、前記変換部により変換されたロボット空間の座標系におけるエンドエフェクタの位置及び姿勢と、前記ロボット空間の座標系におけるフランジ部の位置及び姿勢との差分を算出し、該算出された差分を前記エンドエフェクタモデルの位置及び姿勢に反映させることで、前記エンドエフェクタモデル登録部により登録された前記エンドエフェクタモデルをフランジ部から該差分ずれた位置及び姿勢で取り付けられている状態に較正することができる。
さらに、第3の側面に係る画像処理装置によれば、上記何れかの構成に加えて、前記入力画像取得部が、エンドエフェクタを、ロボットのアーム部の先端のフランジ部に取り付けた取付位置を含む入力画像を取得するよう構成できる。
Further, according to the image processing apparatus according to the second side surface, the three-dimensional shape of a plurality of works stacked in the work space is measured by a sensor unit arranged at a fixed position capable of imaging the work space. An image processing device for controlling a robot that performs a picking operation that is gripped by an end effector provided at the tip of the arm of the robot with a robot controller, and is a three-dimensional image processing device that virtually expresses the three-dimensional shape of the end effector. An end effector model registration unit for registering an end effector model that is CAD data, a display unit for displaying the end effector model in a three-dimensional manner in a virtual three-dimensional space, and a display unit on the display unit. It is a virtual three-dimensional space that is displayed, and the position and orientation of the end effector calculated by the coordinate system of the vision space where the end effector is imaged by the sensor unit, and the coordinate system of the robot space in which the robot controller operates the end effector. A calibration unit that acquires calibration information for coordinating the position and orientation of the robot, and a coordinate system in the vision space and a coordinate system in the robot space based on the calibration information obtained by the calibration unit. Among the input image acquired by the input image acquisition unit, the conversion unit that converts the coordinates between the two, the input image acquisition unit that acquires the input image having a three-dimensional shape from the image including the end effector measured by the sensor unit, and the input image acquisition unit. Therefore, using the end effector model as a search model, a three-dimensional search unit for performing a three-dimensional search for specifying an image area corresponding to the position and orientation of the end effector, and a flange to which the end effector is attached in the coordinate system of the robot space. By reflecting the difference between the position and orientation of the unit and the position and orientation of the end effector in the position and orientation of the end effector model registered by the end effector model registration unit, the position and orientation of the end effector model can be reflected. The conversion unit is provided with an end effector mounting position calibration unit for calibrating the robot, and the conversion unit acquires the position and orientation of the end effector in the coordinate system of the vision space, converts the position and orientation of the end effector into the coordinate system of the robot space, and converts the end effector mounting position into the coordinate system of the robot space. The calibration unit calculates the difference between the position and orientation of the end effector in the coordinate system of the robot space converted by the conversion unit and the position and orientation of the flange portion in the coordinate system of the robot space, and the calculated difference. Is reflected in the position and orientation of the end effector model. By doing so, the end effector model registered by the end effector model registration unit can be calibrated so that it is attached at a position and posture slightly deviated from the flange portion.
Further, according to the image processing apparatus according to the third side surface, in addition to any of the above configurations, the input image acquisition unit determines the mounting position where the end effector is attached to the flange portion at the tip of the arm portion of the robot. It can be configured to acquire the including input image.
さらに、他のの側面に係る画像処理装置によれば、上記何れかの構成に加えて、前記入力画像取得部が、エンドエフェクタの面積が大きくなる姿勢で入力画像を取得するよう構成できる。
Further, according to the image processing apparatus according to the other aspect, in addition to any of the above configurations, the input image acquisition unit can be configured to acquire the input image in a posture in which the area of the end effector becomes large.
さらにまた、他のの側面に係る画像処理装置によれば、上記何れかの構成に加えて、前記入力画像取得部が、エンドエフェクタを水平姿勢として、側面から入力画像を取得するよう構成できる。
Furthermore , according to the image processing apparatus according to the other side surface, in addition to any of the above configurations, the input image acquisition unit can be configured to acquire the input image from the side surface with the end effector in a horizontal posture.
さらにまた、第4の側面に係る画像処理装置によれば、上記何れかの構成に加えて、さらに、前記キャリブレーション部によるキャリブレーション情報を保存する記憶部を備えており、前記変換部が、前記記憶部に保存されたキャリブレーション情報を読み出して座標位置を変換するよう構成できる。
Furthermore , according to the image processing apparatus according to the fourth aspect, in addition to any of the above configurations, a storage unit for storing calibration information by the calibration unit is further provided, and the conversion unit has a storage unit. It can be configured to read the calibration information stored in the storage unit and convert the coordinate position.
さらにまた、第5の側面に係る画像処理装置によれば、上記何れかの構成に加えて、さらに、前記キャリブレーション情報が、前記キャリブレーション部で算出された、ビジョン空間の座標系の位置及び姿勢をロボット空間の座標系の位置及び姿勢に座標変換する変換式を含むことができる。
Furthermore , according to the image processing apparatus according to the fifth aspect, in addition to any of the above configurations, the calibration information is the position of the coordinate system in the vision space calculated by the calibration unit and the position of the coordinate system. A conversion formula for converting the posture into the position and posture of the coordinate system in the robot space can be included.
さらにまた、第6の側面に係る画像処理装置によれば、上記何れかの構成に加えて、さらに、ワークの三次元形状を仮想的に表現するワークモデルを登録するためのワークモデル登録部と、前記ワークモデル登録部で登録されたワークモデルに対して、該ワークモデルをエンドエフェクタモデルで把持する把持位置を一以上、特定するための把持位置特定部と、前記入力画像取得部で取得された入力画像に含まれる複数のワーク群に対して、各ワークの姿勢と位置を特定する三次元サーチを行う際に用いる、ワークの三次元形状を仮想的に表現したサーチモデルを登録するためのサーチモデル登録部とを備えており、前記三次元サーチ部が、前記入力画像取得部で取得された入力画像中から、前記サーチモデル登録部で登録されたサーチモデルを用いて三次元サーチを行い、各ワークの位置及び姿勢に対応する画像領域を特定するよう構成できる。上記構成により、エンドエフェクタモデルを用いて、把持位置のティーチングを行う際に、実際のエンドエフェクタと仮想的なエンドエフェクタモデルとの誤差を補正することが可能となり、より正確な設定作業を行えるようになる。
Furthermore , according to the image processing apparatus according to the sixth aspect, in addition to any of the above configurations, a work model registration unit for registering a work model that virtually represents the three-dimensional shape of the work is provided. With respect to the work model registered in the work model registration unit, the grip position specifying unit for specifying one or more gripping positions for gripping the work model in the end effector model, and the input image acquisition unit acquire the work model. To register a search model that virtually represents the three-dimensional shape of the work, which is used when performing a three-dimensional search that specifies the posture and position of each work for a plurality of work groups included in the input image. It is provided with a search model registration unit, and the three-dimensional search unit performs a three-dimensional search from the input images acquired by the input image acquisition unit using the search model registered by the search model registration unit. , It can be configured to specify the image area corresponding to the position and orientation of each work. With the above configuration, when teaching the gripping position using the end effector model, it is possible to correct the error between the actual end effector and the virtual end effector model, so that more accurate setting work can be performed. become.
さらにまた、第7の側面に係る画像処理装置によれば、上記何れかの構成に加えて、さらに、前記把持位置特定部で特定された前記把持位置において、前記エンドエフェクタ取付位置較正部により較正された前記エンドエフェクタモデルで前記ワークを把持可能か否か判定する三次元ピック判定部を備えることができる。
さらにまた、第8の側面に係る画像処理装置によれば、上記何れかの構成に加えて、さらに、前記把持位置特定部により特定された前記把持位置で前記ワークモデルを把持する際に、前記エンドエフェクタ取付位置較正部により較正された前記エンドエフェクタモデルが、他のワークと干渉するか否かを判定する干渉判定部を備えることができる。
さらにまた、第9の側面に係る画像処理装置によれば、上記何れかの構成に加えて、エンドエフェクタの基本軸を設定可能に構成され、前記干渉判定部は、前記エンドエフェクタ取付位置較正部により構成された前記エンドエフェクタモデルを、該エンドエフェクタの基本軸と交差する平面で切断することで複数の断面モデルを生成し、該複数の断面モデルのそれぞれを用いて干渉判定するよう構成できる。
さらにまた、他の側面に係る画像処理装置によれば、上記何れかの構成に加えて、作業空間に積み上げられた複数のワークの三次元形状をセンサ部により測定し、ロボットコントローラでもってロボットのアーム部の先端に設けたエンドエフェクタで把持するピッキング動作を行うロボットを制御するための画像処理装置であって、エンドエフェクタの三次元形状を仮想的に表現する、三次元CADデータであるエンドエフェクタモデルを登録するためのエンドエフェクタモデル登録部と、前記エンドエフェクタモデルを、仮想的な三次元空間上で三次元状に表示させるための表示部と、センサ部で測定されたエンドエフェクタを含む画像から三次元形状を有する入力画像を取得する入力画像取得部と、エンドエフェクタのロボットのアーム部の先端への取り付け位置と、前記表示部上の仮想三次元空間上におけるエンドエフェクタモデルの位置との誤差を較正するためのエンドエフェクタ取付位置較正部とを備えることができる。
Furthermore, according to the image processing apparatus according to the seventh aspect, in addition to any of the above configurations, the end effector mounting position calibration unit calibrates the grip position specified by the grip position specifying unit. A three-dimensional pick determination unit for determining whether or not the work can be gripped by the end effector model is provided.
Furthermore, according to the image processing apparatus according to the eighth side surface, in addition to any of the above configurations, when the work model is gripped at the gripping position specified by the gripping position specifying portion, the work model is further described. An interference determination unit for determining whether or not the end effector model calibrated by the end effector mounting position calibration unit interferes with another work can be provided.
Furthermore, according to the image processing apparatus according to the ninth aspect, in addition to any of the above configurations, the basic axis of the end effector can be set, and the interference determination unit is the end effector mounting position calibration unit. A plurality of cross-section models can be generated by cutting the end effector model configured by the above in a plane intersecting the basic axis of the end effector, and interference determination can be made using each of the plurality of cross-section models.
Furthermore , according to the image processing device related to the other side surface, in addition to any of the above configurations, the three-dimensional shape of a plurality of workpieces stacked in the work space is measured by the sensor unit, and the robot controller is used to measure the three-dimensional shape of the robot. An image processing device for controlling a robot that performs a picking operation that is gripped by an end effector provided at the tip of the arm, and is an end effector that is three-dimensional CAD data that virtually represents the three-dimensional shape of the end effector. An image including an end effector model registration unit for registering a model, a display unit for displaying the end effector model in a three-dimensional shape in a virtual three-dimensional space, and an end effector measured by the sensor unit. An input image acquisition unit that acquires an input image having a three-dimensional shape from the robot, a mounting position of the end effector on the tip of the robot arm, and a position of the end effector model on the virtual three-dimensional space on the display unit. It may be provided with an end effector mounting position calibration unit for calibrating the error.
さらにまた、第10の側面に係る画像処理方法によれば、作業空間に積み上げられた複数のワークの三次元形状を、該作業空間の撮像が可能な定位置に配置されたセンサ部により測定し、ロボットコントローラでもってロボットの先端のフランジ部に設けたエンドエフェクタで把持するピッキング動作を行うロボットを制御する画像処理方法であって、エンドエフェクタの三次元形状を仮想的に表現する、三次元CADデータであるエンドエフェクタモデルを登録する工程と、前記エンドエフェクタモデルを、表示部上の仮想的な三次元空間であり、センサ部でエンドエフェクタを撮像したビジョン空間の座標系で三次元状に表示させる位置及び姿勢と、ロボットコントローラがエンドエフェクタを動作させるロボット空間の座標系の位置及び姿勢とを座標変換するためのキャリブレーション情報を取得する工程と、センサ部で測定されたエンドエフェクタを含む画像から三次元形状を有する入力画像を取得する工程と、前記取得された入力画像中から、前記エンドエフェクタモデルをサーチモデルとして、エンドエフェクタの位置及び姿勢に対応する画像領域を特定する三次元サーチを行う工程と、前記三次元サーチにより、ビジョン空間の座標系でエンドエフェクタの位置及び姿勢を検出する工程と、ロボット空間の座標系でエンドエフェクタが取り付けられるフランジ部の位置及び姿勢を取得する工程と、前記取得されたロボット空間の座標系におけるフランジ部の位置及び姿勢を、ビジョン空間の座標系に変換する工程と、前記変換されたビジョン空間の座標系におけるフランジ部の位置及び姿勢と、前記検出されたビジョン空間の座標系におけるエンドエフェクタの位置及び姿勢との差分を算出し、該算出された差分を前記エンドエフェクタモデルの位置及び姿勢に反映させることで、前記エンドエフェクタモデルをフランジ部から該差分ずれた位置及び姿勢で取り付けられている状態に較正する工程とを含むことができる。これにより、エンドエフェクタモデルを用いて三次元サーチすることで、仮想的なエンドエフェクタモデルを実際のエンドエフェクタの取付状態に即して誤差を補正することが可能となり、より正確な設定作業を行えるようになる。
Furthermore , according to the image processing method according to the tenth aspect, the three-dimensional shapes of a plurality of works stacked in the work space are measured by a sensor unit arranged at a fixed position capable of imaging the work space. A three-dimensional CAD that virtually expresses the three-dimensional shape of an end effector, which is an image processing method that controls a robot that performs a picking operation that is gripped by an end effector provided on the flange at the tip of the robot with a robot controller. a step of registering the end effector model is data, the end effector model, Ri virtual three-dimensional space der on the display unit, the three-dimensional shape in the coordinate system of the vision space of the captured end effector sensor unit Includes a step of acquiring calibration information for coordinate conversion between the position and orientation to be displayed and the position and orientation of the coordinate system in the robot space in which the robot controller operates the end effector, and the end effector measured by the sensor unit. A three-dimensional search that specifies an image area corresponding to the position and orientation of the end effector using the end effector model as a search model from the process of acquiring an input image having a three-dimensional shape from the image and the acquired input image. The step of detecting the position and orientation of the end effector in the coordinate system of the vision space by the three-dimensional search , and the step of acquiring the position and orientation of the flange portion to which the end effector is attached in the coordinate system of the robot space. The step of converting the position and orientation of the flange portion in the acquired coordinate system of the robot space into the coordinate system of the vision space, the position and orientation of the flange portion in the coordinate system of the converted vision space, and the above. By calculating the difference from the position and orientation of the end effector in the detected coordinate system of the vision space and reflecting the calculated difference in the position and orientation of the end effector model, the end effector model can be transferred from the flange portion. It can include a step of calibrating the mounted state in the position and the posture deviated by the difference. As a result, by performing a three-dimensional search using the end effector model, it is possible to correct the error in the virtual end effector model according to the actual mounting state of the end effector, and more accurate setting work can be performed. Will be.
さらにまた、第11の側面に係る画像処理プログラムによれば、作業空間に積み上げられた複数のワークの三次元形状を、該作業空間の撮像が可能な定位置に配置されたセンサ部により測定し、ロボットコントローラでもってロボットの先端のフランジ部に設けたエンドエフェクタで把持するピッキング動作を行うロボットを制御するための画像処理プログラムであって、エンドエフェクタの三次元形状を仮想的に表現する、三次元CADデータであるエンドエフェクタモデルを登録する機能と、前記エンドエフェクタモデルを、表示部上の仮想的な三次元空間であり、センサ部でエンドエフェクタを撮像したビジョン空間の座標系で三次元状に表示させる位置及び姿勢を、ロボットコントローラがエンドエフェクタを動作させるロボット空間の座標系の位置及び姿勢とを座標変換するためのキャリブレーション情報を取得する機能と、センサ部で測定されたエンドエフェクタを含む画像から三次元形状を有する入力画像を取得する機能と、前記取得された入力画像中から、前記エンドエフェクタモデルをサーチモデルとして、エンドエフェクタの位置及び姿勢に対応する画像領域を特定する三次元サーチを行う機能と、前記三次元サーチにより、ビジョン空間の座標系でエンドエフェクタの位置及び姿勢を検出する機能と、ロボット空間の座標系でエンドエフェクタが取り付けられるフランジ部の位置及び姿勢を取得する機能と、前記取得されたロボット空間の座標系におけるフランジ部の位置及び姿勢を、ビジョン空間の座標系に変換する機能と、前記変換されたビジョン空間の座標系におけるフランジ部の位置及び姿勢と、前記検出されたビジョン空間の座標系におけるエンドエフェクタの位置及び姿勢との差分を算出し、該算出された差分を前記エンドエフェクタモデルの位置及び姿勢に反映させることで、前記エンドエフェクタモデルをフランジ部から該差分ずれた位置及び姿勢で取り付けられている状態に較正する機能とをコンピュータに実現させることができる。上記構成により、エンドエフェクタモデルを用いて三次元サーチすることで、仮想的なエンドエフェクタモデルを実際のエンドエフェクタの取付状態に即して誤差を補正することが可能となり、より正確な設定作業を行えるようになる。
Furthermore , according to the image processing program related to the eleventh side surface, the three-dimensional shapes of a plurality of works stacked in the work space are measured by a sensor unit arranged at a fixed position capable of imaging the work space. , An image processing program for controlling a robot that performs a picking operation that is gripped by an end effector provided on the flange at the tip of the robot with a robot controller, and is a tertiary that virtually expresses the three-dimensional shape of the end effector. a function of registering the end effector model is based on CAD data, the end effector model, Ri virtual three-dimensional space der on the display unit, three-dimensional coordinate system of the vision space of the captured end effector sensor unit the position and orientation are displayed on Jo, the function of the robot controller to acquire calibration information for the position and the coordinate transformation the orientation of the coordinate system of the robot space for operating the end effector, the end effector which is measured by the sensor unit A function of acquiring an input image having a three-dimensional shape from an image including the above, and a tertiary that specifies an image area corresponding to the position and orientation of the end effector from the acquired input image using the end effector model as a search model. The function of performing the original search, the function of detecting the position and orientation of the end effector in the coordinate system of the vision space, and the position and orientation of the flange to which the end effector is attached are acquired in the coordinate system of the robot space by the three-dimensional search. a function of the position and orientation of the flange portion in the coordinate system of the obtained robot space, and a function of converting the coordinate system of the vision space, the position and orientation of the flange portion in the coordinate system of the converted vision space By calculating the difference from the position and orientation of the end effector in the detected coordinate system of the vision space and reflecting the calculated difference in the position and orientation of the end effector model, the end effector model is flanged. It is possible to realize a function of calibrating the mounted state in a position and posture deviated from the unit by the computer. With the above configuration, by performing a three-dimensional search using the end effector model, it is possible to correct the error in the virtual end effector model according to the actual mounting state of the end effector, and more accurate setting work can be performed. You will be able to do it.
さらにまた、第12の形態に係るコンピュータで読み取り可能な記録媒体は、上記画像処理プログラムを格納するものである。記録媒体には、CD−ROM、CD−R、CD−RWやフレキシブルディスク、磁気テープ、MO、DVD−ROM、DVD−RAM、DVD−R、DVD+R、DVD−RW、DVD+RW、Blu−ray、HD DVD(AOD)等の磁気ディスク、光ディスク、光磁気ディスク、半導体メモリその他のプログラムを格納可能な媒体が含まれる。またプログラムには、上記記録媒体に格納されて配布されるものの他、インターネット等のネットワーク回線を通じてダウンロードによって配布される形態のものも含まれる。さらに記憶した機器には、上記プログラムがソフトウェアやファームウェア等の形態で実行可能な状態に実装された汎用もしくは専用機器を含む。さらにまたプログラムに含まれる各処理や機能は、コンピュータで実行可能なプログラムソフトウエアにより実行してもよいし、各部の処理を所定のゲートアレイ(FPGA、ASIC)等のハードウエア、又はプログラムソフトウエアとハードウェアの一部の要素を実現する部分的ハードウエアモジュールとが混在する形式で実現してもよい。
Furthermore, a computer-readable recording medium according to the twelfth embodiment is intended for storing the image processing program. Recording media include CD-ROM, CD-R, CD-RW, flexible disc, magnetic tape, MO, DVD-ROM, DVD-RAM, DVD-R, DVD + R, DVD-RW, DVD + RW, Blu-ray, HD. A medium capable of storing a magnetic disk such as a DVD (AOD), an optical disk, a magneto-optical disk, a semiconductor memory, or other programs is included. Further, the program includes a program stored in the above-mentioned recording medium and distributed, and a program distributed by download through a network line such as the Internet. Further, the stored device includes a general-purpose or dedicated device in which the above program is implemented in a state in which it can be executed in the form of software, firmware, or the like. Furthermore, each process and function included in the program may be executed by program software that can be executed by a computer, and each part of the process may be executed by hardware such as a predetermined gate array (FPGA, ASIC), or program software. It may be realized in a form in which and a partial hardware module that realizes a part of the hardware are mixed.
以下、本発明の実施形態を図面に基づいて説明する。ただし、以下に示す実施形態は、本発明の技術思想を具体化するための例示であって、本発明は以下のものに特定されない。また、本明細書は特許請求の範囲に示される部材を、実施形態の部材に特定するものでは決してない。特に実施形態に記載されている構成部品の寸法、材質、形状、その相対的配置等は特に特定的な記載がない限りは、本発明の範囲をそれのみに限定する趣旨ではなく、単なる説明例にすぎない。なお、各図面が示す部材の大きさや位置関係等は、説明を明確にするため誇張していることがある。さらに以下の説明において、同一の名称、符号については同一若しくは同質の部材を示しており、詳細説明を適宜省略する。さらに、本発明を構成する各要素は、複数の要素を同一の部材で構成して一の部材で複数の要素を兼用する態様としてもよいし、逆に一の部材の機能を複数の部材で分担して実現することもできる。
(実施形態1)
Hereinafter, embodiments of the present invention will be described 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 specified as the following. Further, the present specification does not specify the members shown in the claims as the members of the embodiment. In particular, the dimensions, materials, shapes, relative arrangements, and the like of the components described in the embodiments are not intended to limit the scope of the present invention to the specific description unless otherwise specified, and are merely explanatory examples. It's just that. The size and positional relationship of the members shown in each drawing may be exaggerated to clarify the explanation. Further, in the following description, members of the same or the same quality are shown with the same name and reference numeral, and detailed description thereof will be omitted as appropriate. Further, each element constituting the present invention may be configured such that a plurality of elements are composed of the same member and the plurality of elements are combined with one member, or conversely, the function of one member is performed by the plurality of members. It can also be shared and realized.
(Embodiment 1)
実施形態1として、ピッキング対象のワークのピッキングを行うためのロボットシステム1000の構成例を図1に示す。この例では、作業空間に積み上げられた複数のワークWKを、ロボットRBTを用いて順次取り出し、所定の位置に配置するバラ積みピッキングを行う例について示している。ロボットRBTはマニピュレータ等とも呼ばれ、アーム部ARMと、アーム部ARMの先端に設けられたエンドエフェクタHNDを備える。アーム部ARMは複数の可動部を備えており、2本のアームが互いになす角度やアーム支点の回転により、エンドエフェクタEETを所望の位置へ移動させる。エンドエフェクタEETはワークWKを把持又は解放可能としている。
As the first embodiment, FIG. 1 shows a configuration example of a
このロボットRBTは、ロボットコントローラ6で動作を制御される。ロボットコントローラ6はアーム部ARMの可動やエンドエフェクタEETの開閉動作を制御する。またロボットコントローラ6は画像処理装置100から、ロボットRBTの制御に必要な情報を取得する。例えば、収納容器BXに無作為に投入された多数の部品であるワークWKを、三次元カメラや照明等のセンサ部2で三次元形状を取得し、画像処理装置100の演算部10でワークの位置や姿勢を検出して、情報をロボットコントローラ6に送る。ロボットコントローラ6は、ワークWKを一つづつ、ロボットRBTのアーム部ARMの先端に設けられたエンドエフェクタEETでもって把持し、ステージSTG上の所定の位置、例えばコンベアベルト上に並べていく。
The operation of this robot RBT is controlled by the
ロボットシステム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等を設ける。あるいは、三次元形状データの生成を、画像処理装置側で行わず、センサ部で撮像した生画像を、画像処理装置側で画像処理して三次元画像等の三次元形状データを生成する構成としてもよい。 Further, the generation of the three-dimensional shape data itself can be performed on the sensor unit side. In this case, an image processing IC or the like that realizes a function of generating three-dimensional shape data is provided on the sensor unit side. Alternatively, the three-dimensional shape data is not generated on the image processing device side, but the raw image captured by the sensor unit is image-processed on the image processing device side to generate three-dimensional shape data such as a three-dimensional image. May be good.
さらに、センサ部2で撮像された画像に基づいて、後述するキャリブレーションを実行することにより、実際のワークWKの位置座標(エンドエフェクタEETの移動位置の座標)と、表示部3上に表示された画像上の位置座標とをリンクさせることができる。
Further, by executing the 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の動作設定を行うための部材であり、ペンダントなどが利用できる。
The
ロボット本体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 work WKs are randomly stored in a storage container BX such as a returnable box. The
ここで本明細書においてバラ積みピッキングとは、図4Aに示すような収納容器BXに入れられて無作為に積み上げられたワークWKを、ロボットで把持して、所定の位置に載置する他、図4Bに示すような収納容器を用いずに所定の領域に積み上げられたワークWKに対して把持、載置を行う例、あるいは図4Cに示すような所定の姿勢で並べられて積み上げられたワークWKを順次把持、載置する例も含む意味で使用する。また、必ずしもワーク同士が積み重ねられている状態であることは要さず、ワーク同士の重なりがない状態で平面上にランダムに置かれたワークについても、本明細書においてはバラ積みと呼ぶ(順次ピッキングされていき、ピッキングの終盤でワーク同士の重なりがない状態となった場合でも依然としてバラ積みピッキングと呼ばれるのと同じ理由である)。なお、本発明はバラ積みピッキングに必ずしも限定するものでなく、バラ積みされていないワークをピックアップする用途にも適用できる。 Here, in the present specification, bulk picking refers to work WK that is randomly stacked in a storage container BX as shown in FIG. 4A by a robot and placed in a predetermined position. An example in which the work WKs stacked in a predetermined area are gripped and placed without using the storage container as shown in FIG. 4B, or the works arranged and stacked in a predetermined posture as shown in FIG. 4C. It is used in the sense of including an example of sequentially grasping and placing WK. Further, it is not always necessary that the workpieces are stacked, and the workpieces randomly placed on a plane without overlapping the workpieces are also referred to as loose stacking in this specification (sequentially). Even if the workpieces are picked and the workpieces do not overlap at the end of the picking, it is still called loose picking). The present invention is not necessarily limited to picking in bulk, and can also be applied to picking workpieces that are not stacked in bulk.
また、図1の例ではセンサ部2を作業空間の上方に固定しているが、作業空間を撮像できる位置であれば足り、例えば斜めや側方、下方など、任意の定位置に配置できる。ただし、アーム部ARM上のような、可動する不定位置にセンサ部を配置する態様は除かれる。さらにセンサ部2が有するカメラや照明の数も、一個に限らず複数個としてもよい。さらにまたセンサ部2やロボット、ロボットコントローラ6との接続は、有線接続に限られず、無線接続としてもよい。
Further, in the example of FIG. 1, the
またワークの把持とは、図5Aに示すようにワークWKの外側を挟み込む他、図5Bに示すような、空洞を有するワークWK2の内部にエンドエフェクタEET2の爪部を挿入して拡開させることによって保持する例や、図5Cに示すような板状のワークWK3を吸引して保持するエンドエフェクタEET3の例を含む意味で使用する。以下では、ワークの把持の例としてワークの外側面を両側から掴む態様について説明する。またワークは、図1に示すように収納容器BXに多数個が収納されて無作為に積み上げられた状態で、このような複数のワークWKに対して一つづつ、エンドエフェクタEETで把持して、載置位置に載置する作業を繰り返すバラ積みピッキング動作における把持位置の設定(ティーチング作業)について、以下説明する。 Further, gripping the work means sandwiching the outside of the work WK as shown in FIG. 5A, and inserting the claw portion of the end effector EET2 into the inside of the work WK2 having a cavity as shown in FIG. 5B to expand the work. It is used in the sense of including an example of holding by the end effector EET3 which sucks and holds a plate-shaped work WK3 as shown in FIG. 5C. Hereinafter, as an example of gripping the work, a mode of gripping the outer surface of the work from both sides will be described. Further, as shown in FIG. 1, a large number of workpieces are stored in the storage container BX and randomly stacked, and one workpiece is gripped by the end effector EET for each of the plurality of workpieces WK. The setting of the gripping position (teaching work) in the bulk picking operation in which the work of placing the container in the mounting position is repeated will be described below.
ロボットシステム1000でバラ積みピッキング動作を行うにあたり、予めバラ積みピッキング動作を行わせるための設定を含めたティーチングを行う。具体的には、ワークのどの部位を、エンドエフェクタがどのような姿勢で把持するのか、把持位置などの登録を行う。このような設定は、ペンダント等のロボット操作具7で行う。
(ティーチング作業)
When performing the bulk picking operation in 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 function of teaching the gripping position described above. The
センサ部2は、作業位置に配置されたワークの三次元形状を三次元計測する。このセンサ部2は、センサ制御部2bにより制御される。なお、この例ではセンサ制御部2bをセンサ部2と一体に構成しているが、これらを個別に設けてもよい。ロボット部は、アーム部ARMとエンドエフェクタEETを備える。このロボットは、画像処理装置100に制御されて、ワークを把持位置で把持して、把持位置に把持する。ここでは、基準姿勢でワークを把持して、基準姿勢で載置する状態を、センサ部2で撮像して登録していく。ここで基準姿勢には、ワークの位置と姿勢が含まれる。
(表示部3)
The
(Display unit 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 image generation unit 8e'sees at least the work model positioned in the virtual three-dimensional space by the
基本方向画像選択部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で選択された基本方向画像に対して、三次元サーチ用のサーチモデルとして使用するか否かの選択を行うよう構成することが好ましい。これにより、基本方向画像に対して三次元サーチ用のサーチモデルとして使用するか否かを選択でき、いいかえると不要な基本方向画像を三次元サーチの対象から排除できるので、例えば板状のワークを側面から見た画像と誤検出する可能性がある基本方向画像を排除することで、板状のワークが直立した状態を三次元サーチしないように設定でき、実質的にワークモデルの姿勢に対する制限を簡単に設定することが可能となる。
Further, it is preferable that 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
(Gripping
把持位置特定部8dは、位置決め部8cで仮想三次元空間上において位置決めされたワークモデルに対して、この仮想三次元空間上で互いに直交する三軸の各軸方向からそれぞれ見た、少なくとも三つの基本方向画像を表示部3に表示させた状態で、少なくとも何れかの高さ画像に対して、このワークモデルをエンドエフェクタで把持する把持位置を特定するための部材である。この把持位置特定部8dは、ワーク側把持箇所指定部8d1と、エンドエフェクタ側把持設定部8d2と、相対位置設定部8d5を備える。
The gripping
ワーク側把持箇所指定部8d1は、基本方向画像選択部8eで選択された複数の基本方向画像を表示部3に表示させた状態で、いずれかの基本方向画像に対して、該基本方向画像が示すワークモデルをエンドエフェクタモデルで把持する際の把持位置を指定するための部材である。このワーク側把持箇所指定部8d1は、複数の基本方向画像のそれぞれに対して、複数の把持位置を登録可能に構成している。
(エンドエフェクタ側把持設定部8d2)
The work-side gripping location designation unit 8d1 displays a plurality of basic direction images selected by the basic direction
(End effector side grip setting unit 8d2)
エンドエフェクタ側把持設定部8d2は、エンドエフェクタモデルに対して、ワークモデルの把持に関する設定を行う部材である。エンドエフェクタ側把持設定部8d2は、把持基準点設定部8d3と、把持方向設定部8d4を含むことができる。把持基準点設定部8d3は、エンドエフェクタモデルに対して、ワークモデルを把持する位置に対応した把持基準点を規定する。一方把持方向設定部8d4は、エンドエフェクタモデルでワークモデルを把持する把持方向を規定する。これら把持基準点設定部8d3、把持方向設定部8d4は、共通の部材としてもよいし、個別に構成することもできる。また把持基準点設定部8d3、把持方向設定部8d4は、それぞれ把持基準点や把持方向を予め設定された所定値とすることができる。例えば、把持基準点を、エンドエフェクタモデルの先端に設けられた、ワークを挟み込む爪部同士の間の中心とする。また把持方向は、エンドエフェクタモデルを規定するツール座標軸を構成する何れかの座標軸とする。例えばZ軸方向とすることで、Z軸方向すなわち高さ方向に沿ってエンドエフェクタモデルを移動させて、ワークモデルを把持するために接近させる動作に近付け、ユーザにおいて感覚的に把握し易くできる。あるいは、把持基準点設定部8d3、把持方向設定部8d4は、把持基準点や把持方向を、ユーザにより調整可能としてもよい。
(相対位置設定部8d5)
The end effector side grip setting unit 8d2 is a member that sets the end effector model for gripping the work model. The end effector side grip setting unit 8d2 can include a grip reference point setting unit 8d3 and a grip direction setting unit 8d4. The gripping reference point setting unit 8d3 defines a gripping reference point corresponding to the position where the work model is gripped with respect to the end effector model. On the other hand, the gripping direction setting unit 8d4 defines the gripping direction in which the work model is gripped by the end effector model. The gripping reference point setting unit 8d3 and the gripping direction setting unit 8d4 may be common members or may be individually configured. Further, 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 set in advance, respectively. For example, the gripping reference point is set as the center between the claws that sandwich the work, which is provided at the tip of the end effector model. The gripping direction is any coordinate axis that constitutes the tool coordinate axis that defines the end effector model. For example, by setting the Z-axis direction, the end effector model can be moved along the Z-axis direction, that is, the height direction to approach the operation of approaching the work model in order to grip the work model, so that the user can intuitively grasp the model. Alternatively, the gripping reference point setting unit 8d3 and the gripping direction setting unit 8d4 may allow the gripping reference point and the gripping direction to be adjusted by the user.
(Relative position setting unit 8d5)
相対位置設定部8d5は、表示部3に表示されたエンドエフェクタモデルを、ワークモデルに干渉するまで移動させ、干渉位置に至った位置から所定分だけ離間させた姿勢にて把持状態を自動的に規定するための部材である。これにより、ユーザが手動でエンドエフェクタモデルを移動させてワークに接触させることなく、自動でエンドエフェクタモデルを移動させてワークに接触させて、把持位置を示すことが可能となり、ユーザ側に必要な作業を大幅に省力化できる利点が得られる。
(把持位置の登録)
The relative position setting unit 8d5 moves the end effector model displayed on the
(Registration of gripping position)
ティーチング作業においては、ワークを把持するときのワークとエンドエフェクタとの位置関係を把持位置として登録することが行われる。以下では、把持の代表例として、エンドエフェクタとしてハンド部を用いて、ハンド部でワークを把持する例について説明する。把持位置を登録した状態で、ロボットビジョンを用いたロボットピッキングの実運用時には、複数のワークがバラ積みされたワーク群の中から、ロボットビジョンで各ワークを検出し、検出されたワークの位置や姿勢に対して、エンドエフェクタ側の把持位置を計算して、計算された位置にエンドエフェクタが位置するようにロボットを動作させて、ピッキングする。ここで、把持位置の登録方法としては、実際にロボットを動作させて登録する方法や、三次元CADを用いた仮想三次元空間上でエンドエフェクタモデルを動作させて登録する方法がある。しかしながら、実際にロボットを動作させて把持位置を登録する方法では、実際にロボットを動かせながら手間のかかる登録作業が必要となり、大掛かりな検証環境を要したり、試行錯誤に時間がかかるといった問題があった。一方、三次元CADの空間上でロボットを仮想的に動作させて登録する方法では、ロボット不要で登録できる利点があるものの、仮想的なワークモデルの三次元的な姿勢に対し、仮想的なエンドエフェクタモデルの三次元的な姿勢を正確に合致させる必要があり、三次元の座標の位置合わせといった設定が難解であった。またこの方法ではワークとエンドエフェクタの三次元CADデータを必須とするため、三次元CADデータが手元にない状態では設定できなかった。 In the teaching work, the positional relationship between the work and the end effector when gripping the work is registered as the gripping position. In the following, as a typical example of gripping, an example in which a hand portion is used as an end effector and the work is gripped by the hand portion will be described. In the actual operation of robot picking using robot vision with the gripping position registered, each work is detected by robot vision from the work group in which multiple works are stacked separately, and the position of the detected work and the position of the detected work are displayed. The gripping position on the end effector side is calculated with respect to the posture, and the robot is operated so that the end effector is located at the calculated position for picking. Here, as a method of registering the gripping position, there are a method of actually operating the robot and registering it, and a method of operating and registering the end effector model in a virtual three-dimensional space using three-dimensional CAD. However, the method of actually operating the robot and registering the gripping position requires time-consuming registration work while actually moving the robot, which requires a large-scale verification environment and takes time for trial and error. there were. On the other hand, the method of virtually operating and registering a robot in the space of 3D CAD has the advantage that it can be registered without a robot, but it has a virtual end for the 3D posture of a virtual work model. It was necessary to accurately match the three-dimensional orientation of the effector model, and it was difficult to set the three-dimensional coordinate alignment. In addition, since this method requires three-dimensional CAD data of the work and the end effector, it cannot be set without the three-dimensional CAD data at hand.
そこで本実施形態においては、三次元CADモデルの各軸方向から見た高さ画像を基本方向画像として複数表示させ、この中から、ユーザの所望する基本方向画像を選択させて、選択された基本方向画像に対して把持位置を設定することで、仮想三次元空間上での把持登録を容易に行えるようにしている。この結果、ワークを模した三次元CADデータのワークモデルを配置した仮想三次元空間上でエンドエフェクタモデルを動作させて登録する際に、仮想三次元空間を規定する各軸方向から見た基本方向画像を選択して把持登録を行うことで、各基本方向画像に対して略垂直方向から見たエンドエフェクタモデルの姿勢を基準に登録することができるため、把持の設定が簡単に行えるようになる。またこの方法によれば、三次元CADデータがない場合でも、実際のワークを三次元計測して得られるデータを基本方向画像として用いることができる。このため、三次元CADデータがない場合でも、同様の手順で仮想三次元空間上で簡単に把持登録を行うことができる。
(三次元ピック判定部8l)
Therefore, in the present embodiment, a plurality of height images viewed from each axial direction of the three-dimensional CAD model are displayed as basic direction images, and the basic direction image desired by the user is selected from these, and the selected basic is selected. By setting the gripping position with respect to the direction image, gripping registration in the virtual three-dimensional space can be easily performed. As a result, when the end effector model is operated and registered in the virtual three-dimensional space in which the work model of the three-dimensional CAD data imitating the work is arranged, the basic direction seen from each axial direction that defines the virtual three-dimensional space. By selecting an image and registering the grip, it is possible to register the posture of the end effector model viewed from a substantially vertical direction with respect to each basic direction image, so that the grip can be easily set. .. Further, according to this method, even when there is no three-dimensional CAD data, the data obtained by three-dimensionally measuring the actual work 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.
(3D pick determination unit 8l)
三次元ピック判定部8lは、把持方向設定部8d4で規定した把持方向が、画像表示領域に表示されたワークモデルの姿勢を表すワーク平面に対して直交し、かつこの把持方向に沿うように把持基準点と把持位置を位置させるよう、エンドエフェクタモデルとワークモデルの相対位置を調整するための部材である。これにより、ワークをエンドエフェクタで把持する把持状態をシミュレーションする際、エンドエフェクタモデルでワークモデルを把持する位置の設定作業を容易に行える利点が得られる。特に、把持方向がワーク平面に直交し、かつ把持方向の軸上に把持基準点と把持位置を位置させることで、後はエンドエフェクタモデルを把持方向に沿ってワークモデルに近付けるだけで把持位置を調整できるようになるので、ユーザ側の作業負担が大幅に軽減される利点が得られる。従来はユーザが手動でエンドエフェクタを移動させながら、目視でワークを把持する姿勢に合わせ込む作業を行っており、エンドエフェクタの位置や姿勢をどのように調整するのか、パラメータが多く自由度が大きいことから、極めて繁雑な作業となっていた。これに対して、予めエンドエフェクタモデル側に把持基準位置と把持方向を規定し、把持方向がワーク平面と直交し、かつ把持方向の軸上に、エンドエフェクタモデルの把持基準点とワークの把持位置とが位置するように設定することで、エンドエフェクタモデルの移動方向が規定され、ユーザはエンドエフェクタモデルとワークモデルとの距離のみを調整することで把持状態を得ることができるようになる。この結果、従来極めて煩雑であったエンドエフェクタモデルとワークモデルとの把持位置の摺り合わせ作業の大幅な省力化が期待できる。 The three-dimensional pick determination unit 8l grips the gripping direction defined by the gripping direction setting unit 8d4 so that the gripping direction is orthogonal to the work plane representing the posture of the work model displayed in the image display area and is along the gripping direction. It is a member for adjusting the relative position of the end effector model and the work model so as to position the reference point and the gripping position. As a result, when simulating the gripping state in which the work is gripped by the end effector, there is an advantage that the setting work of the position where the work model is gripped by the end effector model can be easily performed. In particular, by positioning the gripping reference point and the gripping position on the axis of the gripping direction while the gripping direction is orthogonal to the work plane, the gripping position can be set by simply bringing the end effector model closer to the work model along the gripping direction. Since the adjustment can be performed, there is an advantage that the work load on the user side is greatly reduced. In the past, the user manually moved the end effector while visually adjusting it to the posture of gripping the work, and 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, the gripping reference position and the gripping direction are defined in advance on the end effector model side, the gripping direction is orthogonal to the work plane, and the gripping reference point of the end effector model and the gripping position of the work are on the axis of the gripping direction. By setting the position of and, the moving direction of the end effector model is defined, and the user can obtain the gripping 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 sliding the gripping positions between the end effector model and the work model, which has been extremely complicated in the past, can be significantly reduced.
このようなエンドエフェクタモデルとワークモデルの相対位置を、把持方向がワーク平面に直交し、かつ把持方向の軸上に把持基準点と把持位置を位置させるよう調整する作業は、三次元ピック判定部8lにより自動で行わせることが好ましい。これにより、予めエンドエフェクタモデル側に把持基準位置と把持方向を規定し、把持方向がワーク平面と直交し、かつ把持方向の軸上に、エンドエフェクタモデルの把持基準点とワークの把持位置とが位置するように自動調整することで、エンドエフェクタモデルの移動方向が規定され、ユーザはエンドエフェクタモデルとワークモデルとの距離のみを調整することで把持状態を得ることができるようになる。この結果、従来極めて煩雑であったエンドエフェクタモデルとワークモデルとの把持位置の摺り合わせ作業の大幅な省力化が期待できる。 The work of adjusting the relative positions of the end effector model and the work model so that 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 is a three-dimensional pick determination unit. It is preferable that the operation is automatically performed by 8 liters. As a result, the gripping reference position and the gripping direction are defined in advance on the end effector model side, the gripping direction is orthogonal to the work plane, and the gripping reference point of the end effector model and the gripping position of the work are aligned on the axis of the gripping direction. By automatically adjusting the position, the moving direction of the end effector model is defined, and the user can obtain the gripping 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 sliding the gripping positions between the end effector model and the work model, which has been extremely complicated in the past, can be significantly reduced.
ただ、必ずしも三次元ピック判定部による自動調整に限らず、例えば位置決め部8cでもってユーザが手動で把持方向をワーク平面と直交させ、かつ把持方向の軸上にエンドエフェクタモデルの把持基準点とワークの把持位置とを位置させる調整を行う際に、三次元ピック判定部がこのような調整作業を支援するように構成してもよい。例えば、第一段階としてワーク平面と把持方向を画像表示領域に表示させた状態で、これらが直交するように補助線をユーザに示したり、文字や画像でもって「ワーク平面に把持方向が直交するように、エンドエフェクタモデルを調整してください。」等と表示させて、ユーザに調整作業を促すように構成してもよい。さらに第二段階として、把持方向の軸上にエンドエフェクタモデルの把持基準点とワークの把持位置とを位置させるよう、把持方向の延長線を画像表示領域に表示させ、「把持方向の軸上にエンドエフェクタモデルの把持基準点とワークの把持位置とを位置させるよう、調整してください。」等のメッセージを表示させて、設定を促すように三次元ピック判定部が誘導することもできる。
However, it is not necessarily limited to automatic adjustment by the three-dimensional pick determination unit. For example, the user manually makes the gripping direction orthogonal to the work plane by using the
また三次元ピック判定部8lでもって、フィット機能を実現することもできる。例えば三次元ピック判定部8lが、エンドエフェクタモデルとワークモデルの相対位置を、把持方向がワーク平面に直交し、かつ把持方向の軸上に把持基準点と把持位置を位置させた状態で、エンドエフェクタモデルを把持方向に沿ってワークモデルに干渉するまで移動させ、干渉位置に至った位置から所定分だけ離間させた姿勢にて把持状態を自動的に規定するよう構成できる。これにより、エンドエフェクタモデルでワークモデルを把持する位置及び姿勢に自動で調整することが可能となり、ユーザ側の作業負担を一層軽減できる利点が得られる。
(三次元サーチ部)
Further, the fit function can be realized by the three-dimensional pick determination unit 8l. For example, the three-dimensional pick determination unit 8l sets the relative positions of the end effector model and the work model in a state where 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. The effector model can be moved along the gripping direction until it interferes with the work model, and the gripping state can be automatically defined in a posture separated from the position where the interference position is reached by a predetermined amount. As a result, it becomes possible to automatically adjust the position and posture in which the work model is gripped by the end effector model, and there is an advantage that the work load on the user side can be further reduced.
(3D search section)
三次元サーチ部は、入力画像中から、サーチモデル登録部で登録されたサーチモデルを用いて、各ワークの姿勢と位置を特定する三次元サーチを行うための部材である。三次元サーチに先立ち、サーチモデル登録部でもって、複数のワーク群をバラ積みした状態を示す入力画像中から、この入力画像に含まれる各ワークの姿勢と位置を特定する三次元サーチを行う際に用いる、ワークの三次元形状を仮想的に表現したサーチモデルを予め登録しておく。この状態で三次元ピック判定部8lが、三次元サーチ部でサーチされた入力画像中のサーチ結果に対して、ワーク側把持箇所指定部でこのワークに対して指定された把持位置において、エンドエフェクタで把持可能か否かを判定する。例えば入力画像取得部で、センサ部で測定された複数のワーク群の画像から三次元形状を有する入力画像を取得し、この入力画像中から、三次元サーチ部で、サーチモデル登録部で登録されたサーチモデルを用いて、各ワークの姿勢と位置を特定する三次元サーチを行う。これにより、実際にワークを撮像して取得した入力画像に対して、三次元サーチを行うことが可能となり、より実情に即した把持判定を行えるようになる。
(サーチモデル)
The three-dimensional search unit is a member for performing a three-dimensional search that specifies the posture and position of each work from the input image using the search model registered by the search model registration unit. Prior to the 3D search, when the search model registration unit performs a 3D search to specify the posture and position of each work included in the input image from the input image showing the state in which a plurality of work groups are stacked separately. A search model that virtually represents the three-dimensional shape of the work to be used for is registered in advance. In this state, the 3D pick determination unit 8l makes an end effector at the gripping position designated for this work by the work side gripping point designation unit for the search result in the input image searched by the 3D search unit. Determines whether or not it can be gripped with. For example, the input image acquisition unit acquires an input image having a three-dimensional shape from the images of a plurality of work groups measured by the sensor unit, and is registered in the three-dimensional search unit and the search model registration unit from the input images. A three-dimensional search is performed to specify the posture and position of each work using the search model. As a result, it becomes possible to perform a three-dimensional search on the input image acquired by actually imaging the work, and it becomes possible to perform a gripping determination more realistically.
(Search model)
バラ積みピッキングにおいては、バラ積みされた複数のワーク群の中から、把持可能なワークを決定するために、まずワーク単位で抽出する必要がある。ここでは、センサ部で得られた高さ情報を有するワーク群の形状に対して、予め検索対象のワークの形状をワークモデルとして登録しておき、このワークモデルで三次元サーチを行い、ワーク毎に位置及び姿勢を検出する。
(基本方向画像)
In bulk picking, in order to determine a work that can be gripped from a plurality of work groups stacked in bulk, it is first necessary to extract each work unit. Here, for the shape of the work group having the height information obtained by the sensor unit, the shape of the work to be searched is registered in advance as a work model, and a three-dimensional search is performed with this work model for each work. Detects position and orientation.
(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 work is created by using a height image when the work is viewed from a specific direction. As the height image used as the search model, three-dimensional CAD data, which is a work model expressing the work in three dimensions, and actual measurement data obtained by actually imaging the work by the sensor unit 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 work model CWM constructed with three-dimensional CAD data as shown in FIG. 7 is used as a search model. From this work model CWM, six height images viewed from the positive and negative directions of the three axes (for example, the X-axis, Y-axis, and Z-axis) that are orthogonal to each other in the virtual three-dimensional space, that is, The hexagonal view is acquired as a basic direction image. For example, the basic direction image generation unit 8e'of FIG. 6 generates six basic direction images and displays them in the hexagonal
(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 possessed by the three-dimensional CAD data. For example, for the three-dimensional CAD data of the work model CWM of FIG. 7, a virtual rectangular parallelepiped IBX circumscribing the work model CWM is defined as shown by a broken line in FIG. Set as.
(Basic direction
なお基本方向画像は必ずしも6枚とする必要はなく、少なくとも複数枚あれば足りる。例えば、直方体のように対向する面が同じ形状であれば、いずれか一方の面から見た基本方向画像で足りる。いいかえると、同じ形状になる基本方向画像を排除して、三次元サーチの処理負荷を低減できる。このような、見え方がいずれかの基本方向画像と共通する基本方向画像を削除する機能は、基本方向画像選択部8eにより実現される。一例として、図7のワークモデルCWMから取得した基本方向画像を図9A〜図9Dに示す.これらの図において、図9Aは図7のワークモデルCWMをX軸の正方向から見た高さ画像であり、図9BはY軸の正方向から見た高さ画像であり、図9CはZ軸の正方向から見た高さ画像であり、図9DはZ軸の負方向から見た高さ画像である。ここでは高さ画像として、高さが高い点ほど明るく、低い点ほど暗くなるように、高さ情報を輝度値として表現した高さ画像を用いている。
The number of basic direction images does not necessarily have to be six, and at least a plurality of images is sufficient. For example, if the opposing surfaces have the same shape as in a rectangular parallelepiped, the basic direction image viewed from either surface is sufficient. In other words, it is possible to eliminate the basic direction image having the same shape and reduce the processing load of the three-dimensional search. Such a function of deleting a basic direction image having a common appearance with 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 matching / disagreement of the appearance is a total of six height images viewed from the top and bottom (± direction of the Z axis), front and back (± direction of the Y axis), and left and right (± direction of the X axis) of the work. Is generated and confirmed by performing a match confirmation. Here, the rotation match is confirmed at a step angle of 90 °, and the face that looks like matching with other faces is excluded from the registration target of the search model. In the work model CWM of FIG. 7, the height image seen from the negative direction of the X-axis and the height image seen from the negative direction of the Y-axis are in a state of matching with FIGS. 9A and 9B, respectively. Therefore, it is excluded from the target of search model generation. In this way, search models are generated for the number of faces that look different. The basic direction image excluding the unnecessary height image in this way is displayed in the hexagonal
(Search model registration screen 130)
また、このような除外は、ユーザが手動で行うこともできるし、画像処理装置側で自動で行わせてもよいし、あるいはこれらを組み合わせてもよい。 Further, such exclusion may be performed manually by the user, may be performed automatically on the image processing apparatus side, or may be combined.
例えば、図10に示す三次元サーチのサーチモデルとして基本方向画像BDIを登録するサーチモデル登録画面130において、基本方向画像生成部8e’が自動的に六面図に相当する基本方向画像BDIを生成し、表示部3の六面図表示領域3aに表示させる。この際、共通する基本方向画像が存在する場合は、サーチモデルの登録対象から排除するようユーザに促す。ここでは、サーチモデルの登録可否を設定するサーチモデル選択部8iとして、サーチモデルの候補となる基本方向画像BDIに対して、それぞれ「登録対象」チェックボックス131を設けている。ユーザは「登録対象」チェックボックス131をONにすると、この基本方向画像BDIをサーチモデルとして登録し、「登録対象」チェックボックス131をOFFにすると、この基本方向画像をサーチモデルから除外することができる。
For example, on the search
この際、見え方が共通する基本方向画像については、基本方向画像選択部8eによって、予め「登録対象」チェックボックス131をOFFにした状態でユーザにサーチモデル登録画面130を表示させる。ユーザは、初期状態としてサーチモデルに登録すべき基本方向画像BDI、及びサーチモデルから排除すべき基本方向画像が正しく選択されていることを確認した上で、この選択を承認したり、必要に応じて修正や入れ替えを行うことができる。このように、デフォルトで三次元サーチのサーチモデルとして登録すべき基本方向画像を選択し、かつ登録から排除すべき基本方向画像の候補を提示させることで、ユーザによるサーチモデルの登録作業を省力化できる。
(実測データMWM)
At this time, for the basic direction images having a common appearance, the basic direction
(Actual measurement data MWM)
以上は、三次元サーチのサーチモデルとして三次元CADデータを用いる例を説明した。ただ本発明は上述の通り、サーチモデルを必ずしも三次元CADデータに限定せず、例えば複数の二次元CADデータを解析して三次元データ化したものを用いたり、あるいはセンサ部で実際にワークを撮像した実測データを、サーチモデルとして利用することもできる。一例として、図7のワークモデルCWMに対応するワークをX軸の正方向から撮像した実測データMWMを、図11に示す。このように、ワークのCADデータがない場合は、実ワークを三次元計測したデータを用いることも可能である。図10で示したように、三次元サーチに必要な数の実測データMWMを撮像して登録していく。 The above has described an example of using 3D CAD data as a search model for 3D search. However, as described above, the present invention does not necessarily limit the search model to three-dimensional CAD data. For example, a plurality of two-dimensional CAD data are analyzed and converted into three-dimensional data, or a work is actually performed by the sensor unit. The captured actual measurement data can also be used as a search model. As an example, FIG. 11 shows actual measurement data MWM obtained by imaging the work corresponding to the work model CWM of FIG. 7 from the positive direction of the X axis. As described above, when there is no CAD data of the work, it is also possible to use the data obtained by three-dimensionally measuring the actual work. As shown in FIG. 10, the actual measurement data MWM of the number required for the three-dimensional search is imaged and registered.
なお、実ワークを登録する場合は、ワークを置いた底面の情報(例えばワーク周辺の床の形状)も三次元計測されることになる。そこで、例えば底面から一定以上の高さの箇所のみをしきい値処理で切り出す等して、不要な底面の情報を除外することが好ましい。これによって、三次元サーチに必要な形状部分のみを登録することが可能となる。
(特徴点の抽出)
When registering an actual work, information on the bottom surface on which the work is placed (for example, the shape of the floor around the work) is also measured three-dimensionally. Therefore, for example, it is preferable to exclude unnecessary bottom surface information by cutting out only a portion having a height above a certain level from the bottom surface by threshold processing. This makes it possible to register only the shape portion required for the three-dimensional search.
(Extraction of feature points)
次に、このようにしてサーチモデルの対象となるワークの各面に相当する高さ画像を登録した状態で、登録された面のサーチモデルを生成する。ここでは、登録された各面毎に、三次元サーチに必要な特徴点を抽出する。ここでは特徴点として、形状の輪郭を現す特徴点(輪郭上の特徴点)と、表面形状を表す特徴点(表面上の特徴点)の、2種類の特徴点を用いる例を説明する。図12Aに、X軸方向から見た高さ画像(図9Aに相当)のサーチモデルSMに対して、2種類の特徴点を抽出した状態を示す。またこのサーチモデルSMを斜視図で表示した状態を図12Bに示す。ここで表面上の特徴点SCPと輪郭上の特徴点OCPは、表示態様を変えて表示させることが好ましい。例えば表面上の特徴点SCPを白色で、輪郭上の特徴点OCPを水色で表示させる。あるいは、表面上の特徴点の白と、より区別がつきやすいように紫色で表示する等、他の配色としても良い。このように色を変えて特徴点を表示させることで、ユーザは各特徴点の意味合いを視覚的に区別することが容易となる。 Next, the search model of the registered surface is generated in the state where the height images corresponding to each surface of the work to be the target of the search model are registered in this way. Here, the feature points required for the three-dimensional search are extracted for each registered surface. Here, an example will be described in which two types of feature points are used, that is, a feature point that represents the contour of the shape (feature point on the contour) and a feature point that represents the surface shape (feature point on the surface). 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. Further, FIG. 12B shows a state in which the search model SM is displayed in a perspective view. Here, it is preferable that the feature point SCP on the surface and the feature point OCP on the contour are displayed in different display modes. For example, the feature point SCP on the surface is displayed in white, and the feature point OCP on the contour is displayed in light blue. Alternatively, another color scheme may be used, such as displaying white as a feature point on the surface and purple so that it can be more easily distinguished. By displaying the feature points by changing the color in this way, the user can easily visually distinguish the meaning of each feature point.
表面上の特徴点SCPは、例えばワークモデルの表面を一定間隔で抽出する。一方、輪郭上の特徴点OCPは、例えば高さが変化する箇所等のエッジ抽出を行って、さらに細線化処理した箇所を、一定間隔で特徴点として抽出する。このように、各特徴点は、面の三次元的な形状を表す特徴となっている。
(三次元サーチ方法)
Feature points on the surface SCP extracts, for example, the surface of the work model at regular intervals. On the other hand, the feature point OCP on the contour performs edge extraction, for example, a portion where the height changes, and extracts the portion further thinned as a feature point at regular intervals. In this way, each feature point is a feature that represents 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 the search model from which the feature points are extracted in this way. Here, as an input image, as shown in FIGS. 13A and 13B, a method of performing a three-dimensional search in order to extract each work from a state in which a group of works in which a plurality of works are stacked separately is imaged and a three-dimensional shape is acquired. Will be described. First, the position and orientation (X, Y, Z, RX , RY , R Z ) in which each feature point of the search model best matches is searched from the input image. Here, R X , RY , 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 rotation angles have been proposed, but here, ZZ Euler angles are used (details will be described later). Further, the matching positions and postures do not have to be one for each search model, and a plurality of matching positions and postures may be detected for a certain number or more.
ここでは入力画像として、図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 two-dimensional display as shown in FIG. 13A or a work group as shown in FIG. 13B which is displayed three-dimensionally is subjected to a three-dimensional search to search the entire input image. As a result, a two-dimensional display as shown in FIG. 13C, or a searched image as shown in FIG. 13D, which is a three-dimensional display of the two-dimensional display, 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 searched from the input image and the work corresponding to the search model is detected. FIG. 13D shows how the search results of the search model A and the 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. Regarding the work WK on the right side of FIG. 13D, two search results of search models A and B are obtained with the same work. Therefore, if gripping at the gripping positions registered in each search model is possible, a plurality of gripping positions are obtained in this work.
このように三次元サーチに用いるサーチモデルとして、ワークを六面図のように、面ごとに見た画像を用いることで、斜視図などを用いる場合と比べ、三次元サーチの演算処理を簡素化でき、処理を軽負荷、高速化できる利点が得られる。また、サーチモデルの登録作業に際しても表示された状態が見易くなり、ユーザにも視覚的に判り易くできる。
(三次元サーチ結果の評価指標)
As a search model used for the three-dimensional search in this way, by using an image of the work viewed for each surface as in the six-view view, the arithmetic processing of the three-dimensional search is simplified as compared with the case of using a perspective view or the like. It is possible to obtain the advantage that the processing can be lightly loaded and speeded up. In addition, the displayed state can be easily seen even when the search model is registered, so that the user can easily understand it visually.
(Evaluation index of 3D search results)
さらに、三次元サーチ結果の評価指標を設定することもできる。例えば図13Cや図13Dに示す例において、対応する特徴点が、入力画像中に対してどの程度存在したか(例えばサーチ結果に対し、一定の距離以下の誤差で対応した特徴点の点数割合や、規定の計算式により特徴点の誤差量をペナルティとして減点した値などによって、三次元サーチ結果をスコア付けする。この方法では、三次元計測できなかった無効データ(無効画素)が多い状態では、スコアが低くなる。このようにスコアを、三次元サーチ結果の信頼性を表す指標として用いることができる。例えば、スコアが高い順に、優先的にワークを把持するように設定できる。また、一定のスコア以下の三次元サーチ結果は、誤検出している可能性が高いと判断して、ワークの把持対象から外すように設定してもよい。例えば図6の画像処理装置100において演算部10に評価指標演算部8qを設け、所定の基準に基づいてサーチ結果に対して評価指標を演算する。これにより、評価指標の高いサーチ結果から順に優先順位を設定し、この優先順位に従いワークを把持するように設定することができる。例えば、一定のスコア以上の結果の中で、Z方向の位置が最も高いものから優先的に把持するように設定することができる。Z方向の位置が高いものほど、他のワークと干渉しにくい特性があるため、Z方向の位置が最も高いものから優先的に把持するように設定することで、干渉判定の処理負荷を下げる効果を得られる。
Further, an evaluation index of the three-dimensional search result can be set. For example, in the examples shown in FIGS. 13C and 13D, how much the corresponding feature points existed in the input image (for example, the score ratio of the corresponding feature points with an error of a certain distance or less with respect to the search result). , The three-dimensional search result is scored by the value obtained by deducting the error amount of the feature point as a penalty according to the specified calculation formula. With this method, when there are many invalid data (invalid pixels) that could not be measured three-dimensionally, The score becomes low. In this way, the score can be used as an index showing the reliability of the three-dimensional search result. For example, it can be set to preferentially grip the work in descending order of the score. The three-dimensional search result below the score may be set to be excluded from the gripping target of the work, judging that there is a high possibility of erroneous detection. For example, in the
このようにしてバラ積みされたワーク群から、ワーク毎に検出することで、把持対象のワークを画像処理装置側で認識できるようになる。次に、ワークをエンドエフェクタで把持するためには、ワーク毎に、ワークのどの位置をどのような姿勢で把持するかを認識させる必要がある。このため、ワークの把持位置を登録する。なお本明細書では、「把持位置」、「把持姿勢」の登録というとき、ワークを把持する位置と、そのときの姿勢を含む意味で使用する。ワークの把持位置は、ワークに対して一箇所以上を登録できる。また、把持位置の登録は、ワークの面単位で行うことで、把持登録の作業の容易性や把持位置の認識の点で好ましい。すなわちワークの姿勢を、特定の面を上面とした姿勢に規定した上で、把持位置を登録する。
(把持登録画面140)
By detecting each work from the work group stacked in this way, the work to be gripped can be recognized on the image processing apparatus side. Next, in order to grip the work with the end effector, it is necessary for each work to recognize which position of the work is to be gripped and in what posture. Therefore, the gripping position of the work is registered. In this specification, when the "grip position" and "grip posture" are registered, they are used to include the position where the work is gripped and the posture at that time. One or more gripping positions of the work can be registered with respect to the work. Further, it is preferable to register the gripping position for each surface of the work in terms of ease of grip registration work and recognition of the gripping position. That is, the posture of the work is defined as the posture with a specific surface as the upper surface, and then the gripping position is registered.
(Grip registration screen 140)
ここで、エンドエフェクタモデルがワークモデルを把持する把持位置を登録する把持登録を行うユーザインターフェース画面の例を、図14、図15に示す。把持登録画面140では、ワークモデルの登録する面を指定し、各面に対し、把持姿勢を登録する。図14の例では、4種類の面(サーチモデルの各面)を指定して、把持姿勢を登録するユーザインターフェース画面を示している。ここではA〜Dのサーチモデルの内、サーチモデル「C」を選択しており、このサーチモデルCには3つの把持姿勢が表示されている。
Here, FIGS. 14 and 15 show examples of a user interface screen for performing grip registration for registering a grip position in which 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)
Further, 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, the 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 , RY , 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, the gripping reference point corresponding to the position where the work model CWM is gripped with respect to the end effector model EEM displayed in the
さらに把持位置の登録に際して、図15の把持姿勢追加画面150を開いた初期状態において、エンドエフェクタモデルEEMの位置及び姿勢は、エンドエフェクタモデルEEMを下向きの姿勢として、ワークモデルCWMがエンドエフェクタモデルEEMの下方に位置する状態を初期値としている。このようにすれば、エンドエフェクタモデルEEMを降下させてワークモデルCWMに接触させるようにすれば把持姿勢が決まるため、ユーザ側の操作を直感的に行うことができ、従来、三次元での位置合わせが面倒であった問題を低減できる。すなわち、基本的にエンドエフェクタモデルEEMのX、Y、Z方向の位置合わせと、Z軸に対する回転を設定するのみで、簡単に把持姿勢を登録できる。
Further, when registering the gripping position, in the initial state in which the gripping
さらにまた、ワークモデルCWMに対して、エンドエフェクタモデルEEMで把持する把持位置を設定することで、この把持位置が把持方向を延長した軸上に位置するよう、エンドエフェクタモデルEEMの位置を自動的に調整するよう構成することもできる。 Furthermore, by setting the gripping position to be gripped by the end effector model EEM for the work model CWM, the position of the end effector model EEM is automatically set so that this gripping position is located on the axis extending the gripping direction. It can also be configured to adjust to.
なお、把持姿勢の登録は、ワークの画像を基準に行う。このため、必ずしもCADデータを用いる必要はなく、ワークを実際に撮像して得られた実測データに対し、把持姿勢を登録することもできることは上述の通りである。
(フィット機能)
The gripping posture is registered based on the image of the work. Therefore, it is not always necessary to use CAD data, and as described above, the gripping posture can be registered with respect to the actually measured data obtained by actually imaging the work.
(Fit function)
さらに、把持位置を指定する際、エンドエフェクタモデルをワークモデルの把持位置に移動させる作業をユーザが手動で行うのみならず、これを自動的に行うフィット機能を設けることもできる。従来、エンドエフェクタモデルでワークモデルを把持する把持位置X、Y、Zや把持姿勢RX、RY、RZを指定する際、例えば図15の画像表示欄141において、エンドエフェクタモデルをドラッグしてワークモデルに接触するまで移動させたり、操作欄142において高さ方向のZに数値を入力したりして設定していた。しかしながら、ユーザが目視によりエンドエフェクタモデルを移動させてワークモデルを把持する姿勢に合わせ込む作業は面倒であり、また位置パラメータの数値を指定するのも、6つの位置パラメータをどのように調整すればよいのかが判り難い。そこで、エンドエフェクタモデルをワークモデルの把持位置に位置させる作業を自動的に行うフィット機能を設けている。
Further, when the gripping position is specified, not only the user manually performs the work of moving the end effector model to the gripping position of the work model, but also a fit function that automatically performs this can be provided. Conventionally, the gripping position X for holding the workpiece model end effector model, Y, Z and the grasping posture R X, R Y, when specifying the R Z, for example, in the
ここで、ワークモデルやエンドエフェクタモデルが三次元CADデータのように高さ情報を有している場合は、ワークモデル上の把持させたい位置をマウスのクリック等により指定し、この位置の高さ方向、すなわちZ座標を取得し、そのZ座標にオフセットを加味した位置を、エンドエフェクタモデルの移動後のZ座標として設定する。これによって、把持位置までエンドエフェクタモデルをユーザが手動で移動させたり、Z座標などの位置パラメータを手動で入力させる手間を省き、しかも正確に把持位置を指定することができる。このようなフィット機能の一例として、図15の把持姿勢追加画面150に示す操作欄142には、相対位置設定部8d5の一態様である「フィット」ボタン154を配置している。「フィット」ボタン154を押下すると、エンドエフェクタモデルEEMがZ方向に仮想的に移動されて、ワークモデルCWMに接触する位置で停止され、この干渉位置から逆方向に、オフセット量だけ戻した位置を、把持位置とする。オフセット量は、エンドエフェクタモデルEEMの先端がワークモデルCWMと接触して干渉したり傷付けることを避けるため、若干離間させるための数値であり、例えば1mmなど、ワークや用途に応じて規定できる。
Here, when the work model or the end effector model has height information such as three-dimensional CAD data, the position to be gripped on the work model is specified by clicking the mouse or the like, and the height of this position is specified. The direction, that is, the Z coordinate is acquired, and the position where the offset is added to the Z coordinate is set as the Z coordinate after the movement of the end effector model. This saves the user the trouble of manually moving the end effector model to the gripping position and manually inputting the position parameters such as the Z coordinate, and can specify the gripping position accurately. As an example of such a fit function, the "fit"
以上の例では、三次元サーチを行うための三次元サーチモデル生成の際に用いた高さ画像を用いて、把持登録を行う方法を説明した。このようにワークを抽出するためのサーチモデルと、把持位置を登録するモデルとを共通化することで、ユーザは共通のワークに対して三次元サーチや把持位置の設定を行うことができ、操作に統一感が得られ感覚的にも理解し易くなる。ただ、本発明は必ずしも、三次元サーチのサーチモデルと把持登録の対象となるモデルとを一致させることを要しない。三次元サーチモデルと、把持登録に用いるモデルとの対応関係が判っておれば、必ずしもサーチモデルとして用いたモデルを把持登録に用いる必要はない。 In the above example, a method of performing grip registration has been described using the height image used when generating the three-dimensional search model for performing the three-dimensional search. By sharing the search model for extracting the work and the model for registering the gripping position in this way, the user can perform a three-dimensional search and set the gripping position for the common work, and operate the work. A sense of unity is obtained and it becomes easier to understand sensuously. However, the present invention does not necessarily have to match the search model of the three-dimensional search with the model to be grasped and registered. If the correspondence between the three-dimensional search model and the model used for grip registration is known, it is not always necessary to use the model used as the search model for grip registration.
また、三次元CADデータから高さ画像を生成した後の、見え方の一致確認は、各軸の正負方向同士の確認のみに限定する必要はない。例えば、立方体等のワークは、X軸の±方向、Y軸の±方向、Z軸の±方向の、どの方向から見ても見え方が一致するため、1つの面のみ、サーチモデルを生成すれば良い。同様に、把持位置の登録も、1つの面に対して把持を指定するだけで足りる。これだけで、全ての面(X軸の±方向、Y軸の±方向、Z軸の±方向)に対して、把持できる状態になる。例えば、図16Aに示すような立方体状のワークWKCのバラ積みに対しては、立方体の1面を、図16Bのようにモデル登録し、この面を真上から掴む把持姿勢を1つ登録するだけで、図16Cに示すように六面全ての面に対する三次元サーチ及びエンドエフェクタモデルEEMによる把持が可能となる。
(キャリブレーション)
Further, after the height image is generated from the three-dimensional CAD data, the confirmation of the matching of the appearances does not have to be limited to the confirmation of the positive and negative directions of each axis. For example, a work such as a cube looks the same in any direction, such as the ± direction of the X-axis, the ± direction of the Y-axis, and the ± direction of the Z-axis. Just do it. Similarly, for registration of the gripping position, it is sufficient to specify gripping for one surface. With this alone, it is possible to grip all the surfaces (± direction of the X axis, ± direction of the Y axis, ± direction of the Z axis). For example, for the bulk stacking of cubic work WKCs as shown in FIG. 16A, one surface of the cube is registered as a model as shown in FIG. 16B, and one gripping posture for grasping this surface from directly above is registered. As shown in FIG. 16C, it is possible to perform a three-dimensional search on all six surfaces and grip by the end effector model EEM.
(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)
On the
(Embodiment 2)
このような画像処理装置(マシンビジョン装置)とロボット間のキャリブレーション機能を備えるロボットシステムの例を、実施形態2として図17の機能ブロック図に示す。この図に示すロボットシステム2000は、画像処理装置200と、表示部3と、操作部4と、センサ部2と、ロボットコントローラ6と、ロボットRBTを備える。なおこの図に示すロボットシステムにおいて、上述した図6等と共通する部材については、同じ符号を付して詳細説明を適宜省略する。
(画像処理装置200)
An example of a robot system having a calibration function between such an image processing device (machine vision device) and a robot is shown in the functional block diagram of FIG. 17 as the second embodiment. The
(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
キャリブレーション部8wは、複数の位置座標について、ロボットのエンドエフェクタEETの実際の位置座標と、画像処理装置に表示されている画像上の位置座標との間の変換式を算出する。なお座標変換の方法は、特に限定されるものではなく、例えば三次元アフィン変換等、既知の方法を適宜利用できる。
The
記憶部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 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, ZZ-based Euler angles will be described. Conventionally, ZZ Euler angles have been used to position the posture of a work model or an end effector model using three-dimensional CAD data in order to define a gripping position for gripping a work with an end effector. In this case, the position and orientation of the end effector model with respect to the work model are represented by six position parameters (X, Y, Z, RX , RY , R Z ). Here X, Y, Z are orthogonal coordinate axes defining a three-dimensional space, R X, R Y, each R Z X-axis, Y-axis shows the rotation angle to rotate about the Z axis.
ここで、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 ZZ Euler angles will be described with reference to FIGS. 18 to 21. First, FIG. 18 shows a state in which the end effector model EEM and the work 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, since the work model WM11 side is stationary and the end effector model EEM side is rotated, the reference coordinate axis BAX is the position and orientation of the work model WM11, and the rotated coordinate axis RAX is the position of the end effector model EEM. And the posture are shown respectively. The rotated coordinate axis RAX on the end effector model EEM side has its origin coincided 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°となる。 In yet a pre-rotation state, the rotation angle R X of the XYZ-axis, R Y, R Z each R X = 0 °, R Y = 0 °, an R Z = 0 °, the reference coordinate axes BAX and rotational already coordinate RAX Are in agreement. In this state, when the end effector model EEM is rotated 90 ° counterclockwise about the Z axis, it becomes as shown in FIG. In the state of FIG. 19, the rotation angles R X , RY , and R Z are R X = 0 °, RY = 0 °, and R Z = 90 °, respectively, and have been rotated and displayed in the image display area accordingly. The coordinate axis RAX is updated to the posture after rotation. Further, when the state of FIG. 19 is rotated 90 ° clockwise around the Y axis, the result is as shown in FIG. In this state, the rotation angles R X , RY , and R Z are R X = 0 °, RY = 90 °, and R Z = 90 °, respectively, and the rotated coordinate axis RAX is similarly rotated. Will be updated to. Further, when the rotation is 90 ° clockwise around the X axis from the state of FIG. 20, the state of FIG. 21 is obtained, and the rotation angles R X , RY , and R Z are R X = 90 ° RY = 90 ° R, respectively. Z = 90 °.
従来は、このようなZ−Y−X系オイラー角を用いて、ワークモデルやエンドエフェクタモデルの生成や位置を表現していた。しかしながら、操作可能な位置パラメータの数が6個と多いため、これらの位置パラメータを調整してユーザが想定している位置や姿勢に調整する作業は容易でなかった。また姿勢を維持したまま位置を移動させる際に用いるXYZ軸と、回転で用いるRX、RY、RZ軸とが異なるため、この位置パラメータを変化させると、どのように変化するのかが直感的に判り難いという問題があった。この様子を図22に基づいて説明する。 Conventionally, such ZYX Euler angles have been used to express the generation and position of work models and end effector models. However, since the number of operable position parameters is as large as 6, it is not easy to adjust these position parameters to the position and posture assumed by the user. Also the XYZ axes used when moving the position while maintaining the posture, R X to be used in rotation, R Y, because where the R Z axis different, varying the position parameter, how changes to the intuition 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 axis RAX, which is the orthogonal coordinate axis after rotation of the rotation angles R X = 90, RY = 90, and R Z = 90, is displayed in the image display area. If RY or R Z is changed from this state, it will rotate around an axis different from the displayed rotated coordinate axis RAX. For example the rotation of R Y is not a Y axis indicated by rotation already axes RAX in Figure 22, as indicated by broken lines in FIG. 22, R X pre-rotation Y-axis (Y-axis indicated by rotation already axes RAX in Figure 19) Will rotate around. Further, R Z does not rotate around the Z axis shown by the rotated coordinate axis RAX in FIG. 22, but also the Z axis before the rotation of R X and RY shown by the broken line (Z axis shown 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 Euler angles are defined on the premise that they are rotated in the order of Z-axis, Y-axis, and X-axis. According to the ZYX Euler angles, the Z axis is the reference, and the rotation axes of R X and RY are rotated by the rotation of R Z around the Z axis, respectively. Here, the rotation axis around the Z axis does not move, while the rotation axes themselves of R X and RY are rotated by the rotation R Z around the Z axis. When the rotation is RY around the Y axis determined in accordance with this, the X axis is also rotated accordingly. Here, since the rotation axis around the Y axis is determined by the rotation R Z around the Z axis, even if only R X is rotated around the X axis, the rotation axis around the Y axis and the rotation axis around the Z axis change. do not. In other words, in ZZ Euler angles, R Z has an independent axis of rotation, RY has an axis of rotation dependent on R Z , and R X has an axis of rotation dependent on RY. It can be said.
このように、従来よりロボットの制御で一般的に用いられているZ−Y−X系オイラー角では、3つの回転軸が相互に関連して、他の回転軸回りの回転後の軸でもって回転するため、ユーザにとってはどの軸が回転軸になるのかが極めて把握し難くなり、意図通りの方向に回転させることが容易でなかった。
(補正回転軸の表示)
In this way, in the ZZ Euler angles that have been generally used for robot control, the three rotation axes are related to each other, and the rotation axes around the other rotation axes are used. Since it rotates, it is extremely difficult for the user to grasp which axis is the axis of rotation, and it is not easy to rotate the axis 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軸である。 In the method according to the present embodiment the contrary, R X, is R Y, the axis of rotation of R Z, to display, based on the actual rotation axis. This axis is different from the conventional display of three-dimensional space using ZZ Euler angles (FIGS. 18 to 21), and is in a state after rotation around another axis of rotation. The actual rotation axis corrected in consideration of the above is displayed as the correction rotation axis. For example, 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 R X and RY are calculated as 0 ° is the correction rotation axis. The correction rotation Z-axis AXZ displayed here is the Z-axis when R X = 0 °, RY = 0 °, and R Z = 90 °.
一方、図22の状態でRYの補正回転軸を表示するには、図24に示すように、RXを0°として計算したときのY軸が、現実の回転軸となる。ここで表示される補正回転Y軸AXYは、RX=0°、RY=90°、RZ=90のときのY軸である。 On the other hand, to display the correct rotation shaft of R Y is in the state of FIG. 22, as shown in FIG. 24, Y axis when calculating the R X is 0 ° becomes the actual rotation axis. The correction rotation Y-axis AXY displayed here is the Y-axis when R X = 0 °, RY = 90 °, and R Z = 90.
さらに図22の状態でRXの補正回転軸を表示するには、そのままX軸を表示すればよい。補正回転軸として補正回転X軸を表示させた例を図25に示す。ここで表示される補正回転X軸AXXは、RX=90°、RY=90°、RZ=90°のときのX軸である。 To display the corrected rotational axis R X is still the state of FIG. 22 may be displayed in the X-axis as it is. FIG. 25 shows an example in which the correction rotation X axis is displayed as the correction rotation axis. The correction rotation X-axis AXX displayed here is the X-axis when R X = 90 °, RY = 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, it is set to an intermediate position between a pair of claws, which is a gripping position of the end effector model EEM.
(XYZ 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軸を表示させる。 This correction rotation axis can display the rotation axis in the same way even when the order of rotation is changed. For example, in the above-mentioned examples of FIGS. 23 to 25, since the ZZ Euler angles are adopted, they are rotated in the order of R Z , RY , and R X. Meanwhile, different Employing X-Y-Z Euler angles, R X, R Y, from rotating in the order of R Z, axes calculated as 0 ° is the Z-Y-X based Euler angles. For example, to obtain a corrected rotary axis X-Y-Z Euler angles, similarly to FIGS. 18 to 21 R X, R Y, assuming that is rotated in the order of R Z, displays the Z-axis as a correction rotation axis To do so, display the rotated Z-axis as it is. To display the Y-axis as the correction rotation axis, display the Y-axis when R Z is calculated as 0 °. Further, in order to display the X-axis as the correction rotation axis, the X-axis when R Z and RY are calculated as 0 ° is displayed.
このようにして、オイラー角を用いて把持位置や姿勢の設定をユーザが行うに際して、回転軸を判り易く表示させることができ、複雑なオイラー角の概念を理解せずとも感覚的に操作し易くできる。
(実施形態3)
In this way, when the user sets the gripping position and posture using Euler angles, the rotation axis can be displayed in an easy-to-understand manner, and it is easy to operate intuitively without understanding the complicated concept of Euler angles. it 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 end effectors and workpieces defined by multiple position parameters such as Euler angles. Therefore, it is also possible to guide the setting procedure of the position parameter so that the user can specify the position parameter that can be specified among the plurality of position parameters, and sequentially set the necessary position parameter according to the guidance. Such an example is shown in FIG. 26 as the
(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 grip
把持位置コピー部8d8は、把持位置保存部9bに保存されたワークモデル又はエンドエフェクタモデルの把持位置を読み出して、該把持位置を変更して新たな把持位置として登録するための部材である。これにより、複数の把持位置を登録する際、既に登録された把持位置を読み出して、これをベースにして把持位置を変更し、新たな把持位置として登録可能とすることで、一から把持位置を登録する場合に比べ、より簡単に把持位置を追加でき、登録作業の省力化が図られる。
The gripping position copy unit 8d8 is a member for reading out the gripping position of the work model or the end effector model stored in the gripping
三次元ピック判定部8lは、三次元サーチ部8kでサーチされた各サーチ結果に対して、把持位置特定部8dでワークモデルに対して指定された把持位置にて、エンドエフェクタで把持可能か否かを判定するための部材である。
Whether or not the three-dimensional pick determination unit 8l can grip each search result searched by the three-
断面モデル生成部8sは、エンドエフェクタモデルに対して一方向に設定された直線状の基本軸に沿って、この基本軸と直交する平面でエンドエフェクタモデルを切断した断面と、各断面を含む直交平面が基本軸と交差する点を断面位置として、複数の断面と断面位置との組で構成された断面モデルを生成する。この断面モデルを作成するためのエンドエフェクタモデルには、ポリゴンデータ等が用いられる。
(把持位置特定部8d)
The cross-section
(Gripping
図26に示す把持位置特定部8dは、第一指定部8d9と、第二指定部8d6と、第三指定部8d7を含む。第一指定部8d9は、X座標、Y座標、Z座標の少なくともいずれかを指定可能で、かつ他の位置パラメータは指定不可能な部材である。第二指定部8d6は、第一指定部8d9で一部の位置パラメータが指定された状態のワークモデル又はエンドエフェクタモデルに対して、RX回転角、RY回転角、RZ回転角の少なくともいずれかを指定可能で、かつ他の位置パラメータは指定不可能な部材である。第三指定部8d7は、第一指定部8d9及び第二指定部8d6で一部の位置パラメータが指定された状態のワークモデル又はエンドエフェクタモデルに対して、RX回転角、RY回転角、RZ回転角の少なくともいずれかの内、第二指定部8d6で指定されていない位置パラメータを指定可能で、かつ他の位置パラメータは指定不可能とした部材である。
The gripping
これにより、把持位置の指定を、6つの位置パラメータのすべてを一つの画面上で指定させるのでなく、指定可能なパラメータをそれぞれ限定した複数の指定部に分けて、それぞれで位置パラメータを個別に指定させることで、複数の位置パラメータが相互に絡み合って位置や姿勢の把握がし難くなる事態を避け、さらに順次位置パラメータを着ていさせることで、位置及び姿勢の特定に必要な情報を設定させることが可能となる。特に、第一指定部8d9で把持位置の初期位置を、表示部に平面状に表示させたワークモデル上の何れかの部位を、マウスのクリック等で指定させる構成としたことで、見易い姿勢としたワークモデル上を直接指定するという視覚的に判り易い方法でユーザに指定させることが可能となり、従来のような姿勢の確定や数値の規定といった複雑で面倒な作業と比べて遙かに簡単化できる。なお、第一指定部8d9では必ずしもワークモデルを二次元状に表示させる態様に限られず、三次元状に表示させてもよい。
(設定作成時の手順)
As a result, the gripping position is not specified by all six position parameters on one screen, but the parameters that can be specified are divided into a plurality of designated parts, and the position parameters are individually specified for each. By doing so, it is possible to avoid the situation where multiple position parameters are entangled with each other and it becomes difficult to grasp the position and posture, and by wearing the position parameters in sequence, the information necessary for specifying the position and posture can be set. Is possible. In particular, the initial position of the gripping position on the first designated part 8d9 is displayed on the display part in a flat shape, and any part on the work model is designated by clicking the mouse or the like, so that the posture is easy to see. It is possible to let the user specify by directly specifying on the work model that has been done, which is much easier than the complicated and troublesome work such as determining the posture and defining the numerical value as in the past. it can. The first designated unit 8d9 is not necessarily limited to displaying the work model in a two-dimensional manner, and may be displayed in a three-dimensional shape.
(Procedure when creating settings)
ここで、ロボットシステムを動作させるための設定作業を、実運用の前に行うティーチング作業の手順を図27のフローチャートに基づいて説明する。 Here, the procedure of the teaching work for operating the robot system before the actual operation will be described with reference to the flowchart of FIG. 27.
まずステップS2701において、ワークを三次元サーチするためのサーチモデルの登録を行う。ここでサーチモデルは、上述の通りワークモデル、ここでは三次元のCADデータを登録することができる。あるいは、センサ部で実際にワークを撮像した実測データをサーチモデルとして登録してもよい。 First, in step S2701, a search model for three-dimensionally searching the work is registered. Here, as the search model, as described above, a work model, here, three-dimensional CAD data can be registered. Alternatively, the actual measurement data obtained by actually imaging the work by the sensor unit may be registered as a search model.
次にステップS2702において、ロボットのエンドエフェクタモデルを登録する。ここでも、エンドエフェクタモデルとして、三次元CADデータを登録することができる。次にステップS2703において、把持するワークモデルの面を、高さ画像中から選択する。次にステップS2704において、選択した面に対する把持するときのロボットの位置及び姿勢を登録する。次にステップS2705において、必要数の位置及び姿勢を登録できたか否かを判定し、未だの場合はステップS2703に戻って上記処理を繰り返す。そして必要数の登録ができた場合は、処理を終了する。
(三次元CADデータをサーチモデルに登録する手順)
Next, in step S2702, the robot end effector model is registered. Here, too, 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 images. Next, in step S2704, the position and posture of the robot when gripping with respect to the selected surface are registered. Next, in step S2705, it is determined whether or not the required number of positions and postures have been registered, and if not, the process returns to step S2703 and the above process is repeated. When the required number of registrations have been completed, the process ends.
(Procedure to register 3D CAD data in the search model)
ここで、ステップS2701において、サーチモデルとして三次元CADデータを用いる場合の、ワークのサーチモデルを登録する手順の例を、図28のフローチャートに基づいて説明する。まずステップS2801において、ワークの三次元CADデータモデルを読み込む。次にステップS2802において、三次元CADデータモデルの外接直方体の中心を、三次元CADデータの原点に補正する。さらにステップS2803において、「上」「下」「左」「右」「前」「後」の各方向から見た高さ画像を生成する。ここで、三次元CADデータから高さ画像を生成する際は、CADの原点が高さ画像の中心になるように生成する。 Here, an example of a procedure for registering a work search model when three-dimensional CAD data is used as the search model in step S2701 will be described with reference to the flowchart of FIG. 28. First, in step S2801, the three-dimensional CAD data model of the work is read. Next, in step S2802, the center of the circumscribing rectangular parallelepiped of the 3D CAD data model is corrected to the origin of the 3D CAD data. Further, in step S2803, a height image viewed from each of the "upper", "lower", "left", "right", "front", and "rear" directions is generated. Here, when the height image is generated from the three-dimensional CAD data, the height image is generated so that the origin of the CAD is the center of the height image.
次にステップS2804において、生成した高さ画像の中で、同じ見え方になる高さ画像を削除する。最後にステップS2805において、生成された高さ画像を用いてサーチモデルを登録する。 Next, in step S2804, the height image having the same appearance is deleted from the generated height images. Finally, in step S2805, the 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, the 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. 29. 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 is read. Next, in step S2902, the direction in which the cross section is created is determined. Further, in step S2903, a cross-section model is created. The cross-section model is created by the cross-section
(Additional area)
また、エンドエフェクタモデルの登録に際して、元のエンドエフェクタモデルに追加領域を付加することもできる。このような手順を、図30のフローチャートに基づいて説明する。まずステップS3001において、エンドエフェクタモデルを登録する。例えばSTLデータ等の三次元CADデータで構成されたエンドエフェクタモデルを読み込む。 Further, when registering the end effector model, an additional area can be added to the original end effector model. Such a procedure will be described with reference to the flowchart of FIG. First, in step S3001, the 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. The additional area adds, for example, the shape of the actual end effector and the shape imitating the added cover, harness, etc. to the surface of the end effector model at the time of interference determination (details will be described later). The 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 area. 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 the fourth embodiment. The
(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 area is added to the end effector model composed of 3D CAD data. Here, as one aspect of the 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 region ADA is inserted between the flange surface FLS at the tip of the arm portion 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. Further, when the flange surface at the tip of the arm portion has a deviation from the surface set for calculation on the image processing apparatus side, it can be used to offset the deviation amount.
さらに図形は、複数を追加できる。図32の例では、基本図形表示欄311から所望の基本図形を選択して「追加」ボタン312を押すことで、様々な基本図形を追加できる。これによって、複数の基本図形を組み合わせて、様々な形状を表現することが可能となる。
Furthermore, multiple figures can be added. 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 a function to set an additional area for the end effector model, the basics prepared in advance without changing the shape by directly editing the shape of the three-dimensional CAD data as in the conventional case. It is possible to easily add a shape simply by adding a figure. As a result, when the end effector is placed at the gripping position where the work is gripped, it is not included in the end effector model in the interference determination for confirming in advance whether or not it interferes with the objects around the work, but it actually exists. When there are members to be used, the accuracy of the determination result can be improved by imitating these members. For example, when the end effector is connected to the tip of the arm portion via a joint, the entire end effector may be offset and the tip may be slightly projected. There may also be additional elements on the outside of the end effector, such as a contact protection cover 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 the CAD data is rarely prepared separately. However, 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 expressed by CAD data, if the three-dimensional CAD data having such a complicated shape is used for the interference determination, the arithmetic processing becomes complicated and the processing time becomes long.
そこで、このような付加的な要素を、図形で表現することで、面倒な編集作業を経ることなく、簡単な追加領域で実情に近付けた形態のエンドエフェクタモデルを得ることができ、実態に即した形状を容易に表現できるようになる。また、この方法であればCADデータの形は変えずに干渉判定領域を追加しているため、処理時間の増加量を抑えられる。
(把持位置の設定手順)
Therefore, by expressing such additional elements with figures, it is possible to obtain an end effector model in a form that is close to the actual situation in a simple additional area without going through troublesome editing work, and it is immediately in reality. It becomes possible to easily express the shaped shape. Further, in this method, since the interference determination area is added without changing the shape of the CAD data, the amount of increase in the processing time can be suppressed.
(Procedure for setting the grip 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, a procedure for registering a gripping position and a posture for gripping the work by the end effector will be described with reference to the flowchart of FIG. 34 and FIGS. 35A to 38. Here, the end effector model EEM with respect to the work model WM11 when the work model WM11 is held while the work model WM11 is fixed by using the work model WM11 and the end effector model EEM composed of three-dimensional CAD data. Six position parameters that define the position and posture (hereinafter collectively referred to as "grasping position"), that is, the gripping positions X, Y, Z and the gripping postures RX , RY , RZ are shown in FIG. 34. Set in order according to the procedure shown in the flowchart.
(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 coordinate and the Y coordinate of the gripping position are designated. Here, a two-dimensional plane image in which the work is projected onto a certain plane is displayed by the XY designation unit, and the gripping position is designated on this plane image. As one form of such an XY designation unit, the
(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 the gripping posture R Z are designated from the Z-R Z designated portion. As a form of Z-R Z designation section, showing a Z-R Z designation screen 240 in FIG. 36. The Z-RZ
エンドエフェクタモデルEEMの回転は、RZ回転角指定欄242で数値を入力すると、これに応じて画像表示欄141におけるエンドエフェクタモデルEEMが自動的に回転されて表示される。また、画像表示欄141で表示されるエンドエフェクタモデルEEMをドラッグして回転させると、これに応じてRZ回転角指定欄242で表示されるRZ回転角の値も変更される。
(RY指定部)
When a numerical value is input in the R Z 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指定部)
Further, in step S3403, the gripping posture RY is specified. Here, with R Y designation screen 250 shown in FIG. 37 designates the R Y rotation angle from R Y rotation
( RX designation part)
最後にステップS3404において、把持姿勢RXを指定する。ここでは、図38に示すRX指定画面260を用いて、RX回転角をRX回転角指定欄261から指定する。ここでも同様に、RXの回転軸の方向を示す補正回転X軸AXXを、画像表示欄141に表示させる。
Finally, in step S3404, it specifies the gripping posture R X. Here, with R X designation screen 260 shown in FIG. 38 designates the R X rotation angle from R X rotation
このようにして、エンドエフェクタでワークを把持する把持位置として、X,Y,Z、RX,RY,RZの6つの位置パラメータをユーザが指定できる。特に、調整可能な位置パラメータを画面毎に制限し、また表示させる回転軸も、指定に係る位置パラメータに関する回転軸のみの表示に限定することで、ユーザはこのようなガイダンスに従って設定していくことで、必要な位置パラメータを順次規定することができる。この結果、従来難解であった、三次元の位置及び姿勢を指定した把持位置の指定作業をスムーズに行わせることができる。また、オイラー角のRX、RY、RZ回転角を設定する際に、その回転軸を計算して、補正回転軸として画像表示欄141に表示させることで、ユーザが設定中の位置パラメータの変更により、どう動くのかが容易に想像できるようになる。
Thus, as the gripping position for gripping the workpiece with an end effector, X, Y, Z, R X, R Y, six positional parameters R Z can be specified by the user. In particular, the adjustable position parameter is limited for each screen, and the rotation axis to be displayed is also limited to the display of only the rotation axis related to the specified position parameter, so that the user can set according to such guidance. Therefore, the required position parameters can be specified in sequence. As a result, it is possible to smoothly perform the work of designating the gripping position by designating the three-dimensional position and posture, which has been difficult in the past. Further, when setting the R X , RY , and R Z rotation angles of 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から指定可能とし、他の位置パラメータは選択不能とする。このような構成でも、ユーザに対し、指定可能な位置パラメータを制限して提示し、順次設定させていくガイダンス機能を実現できる。
Further, by dividing the registration of the gripping position 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 position parameters move. 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, an example in which different designation screens are provided has been described, but the present invention is not limited to this example. For example, as shown in the position
さらに、位置パラメータを順次規定するステップの数や区分けについても、上述の例に限定されるものでない。例えば、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 that sequentially define the position parameters are not limited to the above examples. For example, the Z coordinate and the R Z rotation angle may be set in separate steps, or the RX rotation angle and the RY rotation angle may be set in the same step. For example, as an example of dividing a position step into a plurality of steps, the Z-R Z designation part is divided into a Z designation part for specifying the Z coordinate and an R Z rotation angle for designating the R Z rotation angle centered on the Z axis. It consists of Z designation part. Alternatively, the R X -R Y designating unit, R Y designation for designating a R X designating section for designating a R X rotation angle around the R Y rotation angle around the Y axis X axis It can also be composed of parts. Alternatively, integrated FIGS. 37 and 38, the R X rotation angle and R Y rotation angle may be R X -R Y specify unit which can be specified on a single screen.
なお、以上の例ではワークモデル側を固定した状態で、エンドエフェクタモデルの位置及び姿勢を調整する例を説明したが、これに限らず、エンドエフェクタモデルを固定した状態で、ワークモデル側の位置及び姿勢を調整させてもよい。あるいは、エンドエフェクタモデルとワークモデルの両方の位置及び姿勢を調整するように構成してもよい。 In the above example, the position and orientation of the end effector model are adjusted while the work model side is fixed. However, the present invention is not limited to this, and the position on the work model side is adjusted with the end effector model fixed. And the posture may be adjusted. Alternatively, it may be configured to adjust the position and orientation of both the end effector model and the work model.
また以上の例では、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を用いて指定させることもできる。
Further, in the above example, the six position parameters of X, Y, Z, R X , RY , and R Z are set to the X and Y coordinates in the XY designation part, and the Z coordinate and R Z in the Z-R Z designation part. An example in which the R X and R Y rotation angles are specified in order in the rotation angle and R X- RY designation section has been described, but the order and combination in which each position parameter is specified is not limited to the above configuration. For example, the X-Y-Z designation unit, and R Z designation unit, R X -R Y specify section was prepared, X-Y-Z at the specified portion, X of the end effector model or the work model, Y, Z-coordinate Then, in the R Z designation part, specify the R Z rotation angle centered on the Z axis, and finally in the R X − R Y designation part, specify the R X rotation angle centered on the X axis and the Y axis. The RY rotation angle centered on may be specified. In this case, as the XYZ designation unit, for example, the
さらに、上述した図35Bのように平面に一旦投影させた画像上から把持位置を指定させる方法に限らず、図35Aのような投影しない状態で把持位置を指定させてもよい。例えば図42に示すような三次元画像ビューワ290上でワークモデルWM11を三次元的に表示させた状態で、この画面上から把持位置をマウス等のポインティングデバイスで構成された操作部を用いて指定する。
(変形例)
Further, the method is not limited to the method of designating the gripping position from the image once projected on the plane as shown in FIG. 35B described above, and the gripping position may be designated in the non-projected state as shown in FIG. 35A. For example, in a state where the work model WM11 is displayed three-dimensionally on the three-
(Modification example)
さらに、以上の例では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 accordance with Z-Y-X based Euler angles in the above example, X, Y, Z, R X, R Y, has been described how to specify the six positional parameters of R Z, the present invention in this aspect Other aspects that define the position and orientation of end effectors and workpieces, such as XYZ Euler angles, XZZ Euler angles, YXX Euler angles, YZ -X-based Euler angles, Z-XY-based Euler angles, XY-X-based Euler angles, X-Z-X-based Euler angles, Y-XY-based Euler angles, Y-Z-Y-based Euler angles , ZXXZ Euler angles, ZZ Euler angles, roll pitch / yaw angles, rotation axes / rotation angles, etc., the positions and orientations of end effectors, etc. can be specified. ..
また、以上の例では補正回転軸として、指定しようとする位置パラメータに関する補正回転軸のみを表示させる例について説明したが、他の補正回転軸については、完全に非表示とする構成に限定するものでない。例えば、他の補正回転軸を含めて直交する3軸を表示させつつ、指定しようとする回転角に係る回転軸を、他の補正回転軸よりも強調して表示させても、同様の効果を得ることができる。一例として、回転角を指定中の回転軸を太字で表示させたり、着色や点滅などのハイライト表示させたり、逆に指定不可とされた回転軸をグレーアウトさせたり、細線で表示させるなどして、外観上区別するようにする。特に画像の三次元表示においては、直交する座標軸があると三次元表示中であることをユーザが直感的に把握できるので、三軸の表示を維持しつつも、対象となる回転軸を他と区別することで、ユーザに対し混同を起こさせ難くできる。さらにこのような三軸を表示させる際の原点は、回転の中心とすることが好ましい。例えば、上述したエンドエフェクタモデルEEMの把持位置である一対の爪部の中間位置とする。
(把持位置コピー機能)
Further, in the above example, an example in which only the correction rotation axis related to the position parameter to be specified is displayed as the correction rotation axis has been described, but the other correction rotation axes are limited to the configuration in which they are completely hidden. Not. For example, the same effect can be obtained by displaying three orthogonal axes including other correction rotation axes and displaying the rotation axis related to the rotation angle to be specified more emphasized than the other correction rotation axes. Obtainable. As an example, the rotation axis for which the rotation angle is specified is displayed in bold, highlights such as coloring and blinking are displayed, and conversely, the rotation axis that cannot be specified is grayed out or displayed with thin lines. , Make a distinction in appearance. Especially in the three-dimensional display of an image, if there are orthogonal coordinate axes, the user can intuitively understand that the three-dimensional display is in progress, so while maintaining the three-axis display, the target rotation axis can be set to another. By making a distinction, it is possible to prevent users from being confused. Further, the origin when displaying such three axes is preferably the center of rotation. For example, it is set to an 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)
Further, when registering a plurality of gripping positions, it may be provided with a gripping position copy function that reads out the already registered gripping positions, changes the gripping position based on the registered gripping positions, and enables registration as a new gripping position. .. In general, a plurality of gripping positions are often registered for one work. This is because if a plurality of gripping positions are registered, the optimum solution can be selected from a plurality of gripping solutions, so even if the obtained gripping solution candidates interfere with each other, other gripping solutions can be selected. 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 is increased and the work becomes troublesome when registering the same gripping position. Therefore, by copying the already registered gripping position, changing a part of the position parameters set at this gripping position, and making it possible to save as a new gripping position, a plurality of gripping positions can be saved. Can be easily registered. Similarly, it is also possible to read out the existing gripping position, modify the position parameter as appropriate, and save by overwriting.
(Gripping position copy unit 8d8)
このような把持位置コピー機能や把持位置編集機能は、図26で示した把持位置コピー部8d8でもって実現される。把持位置コピー部8d8は、把持位置保存部9bに保存されたワークモデルやエンドエフェクタモデルの把持位置を読み出して、把持位置を構成する位置パラメータを変更して登録する。また、把持位置コピー部8d8で把持位置を変更する際にも、上述したように、ガイダンスに従って順を登録するように構成すると、どのステップでどの位置パラメータを変更すればよいかが判り易くなり、より把持の登録が簡単になる。
Such a gripping position copying function and a gripping position editing function are realized by the gripping position copying unit 8d8 shown in FIG. The gripping position copying unit 8d8 reads out the gripping positions of the work model and the end effector model stored in the gripping
さらに、把持位置を指定する際に、エンドエフェクタモデルをワークモデルの把持位置に自動的に移動させるフィット機能を付加してもよいことは、上述の通りである。例えば図36のZ−RZ指定画面240で操作欄142に「フィット」ボタン154を設けることで、フィット機能を実行させて、Z座標を自動的に設定させることができる。
(実施形態5)
Further, as described above, when the gripping position is specified, a fitting function for automatically moving the end effector model to the gripping position of the work model may be added. For example, by providing the "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の一部の形状と共通することがあり、その結果誤検出が生じる。 Further, in order to improve the accuracy of the three-dimensional search, it is possible to limit the postures and angles that the search model can take. For example, consider detecting the position and orientation of a work by a three-dimensional search from a work group in which a plurality of flat work WK9s as shown in FIG. 43 are stacked separately. In this case, each surface of the work model WM9 in which the work WK9 of FIG. 43 is shown by three-dimensional CAD data is as shown in FIGS. 44A to 44F. That is, FIG. 44A is a plan view of the work 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. From these basic direction images, the overlapping surfaces are excluded and registered as a search model. Here, it is assumed that the four surfaces of FIGS. 44A, 44B, 44C, and 44E are registered. In this state, a group of loosely stacked works is imaged, point cloud data having three-dimensional information is acquired, and a three-dimensional search is performed. As a result, it may be erroneously detected as if the work exists in the vertical posture as shown by X in FIG. 45. In reality, it is unlikely that a thin flat work is present in an upright posture, but the front view of the flat work is almost linear or rectangular as shown in FIG. 44C, so that the surface of the work is It may be common to other parts constituting the above, for example, a part of the shapes of FIGS. 44A and 44B, and as a result, erroneous detection occurs.
これに対して、ワークの取り得る姿勢を制限して三次元サーチを行うことも考えられるが、姿勢制限を行う条件の設定が極めて難解となる。例えば、図46に示すようなZ−Y−Z系のオイラー角を用いて、Z軸、Y軸、Z軸の回転角度範囲を規定することで、ワークのあらゆる姿勢を表現できることが知られているものの、この方法で各軸の回転角度を、ユーザが所望する姿勢範囲となるように規定することは容易ではない。 On the other hand, it is conceivable to perform a three-dimensional search by limiting the postures that the work can take, but it is extremely difficult to set the conditions for limiting the postures. For example, it is known that all postures of a work can be expressed by defining the rotation angle ranges of the Z-axis, the Y-axis, and the Z-axis by using the Euler angles of the ZYZ system as shown in FIG. However, it is not easy to specify the rotation angle of each axis so as to be within the posture range desired by the user by this method.
そこで実施形態5においては、このような面倒な概念を用いずともユーザがワークの取り得る姿勢を容易に設定できるようにした。具体的には、サーチモデルを登録する際に、ばら積みしたときに起こりそうにない姿勢を排除することで、このような面が検出されることがないようにする。このような設定には、図6に示したサーチモデル登録部8gを用いる。サーチモデル登録部8gは、基本方向画像のいずれかの中から、バラ積みされた複数のワーク群に対して、各ワークの位置と姿勢を特定する三次元サーチを行うためのサーチモデルとして登録する基本方向画像を選択する。サーチモデル登録部8gと基本方向画像選択部8eとの違いは、基本方向画像選択部8eが、見え方が同じ基本方向画像に対していずれか一を選択するものである。これに対してサーチモデル登録部8gは、三次元サーチに際してサーチの対象外としたい基本方向画像を、サーチモデルの登録対象から除外するためのものである。好ましくは、基本方向画像選択部8eで見え方が重複する基本方向画像を排除した状態で、さらにサーチモデル登録部8gでもって、不要な基本方向画像をサーチモデルの登録対象から除外する。あるいは、サーチしたい基本方向画像を選択する。これによって、予めサーチモデルの登録の候補となる基本方向画像に絞り込んだ状態でユーザに選択させることで、候補数を少なくしてサーチモデルの登録作業をより行い易くできるようになる。
(サーチモデル登録画面130B)
Therefore, in the fifth embodiment, the posture that the user can take the work can be easily set without using such a troublesome concept. Specifically, when registering a search model, such a surface is prevented from being detected by eliminating a posture that is unlikely to occur when the search model is piled up in bulk. For such a 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をオフしており、このような側面が見える姿勢、すなわち板状のワークが直立した姿勢を、三次元サーチの対象から除外することができる。これによって、面倒なワークの角度計算や範囲指定といった作業を経ること無く、ユーザはワークの姿勢を示す基本方向画像を見ながら、サーチの必要の無い画像を排除し、あるいは必要な画像のみを選択して、容易に三次元サーチの対象となるワークの姿勢に制限をかけることが可能となる。
Here, FIG. 47 shows an example of the search
なお、サーチモデル登録部8gは、ユーザが手動でサーチモデルの登録対象、あるいは排除対象を選択する態様のみに限られず、ワークモデルの形状や重心等を演算して、生じ難い姿勢の基本方向画像を自動で抽出して排除するように構成してもよい。
The search
あるいは、自動演算と手動選択の組み合わせ、例えば図47に示すように、サーチモデル登録画面130Bで、基本方向画像選択部8eで選択済みの基本方向画像をすべて表示させつつ、演算により生じ難いと判定された基本方向画像については、初期状態として選択チェックボックス131Bをオフして表示させるように構成してもよい。ユーザはサーチモデル登録部8gによる自動判定の結果を参照しながら、手動で必要に応じて選択の修正を行い、OKを押すことで、より確実にサーチモデルの登録を適切に行うことができる。
Alternatively, a combination of automatic calculation and manual selection, for example, as shown in FIG. 47, on the search
また図47においては、基本方向画像選択部8eによる選択を自動演算とした例を説明したが、基本方向画像選択部による自動判定、あるいは手動選択についても、同様に組み合わせることができる。例えば基本方向画像選択部による判定の結果、見え方が共通する基本方向画像と判定された一方の画像については、グレーアウトさせて六面図表示領域に表示させることで、ユーザに対して基本方向画像選択部による自動判定の結果を確認させることができる。判定結果が誤っている場合は、ユーザが当該基本方向画像を手動で選択して、基本方向画像として残したり、あるいは逆に排除したりすることができる。このように、自動演算の結果を表示させてユーザに確認させることで、より画像の選択の精度を高めることができる。また、自動判定結果に基づいて予め選択/非選択を設定した状態を初期状態とすることで、自動判定による選択の結果が正しければユーザがOKを押してこれを承認することができ、ユーザ側の手間も最小限とすることができる。
Further, in FIG. 47, an example in which selection by the basic direction
また、不要な面を三次元サーチの対象から除外する目的は、ワークの直立状態以外にも適用できる。例えば完全にランダムにワークを積む態様以外に、特定の面のみが表出するような態様でワーク群が入力画像として与えられる場面においては、表出しない面を排除することで誤検出を回避できる。特に、表裏の形状が似ており、裏面が誤検出し易いようなワークに対しては有効となる。このように、実際には見えることのない裏面のサーチモデルを三次元サーチの対象から外すだけで、ワークの裏面側が検出されないようにワークの姿勢を制限したことと同様の効果を得ることができる。
(サーチモデルを登録する手順)
Further, the purpose of excluding unnecessary surfaces from the target of the three-dimensional search can be applied to other than the upright state of the work. For example, in a situation where a work group is given as an input image in a mode in which only a specific surface is displayed in addition to the mode in which the works are stacked completely randomly, erroneous detection can be avoided by eliminating the surface that is not displayed. .. 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 on the back surface, which is not actually visible, from the target of the three-dimensional search, the same effect as limiting the posture of the work surface so that the back surface side of the work is not detected can be obtained. ..
(Procedure to register search model)
上述した、姿勢制限を設けたサーチモデルの登録手順を、図48のフローチャートに基づいて説明する。ここでは、ワークの三次元CADデータをサーチモデルとして登録する手順について説明する。 The procedure for registering the search model with the posture restriction described above will be described with reference to the flowchart of FIG. 48. Here, the procedure for registering the three-dimensional CAD data of the work as a search model will be described.
まずステップS4801において、ワークの三次元CADデータを読み込む。次にステップS4802において、三次元CADデータモデルの外接直方体の中心を、三次元CADデータの原点に補正する。さらにステップS4803において、「上」「下」「左」「右」「前」「後」の各方向から見た高さ画像を生成する。ここで、三次元CADデータから高さ画像を生成する際は、CADの原点が高さ画像の中心になるように生成する。さらにまたステップS4804において、生成した高さ画像の中で、同じ見え方になる高さ画像を削除する。 First, in step S4801, the three-dimensional CAD data of the work is read. Next, in step S4802, the center of the circumscribing rectangular parallelepiped of the 3D CAD data model is corrected to the origin of the 3D CAD data. Further, in step S4803, a height image viewed from each of the "upper", "lower", "left", "right", "front", and "rear" directions is generated. Here, when the height image is generated from the three-dimensional CAD data, the height image is generated so that the origin of the CAD is the center of the height image. Furthermore, in step S4804, the height image having the same appearance is deleted from the generated height images.
次にステップS4805において、残った高さ画像の中で、三次元サーチに用いるサーチモデルを選択する。ここでは、サーチモデル選択部8iでもって、不要な基本方向画像を排除し、必要な基本方向画像を選択する。
Next, in step S4805, a search model to be used for the 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)
In the above, an example of limiting the target of the three-dimensional search by using an actual image instead of a numerical value has been described. However, the present invention is not limited to this aspect, and instead of or in addition to this, the posture can be restricted by the tilt angle or rotation angle of the search model. As a result, it is possible to appropriately set the conditions for the three-dimensional search according to the actual stacking method of the workpieces and reduce the false detection of the search. An example of the tilt angle / rotation
(Inclination angle / rotation angle setting screen 160)
この傾斜角度・回転角度設定画面160では、ワークに対して三次元的な姿勢、例えば座標軸の回転角度を示すRX、RY、RZで指定するといった難解な方法ではなく、専門的知識がなくても理解が容易なパラメータとして、サーチモデルの登録時の姿勢からの「傾斜角度」、「回転角度」を用いて指定させる。ここでは、サーチモデルとして登録した基本方向画像を登録姿勢として、この状態からの傾斜角度と回転角度を指定していく(詳細は後述)。
In the inclination angle and rotation
具体的に、図49の傾斜角度・回転角度設定画面160において、姿勢制限サーチモデル選択欄161では、姿勢制限を加える対象となるサーチモデルを選択する。図49の例では、図47のサーチモデル登録画面130Bで登録されたモデルAのサーチモデルを選択している。
Specifically, on the tilt angle / rotation
また傾斜角度上限設定欄162では、登録時の姿勢に対して、何度以内の傾斜角度を三次元サーチの結果として出力するかを設定する。
Further, in the tilt angle upper
さらに回転角度範囲設定欄163では、基準角度と角度範囲を設定する。まず基準角度設定欄では、登録時の姿勢に対する回転角度を入力する。ここで設定した回転角度が、回転角度範囲を指定する際の基準角度となる。さらに範囲設定欄では、基準角度設定欄で設定した基準角度に対し、三次元サーチの結果として出力する回転角度範囲を設定する。
(傾斜角度・回転角度による姿勢制限方法)
Further, in the rotation angle
(Posture 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 above-mentioned method of limiting the surface to be registered as a search model in the three-dimensional search, the posture is automatically restricted. On the other hand, in order to impose posture restrictions on the surface registered as a search model, the fact that the surface is registered is used.
ここでは、登録した姿勢に対する「傾斜角度」と、登録した姿勢に対する真上から見た「回転角度」の2つの角度で姿勢制限を行う。この2つの角度であれば、概念としても判り易く、比較的簡単に角度制限を行うことができるようになる。
(傾斜角度)
Here, the posture is restricted by two angles, the "tilt angle" with respect to the registered posture and the "rotation angle" viewed from directly above with respect to the registered posture. With these two angles, it is easy to understand as a concept, and the angle can be limited relatively easily.
(Inclination angle)
まず傾斜角度は、図50A〜図50Cに示すように、サーチモデルとしての登録時のワークモデルの姿勢のZ鉛直方向に対する角度で規定される。図50Aはサーチモデル登録時のワークモデルWMRの姿勢及びこのワークモデルの鉛直方向として規定されたZ軸を示している。これに対して、入力画像として得られたワークWKIの姿勢、及びこのワークWKIの鉛直方向として規定されたZ’軸が図50Bに示すような状態であったとする。このような状態で、「傾斜角度」を図50Cに示すように、Z軸とZ’軸の傾斜角度、すなわちワークの鉛直方向の傾きと定義する。これによって、傾斜の方向に関係なく、サーチモデルの登録状態からの傾きという、一つの角度で表すことができる。また、ユーザにとっても概念としても把握し易い利点が得られる。
(回転角度)
First, as shown in FIGS. 50A to 50C, the inclination angle is defined by the angle of the posture of the work model at the time of registration as a 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 the work model. On the other hand, it is assumed that the posture of the work WKI obtained as the input image and the Z'axis defined as the vertical direction of the work WKI are in the state shown in FIG. 50B. In such a 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 work, as shown in FIG. 50C. Thereby, regardless of the direction of inclination, it can be expressed by one angle, that is, the inclination from the registered state of the search model. In addition, there is an advantage that it is easy for the user and the concept to understand.
(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 vertical direction at the time of registration, that is, the rotation angle when viewed from the Z axis. Here, the rotation angle will be described 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 defining the XY plane. On the other hand, it is assumed that the posture of the work WKI obtained as the 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 by the angle of the Y-axis viewed from the Z-axis direction with reference to the coordinate axis in the Y-axis direction that defines the work model and the work. By defining in this way, it is possible to obtain an advantage that the user can easily grasp the angle as the same concept as the angle in the conventional two-dimensional pattern search.
なお、ワークに対して原点及びXYZ軸を規定する手法は、既知のアルゴリズムが利用できる。例えば、図8で示したようにワークモデルや入力画像が有するワークの形状情報から、ワークに外接する図形、例えば直方体や球を演算し、その重心を演算してこれをワークの原点とし、XYZ軸を規定する。XYZ軸の規定方法は、CADデータを用いる場合、元のCADデータの座標軸の方向をそのまま各XYZ軸の方向として用いれば良い。実際にワークを3D撮像した実測データを用いる場合は、実測データの鉛直方向をZ軸とし、Y軸については実測データの平面視の上方向とし、X軸については実測データの平面視の右方向とすれば良い。原点については、ワークモデルの重心や、CADデータの中心座標を原点としてもよい。
(三次元姿勢から傾斜角度と回転角度を求める手順)
A known algorithm can be used as a method for defining the origin and the XYZ axes for the work. For example, as shown in FIG. 8, a figure circumscribing the work, for example, a rectangular parallelepiped or a sphere is calculated from the shape information of the work held by the work model or the input image, the center of gravity is calculated, and this is set as the origin of the work, and XYZ Define the axis. In the method of defining the XYZ axes, when CAD data is used, the direction of the coordinate axes of the original CAD data may be used as it is as the direction of each XYZ axes. When using the measured data obtained by actually capturing the work in 3D, the vertical direction of the measured data is the Z axis, the Y axis is the upward direction of the measured data in the plan view, and the X axis is the right direction of the measured data in the plan view. It should be done. As for the origin, the center of gravity of the work model or the center coordinates of the CAD data may be used as the origin.
(Procedure to obtain the tilt angle and rotation angle from the three-dimensional posture)
ここで、三次元姿勢から傾斜角度と回転角度を求める手順を、図52のフローチャートに基づいて説明する。まずステップS5201において、傾斜角度を求める。例えば図53Aに示すような状態の登録時のワークモデルWMRに対して、入力画像として得られたワークWKIの姿勢が図53Bのようであった場合は、図53Cに示すようにZ軸の鉛直方向の傾きとして傾斜角度を求める。 Here, the 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 inclination angle is obtained. For example, when the posture of the work WKI obtained as an input image is as shown in FIG. 53B with respect to the work model WMR at the time of registration as shown in FIG. 53A, the Z-axis is vertical as shown in FIG. 53C. Find the tilt angle as the tilt in 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 coincides with the Z axis. In other words, eliminate the slope. For example, with respect to the input image WKI of FIG. 53C, as shown in FIG. 54A, the outer product vector VP of the Z'axis vector and the Z axis vector is used as the rotation axis, and the Z'axis is rotated so as to overlap the Z axis. As a result, the rotated input image WKI'as shown in FIG. 54B is obtained, and the inclination 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'with the inclination 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 the 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 above method of defining the position and posture using Euler angles can be used not only for defining the position and posture for gripping the work model with the end effector model, but also for defining the position for attaching the end effector to the tip of the arm of the robot. .. Here, a procedure for setting a position where the end effector is attached to the tip of the arm portion of the robot will be described. Such setting of the end effector mounting position is performed on the end effector mounting
操作欄142には、アーム部の先端に装着されるエンドエフェクタの取付位置を規定するエンドエフェクタ取付位置設定欄171を設けている。エンドエフェクタ取付位置設定欄171で設定するエンドエフェクタ取付位置パラメータは、エンドエフェクタモデルの取付位置(X,Y,Z)と取付姿勢(RX,RY,RZ)である。例えば、アーム部先端のフランジ面FLSの中心に対して、オイラー角を用いて規定する。
The
なお、上述した図14等で示したワークモデルの把持位置の登録画面では、ワークモデルを把持するエンドエフェクタモデルの部位(例えば先端に設けられた一対の爪部)と、把持するワークとの位置関係を登録している。これに対し、エンドエフェクタ取付位置設定画面170では、エンドエフェクタモデルをアーム部の先端に装着する取付位置を登録している。よって、ワークモデル等の表示は不要で、画像表示欄141には、エンドエフェクタモデルとフランジ面FLSが表示される。
(把持位置指定画面180)
In the registration screen of the gripping position of the work model shown in FIG. 14 and the like described above, the positions of the end effector model portion (for example, a pair of claws provided at the tip) and the gripping work are held. You have registered a relationship. 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 gripping
さらに、把持位置の登録は一のワークの一の面(例えば基本方向画像)に対して一箇所に限られず、上述の通り複数箇所を指定することができる。また、複数箇所で登録された把持位置を、画像で確認することもできる。例えば図58に、複数把持位置選択画面190の一例を示す。この複数把持位置選択画面190も、画像表示欄141と、操作欄142を備えている。操作欄142には、把持位置を規定したワークモデルの面を選択する面選択欄191と、面選択欄191で選択された面に設定された把持位置を一覧表示する把持位置一覧表示192が設けられる。この例では、面選択欄191で面Cが選択され、この面Cに設定された把持位置として把持1〜3が、把持位置一覧表示192に一覧表示されている。この内、把持2を選択すると、これに応じて画像表示欄141において、把持2で登録された把持位置、姿勢で、エンドエフェクタモデルがワークモデルを把持する様子が表示される。このようにしてユーザは、登録済みの複数の把持位置を選択して確認することができる。また、必要に応じて登録済みの把持位置を修正して、更新することもできる。ここでも、上述したオイラー角を用いて把持姿勢を表示させることができる。このようにして、オイラー角を用いた登録を行いつつも、ユーザ側においては、難解なオイラー角の概念を詳細に理解せずとも、視覚的に判り易く表示させ、かつ回転軸も補正して表示させ、さらにガイダンス機能により調整可能なパラメータを制限することで、混乱を少なくして設定作業を進めることが可能となる。
(エンドエフェクタ取付位置の較正機能)
Further, the registration of the gripping position is not limited to one place with respect to one surface (for example, the basic direction image) of one work, and a plurality of places can be specified as described above. It is also possible to confirm the gripping positions registered at a plurality of locations with an image. For example, FIG. 58 shows an example of a plurality of gripping position selection screens 190. The multiple gripping
(Calibration function for end effector mounting position)
上述の通り、エンドエフェクタは、ロボットのアーム部の先端に取り付けられる。一方、上述した把持位置の登録(ティーチング)や、登録された位置及び姿勢でエンドエフェクタモデルがワークモデルを把持できるかどうかの把持判定(シミュレーション)等は、実際のエンドエフェクタでなく、画像処理装置側(ロボットビジョン側)の仮想三次元空間上で行われている。そして仮想三次元空間であるビジョン空間の座標位置から、実空間であるロボット空間の座標位置への変換は、図17のキャリブレーション部8wで得られたキャリブレーション情報に基づいて、変換部8xによって行われている。
As described above, the end effector is attached to the tip of the arm portion of the robot. On the other hand, the above-mentioned registration of the gripping position (teaching) and the gripping determination (simulation) of whether or not the end effector model can grip the work model at the registered position and posture are performed by the image processing device, not the actual end effector. It is performed on the virtual three-dimensional space on the side (robot vision side). Then, the conversion from the coordinate position of the vision space, which is a virtual three-dimensional space, to the coordinate position of the robot space, which is a real space, is performed by the
しかしながら、画像処理装置側で仮想的に設定しているエンドエフェクタモデルの取付状態と、実際のロボットRBTのエンドエフェクタEETの取付状態が異なると、キャリブレーション情報で規定されたビジョン空間とロボット空間との対応関係が維持されなくなり、実際のロボットRBTを使ってワークを把持しようとする際に、ずれが生じてしまう。 However, if the mounting state of the end effector model virtually set on the image processing device side and the mounting state of the end effector EET of the actual robot RBT are different, the vision space and robot space specified in the calibration information will be displayed. The correspondence between the above is not maintained, and a deviation occurs when trying to grip the work using the actual robot RBT.
ここで、エンドエフェクタモデルとフランジ面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の位置にずれが生じ得る。この結果、エンドエフェクタの取付状態に起因して、画像処理装置側とロボット側とで、ずれた位置で把持を行ってしまうことになる。 Here, FIG. 59 shows the positional relationship between the end effector model and the flange surface FLS. In this figure, the origin O F flange face FLS of the tip of the arm of the robot, as the position of the end effector model EEM, the center O E of the end effector model EEM, respectively show. The position of this end effector model EEM is set as the position (X, Y, Z) and the posture ( RX , RY , 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 as viewed from the origin O F flange face FLS, the center O E of the end effector model EEM, position (X, Y, Z) and attitude (R X, R Y, R Z) is set Has been done. Here, if an error occurs in the actual mounting state of the end effector, the position of the end effector model EEM with respect to the origin of the flange surface FLS may shift. As a result, due to the mounting state of the end effector, the image processing device side and the robot side will grip at different positions.
そこで本実施形態においては、このようなずれや誤差が生じないように、実際のエンドエフェクタの取付状態を、画像処理装置側に反映させるエンドエフェクタ取付位置の較正機能を備えている。エンドエフェクタ取付位置の較正機能は、図17に示したエンドエフェクタ取付位置較正部8yで行われる。具体的には、ワークの把持位置の登録や、エンドエフェクタを配置したときの干渉判定に用いたエンドエフェクタモデルである、エンドエフェクタの三次元形状を仮想的に表現した三次元CADデータを使って、実際のエンドエフェクタを撮像して三次元計測した実測データに対し、三次元サーチを行い、実際の取付位置の位置及び姿勢を取得することで、このような誤差を検出して、画像処理装置側のエンドエフェクタの取付位置の設定を較正する。このように、実際のエンドエフェクタを三次元計測した点群と、画像処理装置側で仮想三次元空間上で規定したエンドエフェクタモデルの取付状態とのずれを、ユーザが表示部の画像表示領域上で確認しながら手動で調整することができる。
(ずれの自動補正の手順)
Therefore, the present embodiment is provided with an end effector mounting position calibration function that reflects the actual mounting state of the end effector on the image processing apparatus side so as not to cause such a deviation or error. The calibration function of the end effector mounting position is performed by the end effector mounting
(Procedure for automatic deviation correction)
ここで、実際のエンドエフェクタと、三次元CADデータ等で構成されたエンドエフェクタモデルとの誤差を自動で補正する較正機能について、図60のフローチャートに基づいて説明する。なお、予め仮想空間であるビジョン空間の座標位置を、実空間であるロボット空間の座標位置に変換するキャリブレーションを、図17に示したキャリブレーション部8wで実行し、キャリブレーション情報を記憶部9に把持しているものとする。さらに、エンドエフェクタモデルも三次元CADデータとして用意されているものとする。
(エンドエフェクタ撮像画面330)
Here, a calibration function for automatically correcting an error between an actual end effector and an end effector model composed of three-dimensional CAD data or the like will be described with reference to the flowchart of FIG. 60. The
(End effector imaging screen 330)
まずステップS6001において、センサ部で実際のエンドエフェクタを撮像するための準備を行う。具体的には、センサ部の一形態である三次元カメラにエンドエフェクタが映るように、ロボットを操作してエンドエフェクタを移動させる。次にステップS6002において、エンドエフェクタに対し三次元計測を実施する。 First, in step S6001, the sensor unit prepares for imaging an 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 a 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を押下する。これにより、エンドエフェクタの三次元撮像画像が取得される。いいかえると、エンドエフェクタに対し三次元計測が実施される。
As one aspect of the end effector imaging unit for imaging the actual end effector with the sensor unit, for example, the end
次にステップS6003において、ロボット座標系のフランジ部の位置姿勢Aを取得する。ここでロボット座標系の位置姿勢Aは、例えば撮像したエンドエフェクタが取り付けられているフランジ部FLSの、ロボット座標系の位置及び姿勢とする。なお、ステップS6003とステップS6002の工程の順序は、入れ替えてもよい。 Next, in step S6003, the position / orientation A of the flange portion of the robot coordinate system is acquired. Here, the position / orientation A of the robot coordinate system is, for example, the position and orientation of the robot coordinate system of the flange portion FLS to which the imaged end effector is attached. The order of the steps of step S6003 and step S6002 may be interchanged.
さらにステップS6004において、ロボット座標系のフランジ部の位置姿勢Aをビジョン空間上の位置姿勢Bに変換する。ここでは、予めキャリブレーションを実行して得られたロボット空間とビジョン空間との座標変換を行うキャリブレーション情報に基づいて、図17の変換部8xが実空間と仮想空間との変換を行う。
Further, in step S6004, the position / orientation A of the flange portion of the robot coordinate system is converted into the position / orientation B in the vision space. Here, the
さらにステップS6005において、三次元サーチを実施し、ビジョン空間上のエンドエフェクタの位置姿勢Cを検出する。ここでは、エンドエフェクタモデルに使用したCADデータをサーチモデルとして、ステップS6002で得た三次元計測データに対して三次元サーチを実施する。三次元サーチの方法は、既知のアルゴリズムを適宜利用できる。これにより、ビジョン空間上のエンドエフェクタの位置及び姿勢が検出される。 Further, in step S6005, a three-dimensional search is performed to detect the position / 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. As the three-dimensional search method, a known algorithm can be appropriately used. As a result, the position and orientation of the end effector in the vision space are detected.
さらにステップS6006において、ビジョン空間上のフランジ部FLSの位置姿勢Bに対するエンドエフェクタの位置姿勢Cの相対的な位置姿勢を算出する。ここで得られた座標位置が、フランジ部FLSに対する正確な、いいかえると位置ずれ等を考慮したエンドエフェクタモデルの位置及び姿勢となる。 Further, in step S6006, the relative position / orientation of the end effector position / orientation C with respect to the position / orientation B of the flange portion FLS on the vision space is calculated. The coordinate position obtained here is the position and orientation of the end effector model that is accurate with respect to the flange portion FLS, in other words, in consideration of misalignment and the like.
最後にステップS6007において、得られた位置及び姿勢をビジョン側のエンドエフェクタ設定に反映する。すなわち、ビジョン側のエンドエフェクタモデルの位置及び姿勢の設定に反映する。このようにして、実際のエンドエフェクタの取付状態を、ビジョン側に自動反映することができる。
(ずれの手動補正の手順)
Finally, in step S6007, the obtained position and orientation are reflected in the end effector setting on the vision side. That is, it is reflected in the position and orientation setting 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 correction of deviation)
以上は、ロボット空間とビジョン空間のずれを自動で補正する手順について説明した。ただ、本発明はずれの補正を自動で行う構成に限られず、手動で行わせることもできる。次に、手動でずれ補正を行う手順について、図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 the configuration in which the deviation correction is automatically performed, and the deviation can be manually performed. Next, the procedure for manually performing the deviation correction will be described with reference to the flowchart of FIG. 150. Here, in steps S1501 to S1504, the procedure is the same as in steps S6001 to S6004 of FIG. 60 relating to the above-mentioned automatic correction, 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 reflected on the three-dimensional camera, three-dimensional measurement is performed on the end effector in step S1502, and the position and orientation of the flange portion of the robot coordinate system are performed in step S1503. A is acquired, and in step S1504, the position / orientation A of the flange portion of the robot coordinate system is converted into the position / orientation B in the vision space.
次にステップS1505において、ビジョン空間上のフランジ部の位置姿勢Bから、エンドエフェクタ設定に基づいてエンドエフェクタの位置姿勢Dを算出する。ここでは、ビジョン空間上のロボットの先端であるフランジ部の位置姿勢Bと、エンドエフェクタ設定に設定されたフランジ部に対するエンドエフェクタの位置姿勢の情報から、エンドエフェクタの位置姿勢Dを求める。 Next, in step S1505, the position / orientation D of the end effector is calculated from the position / orientation B of the flange portion on the vision space based on the end effector setting. Here, the position and orientation D of the end effector is obtained from the position and orientation B of the flange portion, which is the tip of the robot in the vision space, and the position and orientation information of the end effector with respect to the flange portion 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 / orientation D of the end effector are superimposed and displayed. Here, the end effector model EEM, which is the three-dimensional CAD data of the end effector, is displayed at the position of the position / orientation D of the end effector obtained in step S1505, and the points obtained by three-dimensional measurement of the actual end effector. The group PCs are superimposed and displayed. Examples of the deviation correction screen with such a superimposed display are shown in FIGS. 151 and 152.
そしてステップS1507において、点群とCAD表示との間に、無視できないずれがあるか否かを判定する。無視できないずれがある場合は、ステップS1508に進み、ずれを補正するようにエンドエフェクタ設定を変更して、ステップS1505に戻って上述した処理を繰り返す。このエンドエフェクタ設定は、フランジ部に対するエンドエフェクタの位置及び姿勢を含む。一方、ずれがない場合は、処理を終了する。
(ずれ補正部)
Then, in step S1507, it is determined whether or not there is a non-negligible deviation between the point cloud and the CAD display. If there is a deviation that cannot be ignored, the process proceeds to step S1508, the end effector setting is changed so as to correct the deviation, and the process returns to step S1505 to repeat the above-described processing. This end effector setting includes the position and orientation of the end effector with respect to the flange portion. On the other hand, if there is no deviation, the process ends.
(Displacement 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. In 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と重なるように調整する。
Further, the
このようにしてエンドエフェクタモデルEEMを点群PCと合致させた例を、図152に示す。この例では、エンドエフェクタ設定欄841において、Z方向の位置を90mmに設定して、Z方向にエンドエフェクタモデルEEMをオフセットさせることで合致させている。エンドエフェクタモデルの位置及び姿勢が調整された後、「OK」ボタン842を押下すると、エンドエフェクタ設定が更新される。これにより、実際のエンドエフェクタの取付状態に応じて、ビジョン側の位置姿勢を調整できる。
An example of matching the end effector model EEM with the point cloud PC in this way is shown in FIG. 152. In this example, in the end
さらに、上述したずれの手動補正を、自動補正と組み合わせて行うことも可能である。このような例を図153のずれ補正画面850に基づいて説明する。この図に示すずれ補正画面850は、操作欄142に、手動でエンドエフェクタモデルEEMの位置姿勢を調整するためのエンドエフェクタ設定欄841を設けると共に、下段に「自動補正」ボタン843を設けている。この「自動補正」ボタン843を押下すると、内部的に三次元サーチが実行されて、自動でエンドエフェクタモデルEEMの位置姿勢が点群PCと一致するように補正される。例えば、画像表示欄141で重畳表示させたエンドエフェクタモデルEEMと点群PCの状態を確認しながら、ずれの自動補正を実行したり、自動補正結果を手動で微調整することができる。特に、エンドエフェクタに光沢の強い金属を使っており、反射光によって点群PCが正確に検出されないことなどから自動補正がうまく機能できない場合、例えば三次元サーチに失敗する場合などには、手動による調整で対応できる。このようにして、ユーザが手動で、ロボット空間とビジョン空間のずれを補正することが可能となる。
Further, the manual correction of the deviation described above can be performed in combination with the automatic correction. Such an example will be described based on the
従来、フランジ部とエンドエフェクタの取付部分に、例えば実際にはコネクタのような取り付け用の部材が組み付けられているにもかかわらず、ビジョン側でそのオフセット分を設定し忘れているような場合に、位置や姿勢がずれてしまう問題が生じていた。このような場合に、ずれを確認する機能や、ずれを補正する機能がないと、実運用時にロボットで把持させる際に、うまく把持できなかったり、衝突等の問題が生じることがあった。このような誤差が発生する要因は様々であり、従来は原因追究やデバッグに非常に時間や労力がかかってしまっていた。これに対して本実施形態によれば、このようなずれを手動や自動で補正することが可能となり、実際のエンドエフェクタの取付状態に応じた柔軟な調整を容易に行うことができる。 Conventionally, when a mounting member such as a connector is actually attached to the mounting part of the flange and the end effector, but the offset is forgotten on the vision side. , There was a problem that the position and posture were shifted. In such a case, if there is no function of confirming the deviation or a function of correcting the deviation, when the robot grips the robot during actual operation, it may not be gripped well or a problem such as a collision may occur. There are various factors that cause such an error, and in the past, 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 set as the center position of the three-dimensional CAD data, but the present invention is not limited to this example, and other positions can be specified. 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 tangent rectangular parallelepiped or the origin of the input source three-dimensional CAD data may be used as a reference.
(Procedure to register actual measurement data in search model)
以上は、三次元CADデータをサーチモデルとして登録する場合の手順について説明した。ただ本発明は上述の通り、サーチモデルとして三次元CADデータに限らず、例えばセンサ部で実際にワークを撮像した実測データをサーチモデルとして登録することもできる。ここで、図27のステップS2701において、このような実測データをサーチモデルとして登録する手順を、図62のフローチャートに基づいて説明する。 The procedure for registering the three-dimensional CAD data as a search model has been described above. However, as described above, the present invention is not limited to the three-dimensional CAD data as the search model, and for example, the actual measurement data obtained by actually imaging the work by the sensor unit can be registered as the search model. Here, in step S2701 of FIG. 27, a procedure for registering such measured data as a search model will be described based on the flowchart of FIG. 62.
まずステップS6201において、ワークの登録したい面を上向きにして、ワークを平面上に載置して、センサ部で三次元計測を行う。 First, in step S6201, the work is placed on a flat surface with the surface to be registered of the work facing upward, and the sensor unit performs three-dimensional measurement.
次にステップ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 search models required for the three-dimensional search have been registered. If not, the process returns to step S6201 and the above process is repeated to complete the registration of the required number. Ends the process. Details of these procedures will be described later with reference to FIGS. 102 to 106.
(
以上のようにして必要な設定作業が終了した状態で、実際にバラ積みされたワーク群に対して、ピッキング動作を行う。ここで、図28の手順でサーチモデルが登録された状態で、実運用時に、ワークの把持可能かどうか、すなわち検出された各ワークに対して把持解があるか否かを判定する手順を、図63のフローチャートに基づいて説明する。ここでは、図6の演算部10が把持解の有無を判定する。
With the necessary setting work completed as described above, the picking operation is performed on the work groups actually stacked separately. Here, in the state where the search model is registered in the procedure of FIG. 28, the procedure for determining whether or not the work can be gripped, that is, whether or not there is a gripping solution for each detected work, is performed in actual operation. This will be described based on the flowchart of FIG. 63. Here, the
まずステップS6301において、バラ積みワークに対して三次元計測を開始する。ここでは、センサ部でバラ積みされたワーク群を撮像して三次元計測を行い、高さ情報を有する三次元形状を取得する。 First, in step S6301, three-dimensional measurement is started for the loosely stacked workpiece. Here, the sensor unit captures a group of workpieces stacked separately, performs three-dimensional measurement, and acquires a three-dimensional shape having height information.
次にステップS6302において、得られたワーク群の三次元形状に対して、ワークモデルを用いて三次元サーチを実施し、各ワークの位置及び姿勢を検出する。 Next, in step S6302, a three-dimensional search is performed on the three-dimensional shape of the obtained work group using the work model, and the position and orientation of each work are detected.
次にステップS6303において、検出された一のワークに対して、このワークの位置と、設定時に登録したワークの把持姿勢に基づいて、エンドエフェクタを配置すべき位置と姿勢を計算する。 Next, in step S6303, for one detected work, the position and posture in which the end effector should be arranged are calculated based on the position of this work and the gripping posture of the work registered at the time of setting.
次にステップS6304において、計算された位置において、エンドエフェクタが周囲の物体と干渉しないかどうかを、エンドエフェクタモデルを用いて干渉判定を実施する。 Next, in step S6304, an interference determination is performed using the end effector model 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, and if it does not interfere, the process ends with a gripping solution for this work.
一方、干渉していると判定された場合は、ステップS6306に進み、このワークに対して登録された別の把持位置があるか否かを判定する。別の把持位置が登録されている場合は、ステップS6303に戻って、この把持位置に対して上記処理を繰り返す。 On the other hand, if it is determined that they are interfering with each other, the process proceeds to step S6306, and it is determined whether or not there is another gripping position registered for this work. If another gripping position is registered, the process returns to step S6303 and the above process is repeated for this gripping position.
一方、別の把持位置が登録されていない場合は、ステップS6307に進み、検出された別のワークがあるか否かを判定する。別のワークがある場合は、ステップS6303に戻って、ワークを代えて上記処理を繰り返す。別のワークが無い場合は、把持解なしとして処理を終了する。 On the other hand, if another gripping position is not registered, the process proceeds to step S6307 to determine whether or not there is another detected work. If there is another work, the process returns to step S6303, the work is replaced, and the above process is repeated. If there is no other work, the process ends with no gripping solution.
このようにして、図6の演算部10がワークを把持可能な把持解の有無を判定する。そして把持解が得られた場合は、そのワークに対して、エンドエフェクタでもって決定された把持位置にてピックするよう、ロボットコントローラ6に指示を送る。これに従いロボットコントローラ6は、指示されたワークをピックするようにエンドエフェクタを制御する。
In this way, the
以上の手順では、いずれかのワークで把持解が得られると、その時点で把持位置を検討する処理を終了して、得られた把持解に該当する把持位置でワークを把持するように制御している。ただ、この方法に限らず、例えば把持可能なすべての把持位置を把持位置候補として求めた上で、いずれの把持位置候補を選択するかを決定するように構成してもよい。例えば各把持位置候補の評価指標として評価指標演算部8qでスコアを算出して、得られたスコアの最も高いものを把持位置として選択する。また、ワークの置かれた高さ情報に注目し、ワークが置かれた高さが高いもの、いいかえると、バラ積みされたワーク群の内で、より上方に位置するものを把持位置として選択することもできる。好ましくは、スコアと高さ情報の両方を考慮して、演算部10が複数の把持解の中から選択していく。このようにすることで、より適切なピッキングを行うことが可能となる。
(実運用時の手順2)
In the above procedure, when a gripping solution is obtained from any of the workpieces, the process of examining the gripping position is completed at that time, and the work is controlled to be gripped at the gripping position corresponding to the obtained gripping solution. ing. However, the method is not limited to this method, and for example, all gripping positions that can be gripped may be obtained as gripping position candidates, and then which gripping position candidate should be selected may be determined. For example, the evaluation
(
以上は、図28の手順でサーチモデルが登録された状態で、実運用時の手順を説明した。サーチモデルの登録に際しては、図48で示したとおり、サーチモデルの姿勢に制限を加えた状態で登録することもできる。ここで、図48の手順でサーチモデルを登録した状態で、実際にバラ積みされたワーク群に対して、ピッキング動作を行う実運用時の手順を、図64のフローチャートに基づいて説明する。まずステップS6401において、バラ積みワークに対して三次元計測を開始する。ここでは、センサ部でバラ積みされたワーク群を撮像して三次元計測を行い、高さ情報を有する三次元形状を取得する。 The procedure at the time of actual operation has been described above with the search model registered in the procedure of FIG. 28. When registering the search model, as shown in FIG. 48, it is also possible to register the search model in a state in which the posture of the search model is restricted. Here, a procedure at the time of actual operation in which a picking operation is actually performed on a group of works actually stacked in a state where the search model is registered in the procedure of FIG. 48 will be described with reference to the flowchart of FIG. First, in step S6401, three-dimensional measurement is started for the loosely stacked workpiece. Here, the sensor unit captures a group of workpieces stacked separately, performs three-dimensional measurement, and acquires a three-dimensional shape having height information.
次にステップS6402において、得られたワーク群の三次元形状に対して、ワークモデルを用いて三次元サーチを実施し、各ワークの位置及び姿勢を検出する。 Next, in step S6402, a three-dimensional search is performed on the three-dimensional shape of the obtained work group using a work model, and the position and orientation of each work are detected.
次にステップS6403において、傾斜角度、回転角度の範囲設定から範囲外の姿勢を除外する。 Next, in step S6403, the posture outside the range is excluded from the range setting of the tilt angle and the rotation angle.
次にステップS6404において、検出された一のワークに対して、このワークの位置と、設定時に登録したワークの把持姿勢に基づいて、エンドエフェクタを配置すべき位置と姿勢を計算する。 Next, in step S6404, for one of the detected works, the position and posture in which the end effector should be arranged are calculated based on the position of this work and the gripping posture of the work registered at the time of setting.
次にステップS6405において、計算された位置において、エンドエフェクタが周囲の物体と干渉しないかどうかを、エンドエフェクタモデルを用いて干渉判定を実施する。 Next, in step S6405, interference determination is performed using the end effector model 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, and if it does not interfere, the process ends with a gripping solution for this work.
一方、干渉していると判定された場合は、ステップS6407に進み、このワークに対して登録された別の把持位置があるか否かを判定する。別の把持位置が登録されている場合は、ステップS6404に戻って、この把持位置に対して上記処理を繰り返す。 On the other hand, if it is determined that the work is interfering, the process proceeds to step S6407, and it is determined whether or not there is another gripping position registered for this work. If another gripping position is registered, the process returns to step S6404 and the above process is repeated for this gripping position.
一方、別の把持位置が登録されていない場合は、ステップS6408に進み、検出された別のワークがあるか否かを判定する。別のワークがある場合は、ステップS6404に戻って、ワークを代えて上記処理を繰り返す。別のワークが無い場合は、把持解なしとして処理を終了する。
(干渉判定)
On the other hand, if another gripping position is not registered, the process proceeds to step S6408 to determine whether or not there is another detected work. If there is another work, the process returns to step S6404, the work is replaced, and the above process is repeated. If there is no other work, the process ends with no gripping solution.
(Interference judgment)
ここで、上述した図63のステップS6304や図64のステップS6405における、エンドエフェクタモデルを用いた干渉判定の方法について説明する。ワークをエンドエフェクタで把持する際に、エンドエフェクタが他のワークや収納容器など、周囲の障害物と干渉してしまうと、把持を正しく行うことができない。そこで、予め把持位置候補でエンドエフェクタモデルがワークモデルを把持する際の、エンドエフェクタの位置や姿勢を図31の干渉判定部8mで演算することで、周囲の部材との干渉判定を行う。この際、周囲の部材としては、実際にセンサ部2で実測して得られたバラ積みされたワーク群や収納容器の三次元点群が用いられる。また、事前に収納容器などの位置を登録しておき、エンドエフェクタモデルと干渉判定を行うこともできる。一方、エンドエフェクタの三次元CADデータは一般にポリゴンデータで構成される。例えば三次元CADデータとして多用されるSTLデータは、ポリゴンと呼ばれる微小な三角形の集合体で表現されている。
Here, the method of interference determination using the end effector model in step S6304 of FIG. 63 and step S6405 of FIG. 64 described above will be described. When gripping the work with the end effector, if the end effector interferes with surrounding obstacles such as other workpieces and storage containers, gripping cannot be performed correctly. Therefore, when the end effector model grips the work model with the gripping position candidates in advance, the position and posture of the end effector are calculated by the
このようなポリゴンデータと三次元点群データとで干渉判定を行うには、従来、三次元点群データを構成する各三次元点が、エンドエフェクタモデルの内側にあるか外側にあるを調べ、内側にある場合は干渉、外側にある場合は干渉しないと判定していた。しかしながらこの方法では、各点毎に演算や対比を行う必要があり、データが大きくなると演算量が膨大になってしまう。
(断面モデルを用いた干渉判定の手順)
In order to make an interference judgment between such polygon data and 3D point cloud data, conventionally, it is examined whether each 3D point constituting the 3D point cloud data is inside or outside the end effector model. It was judged that if it was inside, it would interfere, and if it was outside, it would not interfere. However, in this method, it is necessary to perform calculation and contrast for each point, and the amount of calculation becomes enormous as the data becomes large.
(Procedure for interference judgment using cross-section model)
そこで本発明の各実施形態においては、エンドエフェクタモデルのポリゴンデータから断面モデルを作成し、三次元点群データの各点を断面モデルに投影して、内外を判定することにより、干渉を判定している。このような干渉判定は、図31の干渉判定部8mにて行われる。ここで、干渉判定を行う手順を図65のフローチャートに基づいて説明する。
Therefore, in each embodiment of the present invention, a cross-section model is created from the polygon data of the end effector model, each point of the three-dimensional point cloud data is projected on the cross-section model, and the inside and outside are judged to determine the interference. 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 is read. Next, in step S6502, a cross-section model is created from the polygon data of the end effector. The cross-section model is generated by the cross-section
このようにして、エンドエフェクタモデル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, the cross sections SS1 to SS5 having the shapes shown in FIGS. 67A to 67E can be obtained at the five positions of the cross sections SP1 to SP5 along the basic axis BSL, respectively. Using the cross-section model thus obtained, it is determined whether or not the end effector model interferes with the three-dimensional point cloud.
具体的には、ステップS6503において、三次元点群を構成する内、干渉判定の対象となる三次元点を選び、この点の基本軸BSL方向における位置から、断面モデルが有する複数の断面の内、どの断面と干渉判定するかを選択する。この選択には、各断面に設定された断面位置を用いる。例えば三次元点の内、図68Aに示す三次元点TDPに対して、エンドエフェクタモデルEEMとの干渉判定を行う場合を考える。三次元点TDPは、基本軸BSLに沿う方向において、断面位置SP3とSP4の間に位置する。よってこの間の断面形状を示す断面SS3でもって、三次元点TDPとの干渉判定を行う。 Specifically, in step S6503, a three-dimensional point to be determined for interference is selected from the three-dimensional point cloud, and from the position of this point in the basic axis BSL direction, among the plurality of cross sections of the cross-section model. , Select which cross section to judge interference with. For this selection, the cross-section position set for each cross-section is used. For example, consider a case where interference with the end effector model EEM is determined for the three-dimensional point TDP shown in FIG. 68A among the three-dimensional points. The three-dimensional point TDP is located between the cross-sectional positions SP3 and SP4 in the direction along the basic axis BSL. Therefore, the interference with the three-dimensional point TDP is determined by the cross section SS3 showing the cross-sectional shape during this period.
具体的には、ステップS6504において、三次元点TDPから断面SS3を含む直交平面上に投影した投影点PP3を演算する。そしてステップS6505において干渉判定を行う。ここでは、三次元点の投影点PP3の位置が、図68Bに示すように断面SS3の外側であれば干渉していないと判定する。一方、図68Cのように断面SS3の内側であれば、干渉していると判定する。最後にステップS6506において、他の三次元点があるか否かを判定し、未処理の三次元点が残っている場合はステップS6503に戻って上記処理を繰り返す。そしてすべての三次元点で干渉判定を終えると、処理を終了する。 Specifically, in step S6504, the projection point PP3 projected from the three-dimensional point TDP onto the orthogonal plane including the cross section SS3 is calculated. Then, in step S6505, the 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 the interference occurs. Finally, in step S6506, it is determined whether or not there are other three-dimensional points, and if unprocessed three-dimensional points remain, the process returns to step S6503 and the above processing is repeated. Then, when the interference determination is completed at all the three-dimensional points, the process ends.
このようにして、計測した三次元点群とエンドエフェクタモデルとの干渉判定を行うことができる。また、以上では三次元点群データとの干渉判定について説明したが、本発明は干渉判定の対象を三次元点に限らず、他の物体、例えば線や面についても、同様の手順でも干渉判定を実施できる。 In this way, it is possible to determine the interference between the measured three-dimensional point cloud and the end effector model. Further, although the interference determination with the three-dimensional point cloud data has been described above, the present invention does not limit the object of the interference determination to the three-dimensional point, but also determines the interference of other objects such as lines and surfaces by the same procedure. Can be carried out.
さらに、以上の例ではエンドエフェクタのCADデータがポリゴンデータの例について説明したが、エンドエフェクタの断面形状が計算できる形式であれば、ポリゴンデータに限らず、他のCADデータ形式でも同様に干渉判定を行える。さらに以上の例では、断面形状を二次元状の平面図で表現する場合について説明したが、断面形状のデータの持ち方もこの形態に限られず、例えば輪郭線の集合のような形式のデータで持っていてもよい。
(追加領域を加えた追加モデルでの干渉判定)
Further, in the above example, the example in which the CAD data of the end effector is polygon data has been described. However, as long as the cross-sectional shape of the end effector can be calculated, the interference determination is not limited to the polygon data but also in other CAD data formats. Can be done. Furthermore, in the above example, the case where the cross-sectional shape is represented by a two-dimensional plan view has been described, but the way of holding the cross-sectional shape data is not limited to this form, and the data in the form of, for example, a set of contour lines is used. You may have it.
(Interference judgment in an additional model with an additional area added)
またエンドエフェクタモデルの干渉判定において、エンドエフェクタモデルに立体的な基本図形で表現した追加領域を追加した追加モデルを用いて干渉判定を行うこともできる。このような追加モデルを用いた干渉判定の手順を、図69のフローチャートに基づいて説明する。ここでは、基本図形として直方体と円柱を組み合わせた追加領域を、三次元CADモデルに追加した追加モデルに対して干渉判定を行う例を説明する。 Further, in the interference determination of the end effector model, the interference determination can be performed by using an additional model in which an additional area represented by a three-dimensional basic figure is added to the end effector model. The procedure for determining interference using such an additional model will be described with reference to the flowchart of FIG. 69. Here, an example will be described in which an additional region in which a rectangular parallelepiped and a cylinder are combined as a basic figure is subjected to interference determination with respect to the additional model added to the three-dimensional CAD model.
まず、ステップS6901において、追加領域を構成する基本図形の内、直方体の領域について干渉判定を実行する。この結果に応じて、ステップS6902において、干渉ありと判定された場合は、干渉判定の処理を中止し、干渉ありと出力して処理を終了する。 First, in step S6901, interference determination is executed for a rectangular parallelepiped region among the basic figures constituting the additional region. If it is determined in step S6902 that there is interference according to this result, the process of determining interference is stopped, the process is output as having interference, and the process is terminated.
一方、干渉なしと判定された場合は、ステップS6903に進み、追加領域を構成する基本図形の内、他の図形である円柱との干渉判定を行う。この結果、ステップS6904において、干渉ありと判定されれば、干渉判定の処理を中止し、干渉ありと出力して処理を終了する。 On the other hand, if it is determined that there is no interference, the process proceeds to step S6903, and interference determination with a cylinder, which is another figure among the basic figures constituting the additional area, is performed. As a result, if it is determined in step S6904 that there is interference, the process of determining interference is stopped, the process is output as having interference, and the process is terminated.
一方、干渉なしと判定された場合は、ステップS6905に進み、三次元CADデータとの干渉判定を行う。この結果、ステップS6906において、干渉ありと判定されれば、干渉判定の処理を中止し、干渉ありと出力して処理を終了する。 On the other hand, if it is determined that there is no interference, the process proceeds to step S6905 to determine interference with the three-dimensional CAD data. As a result, if it is determined in step S6906 that there is interference, the process of determining interference is stopped, the process is output as having interference, and the process is terminated.
一方、干渉なしと判定された場合は、干渉なしとして処理を終了する。 On the other hand, if it is determined that there is no interference, the process is terminated with no interference.
このように、基本図形毎、あるいは三次元CADデータ単位で干渉判定を順次行い、いずれで干渉ありと判定されると、その時点で干渉判定処理を中止して干渉判定ありと出力する。なお、以上は追加領域が直方体と円柱の2つの基本図形で構成された例について説明したが、基本図形が多くなっても手順は同じで、基本図形毎に干渉判定を順次行い、その都度、干渉ありと判定されれば処理を中止する。
(実施形態7)
(把持可否判定検証機能)
In this way, the interference determination is sequentially performed for each basic figure or for each three-dimensional CAD data, and when it is determined that there is interference, the interference determination process is stopped at that point and the interference determination is output. In the above, an example in which the additional area is composed of two basic figures, a rectangular parallelepiped and a cylinder, has been described, but the procedure is the same even if the number of basic figures increases, and interference determination is sequentially performed for each basic figure, and each time. If it is determined that there is interference, the process is stopped.
(Embodiment 7)
(Gripability judgment verification function)
以上は、実運用時に干渉判定の結果、把持解の有無を判別する手順について説明した。ただ本発明は、把持解の有無を判別するのみならず、把持解が得られなかった把持位置の候補について、どのような理由で把持解が得られなかったのかを検証する把持可否判定検証機能を設けてもよい。例えば、把持解候補を一覧表示させ、干渉判定の結果、把持解ありと判定された把持位置はOK、把持解なしと判定された把持位置候補はNGと表示させる。この状態で、NGと判定された把持位置を選択して、どのような理由で把持解なしと判定されたかを表示させることで、ユーザはこの情報を参考にして、どのような把持位置であれば把持解として選択されうるかを検討し、把持位置を修正したり、新たな把持位置を追加できるようになる。このような例を実施形態7に係るロボットシステム7000として、図70のブロック図に示す。この図に示すロボットシステム7000は、画像処理装置700と、表示部3Bと、操作部4と、センサ部2と、ロボットコントローラ6と、ロボットRBTを備える。なお、図6と同じ部材については、同じ符号を付して詳細説明を適宜省略する。
(表示部3B)
The procedure for determining the presence or absence of a gripping solution as a result of the interference determination during actual operation has been described above. However, the present invention not only determines the presence or absence of a gripping solution, but also verifies the reason why a gripping solution could not be obtained for a candidate for a gripping position for which a gripping solution could not be obtained. May be provided. For example, the gripping solution candidates are displayed in a list, and as a result of the interference determination, the gripping position determined to have a gripping solution is displayed as OK, and the gripping position candidate determined to have no gripping solution is displayed as NG. In this state, by selecting the gripping position determined to be NG and displaying the reason why it was determined that there is no gripping solution, the user can refer to this information and whatever the gripping position is. For example, it becomes 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 the
(
表示部3Bは、画像表示領域3bと、把持解候補表示領域3cを備える。把持解候補表示領域3cは、ワーク把持可否表示領域3dと、ワーク把持不能要因表示領域3eを含む。
The
画像表示領域3bは、エンドエフェクタの三次元形状を仮想的に表現する、三次元CADデータで構成されたエンドエフェクタモデルを、仮想的な三次元空間上で三次元状に表示させるための部材である。
The
把持解候補表示領域3cは、三次元サーチ部8kでサーチされた一以上のワークのサーチ結果の任意の一に対して、設定されている把持位置を全て列挙して表示させるための部材である。
The gripping solution
ワーク把持可否表示領域3dは、三次元ピック判定部8lによる、各ワークに対して指定された把持位置における把持の可否の判定結果を表示させるための部材である。
The work gripping
ワーク把持不能要因表示領域3eは、三次元ピック判定部8lによる、各ワークに対して指定された把持位置における把持が不能と判定された把持位置に対して、該把持不能とされた要因を表示させるための部材である。
(画像処理装置700)
The work non-gripable
(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で把持位置を指定するワークモデルと同じとすることが好ましい。これにより、三次元サーチを行うサーチモデルを、把持位置を指定するワークモデルと共通化することで、ユーザは設定作業を省力化できる。また実運用時においても、把持できるワークをサーチするワークモデルと、把持判定を行うワークモデルと一致させることで、サーチされたワークモデルに対して、このワークモデルに設定された把持位置で把持可能かどうかを検討できるため、効率良く処理を行うことが可能となる。
The search
傾斜角度設定部8nは、ワークの姿勢に対し、許容される傾斜角度の範囲を設定するための部材である。
The tilt
三次元ピック判定部8lは、三次元サーチ部8kでサーチされた各ワークのサーチ結果に対して、ワーク側把持箇所指定部8d1で当該ワークに対して指定された把持位置にて、エンドエフェクタで把持可能か否かを判定するための部材である。この三次元ピック判定部8lは、干渉判定部8mと、角度判定部8oとを含む。
The three-dimensional pick determination unit 8l is an end effector at a gripping position designated for the work by the work-side gripping point designating unit 8d1 for the search result of each work searched by the three-
干渉判定部8mは、三次元サーチ部8kでサーチされた各ワークのサーチ結果に対して、ワーク側把持箇所指定部8d1でこのワークに対して指定された把持位置について、該ワークの周囲に存在する物体との干渉の有無を判定するための部材である。また干渉判定部8mにより干渉ありと判定されたワークに対して、三次元ピック判定部8lが把持不能と判定する。これにより、ワークを把持できない場合の原因が示されることで、ユーザは例えば、どのような把持位置を追加すればよいかを検討しやすくなる等、把持位置の再設定に資することができる。
The
角度判定部8oは、三次元サーチ部8kでサーチされたワークのサーチ結果の姿勢が、傾斜角度設定部8nで設定された傾斜角度範囲内か否かを判定するための部材である。
The angle determination unit 8o is a member for determining whether or not the posture of the search result of the work searched by the three-
三次元ピック判定部8lは、角度判定部8oにより、三次元サーチ部8kでサーチされたワークのサーチ結果の姿勢が、傾斜角度設定部8nで設定された傾斜角度範囲内でないと判定された場合に、該ワークを把持不能と判定するよう構成される。これにより、ワークの姿勢が急峻すぎて把持ができない、あるいは三次元測定の精度が期待できない場合に、これを排除することで把持位置の選択や判定の誤判定を回避し、信頼性を高めることができる。
(把持解候補一覧表示機能)
When the three-dimensional pick determination unit 8l determines by the angle determination unit 8o that the posture of the search result of the work searched by the three-
(Gripping solution candidate list display function)
次に、把持解NGの理由を表示させる手順を、図71のフローチャートに基づいて説明する。なお、設定時の手順、及び実運用時の手順は、上述した図27、図28、図63等と基本的に同様であり、詳細説明を適宜省略する。 Next, a procedure for displaying the reason for the gripping solution NG will be described with reference to the flowchart of FIG. 71. The procedure at the time of setting and the procedure at the time of actual operation are basically the same as those of FIGS. 27, 28, 63 and the like described above, and detailed description thereof will be omitted as appropriate.
まずステップS7101において、対象となるワーク群に対して三次元計測を行う。ここではバラ積みされたワーク群に対して、センサ部を用いて形状の情報を有する実測データを取得し、これを入力画像とする。 First, in step S7101, three-dimensional measurement is performed on the target work group. Here, for the work group stacked separately, the sensor unit is used to acquire actual measurement data having shape information, 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 work 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 posture of the end effector model when the work is to be gripped by the end effector are calculated from the detection position of the selected work and the gripping posture registered in advance for the work.
次にステップ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 out of the set range. If it is determined that it is out of the set range, the process proceeds to step S7106, and it is determined that the grip is NG. At the same time, the factor of NG is set to "tilt angle", and then the process 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 proceeds to step S7107, and interference determination between the end effector model and surrounding objects is performed at the calculated position. Here, the surrounding object is a storage container, other work, or the like existing around the end effector model. When the surrounding objects are modeled in advance with 3D CAD data or the like and the end effector model is moved to the position and orientation in which the work model is gripped, whether or not these and the end effector model interfere with each other is calculated by calculation. judge.
そしてステップS7108において、干渉判定の結果、エンドエフェクタモデルが周囲の物体と干渉していると判定された場合は、ステップS7109において、把持NG判定とし、NGの要因を「点群干渉」と設定した上で、ステップS7111にジャンプする。 Then, in step S7108, when it is determined that the end effector model is interfering with a surrounding object as a result of the interference determination, the gripping NG determination is made and the NG factor is set as "point cloud interference" in step S7109. 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 surrounding objects as a result of the interference determination, the gripping OK determination is made in step S7101, and then 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 posture is set for the selected work, and if there is another gripping posture, the process returns to step S7104 and the above process is repeated. On the other hand, when it is determined that there is no gripping posture, in step S7112, for all the gripping solution candidates, the determination result of gripping OK / gripping NG and the factor in the case of gripping NG are displayed in the work gripping impossible
このようにして、与えられたワーク群に対して把持が可能かどうかを検証し、さらに把持できない場合の要因をリストアップすることができる。
(把持シミュレーション)
In this way, it is possible to verify whether or not gripping is possible for a given work group, and to list the factors when gripping is not possible.
(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 determining the specific gripping will be described. Here, an example of determining whether or not gripping is possible when bulk picking is performed using the work WK10 as shown in FIG. 72 will be described. For this work WK10, a basic direction image corresponding to a hexagonal view is generated by the basic direction
(Work selection screen 210)
ワークをエンドエフェクタで把持可能かどうかの判定を行うために、バラ積みされたワーク群を撮像した入力画像に対して三次元サーチを行い、ワークを検出した状態において、対象となるワークを選択する(図71のステップS7103)。ワークの選択は、例えば図74に示すワーク選択画面210から行う。この図に示すワーク選択画面210は、画像表示欄141と操作欄142を備える。画像表示欄141には、バラ積みされたワーク群を撮像した実測データである入力画像が表示されている。また入力画像に対し、ワークが検出された位置に重ねてサーチ結果が点群で表示されている。画像表示欄141の画面をドラッグすることで、視点を変更できる。
(ラベル番号、モデル番号)
In order to determine whether or not the work can be gripped by the end effector, a three-dimensional search is performed on the input image obtained by capturing the group of works stacked separately, and the target work is selected in the state where the work is detected. (Step S7103 in FIG. 71). The work is selected, for example, from the
(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中のワークも変更され、さらにこのワークを把持するエンドエフェクタモデルの姿勢も更新される。
Further, the gripping position set for each work, that is, the 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中では、これに対応するエンドエフェクタモデルが表示され、実際に把持姿勢がどのような状態となっているかを視覚的に確認することができる。ここでは「点群干渉」と表示され、エンドエフェクタが収納容器の平面と干渉していることが確認できる。この結果、ユーザはこのような姿勢のワークに対し、干渉しない位置や姿勢での把持位置の追加を検討することが可能となる。
In the example of FIG. 75, a state in which the work of FIG. 73E is gripped by the gripping position candidate of
同様に、ワーク把持不能要因表示欄225でラベル番号2番の把持位置候補を選択すると、図77に示す把持解候補表示画面220となり、ラベル番号2の把持位置候補が把持NGの判定結果となった理由として、「傾斜角度」とワーク把持不能要因表示欄225に表示される。さらに画像表示欄141中では、これに対応するエンドエフェクタモデルが表示され、エンドエフェクタが急峻な傾斜角度で把持しようとした状態となっており、そもそも干渉判定対象から除外されていることが判る。
Similarly, when the gripping position candidate of
また、判定結果に応じて、画像表示欄141で表示されるエンドエフェクタの表示態様を変更させてもよい。図75の例では、把持OKの場合にエンドエフェクタモデルを白色で表示させ、また図76や図77の例では、把持NGの場合にエンドエフェクタモデルを赤色で表示させている。これによりユーザは視覚的に把持の判定結果を容易に区別できる。また、把持位置を追加する際に、エンドエフェクタモデルの姿勢を調整して、干渉しない状態となった時点で表示態様を変更するように、画像表示欄141における表示を更新させる構成にしてもよい。このように構成することで、ユーザは例えばエンドエフェクタモデルの姿勢を、赤色から白色になるまで変更することができ、姿勢の調整作業を判り易く行える利点が得られる。
Further, the display mode of the end effector displayed in the
このように把持可否判定検証機能を設けることで、把持したいワークが把持不能と判定された場合に、どのように把持を設定すればよいか、例えば新たな把持位置を追加したり、既存の把持位置の設定を変更するなどの作業を検討する際の指針となる。例えば、図78、図79に示す例では、サーチモデルC(図73C)のワークに対して2つの把持位置候補が存在しているものの、いずれも点群干渉が理由で把持不能ととなっている。いずれも、画像表示欄141中に破線の円で示すように、エンドエフェクタモデルの爪の先端が別のワークに干渉していることが原因であることが判る。このことから、現在の把持位置の反対側の箇所を把持するように、新たな把持位置を追加すれば、OKの把持解が得られることが判る。そこで、現在の把持位置の反対側にも新たな把持位置(把持姿勢C−002)を追加するよう把持位置特定部8dで設定すると、図80に示すように、把持OKの判定結果を得られるようになる。このようにして、把持位置や姿勢の調整作業をユーザが行う際、対応策を検討しやすい環境が与えられ、設定が容易なロボットシステムが実現される。
By providing the gripability determination verification function in this way, when it is determined that the workpiece to be gripped cannot be gripped, how to set the grip, for example, adding a new gripping position or existing gripping It will be a guide when considering work such as changing the position setting. For example, in the examples shown in FIGS. 78 and 79, although there are two gripping position candidates for the work of the search model C (FIG. 73C), they cannot be gripped due to point cloud interference. There is. In each case, as shown by the broken line circle in the
また、エンドエフェクタの傾斜角度のしきい値を、ユーザによる設定で変更することも可能である。例えば、ワークの収納容器として底の深い箱を用いる場合には、エンドエフェクタの傾斜が大きくなると、エンドエフェクタ以外にロボットのアーム部分が収納容器の壁と衝突し易くなるため、角度範囲を狭く設定する。逆に、収納容器として底の浅い箱を用いる場合は、エンドエフェクタさえ干渉しなければ、ロボットのアーム部分が箱に衝突するケースは生じ難いため、角度範囲を広く設定することができる。このように、角度範囲の設定を調整することで、実際の状況に応じて把持の可否判定を柔軟に調整することが可能となる。 It is also possible to change the threshold value of the tilt angle of the end effector by setting by the user. For example, when a box with a deep bottom is used as the storage container for the work, if the inclination of the end effector becomes large, the arm part of the robot other than the end effector tends to collide with the wall of the storage container, so the angle range is set narrow. To do. On the contrary, when a box with a shallow bottom is used as the storage container, it is unlikely that the arm portion of the robot collides with the box unless the end effector interferes, so that the angle range can be set wide. By adjusting the setting of the angle range in this way, it is possible to flexibly adjust the gripping possibility determination according to the actual situation.
以上のようにして、選択したワークに対する全ての把持解が一覧表示され、NGだったものについては、そのNG要因が合わせて表示されるため、取れそうなのに、いつまでの把持解の候補とならないワークがあった場合に、それがどういう要因で把持されないのか、原因を特定することが容易になる。また、原因が特定できるため、新たにどのような把持姿勢を追加すれば良いかも判り易くなる。
(実施形態8)
As described above, all the gripping solutions for the selected work 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 grasped. In addition, since the cause can be identified, it becomes easy to understand what kind of gripping posture should be newly added.
(Embodiment 8)
以上の例では、三次元サーチに際して、サーチモデル毎に個別にサーチ結果を取得する例について説明した。すなわち、同じワークの異なる面を示す複数の基本方向画像でもって三次元サーチを行い、得られた結果についてもそれぞれ別々のワークとして認識される。いいかえると、同じワークの異なる面についても、それぞれ個別にサーチされる結果、異なるワークとして検出されることが起こり得る。一方、従来の三次元サーチでは、一のワークモデルを示す三次元形状でもってサーチされるため、このようなことは生じず、同じワークの異なる面も、一つのワークとして検出される。ただし、多くの面が存在するワークではサーチが複雑になる上、誤検出の可能性も高くなる。これに対して上述した実施形態に係る方法では、単純な面でサーチすることから、サーチの処理を簡素化でき、低負荷化、高速化等の点で有利となる。反面、面ごとにサーチされる結果、上述の通り得られるサーチ結果が、別個のワークとして捉えられ、同じワークであっても別の面がそれぞれ個別に検出されるという問題があった。 In the above example, an example of acquiring search results individually for each search model in a three-dimensional search has been described. That is, a three-dimensional search is performed with 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 faces of the same work may be detected as different works as a result of being individually searched. On the other hand, in the conventional three-dimensional search, since the search is performed with a three-dimensional shape indicating one work model, such a situation does not occur, and different surfaces of the same work are detected as one work. However, in a work having many aspects, 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 aspect, the search process 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 for the same work.
そこで、得られたサーチ結果を統合し、ワーク毎に纏めたり、ある面のサーチ結果から別の面のサーチ結果を推定することで、三次元サーチでは検出できなかった面や、検出精度が低い面についても、把持解の候補として利用できるようにすることができる。このような例を実施形態8に係るロボットシステムとして、図81のブロック図に示す。この図に示すロボットシステム8000は、画像処理装置800と、表示部3Bと、操作部4と、センサ部2と、ロボットRBTを備える。なお、図6、図70等と同じ部材については、同じ番号を付して詳細説明を適宜省略する。
(画像処理装置800)
Therefore, by integrating the obtained search results and summarizing them for each work, or by estimating the search results of another surface from the search results of one surface, the surfaces that could not be detected by the three-dimensional search and the detection accuracy are low. The surface can also be used as a candidate for a gripping solution. Such an example is shown in the block diagram of FIG. 81 as a robot system according to the eighth embodiment. The
(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 image generation unit 8e'generates, as a basic direction image, a plurality of height images viewed from any of the three axial directions orthogonal to each other in the virtual three-dimensional space with respect to the work model. It is a member of.
把持位置特定部8dは、基本方向画像生成部8e’で生成された基本方向画像の一に対して、該基本方向画像が示すワークモデルをエンドエフェクタで把持する把持位置を複数、特定するための部材である。この把持位置特定部8dは、ワーク側把持箇所指定部8d1と、エンドエフェクタ側把持設定部8d2を備える。
The gripping
ワーク側把持箇所指定部8d1は、画像表示領域3bにエンドエフェクタモデルを表示させた状態で、ワークの三次元形状を仮想的に表現する、三次元CADデータで構成されたワークモデルをエンドエフェクタモデルで把持する際の把持位置を指定するための部材である。
The work-side gripping location designation unit 8d1 creates a work model composed of three-dimensional CAD data that virtually represents the three-dimensional shape of the work in a state where the end effector model is displayed in the
エンドエフェクタ側把持設定部8d2は、画像表示領域3bに表示されるエンドエフェクタモデルに対して、ワークを把持する把持位置を指定するための部材である。
The end effector side grip setting unit 8d2 is a member for designating a grip position for gripping the work 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 sets the grip
これにより、三次元サーチされたサーチ結果に対して、個別に保持判定を行うのでなく、面同士の関係性情報を用いてワークの位置及び姿勢をより正確に推定できるので、サーチされていない面、あるいはサーチ結果の精度が低い面についても、検出できるようになり、通常であればサーチが困難な面も含めて保持位置候補として検討することが可能となり、保持解が得られる可能性を高めることが可能となる。
(面同士の関係性情報を含めたサーチモデルを登録する手順)
As a result, the position and orientation of the work can be estimated more accurately by using the relationship information between the surfaces, instead of individually determining the holding of the search results that have been searched three-dimensionally. Or, even if the accuracy of the search result is low, it will be possible to detect it, and it will be possible to consider it as a holding position candidate including the side that is normally difficult to search, increasing the possibility of obtaining a holding solution. It becomes possible.
(Procedure for registering a search model including relationship information between faces)
以上の画像処理装置に対して、ワークモデルやエンドエフェクタモデルの登録、把持位置の登録などの設定を行う手順は、例えば図27のフローチャートで示した手順が利用できる。ここで、図27のステップS2701において、サーチモデルとして三次元CADデータを用いると共に、ワークの面同士の関係性情報を含めたサーチモデルを登録する手順を、図82のフローチャートに基づいて説明する。 For the procedure for setting the work model, the end effector model, the gripping position, and the like for the above image processing apparatus, for example, the procedure shown in the flowchart of FIG. 27 can be used. Here, in step S2701 of FIG. 27, a procedure of using the three-dimensional CAD data as the search model and registering the search model including the relationship information between the surfaces of the work will be described based on the flowchart of FIG. 82.
まずステップS8201において、ワークの三次元CADデータモデルを読み込む。 First, in step S8201, the three-dimensional CAD data model of the work is read.
次にステップS8202において、三次元CADデータモデルの外接直方体の中心を、三次元CADデータの原点に補正する。 Next, in step S8202, the center of the circumscribing rectangular parallelepiped of the 3D CAD data model is corrected to the origin of the 3D CAD data.
さらにステップS8203において、「上」「下」「左」「右」「前」「後」の各方向から見た高さ画像を基本方向画像として生成する。基本方向画像は、図81の基本方向画像生成部8e’で行われる。ここで、三次元CADデータから高さ画像を生成する際は、CADの原点が高さ画像の中心になるように生成する。 Further, in step S8203, a height image viewed from each of the "upper", "lower", "left", "right", "front", and "rear" directions is generated as a basic direction image. The basic direction image is performed by the basic direction image generation unit 8e'in FIG. 81. Here, when the height image is generated from the three-dimensional CAD data, the height image is generated so that the origin of the CAD is the center of the height image.
次にステップS8204において、生成した高さ画像の中で、同じ見え方になる高さ画像を削除する。 Next, in step S8204, among the generated height images, the height images having the same appearance are deleted.
さらにステップS8205において、複数登録されるサーチモデル同士の相対位置を関係性情報として登録する。ここでは、サーチモデル登録部8gが、残った高さ画像と、上下左右前後の各面の関係性情報を保存する。
Further, in step S8205, the relative positions of the plurality of registered search models are registered as the relationship information. Here, the search
最後にステップS8205において、生成された高さ画像を用いてサーチモデルを登録する。このようにして、ワークの面同士の関係性情報を含めたサーチモデルが登録される。
(面の関係性情報)
Finally, in step S8205, the search model is registered using the generated height image. In this way, the search model including the relationship information between the work surfaces is registered.
(Surface relationship information)
ここでワークを特定方向から見た面同士の相対位置関係を示す関係性情報について説明する。例えば、図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 when the work is viewed from a specific direction will be described. For example, in the case of the work shown in FIG. 7, the surfaces having different appearances are the four surfaces shown in FIGS. 9A to 9D. In these figures, the model A shown in FIG. 9A is a height image seen from the positive direction of the X-axis. However, it also matches the image seen from the negative direction of the X-axis. Further, the model B shown in FIG. 9B is a height image viewed from the positive direction of the Y axis, and coincides with the image viewed from the negative direction of the Y axis. On the other hand, the model C shown in FIG. 9C matches only the image viewed from the positive direction of the Z axis. Further, the 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, which models A, B, C, and D, which are height images generated in advance, match the three-dimensional CAD data of the work shown in FIG. 7 with the image viewed from which coordinate axis direction and in which rotation state. Is the information that represents the relationship information of the surface. With such surface relationship information, the posture of the original 3D CAD model can be obtained from the search results of each model. For example, the model B of FIG. 9B exists adjacent to each other on the left and right surfaces of the model A of FIG. 9A. Further, a model C of FIG. 9C is present on the upper surface of the model A, and a model D of FIG. 9D is adjacent to each other on the lower surface. As a result, it can be seen that in the searched image obtained as a result of the three-dimensional search, when the detection results of the model A and the model B are adjacent to each other, the search for the same work is performed. Therefore, these search results can be integrated as one search result. Here, the 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 a highly accurate search result is obtained in the integrated result, the evaluation index of the integrated result is increased to obtain a correct gripping solution when selecting the gripping position. Can be prioritized.
(Unsearched basic direction image)
さらに、三次元サーチに失敗した場合やサーチ自体が行われなかった場合のように、サーチされない面があっても、統合結果を利用して推定することが可能となる。すなわち、複数のサーチ結果を統合してワークの統合結果を得た際に、このワークを構成する面の内で三次元サーチで検出されなかった面が存在する場合であっても、他の面でサーチ結果が得られていれば、ワーク自体の姿勢や位置を演算できる。この結果、予めワークに対して把持位置を登録したワークモデルや三次元サーチ用のサーチモデルが登録されている場合は、サーチされていない面の情報も、ワークの姿勢から推定できる。よって、このようなサーチの結果として得られたのでない、推定によって得られた面(未サーチ基本方向画像と呼ぶ。)をも、把持位置の候補に利用することで、実際にサーチされなかった面の把持位置をも把持解の候補として検討でき、適切な把持解が得られ易くなる利点が得られる。例えば三次元サーチの結果、図9Bに示すモデルBが得られた場合に、その横には図9Aに示すモデルAの面が存在するものと推定できる。これにより、仮にモデルAがサーチ結果として実際に検出されていなかったとしても、モデルBのサーチ結果から、モデルAの面を推定することができるため、把持解の候補としてモデルAの面に登録された把持姿勢を用いることができるようになり、この結果、把持解の候補が増えてピッキングされ易くなる。
(面の関係性情報を用いた把持解の算出)
Further, even if there is a surface that is not searched, such as when the three-dimensional search fails or the search itself is not performed, it is possible to estimate using the integrated result. That is, when a plurality of search results are integrated to obtain an integrated work result, even if there is a surface that is not detected by the three-dimensional search among the surfaces constituting this work, the other surface is present. If the search result is obtained in, the posture and position of the work itself can be calculated. As a result, when a work model in which the gripping position is registered for the work in advance or a search model for three-dimensional search is registered, information on the surface that has not been searched can also be estimated from the posture of the work. Therefore, the surface obtained by estimation (referred to as the unsearched basic direction image), which was not obtained as a result of such a search, was not actually searched by using it as a candidate for the gripping position. The gripping position of the surface can also be examined as a candidate for the gripping solution, and there is an advantage that an appropriate gripping 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 the model B. 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, so that the surface of model A is registered in the surface of model A as a candidate for a gripping solution. It becomes possible to use the gripping posture, and as a result, the number of candidates for gripping solutions increases and picking becomes easier.
(Calculation of gripping 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 calculating the gripping solution using the surface relationship information will be described using the work WK10 shown in FIG. 72. From the three-dimensional CAD data of the work WK10, the basic direction images shown in FIGS. 73A to 73F are generated 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 by the end effector model EM10 is registered in 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 surface of the work is not used, the model F and the model A are in a state where only a 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のみであり、結果として把持解を得られないこととなる。
When the "grasping confirmation"
これに対して、関係性情報を用いることで、図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, the search models F and A are also targeted in addition to the search model C, and F-000 and A-000 are added as gripping position candidates. You can see that. Then, among the added gripping position candidates, the gripping position candidate F-000 of the search model F has a determination result of gripping NG, but the gripping position candidate A-000 of the search model A has a gripping OK. The determination result is obtained, the end effector is displayed in white as shown in FIG. 86, and the gripping solution is safely obtained without interfering with the point cloud data. As a result, even if a gripping solution cannot be obtained without using the relationship information, it is possible to obtain a gripping solution by using the relationship information. That is, without changing the 3D search settings, for example, adjusting the lighting or camera arrangement, changing the search algorithm, etc., and keeping the same search conditions, in other words, without changing the accuracy of the 3D search. , It is possible to increase the possibility of obtaining a gripping solution. In this way, by using the surface relationship information, the number of candidates for gripping solutions can be increased, and a result that is easily picked can be obtained.
(
ここで、図82の手順でサーチモデルが登録された状態で、実運用時に、三次元サーチと把持可否判定を行う手順を、図87のフローチャートに基づいて説明する。 Here, with the search model registered in the procedure of FIG. 82, a procedure for performing a three-dimensional search and grasping availability determination in actual operation will be described with reference to the flowchart of FIG. 87.
まずステップS8701において、バラ積みワークに対して三次元計測を開始する。ここでは、図81に示すセンサ部2でバラ積みされたワーク群を撮像して三次元計測を行い、高さ情報を有する三次元形状を入力画像として入力画像取得部2cでもって取得する。
First, in step S8701, three-dimensional measurement is started for the loosely stacked workpiece. Here, the work group stacked separately by the
次にステップS8702において、得られたワーク群の三次元形状に対して、ワークモデルを用いて三次元サーチを実施し、各ワークの位置及び姿勢を検出する。三次元サーチは、図81の三次元サーチ部8kで行われる。
(統合結果の生成)
Next, in step S8702, a three-dimensional search is performed on the three-dimensional shape of the obtained work group using a work model, and the position and orientation of each work are detected. The three-dimensional search is performed by the three-
(Generation of integration result)
さらにステップS8703において、三次元サーチのサーチ結果と、各面の関係性情報から、同じワークを示す結果を統合する。ここではサーチ結果統合部8pが、サーチに用いたサーチモデルに登録された関係性情報を利用して、同じワークを撮像したサーチ結果同士を関連付ける。すなわち、サーチ結果をサーチした元となる共通のワークモデルをどの方向から見た基本方向画像であるかの相対的な位置関係に基づいて、複数のサーチ結果の内、隣接するもの同士を、サーチ結果統合部8pで統合する。このようにして得られた統合結果は、同じワークを示すものとして共通に扱う。
(未サーチ基本方向画像の生成)
Further, in step S8703, the search result of the three-dimensional search and the result 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, the undetected surface is estimated from the three-dimensional search result and the relationship information of each surface. Here, based on the posture and position of the work indicated by the integration result, the position and posture of the unsearched basic direction image that is not included in the result of the three-dimensional search for this work is estimated. Then, the gripping position set by the gripping
次にステップS8705において、検出された一のワークに対して、このワークの位置と、設定時に登録したワークの把持姿勢に基づいて、エンドエフェクタを配置すべき位置と姿勢を計算する。 Next, in step S8705, for one of the detected works, the position and posture in which the end effector should be arranged are calculated based on the position of this work and the gripping posture of the work registered at the time of setting.
次にステップS8706において、計算された位置において、エンドエフェクタが周囲の物体と干渉しないかどうかを、エンドエフェクタモデルを用いて干渉判定を実施する。 Next, in step S8706, an interference determination is performed using the end effector model 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, and if it does not interfere, the process ends with a gripping solution for this work.
一方、干渉していると判定された場合は、ステップS8708に進み、このワークに対して登録された別の把持位置があるか否かを判定する。別の把持位置が登録されている場合は、ステップS8705に戻って、この把持位置に対して上記処理を繰り返す。 On the other hand, if it is determined that the work is interfering, the process proceeds to step S8708, and it is determined whether or not there is another gripping position registered for this work. If another gripping position is registered, the process returns to step S8705 and the above process is repeated for this gripping position.
一方、別の把持位置が登録されていない場合は、ステップS8709に進み、検出された別のワークがあるか否かを判定する。別のワークがある場合は、ステップS8705に戻って、ワークを代えて上記処理を繰り返す。別のワークが無い場合は、把持解なしとして処理を終了する。 On the other hand, if another gripping position is not registered, the process proceeds to step S8709 to determine whether or not there is another detected work. If there is another work, the process returns to step S8705, the work is replaced, and the above process is repeated. If there is no other work, the process ends with no gripping solution.
このようにして、統合結果や未サーチ基本方向画像を用いて、ワークを把持可能な把持解の有無を判定する。そして把持解が得られた場合は、そのワークに対して、エンドエフェクタでもって決定された把持位置にてピックするよう、ロボットコントローラ6を制御する。
In this way, the presence or absence of a gripping solution capable of gripping the work is determined using the integrated result and the unsearched basic direction image. Then, when a gripping solution is obtained, the
なお、本明細書において画像とは、厳密に連続したデータに限られず、例えば点群データの集合のような離散的なデータの集合も含む意味で使用する。
(実施形態9)
(評価指標の統合)
In the present specification, the image is not limited to strictly continuous data, but 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 the evaluation index that defines the priority with the integration result. Such an example is shown in FIG. 88 as a
評価指標演算部8qは、三次元ピック判定部8lで把持可能と判定された把持位置を把持位置候補として、各把持位置候補について、評価指標を演算するための部材である。
The evaluation
また把持優先順位決定部8rは、評価指標演算部8qで演算された評価指標に基づいて、ワークをエンドエフェクタで把持する優先順位を決定するための部材である。
Further, the gripping priority
この画像処理装置は、評価指標演算部8qでもって、サーチ結果に対してそれぞれ評価指標を演算する。評価指標としては、上述の通り、例えばサーチ結果に含まれる、一定の距離以下の誤差で対応した特徴点の点数割合等が利用できる。
In this image processing apparatus, the evaluation
ここで、サーチ結果統合部8pが、統合結果を構成する各サーチ結果に対して評価指標演算部8qで演算された評価指標の内、最も高い評価指標を統合結果に付与する。一般に三次元サーチの評価指標では、サーチの条件やワークの姿勢(例えばワークの傾斜角度が大きく、十分な反射光が得られない場合、逆に光沢のあるワークによって反射光が強すぎる場合)等に左右される。このため、サーチ結果の評価指数が低く演算されることがあり、低い優先順位となったり、あるいはそもそも反射光が得られない等の理由で三次元サーチの対象から除外されることがある。これらは、把持位置の候補として下位になったり、候補に挙がらないことになるが、このようなワークの中には、単に三次元サーチに適切な姿勢で配置されていないというだけで、把持には適した姿勢で配置されていることも考えられる。このような場合であっても、従来であれば三次元サーチの段階で除外されたり低い優先順位となっていたため、把持解として選択される可能性が低く、十分に活用することができなかった。これに対して本実施形態によれば、たとえ三次元サーチの結果としては、評価指数が低いサーチ結果であっても、隣接する他のサーチ結果で高い評価値が得られている場合は、これを利用することで、高い優先順位でもって把持位置の候補として利用することが可能となる。これにより、従来であれば活用されなかった把持位置の候補であっても、利用できるようになり、把持解を得られる可能性を高めることができるようになる。いいかえると、三次元サーチの精度によらず、適切なワークを把持することが可能となる。
Here, the search
以上の方法では、統合結果を構成する各サーチ結果の内で、最も高い評価指標でもって、統合結果全体を評価したり、あるいは各サーチ結果の評価指数を本来の評価値からより高い評価値に書き換える態様について説明した。これは、高い評価指数を得たサーチ結果については、三次元サーチ結果の信頼性が高いとの信頼性に基づくものである。ただ、本発明はこの態様に限らず、他の態様、例えば、統合結果を構成する各サーチ結果の評価指数を平均して、この統合結果の評価指数として扱うようにしてもい。いずれの場合も、元々低い評価指標だったサーチ結果を、他の評価指数の高いサーチ結果を利用して、把持位置等の候補となり得るように元の評価指数よりも高い評価指数でもって評価されるようにすることが、本実施形態の趣旨である。
(画像処理プログラムのGUI)
In the above method, the entire integrated result is evaluated with the highest evaluation index among the search results constituting the integrated result, or the evaluation index of each search result is changed 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 three-dimensional search result is highly reliable for the search result obtained with a high evaluation index. However, the present invention is not limited to this aspect, and other aspects, for example, the evaluation indexes of each search result constituting the integrated result may be averaged and treated as the evaluation index of the integrated result. In either case, the search result, which was originally a low evaluation index, is evaluated with a higher evaluation index than the original evaluation index so that it can be a candidate for the gripping position, etc., using the search results of other high evaluation indexes. It is the purpose of this embodiment.
(GUI of image processing program)
ここで、画像処理プログラムのGUIの一例を図89〜図149に基づいて説明する。図89は各種機能を選択するための機能選択画面340を示しており、利用可能な機能が機能一覧表示欄341にボタン状に一覧表示されている。この状態から「3Dサーチ」ボタン342を押下すると、三次元サーチ機能が実行される。
(三次元サーチ画面)
Here, an example of the GUI of the image processing program will be described with reference to FIGS. 89 to 149. FIG. 89 shows a
(3D search screen)
三次元サーチ機能の実行にあたり、必要な設定を行う必要がある。具体的には、サーチモデルの登録、ワークを載置する床面や収納容器の登録、三次元サーチの条件設定などが挙げられる。これらの設定は、すべての項目をユーザが任意に設定可能とする他、必要な手順をユーザに順次示しながら、項目毎に設定させることもできる。このような設定のガイダンス機能について、図90〜図101の三次元サーチ画面に基づいて説明する。 It is necessary to make necessary settings when executing the 3D search function. Specific examples include registration of a search model, registration of a floor surface on which a work is placed and a storage container, and setting of conditions for a three-dimensional search. In addition to allowing the user to arbitrarily set all the items, these settings can also be set for each item while sequentially indicating the necessary procedures to the user. The guidance function of such a setting will be described based on the three-dimensional search screens of FIGS. 90 to 101.
これらの三次元サーチ画面では、画面左下の画像表示欄141の上段に、設定すべき手順のフローを表示させるフロー表示部351を設けている。フロー表示部351では、各手順の概要をテキストや図柄等で示すと共に、現在設定中の手順がハイライト表示される。図90の例では、「モデル登録」アイコン352が明るい色に表示され、他の「床・箱設定」アイコン353や「サーチ設定」アイコン354は暗い色で表示されており、ユーザに対し現在設定を行っている対象を告知することができる。さらに三次元サーチ画面の右側に設けられた操作欄142には、現在設定中の項目の説明がテキスト等で表示され、ユーザに対して行うべき設定を文字で説明することができる。説明はテキスト情報のみならず、必要に応じて、図柄や動画を適宜組み合わせてもよい。また、設定すべきパラメータの設定欄等も設けられている。
(実測データに基づくサーチモデルの登録)
In these three-dimensional search screens, a
(Registration of search model based on actual measurement data)
図90〜図101の三次元サーチ画面では、センサ部でワークの現物を撮像した実測データをサーチモデルとして登録する例を示している。この登録手順は、図27のフローチャートで説明した手順にて行うことができる。これら図90〜図101の三次元サーチ画面では、上述の通りフロー表示部351に、1番目の手順として「モデル登録」アイコン352がハイライト表示されている。
The three-dimensional search screens of FIGS. 90 to 101 show an example in which the actual measurement data obtained by imaging the actual work piece by the sensor unit is registered as a search model. This registration procedure can be performed by the procedure described in the flowchart of FIG. 27. 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 the actual work is as shown in FIGS. 91 to 93. In this example, the model registration work is divided into three screens and explained to the user in sequence. First, on the actual measurement
(Background removal setting section)
図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 unit)
さらに高さ方向のみならず、平面方向においてサーチモデルの登録対象から除外したい範囲を、マスク領域として指定することもできる。図92のサーチモデル除外領域設定画面370の背景除去設定欄372の下には、「2.登録したいワーク表面以外のものが残ってしまう場合はマスク領域を配置してください。」と説明される。同様に「?」ボタン373を押下して、マスク領域の設定方法の詳細説明を別画面で表示させることもできる。「マスク領域」ボタン374を押下すると、モデル領域362として指定された範囲内に、サーチモデルの登録対象から除外する領域としてマスク領域を設定することが可能となる。マスク領域は、矩形状や円形などの規定の図形の他、自由曲線や境界部分の自動検出などによって設定できる。また、マスク領域の設定に応じて、画像表示欄141で表示されるモデル領域362が更新されることも上述の通りである。
Further, it is possible to specify as a mask area a range to be excluded from the registration target of the search model not only in the height direction but also in the plane direction. Under the background
なお、図92の例では、背景除去設定の後、マスク領域設定を行わせているが、これらの順序を入れ替えてもよい。このようにして、サーチモデルの登録から除外したい領域の設定を終えると、「次へ」ボタン375を押下する。これによって、図93に示す回転対称性設定画面380に切り替わる。
(回転対称性設定部)
In the example of FIG. 92, the mask area is set after the background removal setting, but the order may be changed. In this way, when the setting of the area to be excluded from the registration of the search model is completed, the "Next"
(Rotational symmetry setting unit)
図93の回転対称性設定画面380においては、モデル登録の3番目の作業として、回転対称性を設定する。この例では、操作欄142に、「1.登録するワーク表面が回転対称性を持つ場合は、該当するものを指定して下さい。」と説明される。同様に「?」ボタン381を押下して、回転対称の設定方法の詳細説明を別画面で表示させることもできる。操作欄142の中段には、回転対称設定欄382が設けられ、回転対称性の候補として、円対称、N回対称、なし等の選択肢から選択することができる。さらに、N回対称を選択した場合は、対称数の数値入力ボックスが表示され、ワーク表面の形状に応じた回転対称数を設定する。例えば、ワーク表面が長方形状であり、ワーク表面を真上か見た軸に対し180度回転した見え方が同一になる場合、回転対称数は2が適切値となる。あるいは、ワーク表面が正方形上で、ワーク表面を真上か見た軸に対し90度毎に回転した見え方が全て同一になる場合、回転対称数は4が適切値となる。あるいはまた、ワーク表面が6角形状で、ワーク表面を真上か見た軸に対し30度毎に回転した見え方が同一になる場合、回転対称数は6が適切値となる。一方、円対称については、球体や円柱状のワークを真上から見た時に、ワーク表面が円形に見える場合など、任意の回転角度の対し、回転した見え方が全て同一になる場合に設定するのが推奨される。回転対称性が設定されると、サーチモデルの登録時に、回転対称性として指定された姿勢にワークがある場合も、同じワークとして認識されるようになる。例えば、回転対称数が2と設定された2回対称のワークの場合、180度回転した姿勢も、回転前の姿勢も、同じワークとして認識されるようになる。
On the rotational
このようにして、回転対称性の設定を終えると、「登録」ボタン383を押下する。これによって、設定された条件に従ってサーチモデルが登録される。なお、モデル登録に必要な3つの作業の内、2番目と3番目は入れ替えてもよい。
(サーチモデルの複数登録)
When the setting of the rotational symmetry is completed in this way, the "register"
(Multiple registration of search models)
サーチモデルが登録されると、図94に示すサーチモデル登録画面390が表示される。サーチモデル登録画面390の操作欄142には、登録済みのサーチモデルの一覧を表示させるモデル一覧表示欄391が設けられている。ここでは、登録済みのサーチモデルとしてモデル番号0のサーチモデルが、縮小画像と共に表示される。また当該サーチモデルについて、回転対称性の設定が「なし」であることも表示される。
When the search model is registered, the 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 3D search results)
さらに、図94、図95のサーチモデル登録画面では、登録済みのサーチモデルを用いて簡易的に三次元サーチを行った結果を表示させることもできる。例えば図94の例では、モデル番号0のサーチモデルを用いて、画像表示欄141で表示される6つのワークに対して三次元サーチを行った結果、登録に用いた左上のワークがサーチされている。サーチされたワーク上には、サーチモデルに合致した点群が表示されている。この例では、サーチモデルの表面形状の内、面状の点群を白色で、輪郭を示す点群を紫色で、それぞれ表示させている。さらに簡易三次元サーチ結果の評価指標として演算されたスコアを、数値で表示させることもできる。図94の例ではスコア値として96.4が表示されている。なお、サーチモデルとして登録した元のワークに対して、スコアが最高値(この例では99.9)とならないのは、モデル登録時の撮像状態と、三次元サーチ実行時の入力画像とに変動があり、若干スコアが下がった結果となっているためである。スコア値の結果から、おおよそ96%以上、モデル登録時の状態と一致している状態であると捉えることができる。
(サーチ領域設定部)
Further, on the search model registration screens of FIGS. 94 and 95, the result of a simple three-dimensional search using the registered search model can be displayed. 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に移り、モデル登録が終了して現在はワークを載置する床面や収納容器の登録を行う段階であることがユーザに示される。
When the search model is registered in this way, the search area is then set as the setting of the three-dimensional search function. Specifically, when the "Done"
サーチ領域設定画面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 with the search model, or can be set individually for each search model. In the example of FIG. 100, a search model
一方、図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 completed in order in this way, the "OK"
(Registration of search model based on 3D CAD data)
以上の例では、サーチモデルとして実際のワークを撮像して登録する手順を説明した(図62等に対応)。ただ本発明は上述した図28等で説明した通り、予め作成されたワークの形状を示す三次元CADデータをサーチモデルとして登録することもできる。以下、このような三次元CADデータをワークモデルとして登録する手順を図102〜図106に基づいて説明する。 In the above example, the procedure of imaging and registering an actual work as a search model has been described (corresponding to FIG. 62 and the like). However, as described with reference to FIG. 28 and the like described above, the present invention can also register three-dimensional CAD data indicating the shape of the work created in advance as a search model. Hereinafter, the procedure for registering such three-dimensional CAD data as a work model will be described with reference to FIGS. 102 to 106.
まず図102のサーチモデル登録方法選択画面480において、モデル登録方法選択欄355から、CADデータ(STL形式)から登録するをラジオボタンで選択する。これに応じて操作欄142には、三次元CADデータをサーチモデルとして登録する手順の説明が文字と図柄で表示されている。この例では、「三次元CADデータ中のXYZ軸の各正負方向(計6方向)から見えるワーク表面の三次元情報をモデル化します。生成されたモデルの中からサーチさせたい面のみ選択します。本ツールでは、さまざまな姿勢を取るワークに対して、登録した表面モデルをマッチングさせることで、そのワークの位置と姿勢を認識します。」とテキスト情報と図柄でもって、行うべき作業をユーザに示している。このようにして102のサーチモデル登録方法選択画面480でCADデータからの登録を選択した上で「OK」ボタン481を押下すると、図103のCADデータの読み込み画面に移行する。具体的には、サーチモデル登録画面490に移行し、CADデータ読み込みダイヤログ491が表示される。
(CADデータ読み込み部)
First, on the search model registration
(CAD data reading unit)
図103に示すCADデータ読み込みダイヤログ491では、読み込むCADデータの格納先を指定し、さらにCADデータを選択する。読み込み先は、記憶部9の他、半導体メモリ等の読み取り媒体を選択することもできる。ファイル一覧表示欄492からファイルを選択して「実行」ボタン493を押下すると、三次元CADデータの読み込みが実行される。
(登録モデル選択部)
In the CAD
(Registered model selection section)
三次元CADデータが読み込まれると、サーチモデルとして登録する面を選択する。ここでは図104に示すサーチモデル登録画面510が表示されて、ワークモデルの基本方向画像に対応する六面図が登録モデル選択画面511に自動的に表示される。この状態でユーザは、登録したい面を選択できる。ここでは、デフォルトでチェックボックスがONされており、サーチモデルとして登録が不要な面についてはチェックボックスをOFFにすることで、サーチモデルから排除することができる。このようにして登録対象を選択すると、「次へ」ボタン512を押下して図105のサーチモデル登録画面520に進む。
(回転対称指定部)
When the 3D CAD data is read, the surface to be registered as a search model is selected. Here, the search
(Rotational symmetry designation part)
図105のサーチモデル登録画面520では、回転対称指定ダイヤログ521が表示されており、ユーザは登録対象として選択した基本方向画像の内、回転対称性を有するものについて、上下や前後、左右など、回転させても対称な形状を有する面を設定できる。このようにして回転対称性の設定を終えると、「登録」ボタンを押下して、サーチモデルの登録を実行する。
On 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, the search models registered in the model
(Search model editorial department)
さらに、登録済みのサーチモデルを編集することもできる。図106の例では、操作欄142の「編集」ボタン531を押下すると、図114に示すモデル編集画面620が表示される。このモデル編集画面620では、画像表示欄141に登録済みのサーチモデルが表示されると共に、操作欄142には、設定済みの項目が表示される。ここでは、モデル領域設定欄621、特徴設定欄622として背景除去設定欄327、回転対称設定欄382、モデル登録欄623としてモデル番号表示欄が設けられる。ユーザは変更したい項目を選択して適宜変更することができる。
(モデル領域詳細設定部)
Furthermore, the registered search model can be edited. In the example of FIG. 106, when the “edit”
(Model area detailed setting section)
モデル領域設定欄621に設けられた詳細設定ボタン624を押下すると、図115に示すモデル領域詳細設定画面630が表示される。モデル領域詳細設定画面630は、画像表示欄141に表示されたモデル領域362の範囲内に、サーチモデルの登録対象から除外したい領域としてマスク領域を設定することが可能となる。操作欄142には、モデル領域指定欄621、マスク領域指定欄631、重み付け領域指定欄632が設けられている。マスク領域指定欄631では、複数のマスク領域を設定できる。各マスク領域は、矩形状や円形などの規定の図形の他、自由曲線や境界部分の自動検出などによって設定できる。また各マスク領域とは別に、重み付け領域指定欄632でもって重み付けを設定することができる。
When the
サーチ結果に対するスコア付けを行う際に、サーチモデルに含まれる他の特徴点よりも重視したい特徴点の箇所があれば、重み付け領域で囲むことでスコア結果を調整することができる。例えば、全体の形状の中で一部の特徴の有無によってサーチモデルの特定に繋がったり、回転方向の姿勢が定まるような形状があった場合に、その重要な特徴に対して重み付け領域を設定することで、サーチの検出能力を向上させることができる。また、他の特徴点に対する重み付け度合を、比率によって指定することもできる。例えば、重み付け度合を「3」と設定した場合には、他の特徴点よりも3倍の影響度でスコア値を算出するように調整できる。
(特徴詳細設定部)
When scoring the search result, if there is a feature point that is more important than other feature points included in the search model, the score result can be adjusted by enclosing it in a weighted area. For example, if there is a shape in the overall shape that leads to the identification of the search model depending on the presence or absence of some features, or the posture in the rotation direction is determined, a weighting area is set for the important features. Therefore, the detection ability of the search can be improved. In addition, the degree of weighting for other feature points can be specified by a ratio. For example, when the weighting degree is set to "3", the score value can be adjusted so as to calculate the score value with the influence degree three times as much as the other feature points.
(Detailed feature setting section)
さらに、特徴設定欄622に設けられた詳細設定ボタン625を押下すると、図116に示す特徴詳細設定画面640が表示される。特徴詳細設定画面640では、画像表示欄141に表示されたモデル領域362に対して、特徴設定や回転対称の有無を設定する。操作欄142には、特徴詳細設定欄641と回転対象設定欄382が設けられる。特徴詳細設定欄641には、特徴の抽出間隔を指定する特徴抽出間隔指定欄642、背景除去設定欄327、エッジ抽出閾値設定欄643が設けられる。特徴の抽出間隔は、サーチモデル生成時の特徴点の抽出間隔に影響するパラメータであり、「精度優先」と「標準」と「速度優先」が選択できるようになっている。「精度優先」を選択した場合、サーチモデルにおける特徴点の抽出間隔が狭くなり、より細かい特徴まで捉えられて検出精度が上がる反面、データ量が増えて処理時間は遅くなる。一方、「速度優先」を選択した場合、サーチモデルにおける特徴点の抽出間隔が広くなり、細かい特徴が抜けて検出精度が下がる反面、データ量が少なくなり処理時間は速くなる。用いるワークの形状や大きさや、許容される処理時間・検出精度によって、調整することができる。
Further, when the
このようにしてユーザは、簡易三次元サーチの結果や得られたスコアなどを参照しながら、より適切なサーチ結果が得られるように、必要な項目を調整できる。このようにしてサーチモデルの登録を終えると、これに続く以降の手順(サーチ領域設定、サーチパラメータ設定)は、上述した図96〜図101で説明した、実ワークを撮像してサーチモデルを登録する手順と同様であり、説明を省略する。 In this way, the user can adjust necessary items so that more appropriate search results can be obtained while referring to the results of the simple three-dimensional search and the obtained scores. 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 work and registering the search model as described in FIGS. 96 to 101 described above. The procedure is the same as the procedure for the above, and the description thereof will be 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 the sensor unit captures a group of workpieces stacked in bulk and performs bulk picking to specify the gripping position of the workpieces that can be gripped, and also simulates a 3D pick in advance. It is also used when performing. In the 3D pick simulation, is it possible for the end effector to grip each search result searched by the
(Search result display section)
次に、バラ積みされたワークに対して三次元サーチを行う例を、図107〜図113に基づいて説明する。図107は、バラ積みされたワーク群に対して三次元サーチを実行した結果を示すサーチ結果表示画面540の例を示している。サーチ結果表示画面540には画像表示欄141と操作欄142が設けられ、操作欄142には三次元サーチに用いたサーチモデルの一覧がモデル一覧表示欄391に縦方向に表示される。一方画像表示欄141には、入力画像として得られたバラ積み状態のワークに対して、サーチ結果として得られたワークに重ねて、サーチ結果である点群と、その評価指標であるスコアを表示させている。
(サーチ結果一覧部)
Next, an example of performing a three-dimensional search on the workpieces stacked separately will be described with reference to FIGS. 107 to 113. FIG. 107 shows an example of a search
(Search result list)
また画像表示欄141の上段には、サーチ結果一覧表示欄541が設けられ、サーチされたサーチ結果に対して、用いたサーチモデルとスコアの一覧が表示される。ここでは、サーチされた個数、ワークの有無、総体積/ワークの体積、特定のラベル番号のサーチ結果のモデル番号やスコア、位置(X,Y,Z)などが表示される。総体積/ワークの体積は、床面や通い箱の底面よりも高い位置にある点群の総体積を、登録されているサーチモデルから想定される平均体積で割った値を示しており、入力画像中に、ワークが何個相当分存在するかを示したデータとなる。この数値が一定以上大きい場合、ワークの有無の結果が有り(1)と判定される。サーチされた個数が0個で把持解が得られなかった場合などに、このワーク有無の結果が有りか無しかを確認することで、ワークが実際になくなった状態でピッキングが終了したのか、ワークが残存した状態で終了したのかを確認することができる。
Further, 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
(3D pick)
次に、三次元サーチされた各サーチ結果に対して、エンドエフェクタで把持可能か否かを判定する三次元ピックのシミュレーションを行う手順について、図117〜図149に基づいて説明する。図89の機能選択画面340において、「3Dピック」ボタン343を押下すると、図117の三次元ピック初期設定画面650が表示され、ユーザに対して三次元ピックを行うために必要な設定を順次行うよう、ガイダンス機能が実行される。ここでは、操作欄142の上段に、3Dピックガイダンス欄655が表示され、順次行われる作業がアイコンで表示される。この例では、「初期設定」、「把持登録」、「条件・懸賞」、「プレース設定」の4つの工程が表示されている。
(三次元ピック初期設定画面)
Next, a procedure for simulating a three-dimensional pick for determining whether or not the end effector can grip each of the three-dimensionally searched search results will be described with reference to FIGS. 117 to 149. When the "3D pick"
(3D pick initial setting screen)
図117の三次元ピック初期設定画面650では、まず三次元ピックを行うための初期設定を行う。操作欄142上段の3Dピックガイダンス欄655では、「初期設定」アイコンがハイライト表示され、ユーザに対してこの段階で行うべき作業が示される。操作欄142には、キャリブレーションデータ選択欄651と、検出ツール設定欄652と、ハンド登録欄653が設けられる。キャリブレーションデータ選択欄651では、予め画像処理装置で表示される座標系を、ロボットコントローラがエンドエフェクタを動作させる座標系に座標変換するために演算されたキャリブレーションデータを呼び出して登録する。検出ツール設定欄652では、ワークを検出するための手段を指定する。この例では、ツール番号100番に設定されたワーク検出用三次元サーチが選択されている。上述した三次元サーチの設定を経て登録されたサーチモデルの設定が読み込まれる。別のツール番号に異なるワークのサーチモデルが予め設定されていた場合、この検出ツールの選択を切り替えることで、三次元ピックの設定対象を切り替えることができる。
(エンドエフェクタモデル設定部)
On the three-dimensional pick initial setting screen 650 of FIG. 117, first, initial settings for performing a three-dimensional pick are performed. In the 3D
(End effector model setting section)
ハンド登録欄653では、エンドエフェクタモデルを登録する。ここで「ハンドモデルの作成」ボタン654を押下すると、図118に示すエンドエフェクタモデル設定画面660が表示される。エンドエフェクタモデル設定画面660では、登録済みのエンドエフェクタモデルの一覧が、ハンドモデル一覧表示欄661に表示される。図118の例は未登録のため、画像表示欄141にも、操作欄142のエンドエフェクタモデル一覧表示欄661にも、エンドエフェクタモデルは表示されていない。そこで、「追加」ボタン662を押下して、エンドエフェクタモデルを追加する。なおエンドエフェクタモデル設定画面660の画像表示欄141には、エンドエフェクタモデルを配置するロボットのアーム部先端の基準面としてフランジ面FLSが表示される。さらに、エンドエフェクタモデルEEM側の座標軸を示すツール座標軸TAXも表示される(詳細は後述)。
(エンドエフェクタモデル編集部)
In the hand registration field 653, the end effector model is registered. When the "Create hand model" button 654 is pressed here, the end effector
(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に円柱が追加されて表示される。
(ツール座標指定部)
You can add multiple parts. For example, when the "Add" button 682 is pressed from the end effector model edit screen of FIG. 124, the cylindrical 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 posture of the registered parts. For example, when the selected part is changed from the additional area ADA to the CAD model CDM from the end effector model edit screen of FIG. 126 and from the
このようにして複数のパーツを登録していき、これらを組み合わせてエンドエフェクタモデルEEMを構築していく。各パーツの設定が終わると、図128等のエンドエフェクタモデル編集画面で「OK」ボタン674を押下すると、複数のパーツが合成されてエンドエフェクタモデルEEMとして登録され、図130のエンドエフェクタモデル設定画面660に示すように、ハンドモデル一覧表示欄661に「ハンド0」として表示される。また、画像表示欄141には、ばらばらに表示されていたパーツが一体のエンドエフェクタモデルEEMとして表示される。
In this way, a plurality of parts are registered, and these are combined to build an end effector model EEM. When the setting of each part is completed, when the "OK"
なお、この例ではパーツを組み合わせてエンドエフェクタモデルを構成する例を説明したが、パーツは必ずしもエンドエフェクタモデルやその一部に限定されず、例えばケーブル類などをパーツで表現することもできる。このようにパーツは、エンドエフェクタモデルの一部やその表面に追加した物体、あるいは周辺部材などを表現する追加モデルの一形態をなす。
(把持基準点HBP)
In this example, an example in which parts are combined to form an end effector model has been described, but the parts are not necessarily limited to the end effector model or a part thereof, and for example, cables and the like can be represented by parts. In this way, the parts form a form of an additional model that expresses a part of the end effector model, an object added to the surface of the end effector model, a peripheral member, or the like.
(Gripping reference point HBP)
さらに、エンドエフェクタモデルEEMの把持基準点HBPが、画像表示欄141に重ねて表示される。把持基準点HBPは、エンドエフェクタモデルEEMでワークを把持する位置を示している。例えば、エンドエフェクタモデルEEMの内、ワークを把持する爪部同士の間の中間を把持基準点HBPとする。なお、把持基準点HBPは、所定の規則に従って決定されるように画像処理装置側で演算する他、ユーザが任意の位置を指定できるように構成してもよい。
Further, the gripping reference point HBP of the end effector model EEM is displayed superimposed on the
さらに、エンドエフェクタモデルEEMの位置及び姿勢を規定するツール座標軸も、画像表示欄141に重ねて表示させることが好ましい。このツール座標軸は、エンドエフェクタモデルEEMの回転に応じて変化させた回転済み座標軸RAXとすることが好ましい。さらに、回転済み座標軸RAXの原点を、把持基準点HBPと一致させることがより好ましい。これによって、把持位置を設定する際のエンドエフェクタモデルEEMの状態をユーザが視覚的に把握し易くできる。
(把持登録部)
Further, it is preferable that the tool coordinate axes that define the position and orientation of the end effector model EEM are also displayed 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が表示される。
(把持設定部)
When the end effector model EEM is registered as the initial setting in this way, the gripping position is next registered. On the
(Grip setting unit)
把持設定ダイヤログ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移動させる例を示している。
(把持位置設定ガイダンス機能)
Further, 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 three-dimensional viewer, the gripping position is registered through four steps. Here, the user is asked to specify the gripping position via the three-dimensional viewer registration screen shown in FIGS. 134 to 141. 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, the
(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をドラッグすることで、ユーザは三次元ビューアの視点を変更することができるため、把持の設定状態を詳細に確認することができる。
The Z-R Z designation screen 750 of FIG. 135 is a form of the Z-R Z designation unit, and is a screen for allowing the user to specify the Z coordinate and the posture R Z. In the
加えて三次元ビューワである画像表示欄141には、座標軸の内、現在設定中の位置パラメータに関する座標軸として、Z軸のみを表示させている。このZ軸は、上述したZ−Y−Xオイラー角で表示した補正後の補正回転Z軸AXZである。このように、現在調整可能な座標軸のみを表示させ、さらに他の位置パラメータの調整をこの画面上では不可能とすることで、ユーザに対して無用な混乱を生じさせず、所定の順序に従い適切な位置パラメータのみを順次設定させるように適切に案内することが実現される。
In addition, in the
また図135等の例では、把持基準点HBPを通って把持方向の軸(ここでは補正回転Z軸AXZ)が延びるように表示させることで、ユーザに対し、エンドエフェクタモデルEEMをワークモデルに近付けるための移動方向を判り易く示すことができる。また、エンドエフェクタモデルの移動方向を矢印で示すように構成してもよい。この際、エンドエフェクタモデルの移動方向は、把持方向の軸上に重ねて表示してもよいし、あるいは別の位置に表示させてもよい。 Further, in the example of FIG. 135 and the like, the end effector model EEM is brought closer to the work model by displaying the axis in the gripping direction (here, the correction rotation Z axis AXZ) extending through the gripping reference point HBP. It is possible to clearly indicate the moving direction for the vehicle. Further, the moving direction of the end effector model may be indicated by an arrow. At this time, the moving direction of the end effector model may be displayed overlapping on the axis of the gripping direction, or may be displayed at another position.
さらにZ−RZ指定画面750は、相対位置設定部の一形態として「フィット」ボタン154を設けている。上述の通り「フィット」ボタン154は、エンドエフェクタモデルをワークモデルの把持位置に自動的に移動させるフィット機能を実現する。「フィット」ボタン154を押下すると、図136に示すようにエンドエフェクタモデルEEMが移動され、サーチモデルSMAに接触された状態に変化する。すなわち、エンドエフェクタモデルEEMの把持基準点HBPが、サーチモデルSMAの把持指定位置P1に向かって移動される。この移動方向がZ軸と一致するように、図135の状態で、エンドエフェクタモデルEEMの表示させる際の初期位置を調整することが好ましい。これによって、エンドエフェクタモデルEEMをZ方向にのみ移動させることで、サーチモデルSMAに接触させることができ、感覚的に判り易く表示させることができる上、ユーザがエンドエフェクタモデルEEMを移動させる作業も簡便に行える。
Further, the Z-R 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に表示させている。
Further, the Z position of 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 specifies the posture R Z from the R Z designation field 753. In the posture of the end effector model EEM shown in FIG. 136, since the side surface of the search model SMA inclined in a V shape is gripped, the end effector model EEM is rotated in the Z-axis direction and parallel to each other. Adjust to grip the surface. At this time, in addition to the user directly inputting the rotation angle in the R Z
(Third process: RY 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指定)
When the Z-R Z designation of the second step is completed in this way, the "Next"
(Fourth process: RY 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において変化する。
Figure 140 shows the R X designation screen 770 of the fourth step. R X specifying screen 770 is a form of R X designating unit, is provided with the R X designation field 771 for designating a posture R X. Also in the
このようにして姿勢RXの指定を終えると、「完了」ボタン772を押下して、把持位置を登録を終了する。把持位置が登録されると、図142に示すように、把持登録一覧表示欄712に、把持登録A−000が追加される。また把持登録A−000と対応するサーチモデルAが、サーチモデル切替欄711においてハイライト表示される。さらに画像表示欄141には、この把持登録されたエンドエフェクタモデルEEMの位置及び姿勢でサーチモデルSMAを把持する様子が三次元状に表示される。さらに座標軸として、サーチモデルSMA側の基準座標軸BAXが重ねて表示されている。
In this manner, when the finish the designation of attitude R X and, by pressing the "Finish"
以下同様にして、サーチモデルAに別の把持位置を登録したり、あるいは他のサーチモデルB〜Fに、把持位置を追加していく。把持位置の追加は、上述の通り把持登録一覧表示欄712に設けられた「追加」ボタン713を押下することで行える。図143の例では、サーチモデルBに対する把持登録B−000を登録した例を示している。
(コピー機能)
Hereinafter, in the same manner, another gripping position is registered in the search model A, or a gripping position is added to the other search models B to F. The gripping position can be added by pressing the "addition"
(Copy function)
また、把持位置を追加登録する際に、既に登録した把持位置をコピーするコピー機能を利用できる。図142等の画面で把持登録一覧表示欄712に設けられた「コピー」ボタン714を押下すると、登録済みの把持位置を複製できる。さらにコピーした把持位置をベースにして修正することで、効率的に把持位置の登録作業を行うこともできる。図142等の状態から、「編集」ボタン715を押下すると、把持設定ダイヤログが表示されて、上述の通り把持位置の設定を行うことができる。ここで、上述の通り「簡単設定ナビ」ボタン726を押下して把持位置設定ガイダンス機能を実行し、必要な箇所を修正することもできる。
(条件検証画面780)
Further, when additionally registering the gripping position, a copy function for copying the already registered gripping position can be used. By pressing the "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 “done”
一方、検証欄785には、三次元サーチのシミュレーションの結果、実際に検出されたサーチ結果の個数を示す検出個数表示欄786と、検出されたサーチ結果の内で検証したいサーチモデルのラベル番号を指定する表示ラベル指定欄787と、ワーク毎に検証を実行するための「ワーク毎の検証」ボタン788を設けている。表示ラベル指定欄787で指定されたラベル番号のサーチ結果が、画像表示欄141に表示される。
(ワーク毎の検証)
On the other hand, in the
(Verification for each work)
また「ワーク毎の検証」ボタン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には、把持不能となった原因として、点群干渉エラーと表示される。これにより、ユーザは必要な対策、例えば把持位置の修正や追加等を行う際の指針が与えられる。
When the "verification for each work" button 788 is pressed, the
また、図147の検出結果表示ダイヤログで、判定OKである把持ラベルA−000を選択すると、これに応じて画像表示欄141には、対応する把持位置で把持するエンドエフェクタモデルEEMが、白色にて表示される。このようにして、把持の可否を判定すると共に、必要に応じて適切な対策を講じることが可能となる。
Further, when the gripping label A-000, which is a determination OK, is selected in the detection result display dialog of FIG. 147, the end effector model EEM gripped at the corresponding gripping position is displayed in white in the
さらに、図144の条件検証画面780において、検出条件設定欄781に設けられた検出条件詳細設定ボタン789を押下すると、図148の検出条件詳細設定画面820に切り替わる。検出条件詳細設定画面820には、把持位置の検出条件設定欄821と、エンドエフェクタと箱、床との干渉判定設定欄822と、エンドエフェクタと三次元点群との干渉判定設定欄823が設けられている。
Further, on the
このようにして、条件検証工程を終えると、最後にワークの載置位置を規定するプレース設定工程に移行する。プレース設定画面830の一例を図149に示す。プレース設定画面830の3Dピックガイダンス欄655では、ハイライト表示が「条件・検証」アイコンから「プレース設定」アイコンに移る。操作欄142には、ツール座標設定欄831と、プレース位置登録欄832が設けられている。この画面からユーザは、ワークのプレースに関する設定を行う。
In this way, when the condition verification process is completed, the process finally shifts to the place setting process that defines the placement position of the work. An example of the
本発明の画像処理装置、画像処理方法、画像処理プログラム及びコンピュータで読み取り可能な記録媒体は、ロボットのバラ積みピッキングの動作を検証する用途に好適に利用できる。
The image processing apparatus of the present invention, an image processing method, image processing program, and readable recording medium body in a computer can be suitably used for applications to verify the operation of the bulk picking robot.
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 (12)
エンドエフェクタの三次元形状を仮想的に表現する、三次元CADデータであるエンドエフェクタモデルを登録するためのエンドエフェクタモデル登録部と、
前記エンドエフェクタモデルを、仮想的な三次元空間上で三次元状に表示させるための表示部と、
前記表示部上で表示される仮想的な三次元空間であり、センサ部でエンドエフェクタを撮像したビジョン空間の座標系で算出されたエンドエフェクタの位置及び姿勢と、ロボットコントローラがエンドエフェクタを動作させるロボット空間の座標系の位置及び姿勢とを座標変換するためのキャリブレーション情報を取得するキャリブレーション部と、
前記キャリブレーション部で得られたキャリブレーション情報に基づいて、ビジョン空間の座標系とロボット空間の座標系との間で座標を変換する変換部と、
センサ部で測定されたエンドエフェクタを含む画像から三次元形状を有する入力画像を取得する入力画像取得部と、
前記入力画像取得部で取得された入力画像中から、前記エンドエフェクタモデルをサーチモデルとして、エンドエフェクタの位置及び姿勢に対応する画像領域を特定する三次元サーチを行うための三次元サーチ部と、
ロボット空間の座標系でエンドエフェクタが取り付けられるフランジ部の位置及び姿勢と、エンドエフェクタの位置及び姿勢との差分を、前記エンドエフェクタモデル登録部により登録された前記エンドエフェクタモデルの位置及び姿勢に反映させることで、前記エンドエフェクタモデルの位置及び姿勢を較正するためのエンドエフェクタ取付位置較正部と
を備え、
前記変換部は、ロボット空間の座標系におけるフランジ部の位置及び姿勢を取得してビジョン空間の座標系に変換し、
前記エンドエフェクタ取付位置較正部は、
前記変換部により変換されたビジョン空間の座標系におけるフランジ部の位置及び姿勢と、
前記三次元サーチ部でサーチすることにより検出されたビジョン空間の座標系におけるエンドエフェクタの位置及び姿勢と
の差分を算出し、該算出された差分を前記エンドエフェクタモデルの位置及び姿勢に反映させることで、前記エンドエフェクタモデル登録部により登録された前記エンドエフェクタモデルをフランジ部から該差分ずれた位置及び姿勢で取り付けられている状態に較正してなる画像処理装置。 The three-dimensional shape of a plurality of workpieces stacked in the work space is measured by a sensor unit arranged at a fixed position capable of imaging the work space, and an end effector provided at the tip of the arm portion of the robot by a robot controller. It is an image processing device for controlling a robot that performs a picking operation.
An end effector model registration unit for registering an end effector model, which is three-dimensional CAD data that virtually represents the three-dimensional shape of the end effector,
A display unit for displaying the end effector model in a three-dimensional manner in a virtual three-dimensional space,
Ri virtual three-dimensional space der displayed on the display unit, operating the position and orientation of the calculated end-effector, the robot controller an end effector coordinate system of vision space of the captured end effector sensor unit a calibration unit get the calibration information for the position and the coordinate transformation the orientation of the coordinate system of the robot space to be,
A conversion unit that converts coordinates between the coordinate system in the vision space and the coordinate system in the robot space based on the calibration information obtained by the calibration unit.
An input image acquisition unit that acquires an input image having a three-dimensional shape from an image including an end effector measured by the sensor unit, and an input image acquisition unit.
A three-dimensional search unit for performing a three-dimensional search for specifying an image area corresponding to the position and orientation of the end effector using the end effector model as a search model from the input images acquired by the input image acquisition unit.
The difference between the position and orientation of the flange where the end effector is attached in the coordinate system of the robot space and the position and orientation of the end effector is reflected in the position and orientation of the end effector model registered by the end effector model registration unit. It is provided with an end effector mounting position calibration unit for calibrating the position and orientation of the end effector model.
The conversion unit acquires the position and orientation of the flange portion in the coordinate system of the robot space and converts it into the coordinate system of the vision space.
The end effector mounting position calibration unit
The position and orientation of the flange portion in the coordinate system of the vision space converted by the conversion unit, and
The position and orientation of the end effector in the coordinate system of the vision space detected by searching with the three-dimensional search unit.
By calculating the difference between the above and reflecting the calculated difference in the position and orientation of the end effector model, the end effector model registered by the end effector model registration unit is displaced from the flange portion by the difference. Ru image processing apparatus name calibrated state mounted in position.
エンドエフェクタの三次元形状を仮想的に表現する、三次元CADデータであるエンドエフェクタモデルを登録するためのエンドエフェクタモデル登録部と、 An end effector model registration unit for registering an end effector model, which is three-dimensional CAD data that virtually represents the three-dimensional shape of the end effector,
前記エンドエフェクタモデルを、仮想的な三次元空間上で三次元状に表示させるための表示部と、 A display unit for displaying the end effector model in a three-dimensional manner in a virtual three-dimensional space,
前記表示部上で表示される仮想的な三次元空間であり、センサ部でエンドエフェクタを撮像したビジョン空間の座標系で算出されたエンドエフェクタの位置及び姿勢と、ロボットコントローラがエンドエフェクタを動作させるロボット空間の座標系の位置及び姿勢とを座標変換するためのキャリブレーション情報を取得するキャリブレーション部と、 It is a virtual three-dimensional space displayed on the display unit, and the position and orientation of the end effector calculated in the coordinate system of the vision space in which the end effector is imaged by the sensor unit and the robot controller operate the end effector. A calibration unit that acquires calibration information for coordinate conversion between the position and orientation of the coordinate system in robot space, and
前記キャリブレーション部で得られたキャリブレーション情報に基づいて、ビジョン空間の座標系とロボット空間の座標系との間で座標を変換する変換部と、 A conversion unit that converts coordinates between the coordinate system in the vision space and the coordinate system in the robot space based on the calibration information obtained by the calibration unit.
センサ部で測定されたエンドエフェクタを含む画像から三次元形状を有する入力画像を取得する入力画像取得部と、 An input image acquisition unit that acquires an input image having a three-dimensional shape from an image including an end effector measured by the sensor unit, and an input image acquisition unit.
前記入力画像取得部で取得された入力画像中から、前記エンドエフェクタモデルをサーチモデルとして、エンドエフェクタの位置及び姿勢に対応する画像領域を特定する三次元サーチを行うための三次元サーチ部と、 A three-dimensional search unit for performing a three-dimensional search for specifying an image area corresponding to the position and orientation of the end effector using the end effector model as a search model from the input images acquired by the input image acquisition unit.
ロボット空間の座標系でエンドエフェクタが取り付けられるフランジ部の位置及び姿勢と、エンドエフェクタの位置及び姿勢との差分を、前記エンドエフェクタモデル登録部により登録された前記エンドエフェクタモデルの位置及び姿勢に反映させることで、前記エンドエフェクタモデルの位置及び姿勢を較正するためのエンドエフェクタ取付位置較正部と The difference between the position and orientation of the flange where the end effector is attached in the coordinate system of the robot space and the position and orientation of the end effector is reflected in the position and orientation of the end effector model registered by the end effector model registration unit. By making it, the end effector mounting position calibrating unit for calibrating the position and orientation of the end effector model
を備え、With
前記変換部は、ビジョン空間の座標系におけるエンドエフェクタの位置及び姿勢を取得してロボット空間の座標系に変換し、 The conversion unit acquires the position and orientation of the end effector in the coordinate system of the vision space and converts it into the coordinate system of the robot space.
前記エンドエフェクタ取付位置較正部は、 The end effector mounting position calibration unit
前記変換部により変換されたロボット空間の座標系におけるエンドエフェクタの位置及び姿勢と、 The position and orientation of the end effector in the coordinate system of the robot space converted by the conversion unit, and
前記ロボット空間の座標系におけるフランジ部の位置及び姿勢と The position and orientation of the flange in the coordinate system of the robot space
の差分を算出し、該算出された差分を前記エンドエフェクタモデルの位置及び姿勢に反映させることで、前記エンドエフェクタモデル登録部により登録された前記エンドエフェクタモデルをフランジ部から該差分ずれた位置及び姿勢で取り付けられている状態に較正してなる画像処理装置。By calculating the difference between the above and reflecting the calculated difference in the position and orientation of the end effector model, the end effector model registered by the end effector model registration unit is displaced from the flange portion by the difference. An image processing device that is calibrated so that it is mounted in a posture.
前記入力画像取得部が、エンドエフェクタを、ロボットのアーム部の先端のフランジ部に取り付けた取付位置を含む入力画像を取得するよう構成してなる画像処理装置。 The image processing apparatus according to claim 1 or 2.
An image processing device configured such that the input image acquisition unit acquires an input image including an attachment position in which an end effector is attached to a flange portion at the tip of an arm portion of the robot.
前記キャリブレーション部によるキャリブレーション情報を保存する記憶部を備えており、
前記変換部が、前記記憶部に保存されたキャリブレーション情報を読み出して座標位置を変換するよう構成してなる画像処理装置。 The image processing apparatus according to any one of claims 1 to 3, further comprising:
It is provided with a storage unit for storing calibration information by the calibration unit.
An image processing device configured such that the conversion unit reads out the calibration information stored in the storage unit and converts the coordinate position.
前記キャリブレーション情報が、前記キャリブレーション部で算出された、ビジョン空間の座標系の位置及び姿勢をロボット空間の座標系の位置及び姿勢に座標変換する変換式を含む画像処理装置。 The image processing apparatus according to any one of claims 1 to 4, further comprising:
An image processing device including a conversion formula in which the calibration information is calculated by the calibration unit to convert the position and orientation of the coordinate system in the vision space into the position and orientation of the coordinate system in the robot space.
ワークの三次元形状を仮想的に表現するワークモデルを登録するためのワークモデル登録部と、
前記ワークモデル登録部で登録されたワークモデルに対して、該ワークモデルをエンドエフェクタモデルで把持する把持位置を一以上、特定するための把持位置特定部と、
前記入力画像取得部で取得された入力画像に含まれる複数のワーク群に対して、各ワークの姿勢と位置を特定する三次元サーチを行う際に用いる、ワークの三次元形状を仮想的に表現したサーチモデルを登録するためのサーチモデル登録部と、
を備えており、
前記三次元サーチ部が、前記入力画像取得部で取得された入力画像中から、前記サーチモデル登録部で登録されたサーチモデルを用いて三次元サーチを行い、各ワークの位置及び姿勢に対応する画像領域を特定するよう構成してなる画像処理装置。 The image processing apparatus according to any one of claims 1 to 5, further comprising:
A work model registration unit for registering a work model that virtually represents the three-dimensional shape of the work,
With respect to the work model registered in the work model registration unit, a gripping position specifying unit for specifying one or more gripping positions for gripping the work model with the end effector model,
A virtual representation of the three-dimensional shape of the work used when performing a three-dimensional search to specify the posture and position of each work for a plurality of work groups included in the input image acquired by the input image acquisition unit. The search model registration unit for registering the searched search model,
Is equipped with
The three-dimensional search unit performs a three-dimensional search from the input images acquired by the input image acquisition unit using the search model registered by the search model registration unit, and corresponds to the position and orientation of each work. An image processing device configured to specify an image area.
前記把持位置特定部で特定された前記把持位置において、前記エンドエフェクタ取付位置較正部により較正された前記エンドエフェクタモデルで前記ワークを把持可能か否か判定する三次元ピック判定部を備えてなる画像処理装置 An image including a three-dimensional pick determination unit that determines whether or not the work can be gripped by the end effector model calibrated by the end effector mounting position calibration unit at the grip position specified by the grip position specifying unit. Processing equipment
前記把持位置特定部により特定された前記把持位置で前記ワークモデルを把持する際に、前記エンドエフェクタ取付位置較正部により較正された前記エンドエフェクタモデルが、他のワークと干渉するか否かを判定する干渉判定部を備えてなる画像処理装置。 When gripping the work model at the gripping position specified by the gripping position specifying unit, it is determined whether or not the end effector model calibrated by the end effector mounting position calibration unit interferes with other work. An image processing device including an interference determination unit.
エンドエフェクタの基本軸を設定可能に構成され、 The basic axis of the end effector can be set,
前記干渉判定部は、前記エンドエフェクタ取付位置較正部により構成された前記エンドエフェクタモデルを、該エンドエフェクタの基本軸と交差する平面で切断することで複数の断面モデルを生成し、該複数の断面モデルのそれぞれを用いて干渉判定するよう構成してなる画像処理装置。 The interference determination unit generates a plurality of cross-section models by cutting the end effector model configured by the end effector mounting position calibration unit at a plane intersecting the basic axis of the end effector, and generates a plurality of cross-section models. An image processing device configured to determine interference using each of the models.
エンドエフェクタの三次元形状を仮想的に表現する、三次元CADデータであるエンドエフェクタモデルを登録する工程と、
前記エンドエフェクタモデルを、表示部上の仮想的な三次元空間であり、センサ部でエンドエフェクタを撮像したビジョン空間の座標系で三次元状に表示させる位置及び姿勢と、ロボットコントローラがエンドエフェクタを動作させるロボット空間の座標系の位置及び姿勢とを座標変換するためのキャリブレーション情報を取得する工程と、
センサ部で測定されたエンドエフェクタを含む画像から三次元形状を有する入力画像を取得する工程と、
前記取得された入力画像中から、前記エンドエフェクタモデルをサーチモデルとして、エンドエフェクタの位置及び姿勢に対応する画像領域を特定する三次元サーチを行う工程と、
前記三次元サーチにより、ビジョン空間の座標系でエンドエフェクタの位置及び姿勢を検出する工程と、
ロボット空間の座標系でエンドエフェクタが取り付けられるフランジ部の位置及び姿勢を取得する工程と、
前記取得されたロボット空間の座標系におけるフランジ部の位置及び姿勢を、ビジョン空間の座標系に変換する工程と、
前記変換されたビジョン空間の座標系におけるフランジ部の位置及び姿勢と、前記検出されたビジョン空間の座標系におけるエンドエフェクタの位置及び姿勢との差分を算出し、該算出された差分を前記エンドエフェクタモデルの位置及び姿勢に反映させることで、前記エンドエフェクタモデルをフランジ部から該差分ずれた位置及び姿勢で取り付けられている状態に較正する工程と、
を含む画像処理方法。 The three-dimensional shape of a plurality of workpieces stacked in the work space is measured by a sensor unit arranged at a fixed position capable of imaging the work space, and an end effector provided on the flange portion at the tip of the robot by a robot controller. It is an image processing method that controls a robot that performs a picking operation.
The process of registering the end effector model, which is 3D CAD data that virtually represents the 3D shape of the end effector,
Said end effector model, Ri virtual three-dimensional space der on the display unit, the position and orientation to be displayed on the three-dimensional shape in the coordinate system of the vision space of the captured end effector by the sensor unit, the robot controller end effectors The process of acquiring calibration information for coordinate conversion between the position and orientation of the coordinate system in the robot space that operates
The process of acquiring an input image having a three-dimensional shape from the image including the end effector measured by the sensor unit, and
A step of performing a three-dimensional search for specifying an image area corresponding to the position and orientation of the end effector using the end effector model as a search model from the acquired input images.
The process of detecting the position and orientation of the end effector in the coordinate system of the vision space by the three-dimensional search, and
The process of acquiring the position and orientation of the flange where the end effector is attached in the coordinate system of the robot space, and
The process of converting the position and orientation of the flange portion in the acquired coordinate system of the robot space into the coordinate system of the vision space, and
The difference between the position and orientation of the flange portion in the coordinate system of the converted vision space and the position and orientation of the end effector in the detected coordinate system of the vision space is calculated, and the calculated difference is used as the end effector. A step of calibrating the end effector model so that it is attached in a position and orientation slightly deviated from the flange portion by reflecting it in the position and orientation of the model.
Image processing method including.
エンドエフェクタの三次元形状を仮想的に表現する、三次元CADデータであるエンドエフェクタモデルを登録する機能と、
前記エンドエフェクタモデルを、表示部上の仮想的な三次元空間であり、センサ部でエンドエフェクタを撮像したビジョン空間の座標系で三次元状に表示させる位置及び姿勢を、ロボットコントローラがエンドエフェクタを動作させるロボット空間の座標系の位置及び姿勢とを座標変換するためのキャリブレーション情報を取得する機能と、
センサ部で測定されたエンドエフェクタを含む画像から三次元形状を有する入力画像を取得する機能と、
前記取得された入力画像中から、前記エンドエフェクタモデルをサーチモデルとして、エンドエフェクタの位置及び姿勢に対応する画像領域を特定する三次元サーチを行う機能と、
前記三次元サーチにより、ビジョン空間の座標系でエンドエフェクタの位置及び姿勢を検出する機能と、
ロボット空間の座標系でエンドエフェクタが取り付けられるフランジ部の位置及び姿勢を取得する機能と、
前記取得されたロボット空間の座標系におけるフランジ部の位置及び姿勢を、ビジョン空間の座標系に変換する機能と、
前記変換されたビジョン空間の座標系におけるフランジ部の位置及び姿勢と、前記検出されたビジョン空間の座標系におけるエンドエフェクタの位置及び姿勢との差分を算出し、該算出された差分を前記エンドエフェクタモデルの位置及び姿勢に反映させることで、前記エンドエフェクタモデルをフランジ部から該差分ずれた位置及び姿勢で取り付けられている状態に較正する機能と、
をコンピュータに実現させるための画像処理プログラム。 The three-dimensional shape of a plurality of workpieces stacked in the work space is measured by a sensor unit arranged at a fixed position capable of imaging the work space, and an end effector provided on the flange portion at the tip of the robot by a robot controller. It is an image processing program for controlling a robot that performs a picking operation.
A function to register an end effector model, which is 3D CAD data that virtually represents the 3D shape of the end effector,
Said end effector model, Ri virtual three-dimensional space der on the display unit, the position and orientation to be displayed on the three-dimensional shape in the coordinate system of the vision space of the captured end effector by the sensor unit, the robot controller end effectors A function to acquire calibration information for coordinate conversion between the position and orientation of the coordinate system in the robot space that operates
A function to acquire an input image having a three-dimensional shape from an image including an end effector measured by the sensor unit, and
A function of performing a three-dimensional search for specifying an image area corresponding to the position and orientation of the end effector using the end effector model as a search model from the acquired input images.
A function to detect the position and orientation of the end effector in the coordinate system of the vision space by the three-dimensional search, and
A function to acquire the position and orientation of the flange where the end effector is attached in the coordinate system of the robot space, and
The function of converting the position and orientation of the flange portion in the acquired coordinate system of the robot space into the coordinate system of the vision space, and
The difference between the position and orientation of the flange portion in the coordinate system of the converted vision space and the position and orientation of the end effector in the detected coordinate system of the vision space is calculated, and the calculated difference is used as the end effector. A function to calibrate the end effector model so that it is mounted in a position and posture slightly deviated from the flange portion by reflecting it in the position and posture of the model.
An image processing program to realize the above on a computer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017040980A JP6877191B2 (en) | 2017-03-03 | 2017-03-03 | Image processing equipment, image processing methods, image processing programs and computer-readable recording media |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017040980A JP6877191B2 (en) | 2017-03-03 | 2017-03-03 | Image processing equipment, image processing methods, image processing programs and computer-readable recording media |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018144165A JP2018144165A (en) | 2018-09-20 |
JP6877191B2 true JP6877191B2 (en) | 2021-05-26 |
Family
ID=63590416
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017040980A Active JP6877191B2 (en) | 2017-03-03 | 2017-03-03 | Image processing equipment, image processing methods, image processing programs and computer-readable recording media |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6877191B2 (en) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7215056B2 (en) * | 2018-10-04 | 2023-01-31 | 株式会社大林組 | Construction work device and construction work method |
JP7332015B2 (en) * | 2018-10-04 | 2023-08-23 | 株式会社大林組 | Construction work device and construction work method |
TWI677413B (en) * | 2018-11-20 | 2019-11-21 | 財團法人工業技術研究院 | Calibration method and device for robotic arm system |
CN113682828B (en) * | 2020-05-18 | 2023-05-30 | 北京京东乾石科技有限公司 | Method, device and system for stacking articles |
JP7519222B2 (en) | 2020-07-14 | 2024-07-19 | 株式会社キーエンス | Image Processing Device |
JP2022123241A (en) * | 2021-02-12 | 2022-08-24 | キヤノン株式会社 | Image processing apparatus, image processing method, production system, method for manufacturing article, and computer program |
CN114419188B (en) * | 2021-12-31 | 2022-09-02 | 广东电网有限责任公司 | Automatic construction method and device for electronic fence in field operation area and storage medium |
CN114536399B (en) * | 2022-01-07 | 2023-04-25 | 中国人民解放军海军军医大学第一附属医院 | Error detection method based on multiple pose identifications and robot system |
CN114619444B (en) * | 2022-01-17 | 2024-01-26 | 清华大学 | Double-pass SMA spring driven soft robot bending module and control method thereof |
CN114347037B (en) * | 2022-02-16 | 2024-03-29 | 中国医学科学院北京协和医院 | Robot system fault detection processing method based on composite identification and robot system |
CN114536401B (en) * | 2022-02-16 | 2024-03-29 | 中国医学科学院北京协和医院 | Robot system fault detection processing method based on multiple pose identifiers and robot system |
CN116379927B (en) * | 2023-05-31 | 2023-08-29 | 湖南隆深氢能科技有限公司 | Accurate detection method and system applied to laminating production line and storage medium |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3415427B2 (en) * | 1998-02-25 | 2003-06-09 | 富士通株式会社 | Calibration device in robot simulation |
JP4621641B2 (en) * | 2006-07-26 | 2011-01-26 | 本田技研工業株式会社 | Robot teaching CAD apparatus and robot teaching method |
JP5471355B2 (en) * | 2009-11-24 | 2014-04-16 | オムロン株式会社 | 3D visual sensor |
JP5835926B2 (en) * | 2011-04-11 | 2015-12-24 | キヤノン株式会社 | Information processing apparatus, information processing apparatus control method, and program |
JP5949242B2 (en) * | 2012-07-11 | 2016-07-06 | セイコーエプソン株式会社 | Robot system, robot, robot control apparatus, robot control method, and robot control program |
JP6489894B2 (en) * | 2015-03-27 | 2019-03-27 | ファナック株式会社 | A robot system having a function of correcting the take-out path of an object |
-
2017
- 2017-03-03 JP JP2017040980A patent/JP6877191B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018144165A (en) | 2018-09-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6889574B2 (en) | Robot setting device, robot setting method, robot setting program, computer-readable recording medium, and recording equipment | |
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 | |
JP6877192B2 (en) | Image processing equipment, image processing methods, image processing programs, computer-readable recording media, and recording equipment | |
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 | |
EP1215017B1 (en) | Robot teaching apparatus | |
US20180350056A1 (en) | Augmented reality application for manufacturing | |
JP4309439B2 (en) | Object take-out device | |
US8964001B2 (en) | Method for displaying measurement effective area in three-dimensional visual sensor and three-dimensional visual sensor | |
US8472703B2 (en) | Image capture environment calibration method and information processing apparatus | |
US8565515B2 (en) | Three-dimensional recognition result displaying method and three-dimensional visual sensor | |
CN101966617B (en) | Brief description method for view model for continuous motion of welding robot | |
JP6489566B2 (en) | Three-dimensional measuring apparatus and measurement support processing method thereof | |
US11148299B2 (en) | Teaching apparatus and teaching method for robots | |
EP3290860B1 (en) | Method and system for determining the presence or absence of a part of an assembly within a work cell | |
JP2018144162A (en) | Robot setting device, robot setting method, robot setting program, computer-readable recording medium, and recorded device | |
JP5030953B2 (en) | Method and system for determining the relative position of a first object with respect to a second object, a corresponding computer program and a corresponding computer-readable recording medium | |
JP6857052B2 (en) | Robot setting device, robot setting method, robot setting program, computer-readable recording medium, and recording equipment | |
Ng et al. | Intuitive robot tool path teaching using laser and camera in augmented reality environment | |
JP6785687B2 (en) | Robot simulation equipment, robot simulation methods, robot simulation programs, computer-readable recording media, and recording equipment | |
JP2018144163A (en) | Robot setting device, robot setting method, robot setting program, computer-readable recording medium, and recorded device | |
JP2022111072A (en) | Target-free rgbd camera alignment to robots | |
Nowak et al. | Point Clouds With Color: A Simple Open Library for Matching RGB and Depth Pixels from an Uncalibrated Stereo Pair | |
JP2018144153A (en) | Robot simulation device, robot simulation method, robot simulation program, computer-readable recording medium and recording device | |
JP2021071420A (en) | Information processing apparatus, information processing method, program, system, manufacturing method for product, and measuring apparatus and measuring method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20190910 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200831 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200929 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201029 |
|
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: 20210330 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210427 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6877191 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE Ref document number: 6877191 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |