JP7073742B2 - Information processing system, picking location identification method and program - Google Patents

Information processing system, picking location identification method and program Download PDF

Info

Publication number
JP7073742B2
JP7073742B2 JP2018010886A JP2018010886A JP7073742B2 JP 7073742 B2 JP7073742 B2 JP 7073742B2 JP 2018010886 A JP2018010886 A JP 2018010886A JP 2018010886 A JP2018010886 A JP 2018010886A JP 7073742 B2 JP7073742 B2 JP 7073742B2
Authority
JP
Japan
Prior art keywords
information processing
processing system
plane
line segment
picking
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
Application number
JP2018010886A
Other languages
Japanese (ja)
Other versions
JP2019126886A (en
Inventor
正範 原田
健 坂本
恒治 新垣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2018010886A priority Critical patent/JP7073742B2/en
Publication of JP2019126886A publication Critical patent/JP2019126886A/en
Application granted granted Critical
Publication of JP7073742B2 publication Critical patent/JP7073742B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、情報処理システム、ピッキング箇所特定方法及びプログラムに関する。 The present invention relates to an information processing system, a method for specifying a picking location, and a program.

ロボット技術等によって、部品等の物体を把持する、又は、物体を吸着して、ロボットアーム等で物体をピッキング(picking)する方法が知られている。 A method of grasping an object such as a part or sucking an object and picking the object with a robot arm or the like is known by robot technology or the like.

例えば、情報処理システムは、まず、第1のセンサ部で対象物体を撮影した画像等に基づいて3次元情報を取得し、第2のセンサ部で対象物体の2次元情報を取得する。さらに、情報処理システムは、第1のセンサ部で取得できる情報に基づいて対象物体を計測し、このようにして得られる計測結果と、対象物体のモデル情報とを組み合わせて位置姿勢を算出する。そして、情報処理システムは、算出された位置姿勢で第2のセンサ部を用いて情報を取得し、取得した情報及びモデル情報に基づいて対象物体の3次元位置姿勢を計測する。このようにして、ピッキングにおいて高精度な制御を行う方法が知られている(例えば、特許文献1参照)。 For example, the information processing system first acquires three-dimensional information based on an image obtained by capturing an object object by the first sensor unit, and acquires two-dimensional information of the target object by the second sensor unit. Further, the information processing system measures the target object based on the information that can be acquired by the first sensor unit, and calculates the position and orientation by combining the measurement result obtained in this way with the model information of the target object. Then, the information processing system acquires information using the second sensor unit with the calculated position / orientation, and measures the three-dimensional position / orientation of the target object based on the acquired information and the model information. In this way, a method for performing highly accurate control in picking is known (see, for example, Patent Document 1).

しかしながら、従来の方法では、ピッキングの対象となる物体において、ピッキングを行う箇所が考慮されていない場合が多い。すなわち、従来の方法では、形状等に基づいて、物体のどの部分でピッキングを行うのが適切であるかを判断しないため、物体をピッキングできない場合がある。 However, in the conventional method, in many cases, the picking point is not taken into consideration in the object to be picked. That is, in the conventional method, it may not be possible to pick an object because it is not determined in which part of the object it is appropriate to pick based on the shape or the like.

本発明の一態様は、物体をピッキングしやすくできることを目的とする。 One aspect of the present invention is to make it easier to pick an object.

本発明の一実施形態による
物体をピッキングできる装置と、前記装置を制御する1つ以上の情報処理装置とを有する情報処理システムは、
前記物体の形状を示す形状データを取得する取得部と、
前記形状データに基づいて、前記物体の形状のうち、平面となる部分を判断する判断部と、
前記平面に基づいて、前記ピッキングを行う箇所を特定する特定部と
を備え
前記特定部は、
前記平面が中空を含む形状であると、
前記平面の内周を構成する境界線からオフセットした線分を生成する
ことを特徴とする。
An information processing system including a device capable of picking an object according to an embodiment of the present invention and one or more information processing devices for controlling the device is
An acquisition unit that acquires shape data indicating the shape of the object,
A judgment unit that determines a flat portion of the shape of the object based on the shape data.
A specific portion for specifying the picking location based on the plane is provided .
The specific part is
When the plane has a shape including a hollow,
Generate a line segment offset from the boundary line that constitutes the inner circumference of the plane.
It is characterized by that.

本発明の実施形態によって、物体をピッキングしやすくできる。 According to the embodiment of the present invention, it is possible to easily pick an object.

本実施形態に係る情報処理システムの全体構成例を示す概要図である。It is a schematic diagram which shows the whole structure example of the information processing system which concerns on this embodiment. 本実施形態に係る情報処理システムにおける情報処理装置等のハードウェア構成例を示すブロック図である。It is a block diagram which shows the hardware configuration example of the information processing apparatus and the like in the information processing system which concerns on this embodiment. 本実施形態に係る情報処理システムの機能構成例を示す機能ブロック図である。It is a functional block diagram which shows the functional composition example of the information processing system which concerns on this embodiment. 本実施形態に係る情報処理システムによる全体処理例を示すフローチャートである。It is a flowchart which shows the whole processing example by the information processing system which concerns on this embodiment. 本実施形態に係る情報処理システムによる候補箇所を特定する処理例を示すフローチャートである。It is a flowchart which shows the processing example which specifies the candidate place by the information processing system which concerns on this embodiment. 本実施形態に係る情報処理システムによる条件判定処理例を示すフローチャートである。It is a flowchart which shows the condition judgment processing example by the information processing system which concerns on this embodiment. 本実施形態に係る情報処理システムが吸着部を吸着できる大きさがある面と判断する例を示す図である。It is a figure which shows the example which determines that the information processing system which concerns on this embodiment has a size which can suck a suction part. 本実施形態に係る情報処理システムが吸着部を吸着できる大きさがない面と判断する例を示す図(その1)である。It is a figure (the 1) which shows the example which determines that the information processing system which concerns on this embodiment does not have the size which can adsorb the adsorption part. 本実施形態に係る情報処理システムが吸着部を吸着できる大きさがない面と判断する例を示す図(その2)である。It is a figure (No. 2) which shows the example which determines that the information processing system which concerns on this embodiment does not have the size which can adsorb the adsorption part. 本実施形態に係る情報処理システムが射影点を用いてピッキングを行うと干渉すると判断する例を示す図である。It is a figure which shows the example which determines that the information processing system which concerns on this embodiment interferes when picking is performed using a projection point. 本実施形態に係る情報処理システムによる平面上におけるオフセットされた線分の生成例を示すフローチャートである。It is a flowchart which shows the generation example of the offset line segment on the plane by the information processing system which concerns on this embodiment. 本実施形態に係る情報処理システムによる境界線に対してオフセットした線分の生成例を示す図である。It is a figure which shows the example of the generation of the line segment offset with respect to the boundary line by the information processing system which concerns on this embodiment. 本実施形態に係る情報処理システムによる交点で線分をカットする例を示す図である。It is a figure which shows the example which cuts the line segment at the intersection by the information processing system which concerns on this embodiment. 本実施形態に係る情報処理システムによる線分を延長させて交点を生成する例を示す図である。It is a figure which shows the example which generates the intersection point by extending the line segment by the information processing system which concerns on this embodiment. 本実施形態に係る干渉の例を示す図である。It is a figure which shows the example of the interference which concerns on this embodiment. 本実施形態に係る情報処理システムによる他のポリゴンに基づくオフセットされた線分の生成例を示すフローチャートである。It is a flowchart which shows the generation example of the offset line segment based on another polygon by the information processing system which concerns on this embodiment. 本実施形態に係る情報処理システムによる他のポリゴンに基づくオフセットされた線分の生成例を示す図である。It is a figure which shows the generation example of the offset line segment based on another polygon by the information processing system which concerns on this embodiment. 本実施形態に係る情報処理システムによる射影例を示す図である。It is a figure which shows the projection example by the information processing system which concerns on this embodiment. 本実施形態に係る情報処理システムによる優先順位の決定例を示す図(その1)である。It is a figure (the 1) which shows the determination example of the priority order by the information processing system which concerns on this embodiment. 本実施形態に係る情報処理システムによる優先順位の決定例を示す図(その2)である。It is a figure (the 2) which shows the example of the determination of the priority order by the information processing system which concerns on this embodiment.

以下、発明を実施するための最適な形態について、図面を参照して説明する。 Hereinafter, the optimum mode for carrying out the invention will be described with reference to the drawings.

<全体構成例>
図1は、本実施形態に係る情報処理システムの全体構成例を示す概要図である。以下、図示するような物体11をピッキングするための情報処理システム10を例に説明する。図示するように、情報処理システム10は、例えば、物体をピッキングできる装置の例であるロボット8と、情報処理装置の例であるPC(Personal Computer)14とを有する。
<Overall configuration example>
FIG. 1 is a schematic diagram showing an overall configuration example of an information processing system according to the present embodiment. Hereinafter, an information processing system 10 for picking an object 11 as shown in the figure will be described as an example. As shown in the figure, the information processing system 10 includes, for example, a robot 8 which is an example of a device capable of picking an object, and a PC (Personal Computer) 14 which is an example of an information processing device.

図示する例では、ロボット8は、物体11を吸着し、物体11が置かれる床又は部品箱等から物体11を持ち上げることができる(図では、Z軸方向に持ち上げる)。そして、ロボット8は、PC14による制御に基づいて、物体11を所定の場所へ移動させる(図示する例では、物体11は、X‐Y平面上において異なる場所へ移動する)。 In the illustrated example, the robot 8 can suck the object 11 and lift the object 11 from the floor or the parts box on which the object 11 is placed (in the figure, the object 11 is lifted in the Z-axis direction). Then, the robot 8 moves the object 11 to a predetermined place based on the control by the PC 14 (in the illustrated example, the object 11 moves to a different place on the XY plane).

例えば、物体11は、工場等における製造過程で用いられる部品等である。したがって、ロボット8は、部品等の物体11をピッキングし、組み合わせる等によって製品を製造する。なお、物体11は、部品以外の種類でもよい。例えば、物体11は、食品小売等に用いられる箱等でもよい。なお、物体11は、ロボット8が持ち上げられる程度の重さであるのが望ましい。 For example, the object 11 is a part or the like used in a manufacturing process in a factory or the like. Therefore, the robot 8 manufactures a product by picking and combining objects 11 such as parts. The object 11 may be of a type other than the parts. For example, the object 11 may be a box or the like used for food retailing or the like. It is desirable that the object 11 has a weight that allows the robot 8 to be lifted.

以下、図示するように、ロボット8は、物体11を吸着させて持ち上げるとする。なお、以下の説明では、ロボット8が物体11を吸着するための機構、すなわち、ロボット8と物体11の接触面(以下「吸着部」という。)は、円形であって、半径Rであるとする。また、半径R等の仕様は、あらかじめPC14に入力されるとする。 Hereinafter, as shown in the figure, the robot 8 sucks and lifts the object 11. In the following description, the mechanism for the robot 8 to adsorb the object 11, that is, the contact surface between the robot 8 and the object 11 (hereinafter referred to as “adsorption portion”) is circular and has a radius R. do. Further, it is assumed that the specifications such as the radius R are input to the PC 14 in advance.

<ハードウェア構成例>
図2は、本実施形態に係る情報処理システムにおける情報処理装置等のハードウェア構成例を示すブロック図である。まず、PC14は、図示するように、CPU(Central Processing Unit)24、ROM(Read-Only Memory)26、RAM(Random Access Memory)28、不揮発RAM30、I/O(Input/Output)32及びI/O34等を有する。また、図示するように、ロボット8との間には、ロボットコントローラ16等があってもよい。
<Hardware configuration example>
FIG. 2 is a block diagram showing a hardware configuration example of an information processing apparatus or the like in the information processing system according to the present embodiment. First, as shown in the figure, the PC 14 includes a CPU (Central Processing Unit) 24, a ROM (Read-Only Memory) 26, a RAM (Random Access Memory) 28, a non-volatile RAM 30, an I / O (Input / Output) 32, and an I / O. It has O34 and the like. Further, as shown in the figure, there may be a robot controller 16 or the like between the robot 8 and the robot 8.

CPU24は、演算装置及び制御装置の例である。 The CPU 24 is an example of an arithmetic unit and a control unit.

ROM26、RAM28及び不揮発RAM30は、記憶装置の例である。すなわち、PC14は、いわゆる主記憶装置を有する。さらに、PC14には、HD(Hard Disk)等の補助記憶装置があってもよい。 The ROM 26, RAM 28 and non-volatile RAM 30 are examples of storage devices. That is, the PC 14 has a so-called main storage device. Further, the PC 14 may have an auxiliary storage device such as an HD (Hard Disk).

I/O32及びI/O34は、いわゆるインタフェース(interface)である。例えば、I/O32及びI/O34は、コネクタ及びIC(Integrated Circuit)等である。したがって、図示するように、I/O32及びI/O34は、ロボットコントローラ16等の外部装置を接続させたり、外部装置とデータを送受信したりする。 The I / O 32 and I / O 34 are so-called interfaces. For example, the I / O 32 and the I / O 34 are a connector, an IC (Integrated Circuit), and the like. Therefore, as shown in the figure, the I / O 32 and the I / O 34 connect an external device such as a robot controller 16 or transmit / receive data to / from the external device.

ロボットコントローラ16は、ロボット8を制御するための電子回路等である。例えば、PC14は、ロボットコントローラ16に対してロボット8を動作させるための命令等を示す信号を送信する。このような信号を受信すると、ロボットコントローラ16は、信号に基づいてロボット8を動作させる。 The robot controller 16 is an electronic circuit or the like for controlling the robot 8. For example, the PC 14 transmits a signal indicating a command or the like for operating the robot 8 to the robot controller 16. Upon receiving such a signal, the robot controller 16 operates the robot 8 based on the signal.

なお、ハードウェア構成は、図示する構成に限られない。例えば、PC14は、図示するような構成に更に演算装置、制御装置又は記憶装置等を有してもよい。また、ロボットコントローラ16は、PC14又はロボット8等が有してもよい。 The hardware configuration is not limited to the configuration shown in the figure. For example, the PC 14 may further include an arithmetic unit, a control device, a storage device, or the like in the configuration as shown in the figure. Further, the robot controller 16 may be possessed by the PC 14, the robot 8, or the like.

<機能構成例>
図3は、本実施形態に係る情報処理システムの機能構成例を示す機能ブロック図である。例えば、情報処理システム10は、図示するように、取得部10F1、判断部10F2及び特定部10F3を備える機能構成である。
<Function configuration example>
FIG. 3 is a functional block diagram showing a functional configuration example of the information processing system according to the present embodiment. For example, as shown in the figure, the information processing system 10 has a functional configuration including an acquisition unit 10F1, a determination unit 10F2, and a specific unit 10F3.

取得部10F1、判断部10F2及び特定部10F3は、PC14が備えるCPU24が、RAM28を作業領域として利用し、ROM26等に格納されているプログラムを実行することで実現する。 The acquisition unit 10F1, the determination unit 10F2, and the specific unit 10F3 are realized by the CPU 24 included in the PC 14 using the RAM 28 as a work area and executing a program stored in the ROM 26 or the like.

取得部10F1は、物体11の形状を示す形状データD1を取得する取得手順を行う。 The acquisition unit 10F1 performs an acquisition procedure for acquiring shape data D1 indicating the shape of the object 11.

判断部10F2は、取得部10F1が取得する形状データD1に基づいて、物体11の形状のうち、平面となる部分を判断する判断手順を行う。 The determination unit 10F2 performs a determination procedure for determining a flat portion of the shape of the object 11 based on the shape data D1 acquired by the acquisition unit 10F1.

特定部10F3は、判断部10F2によって判断された平面に基づいて、ロボット8がピッキングを行う箇所を特定する特定手順を行う。 The specific unit 10F3 performs a specific procedure for specifying a location where the robot 8 picks, based on the plane determined by the determination unit 10F2.

<全体処理例>
図4は、本実施形態に係る情報処理システムによる全体処理例を示すフローチャートである。
<Overall processing example>
FIG. 4 is a flowchart showing an example of overall processing by the information processing system according to the present embodiment.

<形状データの取得例>(ステップS1)
ステップS1では、情報処理システムが備える取得部10F1は、形状データを取得する。例えば、形状データは、物体11の形状を示すCAD(Computer Aided Design)データ等である。すなわち、形状データは、物体11をCADモデルで示し、物体11を3角形ポリゴン(polygon)(以下単に「ポリゴン」という。)等で示す。以下、ポリゴンを3角形とする例で説明するが、ポリゴンは、3角形以外の多角形でもよい。
<Example of acquiring shape data> (step S1)
In step S1, the acquisition unit 10F1 included in the information processing system acquires shape data. For example, the shape data is CAD (Computer Aided Design) data or the like indicating the shape of the object 11. That is, in the shape data, the object 11 is represented by a CAD model, and the object 11 is represented by a triangle polygon (hereinafter, simply referred to as “polygon”) or the like. Hereinafter, an example in which the polygon is a triangle will be described, but the polygon may be a polygon other than the triangle.

なお、形状データは、CADデータでなくともよい。具体的には、形状データは、物体11の3次元形状が得られるデータであれば、形式は問わない。したがって、形状データは、いわゆる3次元計測器等で物体11を計測した結果等でもよい。 The shape data does not have to be CAD data. Specifically, the shape data may be in any format as long as it is data that can obtain a three-dimensional shape of the object 11. Therefore, the shape data may be the result of measuring the object 11 with a so-called three-dimensional measuring instrument or the like.

以下、物体11は、形状データによってCADモデルが示される例で説明する。 Hereinafter, the object 11 will be described with an example in which a CAD model is shown by shape data.

<平面の判断例>(ステップS2)
ステップS2では、情報処理システムが備える判断部10F2は、形状データに基づいて、物体11において、いわゆる平面といえる部分を判断する。具体的には、情報処理システムが備える判断部10F2は、例えば、以下のような方法で判断する。

・まず、情報処理システムが備える判断部10F2は、面の方向が一致し、かつ、隣接するポリゴンの組み合わせが、1つの平面に属すと判断する。
・次に、情報処理システムが備える判断部10F2は、上記の処理を形状データに対して繰り返す。
・続いて、情報処理システムが備える判断部10F2は、平面のうち、十分面積の大きいものを抽出する(ポリゴンの組み合わせのうち、1個でも面積が大きければ、抽出対象となる)。なお、どの程度の面積であると、抽出対象、すなわち、平面と判断するかは、あらかじめ閾値等が設定される。

以上のような処理を行うと、情報処理システムが備える判断部10F2は、平面を抽出することができる。なお、判断方法は、上記の方法に限られず、辺又は角のように面積が狭い範囲でなく、一定以上の面積となる部分を抽出できる方法であればよい。
<Plane determination example> (step S2)
In step S2, the determination unit 10F2 included in the information processing system determines a so-called flat portion of the object 11 based on the shape data. Specifically, the determination unit 10F2 included in the information processing system makes a determination by, for example, the following method.

First, the determination unit 10F2 provided in the information processing system determines that the directions of the surfaces are the same and that the combination of adjacent polygons belongs to one plane.
Next, the determination unit 10F2 provided in the information processing system repeats the above processing for the shape data.
-Next, the determination unit 10F2 provided in the information processing system extracts a plane having a sufficiently large area (if even one of the polygon combinations has a large area, it becomes an extraction target). It should be noted that a threshold value or the like is set in advance as to how much area is determined to be an extraction target, that is, a plane.

When the above processing is performed, the determination unit 10F2 included in the information processing system can extract a plane. The determination method is not limited to the above method, and any method may be used as long as it can extract a portion having an area of a certain level or more, not a narrow range such as a side or a corner.

<候補箇所の特定例>(ステップS3)
ステップS3では、情報処理システムが備える特定部10F3は、物体11が有する平面において、ロボット8がピッキングを行う候補となる箇所を特定する。以下、ステップS3で特定される物体11上のピッキングを行う候補となる箇所を「候補箇所」という。
<Specific example of candidate location> (step S3)
In step S3, the identification unit 10F3 included in the information processing system identifies a candidate location for picking by the robot 8 on the plane of the object 11. Hereinafter, a location that is a candidate for picking on the object 11 specified in step S3 is referred to as a “candidate location”.

なお、ステップS3は、ステップS2で複数の平面が抽出される場合には、抽出された各平面に対して行われる。そのため、ステップS3によって、各平面に対して候補箇所がそれぞれ特定される。 When a plurality of planes are extracted in step S2, step S3 is performed on each of the extracted planes. Therefore, in step S3, candidate locations are specified for each plane.

ステップS3は、例えば、以下のような処理である。以下、ステップS2で抽出される複数の平面のうち、1つの平面に対する処理としてステップS3を説明する。 Step S3 is, for example, the following processing. Hereinafter, step S3 will be described as a process for one of the plurality of planes extracted in step S2.

図5は、本実施形態に係る情報処理システムによる候補箇所を特定する処理例を示すフローチャートである。 FIG. 5 is a flowchart showing a processing example for specifying a candidate location by the information processing system according to the present embodiment.

<重心位置の算出例>(ステップS31)
ステップS31では、情報処理システムが備える特定部10F3は、重心位置を算出する。例えば、形状データ等に、あらかじめ物体11の材料又は密度等を示すデータが入力されていると、情報処理システムが備える特定部10F3は、物体11の重心位置を示す座標等を計算することができる。
<Calculation example of the position of the center of gravity> (step S31)
In step S31, the specific unit 10F3 included in the information processing system calculates the position of the center of gravity. For example, if data indicating the material or density of the object 11 is input in advance in the shape data or the like, the specific unit 10F3 provided in the information processing system can calculate the coordinates or the like indicating the position of the center of gravity of the object 11. ..

<平面に重心位置を射影させる例>(ステップS32)
ステップS32では、情報処理システムが備える特定部10F3は、平面に重心位置を射影させる。つまり、情報処理システムが備える特定部10F3は、ステップS2で平面と判定された面上に重心位置を射影させた点(以下「射影点」という。)の座標等を計算する。
<Example of projecting the position of the center of gravity on a plane> (step S32)
In step S32, the specific unit 10F3 included in the information processing system projects the position of the center of gravity on a plane. That is, the specific unit 10F3 provided in the information processing system calculates the coordinates and the like of the point where the position of the center of gravity is projected on the surface determined to be a plane in step S2 (hereinafter referred to as “projection point”).

<条件判定例>(ステップS33)
ステップS33では、情報処理システムが備える特定部10F3は、条件判定を行う。例えば、情報処理システムが備える特定部10F3は、以下のように条件判定を行う。
<Condition determination example> (step S33)
In step S33, the specific unit 10F3 included in the information processing system determines the condition. For example, the specific unit 10F3 provided in the information processing system determines the conditions as follows.

図6は、本実施形態に係る情報処理システムによる条件判定処理例を示すフローチャートである。 FIG. 6 is a flowchart showing an example of condition determination processing by the information processing system according to the present embodiment.

<吸着部を吸着できる大きさがある面か否かの判断例>(ステップS331)
ステップS331では、情報処理システムが備える特定部10F3は、吸着部を吸着できる大きさがある面か否かを判断する。つまり、情報処理システムが備える特定部10F3は、ステップS32で算出される射影点が投影された平面がピッキングを行える広さがあるか否かを判断する。
<Example of determining whether or not the surface has a size capable of adsorbing the adsorption portion> (step S331)
In step S331, the specific unit 10F3 included in the information processing system determines whether or not the surface has a size capable of adsorbing the suction unit. That is, the specific unit 10F3 provided in the information processing system determines whether or not the plane on which the projection point calculated in step S32 is projected has a size that allows picking.

例えば、ステップS331では、情報処理システムが備える特定部10F3は、以下のように判断する。 For example, in step S331, the specific unit 10F3 included in the information processing system determines as follows.

図7は、本実施形態に係る情報処理システムが吸着部を吸着できる大きさがある面と判断する例を示す図である。まず、ステップS31によって、図示するような重心位置PT1が算出されたとする。さらに、物体11において、面PL1がステップS2で平面と判定されたとする。そして、ステップS32によって、面PL1上に、射影点PT2が射影されたとする。以下、ステップS331で判断対象となる面が面PL1である例で説明する。 FIG. 7 is a diagram showing an example in which the information processing system according to the present embodiment determines that the surface has a size capable of sucking the suction portion. First, it is assumed that the center of gravity position PT1 as shown in the figure is calculated by step S31. Further, it is assumed that the surface PL1 of the object 11 is determined to be a plane in step S2. Then, it is assumed that the projection point PT2 is projected on the surface PL1 by step S32. Hereinafter, an example will be described in which the surface to be determined in step S331 is the surface PL1.

例えば、情報処理システムが備える特定部10F3は、射影点PT2について、面PL1が下記(A)乃至(C)の3つの条件をすべて満たすか否かによって、ステップS331の判断を行う。

(A) 射影点PT2が面PL1の内側である。
For example, the specific unit 10F3 provided in the information processing system determines step S331 for the projection point PT2 depending on whether or not the surface PL1 satisfies all the following three conditions (A) to (C).

(A) The projection point PT2 is inside the surface PL1.

例えば、上記(A)は、射影点PT2が面PL1を構成するポリゴンのどれかの上に位置する、又は、射影点PT2が面PL1を構成するポリゴンの境界上であるか否かで判定される。すなわち、射影点PT2が面PL1を構成するポリゴンの境界内に位置する場合には、上記(A)は、満たされていると判断される。

(B) 射影点PT2を中心とする半径Rの円周が、面PL1と交差しない。
For example, the above (A) is determined by whether or not the projection point PT2 is located on any of the polygons constituting the surface PL1 or the projection point PT2 is on the boundary of the polygons constituting the surface PL1. To. That is, when the projection point PT2 is located within the boundary of the polygons constituting the surface PL1, it is determined that the above (A) is satisfied.

(B) The circumference of the radius R centered on the projection point PT2 does not intersect the surface PL1.

例えば、上記(B)は、射影点PT2を中心として描かれる円と、面PL1のすべての境界線とが交差する点があるか否かで判定される。なお、ポリゴンの場合には、境界線は、すべて直線となる。すなわち、射影点PT2を中心として描かれる円と、面PL1のすべての境界線とが交差する点がない場合には、上記(B)は、満たされていると判断される。

(C) 射影点PT2を中心として描かれる半径Rの円の内側に、境界線がない。
For example, the above (B) is determined by whether or not there is a point where the circle drawn around the projection point PT2 and all the boundary lines of the surface PL1 intersect. In the case of polygons, the boundary lines are all straight lines. That is, if there is no point where the circle drawn around the projection point PT2 and all the boundary lines of the surface PL1 intersect, it is determined that the above (B) is satisfied.

(C) There is no boundary line inside the circle of radius R drawn around the projection point PT2.

例えば、上記(C)は、面PL1を構成する境界線が半径Rとなる円の内側にあるか否かで判定される。もし、面PL1が穴等の空洞を有する形状であると、穴等を構成する境界線が、面PL1の内側に存在する。また、面PL1が吸着部より狭いと、境界線は、円の内側となる。したがって、面PL1の境界線のうち、いずれの境界線も半径Rの内側にないと判断されると、上記(C)は、満たされていると判断される。

上記(A)乃至(C)の条件をいずれも満たす場合には、射影点PT2で吸着すると、吸着部の円全体が面PL1内に収まる場合が多い。したがって、情報処理システムが備える特定部10F3は、図7のように、上記(A)乃至(C)のすべての条件を満たす場合には、吸着部を吸着できる大きさがある面と判断する(ステップS331でYES)。一方で、例えば、以下のような場合には、情報処理システムが備える特定部10F3は、吸着部を吸着できる大きさがない面と判断する(ステップS331でNO)。
For example, the above (C) is determined by whether or not the boundary line constituting the surface PL1 is inside the circle having the radius R. If the surface PL1 has a shape having a cavity such as a hole, a boundary line constituting the hole or the like exists inside the surface PL1. Further, when the surface PL1 is narrower than the suction portion, the boundary line is inside the circle. Therefore, if it is determined that none of the boundary lines of the surface PL1 is inside the radius R, it is determined that the above (C) is satisfied.

When all of the above conditions (A) to (C) are satisfied, when adsorption is performed at the projection point PT2, the entire circle of the adsorption portion often fits within the surface PL1. Therefore, as shown in FIG. 7, the specific unit 10F3 provided in the information processing system is determined to be a surface having a size capable of adsorbing the adsorption unit when all the conditions (A) to (C) above are satisfied. YES in step S331). On the other hand, for example, in the following cases, the specific unit 10F3 provided in the information processing system determines that the surface is not large enough to adsorb the adsorption unit (NO in step S331).

図8は、本実施形態に係る情報処理システムが吸着部を吸着できる大きさがない面と判断する例を示す図(その1)である。図7と比較すると、図8は、射影点が射影された面が面PL2となる点が異なる。それ以外の点は、図7と同様とし、重複する説明を省略する。 FIG. 8 is a diagram (No. 1) showing an example in which the information processing system according to the present embodiment determines that the surface is not large enough to suck the suction portion. Compared with FIG. 7, FIG. 8 is different in that the surface on which the projection point is projected becomes the surface PL2. Other points are the same as in FIG. 7, and duplicated description will be omitted.

図示するように、面PL2が吸着部より狭いと、ステップS331では、情報処理システムが備える特定部10F3は、上記(C)を満たさないと判断する。したがって、情報処理システムが備える特定部10F3は、図8のように上記(C)を満たさない場合には、吸着部を吸着できる大きさがない面と判断する(ステップS331でNO)。 As shown in the figure, if the surface PL2 is narrower than the suction portion, in step S331, it is determined that the specific portion 10F3 provided in the information processing system does not satisfy the above (C). Therefore, if the specific unit 10F3 provided in the information processing system does not satisfy the above (C) as shown in FIG. 8, it is determined that the surface is not large enough to adsorb the adsorption unit (NO in step S331).

図9は、本実施形態に係る情報処理システムが吸着部を吸着できる大きさがない面と判断する例を示す図(その2)である。図示するような場合も、情報処理システムが備える特定部10F3は、吸着部を吸着できる大きさがない面と判断する(ステップS331でNO)。 FIG. 9 is a diagram (No. 2) showing an example in which the information processing system according to the present embodiment determines that the surface is not large enough to suck the suction portion. Even in the case as shown in the figure, the specific unit 10F3 provided in the information processing system determines that the surface is not large enough to adsorb the adsorption unit (NO in step S331).

図9は、図7と比較すると、射影点の位置が異なり、射影点PT3は、図示するように、面PL3上において、端である点が異なる。それ以外の点は、図7と同様とし、重複する説明を省略する。 9 is different from FIG. 7 in the position of the projection point, and the projection point PT3 is different in that it is an end on the surface PL3 as shown in the figure. Other points are the same as in FIG. 7, and duplicated description will be omitted.

図示するように、射影点PT3を中心とした位置で吸着部が物体11を吸着すると、吸着部の一部は、面PL3と接しない位置関係となる。このような場合には、ステップS331では、情報処理システムが備える特定部10F3は、上記(B)及び上記(C)を満たさないと判断する。したがって、情報処理システムが備える特定部10F3は、図9のような上記(B)及び(C)の条件を満たさない場合には、吸着部を吸着できる大きさがない面と判断する(ステップS331でNO)。 As shown in the figure, when the suction portion sucks the object 11 at a position centered on the projection point PT3, a part of the suction portion has a positional relationship in which it does not contact the surface PL3. In such a case, in step S331, it is determined that the specific unit 10F3 provided in the information processing system does not satisfy the above (B) and the above (C). Therefore, if the specific unit 10F3 provided in the information processing system does not satisfy the above conditions (B) and (C) as shown in FIG. 9, it is determined that the specific unit 10F3 is not large enough to adsorb the adsorption unit (step S331). NO).

図6に戻り、吸着部を吸着できる大きさがある面と判断すると(ステップS331でYES)、情報処理システムは、ステップS332に進む。一方で、吸着部を吸着できる大きさがない面と判断すると(ステップS331でNO)、情報処理システムは、ステップS334に進む。 Returning to FIG. 6, when it is determined that the surface has a size capable of adsorbing the suction portion (YES in step S331), the information processing system proceeds to step S332. On the other hand, if it is determined that the surface of the suction portion is not large enough to be sucked (NO in step S331), the information processing system proceeds to step S334.

<射影点を用いてピッキングを行うと干渉するか否かの判断例>(ステップS332)
ステップS332では、情報処理システムが備える特定部10F3は、射影点を用いてピッキングを行うと干渉するか否かを判断する。つまり、ステップS332では、情報処理システムが備える特定部10F3は、ピッキングを行うため、射影点に吸着部を移動させると、ロボットのいずれかの部位が物体と干渉するか否かを判断する。
<Example of determining whether or not picking using the projection point interferes> (step S332)
In step S332, the specific unit 10F3 included in the information processing system determines whether or not picking using the projection point interferes. That is, in step S332, since the specific unit 10F3 included in the information processing system performs picking, when the suction unit is moved to the projection point, it is determined whether or not any part of the robot interferes with the object.

例えば、ステップS332では、情報処理システムが備える特定部10F3は、以下のように判断する。 For example, in step S332, the specific unit 10F3 included in the information processing system determines as follows.

図10は、本実施形態に係る情報処理システムが射影点を用いてピッキングを行うと干渉すると判断する例を示す図である。図10は、図7と比較すると、物体11に、図示するような形状の部位11P1がある例を示す。この例では、射影点PT4が射影される面は、面PL4であるとする。これら以外の点は、図7と同様とし、重複する説明を省略する。 FIG. 10 is a diagram showing an example in which it is determined that the information processing system according to the present embodiment interferes when picking is performed using a projection point. FIG. 10 shows an example in which the object 11 has a portion 11P1 having a shape as shown in the drawing as compared with FIG. 7. In this example, the surface on which the projection point PT4 is projected is the surface PL4. The points other than these are the same as those in FIG. 7, and overlapping description will be omitted.

図示する例において、ピッキングを行うために、吸着部が射影点PT4に向かって移動すると、吸着部は、部位11P1に干渉する。したがって、図示するような場合には、情報処理システムが備える特定部10F3は、射影点PT4を用いてピッキングを行うと干渉すると判断する(ステップS332でYES)。 In the illustrated example, when the suction portion moves toward the projection point PT4 for picking, the suction portion interferes with the portion 11P1. Therefore, in the case as shown in the figure, it is determined that the specific unit 10F3 provided in the information processing system interferes with picking using the projection point PT4 (YES in step S332).

具体的には、情報処理システムが備える特定部10F3は、まず、面PL4の表側(図示する例では、Z軸方向において上側となり、図で上方向に相当する。)に、面PL4とは別の面があるか否かを判断し、別の面をすべて抽出する。次に、情報処理システムが備える特定部10F3は、抽出された別の面と、吸着部とが干渉するか否かを判断する。 Specifically, the specific unit 10F3 provided in the information processing system is first on the front side of the surface PL4 (in the example shown, it is on the upper side in the Z-axis direction and corresponds to the upward direction in the figure), and is separate from the surface PL4. Determine if there is one side and extract all the other sides. Next, the specific unit 10F3 included in the information processing system determines whether or not the other extracted surface interferes with the suction unit.

例えば、情報処理システムが備える特定部10F3は、射影点PT4を中心として描かれる半径Rの円と、面PL4の表側にあるポリゴン(図示する例では、部位11P1を構成するポリゴンである。)を面PL4上に射影した射影物とが干渉するか否かを判断する。図示する例では、射影点PT4を中心とする半径Rの円と、面PL4上に射影された部位11P1を構成するポリゴンの射影物とが干渉するため、情報処理システムが備える特定部10F3は、干渉すると判断する(ステップS332でYES)。 For example, the specific portion 10F3 provided in the information processing system includes a circle having a radius R drawn around the projection point PT4 and a polygon on the front side of the surface PL4 (in the illustrated example, it is a polygon constituting the portion 11P1). It is determined whether or not the projection object projected on the surface PL4 interferes. In the illustrated example, the circle having a radius R centered on the projection point PT4 and the projection object of the polygon constituting the portion 11P1 projected on the surface PL4 interfere with each other. It is determined that it interferes (YES in step S332).

なお、ステップS332における干渉の判断では、ポリゴンの境界線だけでなく、ポリゴンの内側も判断に用いられる。 In the determination of interference in step S332, not only the boundary line of the polygon but also the inside of the polygon is used for the determination.

一方で、例えば、図7のように、面PL1の表側に、面PL1とは別の面がない場合には、情報処理システムが備える特定部10F3は、射影点PT2を中心とする半径Rの円と、別の面を構成するポリゴンとが干渉しないため、情報処理システムが備える特定部10F3は、干渉しないと判断する(ステップS332でNO)。 On the other hand, for example, when there is no surface different from the surface PL1 on the front side of the surface PL1 as shown in FIG. 7, the specific portion 10F3 provided in the information processing system has a radius R centered on the projection point PT2. Since the circle and the polygons constituting another surface do not interfere with each other, it is determined that the specific unit 10F3 provided in the information processing system does not interfere (NO in step S332).

<条件を満たすと判定する例>(ステップS333)
図6に戻り、ステップS333では、情報処理システムが備える特定部10F3は、条件を満たすと判定する。
<Example of determining that the condition is satisfied> (step S333)
Returning to FIG. 6, in step S333, it is determined that the specific unit 10F3 included in the information processing system satisfies the condition.

<条件を満たさないと判定する例>(ステップS334)
ステップS334では、情報処理システムが備える特定部10F3は、条件を満たさないと判定する。
<Example of determining that the condition is not satisfied> (step S334)
In step S334, it is determined that the specific unit 10F3 included in the information processing system does not satisfy the conditions.

なお、図6に示す処理において、各判断、すなわち、ステップS331及びステップS332の順序は、図示する順序に限られない。つまり、ステップS331及びステップS332によって、2つの条件が判断されるのであれば、判断する順序は、図示する順序以外でもよい。 In the process shown in FIG. 6, each determination, that is, the order of steps S331 and S332 is not limited to the order shown in the figure. That is, if the two conditions are determined by step S331 and step S332, the order of determination may be other than the order shown in the figure.

<条件を満たすと判定されたか否かの判断例>(ステップS34)
図5に戻り、ステップS34では、情報処理システムが備える特定部10F3は、条件を満たすと判定されたか否かを判断する。具体的には、ステップS33、すなわち、図6に示す処理が行われると、ステップS333又はステップS334のうち、いずれかが行われるため、情報処理システムが備える特定部10F3は、ステップS33による判定結果に基づいて、条件を満たすと判定されたか否かが判断できる。
<Example of determining whether or not the condition is satisfied> (step S34)
Returning to FIG. 5, in step S34, the specific unit 10F3 included in the information processing system determines whether or not it is determined that the condition is satisfied. Specifically, when step S33, that is, the process shown in FIG. 6 is performed, either step S333 or step S334 is performed, so that the specific unit 10F3 provided in the information processing system is the determination result by step S33. Based on, it can be determined whether or not it is determined that the condition is satisfied.

次に、条件を満たすと判定されたと判断すると(ステップS34でYES)、情報処理システムは、ステップS311に進む。一方で、条件を満たさないと判定されたと判断すると(ステップS34でNO)、情報処理システムは、ステップS35に進む。 Next, if it is determined that the condition is satisfied (YES in step S34), the information processing system proceeds to step S311. On the other hand, if it is determined that the condition is not satisfied (NO in step S34), the information processing system proceeds to step S35.

<平面上におけるオフセット(offset)された線分の生成例>(ステップS35)
ステップS35では、情報処理システムが備える特定部10F3は、平面上において、オフセットされた線分を生成する。例えば、ステップS35では、情報処理システムが備える特定部10F3は、以下のように処理を行う。
<Example of generating an offset line segment on a plane> (step S35)
In step S35, the specific unit 10F3 included in the information processing system generates an offset line segment on a plane. For example, in step S35, the specific unit 10F3 included in the information processing system performs processing as follows.

図11は、本実施形態に係る情報処理システムによる平面上におけるオフセットされた線分の生成例を示すフローチャートである。 FIG. 11 is a flowchart showing an example of generating an offset line segment on a plane by the information processing system according to the present embodiment.

<平面を構成する境界線に対してオフセットした線分を生成する例>(ステップS351)
ステップS351では、情報処理システムが備える特定部10F3は、平面を構成する境界線に対してオフセットさせた線分を生成する。例えば、情報処理システムが備える特定部10F3は、以下のような処理によってオフセットする線分を生成する。
<Example of generating a line segment offset with respect to the boundary line constituting the plane> (step S351)
In step S351, the specific unit 10F3 included in the information processing system generates a line segment offset with respect to the boundary line constituting the plane. For example, the specific unit 10F3 included in the information processing system generates a line segment to be offset by the following processing.

図12は、本実施形態に係る情報処理システムによる境界線に対してオフセットした線分の生成例を示す図である。まず、物体11が、図示するような面PL5を有するとする。 FIG. 12 is a diagram showing an example of generating a line segment offset with respect to a boundary line by the information processing system according to the present embodiment. First, it is assumed that the object 11 has a surface PL5 as shown in the figure.

この例では、面PL5を構成する境界線のうち、外周を構成する下辺E1、右辺E2、上辺E3及び左辺E4が、それぞれ境界線として抽出される。このような境界線は、例えば、以下のように抽出される。 In this example, among the boundary lines constituting the surface PL5, the lower side E1, the right side E2, the upper side E3, and the left side E4 constituting the outer circumference are extracted as boundary lines, respectively. Such a boundary line is extracted, for example, as follows.

まず、ステップS2で、平面が抽出される。図示する例では、面PL5が抽出される。そして、面PL5を構成するポリゴンには、他のポリゴンと隣接しないポリゴンが含まれる。このような隣接しないポリゴンを集めると、情報処理システムが備える特定部10F3は、境界線を抽出できる。 First, in step S2, a plane is extracted. In the illustrated example, the surface PL5 is extracted. The polygons constituting the surface PL5 include polygons that are not adjacent to other polygons. By collecting such non-adjacent polygons, the specific unit 10F3 included in the information processing system can extract a boundary line.

なお、境界線は、物体の形状において、角張った部分等となるため、いわゆるエッジ(edge)と呼ばれる部分に相当する。 It should be noted that the boundary line corresponds to a so-called edge because it is an angular portion or the like in the shape of the object.

以上のような処理で、情報処理システムが備える特定部10F3は、境界線を抽出できる。これらの境界線に対して、情報処理システムが備える特定部10F3は、例えば、図示するように、内側にオフセットした線分L1を生成する。 By the above processing, the specific unit 10F3 included in the information processing system can extract the boundary line. With respect to these boundaries, the specific unit 10F3 provided in the information processing system generates, for example, an inwardly offset line segment L1 as shown in the figure.

なお、線分L1を各境界線からどの程度オフセットさせる、すなわち、オフセット量は、あらかじめ設定できるとする。例えば、オフセット量には、半径R等が設定される。 It is assumed that the offset amount of the line segment L1 is offset from each boundary line, that is, the offset amount can be set in advance. For example, a radius R or the like is set for the offset amount.

また、図示するように面PL5が中空を含む形状であると、面PL5には、内周が含まれる。このような場合には、情報処理システムが備える特定部10F3は、例えば、図示するように、内周を構成する境界線の外側に対してオフセットさせた線分L2を生成してもよい。具体的には、情報処理システムが備える特定部10F3は、まず、内周を構成する辺E5、E6、E7及びE8を境界線として抽出する。このように、境界線が内周を構成する場合には、境界線に対して、情報処理システムが備える特定部10F3は、例えば、図示するように、外側にオフセットした線分L2を生成する。 Further, when the surface PL5 has a shape including a hollow as shown in the figure, the surface PL5 includes an inner circumference. In such a case, the specific unit 10F3 provided in the information processing system may generate, for example, a line segment L2 offset with respect to the outside of the boundary line constituting the inner circumference, as shown in the figure. Specifically, the specific unit 10F3 included in the information processing system first extracts the sides E5, E6, E7, and E8 constituting the inner circumference as boundary lines. As described above, when the boundary line constitutes the inner circumference, the specific unit 10F3 provided in the information processing system generates, for example, an outwardly offset line segment L2 with respect to the boundary line.

以下、図示する線分L1及び線分L2を処理対象にする例で説明する。 Hereinafter, an example in which the illustrated line segment L1 and the line segment L2 are to be processed will be described.

<線分に交点があるか否かの判断例>(ステップS352)
図11に戻り、ステップS352では、情報処理システムが備える特定部10F3は、線分に交点があるか否かを判断する。例えば、図12に示す例では、線分L1に図示するような交点CP1があるため、情報処理システムが備える特定部10F3は、線分L1に対しては、交点があると判断する(ステップS352でYES)。一方で、線分L2には、交点がないため、情報処理システムが備える特定部10F3は、線分L2に対しては、交点がないと判断する(ステップS352でNO)。
<Example of determining whether or not there is an intersection in a line segment> (step S352)
Returning to FIG. 11, in step S352, the specific unit 10F3 included in the information processing system determines whether or not there is an intersection in the line segment. For example, in the example shown in FIG. 12, since the line segment L1 has an intersection point CP1 as shown in the figure, the specific unit 10F3 provided in the information processing system determines that the line segment L1 has an intersection point (step S352). YES). On the other hand, since the line segment L2 has no intersection, the specific unit 10F3 provided in the information processing system determines that there is no intersection with respect to the line segment L2 (NO in step S352).

次に、線分に交点があると判断すると(ステップS352でYES)、情報処理システムは、ステップS353に進む。一方で、線分に交点がないと判断すると(ステップS352でNO)、情報処理システムは、ステップS354に進む。 Next, when it is determined that the line segment has an intersection (YES in step S352), the information processing system proceeds to step S353. On the other hand, if it is determined that there is no intersection in the line segment (NO in step S352), the information processing system proceeds to step S354.

<交点で線分をカットする例>(ステップS353)
ステップS353では、情報処理システムが備える特定部10F3は、交点で線分をカットする。例えば、情報処理システムが備える特定部10F3は、以下のように処理を行う。
<Example of cutting a line segment at an intersection> (step S353)
In step S353, the specific unit 10F3 included in the information processing system cuts a line segment at an intersection. For example, the specific unit 10F3 provided in the information processing system performs processing as follows.

図13は、本実施形態に係る情報処理システムによる交点で線分をカットする例を示す図である。図示する例は、図12における線分L1に対してステップS353が行われた場合の処理結果例を示す。 FIG. 13 is a diagram showing an example of cutting a line segment at an intersection by the information processing system according to the present embodiment. The illustrated example shows an example of the processing result when step S353 is performed on the line segment L1 in FIG.

図12と比較すると、図13は、線分L1が各交点CP1から外周を構成する各境界線までカットされた点が異なる。このように、線分L1に交点があると判断された場合には、線分L1は、交点CP1から外周を構成する境界線までの部分がカットされる。 Compared with FIG. 12, FIG. 13 is different in that the line segment L1 is cut from each intersection CP1 to each boundary line constituting the outer circumference. In this way, when it is determined that the line segment L1 has an intersection, the portion of the line segment L1 from the intersection CP1 to the boundary line constituting the outer circumference is cut.

<線分を延長させて交点を生成する例>(ステップS354)
図11に戻り、ステップS354では、情報処理システムが備える特定部10F3は、線分を延長させて交点を生成する。例えば、情報処理システムが備える特定部10F3は、以下のように処理を行う。
<Example of extending a line segment to generate an intersection> (step S354)
Returning to FIG. 11, in step S354, the specific unit 10F3 included in the information processing system extends the line segment to generate an intersection. For example, the specific unit 10F3 provided in the information processing system performs processing as follows.

図14は、本実施形態に係る情報処理システムによる線分を延長させて交点を生成する例を示す図である。図示する例は、図12における線分L2に対してステップS354が行われた場合の処理結果例を示す。具体的には、図示するように、情報処理システムが備える特定部10F3は、各線分L2を延長させる。そして、情報処理システムが備える特定部10F3は、各線分L2が交わり、交点CP2が発生する程度まで各線分L2を延長させる。このように、線分L2に交点がないと判断された場合には、線分L2は、交点CP2が発生する程度まで延長される。 FIG. 14 is a diagram showing an example of generating an intersection by extending a line segment by the information processing system according to the present embodiment. The illustrated example shows an example of the processing result when step S354 is performed on the line segment L2 in FIG. Specifically, as shown in the figure, the specific unit 10F3 included in the information processing system extends each line segment L2. Then, the specific unit 10F3 provided in the information processing system extends each line segment L2 to the extent that the line segment L2 intersects and the intersection point CP2 is generated. In this way, when it is determined that the line segment L2 has no intersection, the line segment L2 is extended to the extent that the intersection CP2 is generated.

<他のポリゴンに基づくオフセットされた線分の生成例>(ステップS36)
図5に戻り、ステップS36では、他のポリゴンに基づいて、オフセットされた線分を生成する。
<Example of generating an offset line segment based on another polygon> (step S36)
Returning to FIG. 5, in step S36, an offset line segment is generated based on the other polygons.

例えば、ピッキングを行おうとする面とは、別の面がある場合は、例えば、以下のような場合となる。 For example, if there is a surface different from the surface on which picking is to be performed, for example, the following cases may occur.

図15は、本実施形態に係る干渉の例を示す図である。以下、面PL6が処理対象の平面となる例で説明する。また、図示する例では、面PL6とは別に、面PL7と、面PL8とがあるとする。図示するように、面PL7及び面PL8は、面PL6上で吸着部が吸着する箇所によっては、吸着部と、面PL7又は面PL8とが干渉する可能性のある面である。 FIG. 15 is a diagram showing an example of interference according to the present embodiment. Hereinafter, an example in which the surface PL6 is a plane to be processed will be described. Further, in the illustrated example, it is assumed that there are a surface PL7 and a surface PL8 in addition to the surface PL6. As shown in the figure, the surface PL7 and the surface PL8 are surfaces on which the adsorption portion and the surface PL7 or the surface PL8 may interfere with each other depending on the location on the surface PL6 where the adsorption portion is adsorbed.

また、図示する例では、面PL7は、面PL8よりX軸において、境界線が左側にある面となる。 Further, in the illustrated example, the surface PL7 is a surface whose boundary line is on the left side in the X-axis from the surface PL8.

吸着部が面PL7等と干渉せず、ピッキングを行うには、例えば、円柱CRで示す空間が必要となる。なお、図示する例は、ピッキングを行う箇所をできるだけ面PL7側(図では、右側となる。)に近づけた例である。したがって、吸着部がピッキングを行う箇所、すなわち、円柱CRが図示する例より右側となると、ピッキングを行う際に、吸着部が面PL7と干渉する。 In order to perform picking without the suction portion interfering with the surface PL7 or the like, for example, a space indicated by a cylindrical CR is required. In the illustrated example, the picking location is as close as possible to the surface PL7 side (on the right side in the figure). Therefore, when the suction portion is picked, that is, the cylindrical CR is on the right side of the illustrated example, the suction portion interferes with the surface PL7 when picking is performed.

また、図示するような円柱CRの位置より、右側となると、吸着部は、面PL8には干渉しなくとも、面PL7に干渉する場合がある。以下、面PL7がX軸において、境界線が最も左側に位置する面であるとする。 Further, on the right side of the position of the cylindrical CR as shown in the figure, the suction portion may interfere with the surface PL7 even if it does not interfere with the surface PL8. Hereinafter, it is assumed that the surface PL7 is the surface on the X-axis where the boundary line is located on the leftmost side.

図示するような状態を求めるには、面PL7を構成する境界線を面PL6上に射影させた射影線L4と、射影線L4からオフセット量分オフセットさせた線分L5とを求める必要がある。すなわち、線分L5は、X軸において左側から順に右側に求めていくとすると、吸着部がピッキングを行う箇所のうち、最初に干渉が発生する箇所を示す線分である。この例では、面PL7の境界線が最も左側にある例であるため、図示するような円柱CRの位置は、面PL7との干渉を考慮した円柱CRの位置を求めると、面PL8等の面にも吸着部が干渉しない箇所である。 In order to obtain the state as shown in the figure, it is necessary to obtain a projection line L4 in which the boundary line constituting the surface PL7 is projected on the surface PL6 and a line segment L5 offset by the offset amount from the projection line L4. That is, the line segment L5 is a line segment indicating a portion where interference first occurs among the locations where the suction portion picks, assuming that the line segment L5 is obtained from the left side to the right side in order on the X axis. In this example, since the boundary line of the surface PL7 is on the leftmost side, the position of the cylinder CR as shown in the figure is a surface such as the surface PL8 when the position of the cylinder CR in consideration of the interference with the surface PL7 is obtained. It is also a place where the suction part does not interfere.

このような状態を求めるには、例えば、情報処理システムが備える特定部10F3は、以下のような処理で射影線L4及び線分L5等を求める。 In order to obtain such a state, for example, the specific unit 10F3 provided in the information processing system obtains the projection line L4, the line segment L5, and the like by the following processing.

図16は、本実施形態に係る情報処理システムによる他のポリゴンに基づくオフセットされた線分の生成例を示すフローチャートである。 FIG. 16 is a flowchart showing an example of generating an offset line segment based on another polygon by the information processing system according to the present embodiment.

<法線方向における他の面を構成するポリゴンの特定例>(ステップS361)
ステップS361では、情報処理システムが備える特定部10F3は、法線方向(図15におけるZ軸方向である。)における他の面を構成するポリゴンを特定する。すなわち、情報処理システムが備える特定部10F3は、処理対象となる平面(図15では、面PL6である。)の上側に、他の面があるか否かを判定し、他の面がある場合には、他の面を構成するポリゴンを特定する。
<Specific example of polygons constituting another surface in the normal direction> (step S361)
In step S361, the identification unit 10F3 included in the information processing system identifies polygons constituting another surface in the normal direction (the Z-axis direction in FIG. 15). That is, the specific unit 10F3 provided in the information processing system determines whether or not there is another surface on the upper side of the plane to be processed (the surface PL6 in FIG. 15), and when there is another surface. Specifies the polygons that make up the other plane.

図15に示す例では、情報処理システムが備える特定部10F3は、他の面として、面PL7及び面PL8を特定する。 In the example shown in FIG. 15, the identification unit 10F3 included in the information processing system specifies the surface PL7 and the surface PL8 as other surfaces.

<隣接するポリゴンのそれぞれの法線が平面の法線方向に対して逆向き、又は、いずれか一方のポリゴンの法線が平面の法線方向に直交するポリゴンの組み合わせを特定する例>(ステップS362)
ステップS362では、情報処理システムが備える特定部10F3は、隣接するポリゴンのそれぞれの法線が平面の法線方向に対して逆向き、又は、いずれか一方のポリゴンの法線が平面の法線方向に直交するポリゴンの組み合わせを特定する。
<Example of specifying a combination of polygons in which the normals of adjacent polygons are opposite to the normal direction of the plane, or the normals of either polygon are orthogonal to the normal direction of the plane> (step) S362)
In step S362, in the specific unit 10F3 provided in the information processing system, the normals of the adjacent polygons are opposite to the normal direction of the plane, or the normal of one of the polygons is the normal direction of the plane. Identify the combination of polygons orthogonal to.

<隣接するポリゴンが有する隣接線分を平面に射影する例>(ステップS363)
ステップS363では、情報処理システムが備える特定部10F3は、隣接するポリゴンが有する隣接線分を平面に射影する。
<Example of projecting an adjacent line segment of an adjacent polygon onto a plane> (step S363)
In step S363, the specific unit 10F3 included in the information processing system projects an adjacent line segment of adjacent polygons onto a plane.

<射影線からオフセットした線分の生成例>(ステップS364)
ステップS364では、情報処理システムが備える特定部10F3は、射影線からオフセットした線分を生成する。
<Example of generating a line segment offset from a projected line> (step S364)
In step S364, the specific unit 10F3 included in the information processing system generates a line segment offset from the projected line.

例えば、図16に示す各ステップは、以下のように処理される。 For example, each step shown in FIG. 16 is processed as follows.

図17は、本実施形態に係る情報処理システムによる他のポリゴンに基づくオフセットされた線分の生成例を示す図である。まず、図示する例では、図15と同様に、面PL6が処理対象の平面となる例である。この例において、ステップS361によって、情報処理システムが備える特定部10F3は、面PL7を構成するポリゴンPY1及びポリゴンPY2を特定する。 FIG. 17 is a diagram showing an example of generating an offset line segment based on another polygon by the information processing system according to the present embodiment. First, in the illustrated example, as in FIG. 15, the surface PL6 is an example of a plane to be processed. In this example, in step S361, the identification unit 10F3 included in the information processing system specifies polygons PY1 and polygons PY2 constituting the surface PL7.

図示するように、ポリゴンPY1及びポリゴンPY2は、隣接するポリゴンである。また、この例では、ポリゴンPY1及びポリゴンPY2は、図示するように、隣接線分L3で隣接する。 As shown in the figure, polygon PY1 and polygon PY2 are adjacent polygons. Further, in this example, the polygon PY1 and the polygon PY2 are adjacent to each other by the adjacent line segment L3 as shown in the figure.

ステップS362では、図示するように、隣接するポリゴンPY1及びポリゴンPY2の組み合わせが処理対象となる。そして、ステップS362では、情報処理システムが備える特定部10F3は、まず、各ポリゴンの法線を特定する。図示する例では、ポリゴンPY1の法線は、図示するように、法線LV1となる。同様に、ポリゴンPY2の法線は、図示するように、法線LV2となる。 In step S362, as shown in the figure, the combination of adjacent polygons PY1 and PY2 is processed. Then, in step S362, the specific unit 10F3 included in the information processing system first specifies the normal of each polygon. In the illustrated example, the normal of the polygon PY1 is the normal LV1 as shown. Similarly, the normal of the polygon PY2 becomes the normal LV2 as shown in the figure.

これらの法線は、各ポリゴンの表面側で特定される。なお、ポリゴンの表及び裏は、ポリゴンを示すデータにあらかじめ入力されるため、情報処理システムが備える特定部10F3は、データに基づいてポリゴンの表及び裏を判定できる。 These normals are specified on the surface side of each polygon. Since the front and back of the polygon are input in advance to the data indicating the polygon, the specific unit 10F3 provided in the information processing system can determine the front and back of the polygon based on the data.

次に、ステップS362では、情報処理システムが備える特定部10F3は、各法線が面PL6の法線方向に対して逆向きであるか否かを判断する。まず、面PL6の法線方向は、Z軸方向であり、図では、上向き方向を示す。これに対して、法線LV2は、面PL6の法線方向とは逆向きであり、図では、下向き方向である。ゆえに、ステップS362では、ポリゴンPY1及びポリゴンPY2の組み合わせが特定される。 Next, in step S362, the specific unit 10F3 included in the information processing system determines whether or not each normal is opposite to the normal direction of the surface PL6. First, the normal direction of the surface PL6 is the Z-axis direction, and in the figure, the upward direction is shown. On the other hand, the normal LV2 is in the direction opposite to the normal direction of the surface PL6, and is in the downward direction in the figure. Therefore, in step S362, a combination of polygon PY1 and polygon PY2 is specified.

なお、法線が直交するポリゴンの組み合わせも、ステップS362で特定される。 The combination of polygons whose normals are orthogonal to each other is also specified in step S362.

以上のように、ステップS362では、情報処理システムが備える特定部10F3は、面PL6と対向する向きのポリゴンを特定し、特定されるポリゴンと隣接するポリゴンの組み合わせを特定する。このような隣接するポリゴンの組み合わせを特定できると、情報処理システムが備える特定部10F3は、隣接線分L3を特定できる。 As described above, in step S362, the identification unit 10F3 provided in the information processing system specifies polygons in a direction facing the surface PL6, and specifies a combination of the specified polygon and the adjacent polygon. If such a combination of adjacent polygons can be specified, the identification unit 10F3 provided in the information processing system can specify the adjacent line segment L3.

次に、ステップS363では、情報処理システムが備える特定部10F3は、隣接線分L3を面PL6上に射影する。図示する例では、この射影によって生成される線分が、射影線L4となる。例えば、図示するように、射影線L4は、Z軸方向において隣接線分L3を面PL6にほぼ垂直に降ろした位置に射影されて生成される。この射影線L4が、面PL6と、他の面(ポリゴンPY2で構成される面PL7である。)との境界線を示す。 Next, in step S363, the specific unit 10F3 included in the information processing system projects the adjacent line segment L3 onto the surface PL6. In the illustrated example, the line segment generated by this projection is the projection line L4. For example, as shown in the figure, the projection line L4 is generated by being projected at a position where the adjacent line segment L3 is lowered substantially perpendicular to the surface PL6 in the Z-axis direction. This projection line L4 indicates a boundary line between the surface PL6 and another surface (a surface PL7 composed of polygons PY2).

続いて、ステップS364では、情報処理システムが備える特定部10F3は、射影線L4を基準にオフセットした位置に線分L5を生成する。なお、オフセットする方向は、図示するように、ポリゴンがあるのとは反対の方向である。図では、射影線L4より右側にポリゴンがあるため、オフセットする方向は、射影線L4より左側となる。以上のようにして、情報処理システムが備える特定部10F3は、射影線L4から半径R分左側へオフセットさせた位置に線分L5を生成する。 Subsequently, in step S364, the specific unit 10F3 included in the information processing system generates a line segment L5 at a position offset with respect to the projection line L4. As shown in the figure, the offset direction is the opposite direction to the polygon. In the figure, since the polygon is on the right side of the projection line L4, the offset direction is on the left side of the projection line L4. As described above, the specific unit 10F3 provided in the information processing system generates the line segment L5 at a position offset to the left by the radius R from the projection line L4.

<射影例>(ステップS37)
図5に戻り、ステップS37では、情報処理システムが備える特定部10F3は、ステップS35及びステップS36で生成された線分に基づいて重心位置を射影する。例えば、情報処理システムが備える特定部10F3は、以下のように処理を行う。
<Projection example> (step S37)
Returning to FIG. 5, in step S37, the specific unit 10F3 included in the information processing system projects the position of the center of gravity based on the line segments generated in steps S35 and S36. For example, the specific unit 10F3 provided in the information processing system performs processing as follows.

図18は、本実施形態に係る情報処理システムによる射影例を示す図である。まず、図示する例では、面PL9が処理対象であるとする。そして、ステップS35及びステップS36等によって、図示するような線分L6が生成されたとする。さらに、この例では、重心位置PT1が、線分L6上に射影されて、射影点PT5、射影点PT6、射影点PT7、射影点PT8、射影点PT9、射影点PT10、射影点PT11及び射影点PT12が生成されるとする。 FIG. 18 is a diagram showing an example of projection by the information processing system according to the present embodiment. First, in the illustrated example, it is assumed that the surface PL9 is the processing target. Then, it is assumed that the line segment L6 as shown in the figure is generated by step S35, step S36, and the like. Further, in this example, the center of gravity position PT1 is projected onto the line segment L6, and the projection point PT5, the projection point PT6, the projection point PT7, the projection point PT8, the projection point PT9, the projection point PT10, the projection point PT11, and the projection point. It is assumed that PT12 is generated.

<条件判定例>(ステップS38)
図5に戻り、ステップS38では、情報処理システムが備える特定部10F3は、条件判定を行う。例えば、情報処理システムが備える特定部10F3は、ステップS33と同様の処理によって、ステップS37で定まるそれぞれの射影点について条件判定を行う。
<Condition determination example> (step S38)
Returning to FIG. 5, in step S38, the specific unit 10F3 included in the information processing system determines the condition. For example, the specific unit 10F3 provided in the information processing system determines the conditions for each projection point determined in step S37 by the same processing as in step S33.

<条件を満たすと判定されたか否かの判断例>(ステップS39)
ステップS39では、情報処理システムが備える特定部10F3は、各射影点が条件を満たすと判定されたか否かを判断する。具体的には、ステップS38、すなわち、図6に示す処理が行われると、ステップS333又はステップS334が行われるため、情報処理システムが備える特定部10F3は、ステップS33による判定結果に基づいて、条件を満たすと判定されたか否かが判断できる。
<Example of determining whether or not the condition is satisfied> (step S39)
In step S39, the specific unit 10F3 provided in the information processing system determines whether or not each projection point is determined to satisfy the condition. Specifically, when step S38, that is, the process shown in FIG. 6 is performed, step S333 or step S334 is performed, so that the specific unit 10F3 provided in the information processing system is a condition based on the determination result in step S33. It can be determined whether or not it is determined that the condition is satisfied.

次に、条件を満たすと判定されたと判断すると(ステップS39でYES)、情報処理システムは、ステップS310に進む。一方で、条件を満たさないと判定されたと判断すると(ステップS39でNO)、情報処理システムは、処理を終了する。 Next, if it is determined that the condition is satisfied (YES in step S39), the information processing system proceeds to step S310. On the other hand, if it is determined that the condition is not satisfied (NO in step S39), the information processing system ends the process.

<最近点の選択例>(ステップS310)
ステップS310では、情報処理システムが備える特定部10F3は、最近点を選択する。以下、図18に示す射影点PT5乃至射影点PT12のすべての射影点が、すべて条件を満たす点であると判定される場合を例に説明する。そして、情報処理システムが備える特定部10F3は、射影点PT5乃至射影点PT12のうち、各射影点と、重心位置PT1との距離が最も短くなる点、すなわち、最近点を算出する。図示する例では、射影点PT5が重心位置PT1に最も近い点であるため、情報処理システムが備える特定部10F3は、射影点PT5を最近点と算出する。
<Example of selecting the latest point> (step S310)
In step S310, the specific unit 10F3 included in the information processing system selects the latest point. Hereinafter, a case where all the projection points of the projection points PT5 to the projection point PT12 shown in FIG. 18 are determined to satisfy the conditions will be described as an example. Then, the specific unit 10F3 provided in the information processing system calculates the point where the distance between each projection point and the center of gravity position PT1 is the shortest among the projection points PT5 and the projection point PT12, that is, the latest point. In the illustrated example, since the projection point PT5 is the point closest to the center of gravity position PT1, the specific unit 10F3 provided in the information processing system calculates the projection point PT5 as the latest point.

<最近点又は条件を満たす点を候補箇所に指定する例>(ステップS311)
ステップS311では、情報処理システムが備える特定部10F3は、最近点又は条件を満たす点を候補箇所に指定する。つまり、情報処理システムが備える特定部10F3は、ステップS310で選択された最近点又はステップS33で条件を満たすと判定された点を候補箇所と指定する。
<Example of designating a recent point or a point satisfying a condition as a candidate place> (step S311)
In step S311, the specific unit 10F3 included in the information processing system designates a recent point or a point satisfying the condition as a candidate place. That is, the specific unit 10F3 included in the information processing system designates the latest point selected in step S310 or the point determined to satisfy the condition in step S33 as a candidate location.

<優先順位の決定例>(ステップS4)
図4に戻り、ステップS4では、情報処理システムが備える特定部10F3は、候補箇所の優先順位を決定する。すなわち、ステップS2によって、複数の平面があると判断されると、情報処理システムが備える特定部10F3は、各平面に対してステップS3を行う。そのため、ステップS3によって、平面ごとに、候補箇所が特定される。そして、ステップS4では、情報処理システムが備える特定部10F3は、それぞれの候補箇所に対して、優先順位を示す数値を設定する。
<Example of determining priority> (step S4)
Returning to FIG. 4, in step S4, the specific unit 10F3 included in the information processing system determines the priority of the candidate location. That is, when it is determined by step S2 that there are a plurality of planes, the specific unit 10F3 provided in the information processing system performs step S3 for each plane. Therefore, in step S3, a candidate location is specified for each plane. Then, in step S4, the specific unit 10F3 provided in the information processing system sets a numerical value indicating the priority order for each candidate location.

優先順位は、ピッキングに最適な箇所と判断される順で設定される。具体的には、例えば、情報処理システムが備える特定部10F3は、以下のように優先順位を決定する。 The priority is set in the order in which it is judged to be the most suitable place for picking. Specifically, for example, the specific unit 10F3 included in the information processing system determines the priority order as follows.

図19は、本実施形態に係る情報処理システムによる優先順位の決定例を示す図(その1)である。例えば、図19(A)に示すような状態にすると、物体11は、Y軸方向に長い形状、いわゆる直方体であるとする。 FIG. 19 is a diagram (No. 1) showing an example of determining the priority by the information processing system according to the present embodiment. For example, in the state shown in FIG. 19A, it is assumed that the object 11 has a long shape in the Y-axis direction, that is, a so-called rectangular parallelepiped.

ピッキングに最適な箇所は、例えば、物体11を転がした際に最も表になりやすい平面である。このような平面は、例えば、面積を比較して特定できる。すなわち、情報処理システムが備える特定部10F3は、物体11が有する平面のうち、面積が広い順に優先順位を決定する。以下、物体11が有する平面のうち、面11PL1及び面11PL2に、ステップS3によって候補箇所が指定された例で説明する。また、この例では、面11PL1の方が、面11PL2より面積が広いとする。 The optimum location for picking is, for example, a plane that is most likely to be exposed when the object 11 is rolled. Such a plane can be specified, for example, by comparing the areas. That is, the specific unit 10F3 included in the information processing system determines the priority order in descending order of the area of the planes of the object 11. Hereinafter, among the planes of the object 11, candidate locations are designated on the surfaces 11PL1 and 11PL2 by step S3. Further, in this example, it is assumed that the surface 11PL1 has a larger area than the surface 11PL2.

物体11は、図示するように、置き方によって、図19(A)のようにもなり、一方で、物体11は、図19(B)のような状態にもなりうる。すなわち、図19(A)に示す物体11は、Pitch回転(図では、X軸回りの回転となる。)させると、図19(B)に示す物体11となる。 As shown in the figure, the object 11 may be in the state shown in FIG. 19 (A) depending on how it is placed, while the object 11 may be in the state shown in FIG. 19 (B). That is, the object 11 shown in FIG. 19A becomes the object 11 shown in FIG. 19B when the Pitch is rotated (in the figure, the rotation is about the X axis).

面11PL1のように面積が広い平面の方が、面11PL2等の面積が狭い面より、図19(A)に示すように、表(図では、上方向となる。)となる確率が高い。このように、表になる確率が高い平面を用いてピッキングを行うと、情報処理システムが備える特定部10F3は、ロボット8によって、より物体をピッキングしやすくできる。 A plane having a large area such as the surface 11PL1 has a higher probability of being a table (in the figure, upward) as shown in FIG. 19 (A) than a surface having a small area such as the surface 11PL2. As described above, when picking is performed using a plane having a high probability of becoming a table, the specific unit 10F3 provided in the information processing system can more easily pick an object by the robot 8.

したがって、例えば、情報処理システムが備える特定部10F3は、面11PL1のように面積が広い平面を用いる候補箇所が高い優先順位となるように決定する。 Therefore, for example, the specific unit 10F3 provided in the information processing system determines that the candidate location using a plane having a large area such as the surface 11PL1 has a high priority.

また、例えば、情報処理システムが備える特定部10F3は、以下のように優先順位を決定してもよい。 Further, for example, the specific unit 10F3 included in the information processing system may determine the priority order as follows.

図20は、本実施形態に係る情報処理システムによる優先順位の決定例を示す図(その2)である。 FIG. 20 is a diagram (No. 2) showing an example of determining the priority by the information processing system according to the present embodiment.

ピッキングに最適な箇所は、例えば、吸着部の姿勢が変化しても、物体11のバランスが取りやすい平面である。例えば、図示するように、吸着部が、図19等の姿勢から90°Pitch回転(図では、X軸回りの回転となる。)する場合がある。以下、図示するような吸着部の姿勢を例に説明する。 The optimum location for picking is, for example, a flat surface on which the object 11 can be easily balanced even if the posture of the suction portion changes. For example, as shown in the figure, the suction portion may rotate by 90 ° Pitch (rotation around the X axis in the figure) from the posture shown in FIG. Hereinafter, the posture of the suction portion as shown in the figure will be described as an example.

ピッキングに最適な箇所となる平面は、例えば、重心位置PT1からの距離を比較して特定できる。すなわち、情報処理システムが備える特定部10F3は、物体11が有する平面のうち、重心位置PT1からの距離が短い順に優先順位を決定する。以下、物体11が有する平面のうち、面11PL3及び面11PL4に、ステップS3によって候補箇所が指定された例で説明する。また、この例では、面11PL3上の候補箇所の方が、面11PL4上の候補箇所より、重心位置PT1からの距離が短いとする。 The plane that is the optimum location for picking can be specified, for example, by comparing the distance from the center of gravity position PT1. That is, the specific unit 10F3 included in the information processing system determines the priority in the plane of the object 11 in the order of the shortest distance from the center of gravity position PT1. Hereinafter, among the planes of the object 11, candidate locations are designated on the surfaces 11PL3 and 11PL4 by step S3. Further, in this example, it is assumed that the candidate location on the surface 11PL3 is shorter than the candidate location on the surface 11PL4 from the center of gravity position PT1.

このように、図示するような姿勢に吸着部がなった場合では、面11PL3を用いるピッキングの方が、面11PL4を用いる場合より、物体11がバランスを取りやすく、落ちにくい。 As described above, when the suction portion is formed in the posture as shown in the figure, the picking using the surface 11PL3 makes it easier for the object 11 to balance and is less likely to fall than when the surface 11PL4 is used.

したがって、例えば、情報処理システムが備える特定部10F3は、面11PL3のように重心位置PT1からの距離が短い平面を用いる候補箇所が高い優先順位となるように決定する。 Therefore, for example, the specific unit 10F3 provided in the information processing system determines that the candidate location using a plane having a short distance from the center of gravity position PT1 such as the surface 11PL3 has a high priority.

<まとめ>
まず、情報処理システム10は、CADデータ又は画像データ等の形状データD1から物体11がどういった形状であるかを把握できる。
<Summary>
First, the information processing system 10 can grasp what kind of shape the object 11 has from the shape data D1 such as CAD data or image data.

ロボット8によるピッキングは、いわゆるロボットハンド等と呼ばれる機構で物体11を把持して物体11を持ち上げる方法と、本実施形態のように、いわゆるバキュームと呼ばれる機構で物体を吸着させて物体11を持ち上げる方法とがある。 Picking by the robot 8 is a method of grasping the object 11 by a mechanism called a so-called robot hand or the like and lifting the object 11 and a method of sucking the object by a mechanism called a so-called vacuum and lifting the object 11 as in the present embodiment. There is.

特に、物体11を吸着させるピッキングにおいて、ピッキングを安定して行うには、ピッキングされる箇所が平面であるのが望ましい。すなわち、ピッキングが行われる箇所は、平面であると、吸着部が物体11に吸着しやすいため、持ち上げた際等に物体11が落ちにくい。そこで、情報処理システム10は、判断部10F2によって、物体11の形状のうち、平面といえる部分を判断する。以降、判断部10F2によって平面と判断された部分が処理対象となるため、情報処理システム10は、平面といえる箇所でピッキングを行うことができる。したがって、情報処理システム10は、判断部10F2によって平面と判断された部分からピッキングを行う箇所を特定する。 In particular, in picking for sucking an object 11, it is desirable that the picked portion is a flat surface in order to perform picking stably. That is, if the picking location is a flat surface, the suction portion easily sticks to the object 11, so that the object 11 does not easily fall when it is lifted. Therefore, the information processing system 10 determines a portion of the shape of the object 11 that can be said to be a plane by the determination unit 10F2. After that, since the portion determined to be a flat surface by the determination unit 10F2 is the processing target, the information processing system 10 can perform picking at a portion that can be said to be a flat surface. Therefore, the information processing system 10 specifies a portion to be picked from a portion determined to be a flat surface by the determination unit 10F2.

なお、特定部10F3は、外周、内周又は射影線の少なくともいずれか1つからオフセットした線分を用いてピッキングを行う箇所を特定するのが望ましい。このような線分を用いると、情報処理システム10は、ピッキングの際に干渉する可能性のある突起部等を回避できるため、物体11がピッキング中に他の面等に干渉し、物体11が落ちたり、傷ついたりするのを少なくできる。 It is desirable that the specific portion 10F3 specifies a location where picking is performed using a line segment offset from at least one of the outer circumference, the inner circumference, and the projection line. By using such a line segment, the information processing system 10 can avoid protrusions and the like that may interfere with picking, so that the object 11 interferes with other surfaces and the like during picking, and the object 11 It can be less likely to fall or get hurt.

また、情報処理システム10は、オフセットした線分を用いると、物体11の端等でピッキングが行われるのを回避できるため、吸着部が接触する面積が広い箇所でピッキングができ、情報処理システム10は、ロボット8によって、より物体をピッキングしやすくできる。 Further, since the information processing system 10 can avoid picking at the end of the object 11 or the like by using the offset line segment, picking can be performed at a place where the suction portion contacts a wide area, and the information processing system 10 can perform picking. Can make it easier to pick an object by the robot 8.

<その他の実施形態>
なお、本発明に係る各処理の全部又は一部は、低水準言語又は高水準言語で記述され、コンピュータにピッキング箇所特定方法を実行させるためのプログラムによって実現されてもよい。すなわち、プログラムは、情報処理装置又は1以上の情報処理装置を含む情報処理システム等のコンピュータに各処理を実行させるためのコンピュータプログラムである。
<Other embodiments>
It should be noted that all or part of each process according to the present invention may be described in a low-level language or a high-level language, and may be realized by a program for causing a computer to execute a picking location identification method. That is, the program is a computer program for causing a computer such as an information processing device or an information processing system including one or more information processing devices to execute each process.

したがって、プログラムに基づいてピッキング箇所特定方法が実行されると、コンピュータが有する演算装置及び制御装置は、各処理を実行するため、プログラムに基づいて演算及び制御を行う。また、コンピュータが有する記憶装置は、各処理を実行するため、プログラムに基づいて、処理に用いられるデータを記憶する。 Therefore, when the picking location specifying method is executed based on the program, the arithmetic unit and the control device of the computer perform the arithmetic and control based on the program in order to execute each process. In addition, the storage device of the computer stores the data used for the processing based on the program in order to execute each processing.

また、プログラムは、コンピュータが読み取り可能な記録媒体に記録されて頒布することができる。なお、記録媒体は、磁気テープ、フラッシュメモリ、光ディスク、光磁気ディスク又は磁気ディスク等のメディアである。さらに、プログラムは、電気通信回線を通じて頒布することができる。 The program can also be recorded and distributed on a computer-readable recording medium. The recording medium is a medium such as a magnetic tape, a flash memory, an optical disk, a magneto-optical disk, or a magnetic disk. In addition, the program can be distributed over telecommunication lines.

なお、本発明に係る実施形態は、1以上の情報処理装置を有する情報処理システムによって実現されてもよい。また、複数の情報処理装置を有する情報処理システムは、各処理を冗長、分散、並列、仮想化又はこれらを組み合わせて実行してもよい。 The embodiment of the present invention may be realized by an information processing system having one or more information processing devices. Further, in an information processing system having a plurality of information processing devices, each process may be performed redundantly, distributed, parallel, virtualized, or a combination thereof.

以上、実施形態における一例について説明したが、本発明は、上記実施形態に限定されない。すなわち、本発明の範囲内で種々の変形及び改良が可能である。 Although an example in the embodiment has been described above, the present invention is not limited to the above embodiment. That is, various modifications and improvements are possible within the scope of the present invention.

8 ロボット
10 情報処理システム
11 物体
14 PC
R 半径
10F1 取得部
10F2 判断部
10F3 特定部
D1 形状データ
8 Robot 10 Information processing system 11 Object 14 PC
R Radius 10F1 Acquisition part 10F2 Judgment part 10F3 Specific part D1 Shape data

特開2014‐46433号公報Japanese Unexamined Patent Publication No. 2014-46433

Claims (6)

物体をピッキングできる装置と、前記装置を制御する1つ以上の情報処理装置とを有する情報処理システムであって、
前記物体の形状を示す形状データを取得する取得部と、
前記形状データに基づいて、前記物体の形状のうち、平面となる部分を判断する判断部と、
前記平面に基づいて、前記ピッキングを行う箇所を特定する特定部と、
を備え
前記特定部は、
前記平面が中空を含む形状であると、
前記平面の内周を構成する境界線からオフセットした線分を生成する、
情報処理システム。
An information processing system having a device capable of picking an object and one or more information processing devices for controlling the device.
An acquisition unit that acquires shape data indicating the shape of the object,
A judgment unit that determines a flat portion of the shape of the object based on the shape data.
A specific part that identifies the picking location based on the plane, and
Equipped with
The specific part is
When the plane has a shape including a hollow,
A line segment offset from the boundary line constituting the inner circumference of the plane is generated.
Information processing system.
前記特定部は、
前記平面の外周を構成する境界線からオフセットした線分を生成する請求項1に記載の情報処理システム。
The specific part is
The information processing system according to claim 1, wherein a line segment offset from a boundary line constituting the outer circumference of the plane is generated.
前記特定部は、
前記平面に他の面が干渉する場合には、前記平面と、前記他の面との境界線を前記平面に射影した射影線からオフセットした線分を生成する請求項1又は2に記載の情報処理システム。
The specific part is
The information according to claim 1 or 2 , wherein when another surface interferes with the plane, a line segment that offsets the boundary line between the plane and the other surface from the projection line projected on the plane is generated. Processing system.
前記特定部は、前記線分に基づいて、前記ピッキングを行う箇所を特定する請求項1乃至3のいずれか1項に記載の情報処理システム。 The information processing system according to any one of claims 1 to 3 , wherein the specific unit specifies a location where the picking is performed based on the line segment. 物体をピッキングできる装置と、前記装置を制御する1つ以上の情報処理装置とを有する情報処理システムが行うピッキング箇所特定方法であって、
情報処理システムが、前記物体の形状を示す形状データを取得する取得手順と、
情報処理システムが、前記形状データに基づいて、前記物体の形状のうち、平面となる部分を判断する判断手順と、
情報処理システムが、前記平面に基づいて、前記ピッキングを行う箇所を特定する特定手順と
を含み、
前記特定手順は、
前記平面が中空を含む形状であると、
前記平面の内周を構成する境界線からオフセットした線分を生成する、
ピッキング箇所特定方法。
A method for identifying a picking location performed by an information processing system having a device capable of picking an object and one or more information processing devices for controlling the device.
An acquisition procedure in which the information processing system acquires shape data indicating the shape of the object, and
A judgment procedure in which the information processing system determines a flat portion of the shape of the object based on the shape data.
The information processing system includes a specific procedure for identifying the picking location based on the plane.
The specific procedure is
When the plane has a shape including a hollow,
A line segment offset from the boundary line constituting the inner circumference of the plane is generated.
How to identify the picking location.
物体をピッキングできる装置と、前記装置を制御する1つ以上の情報処理装置とを有するコンピュータにピッキング箇所特定方法を実行させるためのプログラムであって、
コンピュータが、前記物体の形状を示す形状データを取得する取得手順と、
コンピュータが、前記形状データに基づいて、前記物体の形状のうち、平面となる部分を判断する判断手順と、
コンピュータが、前記平面に基づいて、前記ピッキングを行う箇所を特定する特定手順と
を実行させ
前記特定手順は、
前記平面が中空を含む形状であると、
前記平面の内周を構成する境界線からオフセットした線分を生成する、
プログラム。
A program for causing a computer having a device capable of picking an object and one or more information processing devices for controlling the device to execute a picking location identification method.
An acquisition procedure in which a computer acquires shape data indicating the shape of the object, and
A judgment procedure in which a computer determines a flat portion of the shape of the object based on the shape data.
The computer is made to perform a specific procedure for identifying the picking location based on the plane .
The specific procedure is
When the plane has a shape including a hollow,
A line segment offset from the boundary line constituting the inner circumference of the plane is generated.
program.
JP2018010886A 2018-01-25 2018-01-25 Information processing system, picking location identification method and program Active JP7073742B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018010886A JP7073742B2 (en) 2018-01-25 2018-01-25 Information processing system, picking location identification method and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018010886A JP7073742B2 (en) 2018-01-25 2018-01-25 Information processing system, picking location identification method and program

Publications (2)

Publication Number Publication Date
JP2019126886A JP2019126886A (en) 2019-08-01
JP7073742B2 true JP7073742B2 (en) 2022-05-24

Family

ID=67471627

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018010886A Active JP7073742B2 (en) 2018-01-25 2018-01-25 Information processing system, picking location identification method and program

Country Status (1)

Country Link
JP (1) JP7073742B2 (en)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008217544A (en) 2007-03-06 2008-09-18 Yaskawa Electric Corp Object detection method, object detector, and robot provided with the same
JP2009107043A (en) 2007-10-29 2009-05-21 Canon Inc Gripping device and method of controlling gripping device
JP2010082782A (en) 2008-10-02 2010-04-15 Nec Electronics Corp Suction device and suction method
WO2012066819A1 (en) 2010-11-17 2012-05-24 三菱電機株式会社 Work pick-up apparatus
JP2015039767A (en) 2013-08-23 2015-03-02 株式会社ダイフク Article takeout facility
JP2015079374A (en) 2013-10-17 2015-04-23 セイコーエプソン株式会社 Object recognition device, object recognition method, object recognition program, robot system, and robot
JP2016093879A (en) 2014-11-17 2016-05-26 富士通株式会社 Gripping plan decision program, gripping plan determination method, and engineering support device
JP2016179534A (en) 2015-03-24 2016-10-13 キヤノン株式会社 Information processor, information processing method, program
JP2017513727A (en) 2014-04-25 2017-06-01 シルアヌ Automatic gripping method and equipment for target

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008217544A (en) 2007-03-06 2008-09-18 Yaskawa Electric Corp Object detection method, object detector, and robot provided with the same
JP2009107043A (en) 2007-10-29 2009-05-21 Canon Inc Gripping device and method of controlling gripping device
JP2010082782A (en) 2008-10-02 2010-04-15 Nec Electronics Corp Suction device and suction method
WO2012066819A1 (en) 2010-11-17 2012-05-24 三菱電機株式会社 Work pick-up apparatus
JP2015039767A (en) 2013-08-23 2015-03-02 株式会社ダイフク Article takeout facility
JP2015079374A (en) 2013-10-17 2015-04-23 セイコーエプソン株式会社 Object recognition device, object recognition method, object recognition program, robot system, and robot
JP2017513727A (en) 2014-04-25 2017-06-01 シルアヌ Automatic gripping method and equipment for target
JP2016093879A (en) 2014-11-17 2016-05-26 富士通株式会社 Gripping plan decision program, gripping plan determination method, and engineering support device
JP2016179534A (en) 2015-03-24 2016-10-13 キヤノン株式会社 Information processor, information processing method, program

Also Published As

Publication number Publication date
JP2019126886A (en) 2019-08-01

Similar Documents

Publication Publication Date Title
US20150127162A1 (en) Apparatus and method for picking up article randomly piled using robot
US9026234B2 (en) Information processing apparatus and information processing method
US20200134830A1 (en) Robotic system with automated package registration mechanism and minimum viable region detection
JP6880950B2 (en) Depression detection device, transfer device, and recess detection method
US10805546B2 (en) Image processing system, image processing device, and image processing program
JP6427972B2 (en) Robot, robot system and control device
JP5998058B2 (en) Correction of errors in measured values obtained using a coordinate positioning device
JP2018176334A (en) Information processing device, measurement device, system, interference determination method and article manufacturing method
JP6346167B2 (en) Analog measurement scanning method in machine tools and corresponding machine tool apparatus
JP6348097B2 (en) Work position and orientation calculation device and handling system
TWI677413B (en) Calibration method and device for robotic arm system
JP7102115B2 (en) Calibration method, calibration device, 3D measuring device, 3D visual measuring device, robot end effector, program, recording medium
CN109514351B (en) Calibration method of five-axis machine tool
KR20190055777A (en) Robot control method and apparatus
JP2016170050A (en) Position attitude measurement device, position attitude measurement method and computer program
JP2021193400A (en) Method for measuring artefact
JP7331527B2 (en) Apparatus, method and program for determining robot motion
JP7073742B2 (en) Information processing system, picking location identification method and program
JP2009128097A (en) Method and device for recognizing flash or deficiency, and deflashing method and device
KR101957026B1 (en) Guagueline Digitizing Method for Upper
JP2019215180A (en) Measurement system and measurement method
Kwon et al. Rescan strategy for time efficient view and path planning in automated inspection system
JP6474587B2 (en) Measurement value correction method, measurement value correction program, and measurement apparatus
JP6405195B2 (en) Measurement value correction method, measurement value correction program, and measurement apparatus
JP6115157B2 (en) Program, arithmetic device and arithmetic method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201023

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210721

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210921

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211118

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: 20220412

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220425

R151 Written notification of patent or utility model registration

Ref document number: 7073742

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151