An object gripping apparatus includes an image capturing unit for capturing a region including a plurality of works, an obtaining unit for obtaining distance information of the region, a measurement unit for measuring three-dimensional positions/orientations of a plurality of gripping-candidate works out of the plurality of works based on the image and distance information, thereby generating three-dimensional position/orientation information, a selection unit for selecting a gripping-target work based on the three-dimensional position/orientation information, a gripping unit for gripping the gripping-target work, and an updating unit for updating the three-dimensional position/orientation information by measuring three-dimensional positions/orientations of the gripping-candidate works at a time interval during gripping of the gripping-target work. When the gripping ends, the next gripping-target work is selected based on the updated three-dimensional position/orientation information of the gripping-candidate works.
|
15. An object gripping method comprising:
an image capturing unit adapted to capture an image of a region including a plurality of objects;
an obtaining unit adapted to obtain distance information of the region including the plurality of objects;
a measurement unit adapted to measure three-dimensional positions and orientations of a plurality of holding candidate objects out of the plurality of objects based on the image and the distance information, thereby generating three-dimensional position and orientation information;
a selection unit adapted to select a holding target object from the holding candidate objects based on the three-dimensional position and orientation information measured by said measurement unit;
a holding unit adapted to hold the holding target object; and
an updating unit adapted to update the three-dimensional position and orientation information by measuring the three-dimensional positions and orientations of the holding candidate objects at a predetermined time interval during holding of the holding target object by said holding unit,
wherein when the holding by said holding unit has ended, said selection unit selects the next holding target object based on the three-dimensional position and orientation information of the holding candidate objects updated by said updating unit,
wherein when the holding by said holding unit has ended, and said updating unit determines that the three-dimensional positions and orientations of the holding candidate objects measured by said measurement unit have not varied,
said selection unit selects the next holding target object based on the three-dimensional position and orientation information measured by said measurement unit.
11. An object gripping apparatus comprising:
an image capturing unit adapted to capture an image of a region including a plurality of objects;
an obtaining unit adapted to obtain distance information of the region including the plurality of objects;
a measurement unit adapted to measure three-dimensional positions and orientations of a plurality of holding candidate objects out of the plurality of objects based on the image and the distance information, thereby generating three-dimensional position and orientation information;
a selection unit adapted to select a holding target object from the holding candidate objects based on the three-dimensional position and orientation information measured by said measurement unit;
a holding unit adapted to hold the holding target object; and
an updating unit adapted to update the three-dimensional position and orientation information by measuring the three-dimensional positions and orientations of the holding candidate objects at a predetermined time interval during holding of the holding target object by said holding unit,
wherein when the holding by said holding unit has ended, said selection unit selects the next holding target object based on the three-dimensional position and orientation information of the holding candidate objects updated by said updating unit,
wherein when the holding by said holding unit has ended, and said updating unit determines that the three-dimensional positions and orientations of the holding candidate objects measured by said measurement unit have not varied,
said selection unit selects the next holding target object based on the three-dimensional position and orientation information measured by said measurement unit.
16. An object gripping storage medium comprising:
an image capturing unit adapted to capture an image of a region including a plurality of objects;
an obtaining unit adapted to obtain distance information of the region including the plurality of objects;
a measurement unit adapted to measure three-dimensional positions and orientations of a plurality of holding candidate objects out of the plurality of objects based on the image and the distance information, thereby generating three-dimensional position and orientation information;
a selection unit adapted to select a holding target object from the holding candidate objects based on the three-dimensional position and orientation information measured by said measurement unit;
a holding unit adapted to hold the holding target object; and
an updating unit adapted to update the three-dimensional position and orientation information by measuring the three-dimensional positions and orientations of the holding candidate objects at a predetermined time interval during holding of the holding target object by said holding unit,
wherein when the holding by said holding unit has ended, said selection unit selects the next holding target object based on the three-dimensional position and orientation information of the holding candidate objects updated by said updating unit,
wherein when the holding by said holding unit has ended, and said updating unit determines that the three-dimensional positions and orientations of the holding candidate objects measured by said measurement unit have not varied,
said selection unit selects the next holding target object based on the three-dimensional position and orientation information measured by said measurement unit.
9. A method of controlling an information processing apparatus, the method comprising:
obtaining distance information of a region including a plurality of objects;
selecting a plurality of holding candidate objects from the plurality of objects based on the distance information;
measuring three-dimensional position and orientation information of the selected plurality of holding candidate objects based on the distance information;
selecting a holding target object from the plurality of holding candidate objects and select one or more tracking target objects other than the selected holding target object from the plurality of holding candidate objects, based on the three-dimensional position and orientation information measured in the measuring;
holding the holding target object; and
updating the three-dimensional position and orientation information of the tracking target objects by obtaining a visible image including the tracking target objects at a predetermined time interval during holding of the holding target object in the gripping without obtaining distance information newly, wherein the updating is performed by a different method from the measurement,
wherein in the selecting, when the holding in the holding step has ended, a next holding target object is selected based on the three-dimensional position and orientation information of the tracking target objects updated in the updating, wherein in the updating, the three-dimensional position and orientation information of the tracking target objects is updated so that a difference between a position in the visible image where registered model data of the tracking target objects is projected to the position of the target tracking objects in the visible image decreases.
10. A non-transitory computer-readable storage medium storing a computer program that causes a computer to execute steps of an object gripping apparatus control method, the method comprising:
obtaining distance information of a region including a plurality of objects;
selecting a plurality of holding candidate objects from the plurality of objects based on the distance information;
measuring three-dimensional position and orientation information of the selected plurality of holding candidate objects based on the distance information;
selecting a holding target object from the plurality of holding candidate objects and select one or more tracking target objects other than the selected holding target object from the plurality of holding candidate objects, based on the three-dimensional position and orientation information measured in the measuring;
holding the holding target object; and
updating the three-dimensional position and orientation information of the tracking target objects by obtaining a visible image including the tracking target objects at a predetermined time interval during holding of the holding target object in the gripping without obtaining distance information newly, wherein the updating is performed by a different method from the measurement,
wherein in the selecting, when the holding in the holding step has ended, a next holding target object is selected based on the three-dimensional position and orientation information of the tracking target objects updated in the updating, wherein in the updating, the three-dimensional position and orientation information of the tracking target objects is updated so that a difference between a position in the visible image where registered model data of the tracking target objects is projected to the position of the target tracking objects in the visible image decreases.
1. An information processing apparatus comprising:
an obtaining unit adapted to obtain distance information of a region including a plurality of objects;
a first selection unit configured to select a plurality of holding candidate objects from the plurality of objects based on the distance information;
a measurement unit adapted to measure three-dimensional position and orientation information of the selected plurality of holding candidate objects based on the distance information;
a second selection unit adapted to select a holding target object from the plurality of holding candidate objects and select one or more tracking target objects other than the selected holding target object from the plurality of holding candidate objects, based on the three-dimensional position and orientation information measured by said measurement unit;
a controlling unit adapted to cause a holding unit to hold the holding target object; and
an updating unit adapted to update the three-dimensional position and orientation information of the tracking target objects by obtaining a visible image including the tracking target objects at a predetermined time interval during holding of the holding target object by said holding unit without obtaining distance information newly, wherein the update by said updating unit is performed by a different method from the measurement by said measurement unit,
wherein when the holding by said holding unit has ended, said second selection unit selects a next holding target object based on the three-dimensional position and orientation information of the tracking target objects updated by said updating unit, wherein the updating unit updates the three-dimensional position and orientation information of the tracking target objects so that a difference between a position in the visible image where registered model data of the tracking target objects is projected to the position of the target tracking objects in the visible image decreases.
2. The apparatus according to
when the holding by said holding unit has ended, and the three-dimensional position and orientation information of the tracking target objects updated by said updating unit have not varied from the three-dimensional position and orientation information of the tracking target objects measured by said measurement unit,
said second selection unit selects the next holding target object from the tracking target objects based on the three-dimensional position and orientation information measured by said measurement unit without obtaining distance information newly.
3. The apparatus according to
when the holding by said holding unit has ended and the three-dimensional position and orientation information of the tracking target objects updated by said updating unit have varied from the three-dimensional position and orientation information of the tracking target objects measured by said measurement unit,
said obtaining unit obtains distance information in the predetermined range including the target objects anew, based on the three-dimensional position and orientation information of the tracking target objects updated by said updating unit,
said measurement unit measures the three-dimensional positions and orientations of the tracking target objects anew based on the distance information and generates three-dimensional position and orientation information anew, and
said second selection unit selects the next holding target object from the tracking target objects based on the anew measured three-dimensional position and orientation information.
4. The apparatus according to
a storage unit adapted to store three-dimensional geometric information of said holding unit; and
a calculation unit adapted to calculate, based on the three-dimensional geometric information stored in said storage unit, for each holding target object, a shielding ratio representing a ratio of an area of the holding candidate objects shielded by said holding unit to an area of the holding candidate objects when not shielded by said holding unit,
wherein said second selection unit selects the holding target object from the holding candidate objects, based on the three-dimensional position and orientation information measured by said measurement unit and the shielding ratio.
5. The apparatus according to
6. The apparatus according to
7. The apparatus according to
a unit adapted to obtain a visible image including the plurality of objects;
wherein said measurement unit measures the three-dimensional positions and orientations of the holding candidate objects based on the visible image and the distance information.
8. The apparatus according to
12. The apparatus according to
said updating unit updates the three-dimensional position and orientation information by further measuring a three-dimensional position and orientation of the holding target object, and
if said updating unit determines that the three-dimensional position and orientation of the holding target object have varied before holding the holding target object, said holding unit holds the holding target object based on the three-dimensional position and orientation information of the holding target object updated by said updating unit.
13. The apparatus according to
when the holding by said holding unit has ended, and said updating unit determines that the three-dimensional positions and orientations of the holding candidate objects measured by said measurement unit have varied,
said image capturing unit captures an image in a predetermined range including the holding candidate objects based on the three-dimensional position and orientation information of the holding candidate objects updated by said updating unit,
said obtaining unit obtains distance information in the predetermined range anew,
said measurement unit measures the three-dimensional positions and orientations of the holding candidate objects anew based on the image and the distance information, and
said selection unit selects the next holding target object based on the anew measured three-dimensional position and orientation information.
14. The apparatus according to
a storage unit adapted to store three-dimensional geometric information of said gripping unit; and
a calculation unit adapted to calculate, based on the three-dimensional geometric information stored in said storage unit, a shielding ratio representing a ratio of an area of the holding candidate objects shielded by said holding unit to an area of the holding candidate works when not shielded by said holding unit,
wherein said selection unit selects the holding target object from the holding candidate objects in ascending order of the shielding ratio based on the three-dimensional position and orientation information measured by said measurement unit.
|
1. Field of the Invention
The present invention relates to an object gripping apparatus for performing bin picking of piled works using an industrial machine such as a robot, a method of controlling the same, and a storage medium. The present invention particularly relates to an object gripping apparatus for picking works piling up irregularly on a tray while measuring their three-dimensional positions and orientations, a method of controlling the same, and a storage medium.
2. Description of the Related Art
There are many research reports about an apparatus for automatizing the part supply or assembly process by causing an industrial robot to pick works piling up irregularly on a tray. An example is Japanese Patent No. 03377465. In Japanese Patent No. 03377465, a robot performs picking by executing pattern matching using a three-dimensional model prepared in advance so as to recognize the position and orientation of a work. In Japanese Patent No. 03377465, the apparatus measures the three-dimensional position and orientation of only one work at a time. Hence, when bin-picking piled works, position and orientation measurement processing needs to be repeated as many times as the number of works stacked on the tray. To decrease the number of times of position and orientation measurement processing upon bin picking, a method of obtaining and holding the three-dimensional positions and orientations of a plurality of works by one measurement operation has been considered. In Journal of IHI technologies Vol. 48, No. 1 (2008-3), three-dimensional position and orientation recognition is done for a plurality of piled works having a complex shape.
However, when the three-dimensional positions and orientations of a plurality of works are measured at once, the measured positions and orientations of the works may vary due to interference that may occur between the robot arm and the picking target work at the time of work picking after the measurement. In this case, the work whose position and orientation have varied needs to be remeasured, resulting in time-consuming processing.
The present invention has been made in consideration of the above-described problem, and provides a technique of reducing the influence of a variation in the position and orientation of a work caused by interference upon picking.
According to one aspect of the present invention, there is provided an object gripping apparatus comprising: an image capturing unit adapted to capture an image of a region including a plurality of works; an obtaining unit adapted to obtain distance information of the region including the plurality of works; a measurement unit adapted to measure three-dimensional positions and orientations of a plurality of gripping candidate works out of the plurality of works based on the image and the distance information, thereby generating three-dimensional position and orientation information; a selection unit adapted to select a gripping target work from the gripping candidate works based on the three-dimensional position and orientation information measured by the measurement unit; a gripping unit adapted to grip the gripping target work; and an updating unit adapted to update the three-dimensional position and orientation information by measuring the three-dimensional positions and orientations of the gripping candidate works at a predetermined time interval during gripping of the gripping target work by the gripping unit, wherein when the gripping by the gripping unit has ended, the selection unit selects the next gripping target work based on the three-dimensional position and orientation information of the gripping candidate works updated by the updating unit.
According to one aspect of the present invention, there is provided a method of controlling an object gripping apparatus comprising: capturing an image of a region including a plurality of works; obtaining distance information of the region including the plurality of works; measuring three-dimensional positions and orientations of a plurality of gripping candidate works out of the plurality of works based on the image and the distance information, thereby generating three-dimensional position and orientation information; selecting a gripping target work from the gripping candidate works based on the three-dimensional position and orientation information measured in the measuring; gripping the gripping target work; and updating the three-dimensional position and orientation information by measuring the three-dimensional positions and orientations of the gripping candidate works at a predetermined time interval during gripping of the gripping target work in the gripping, wherein in the selecting, when the gripping in the gripping has ended, the next gripping target work is selected based on the three-dimensional position and orientation information of the gripping candidate works updated in the updating.
Further features of the present invention will be apparent from the following description of exemplary embodiments with reference to the attached drawings.
An exemplary embodiment(s) of the present invention will now be described in detail with reference to the drawings. It should be noted that the relative arrangement of the components, the numerical expressions and numerical values set forth in these embodiments do not limit the scope of the present invention unless it is specifically stated otherwise.
In the present invention, pile picking means an operation of gripping a plurality of irregularly arranged works using a robot arm functioning as an object gripping apparatus and moving them to a predetermined place. Note that at least one picking point (gripping point) to be gripped by the robot arm is set in advance for each work.
An object gripping apparatus according to the first embodiment obtains the positions and orientations of a plurality of picking candidate works (gripping candidate works) in advance, and during picking (gripping) of a gripping target work, tracks and updates the positions and orientations of the plurality of remaining picking candidate works.
The processing units of an object gripping apparatus 1100 according to the first embodiment will be explained with reference to
As shown in
The image capturing unit 1101 captures a visible image of piled target works 210 shown in
The distance information obtaining unit 1102 obtains the distance information of the piled target works 210 shown in
The three-dimensional position and orientation measurement unit 1103 detects a plurality of picking candidate works from the piled target works 210 based on the visible image captured by the image capturing unit 1101 and the distance information obtained by the distance information obtaining unit 1102. The three-dimensional position and orientation measurement unit 1103 then measures the three-dimensional positions and orientations of the plurality of detected picking candidate works to generate three-dimensional position and orientation information. The three-dimensional position and orientation measurement method will be described later.
The picking target work selection unit 1104 selects a work to be picked from the plurality of picking candidate works measured by the three-dimensional position and orientation measurement unit 1103.
During the picking operation of the picking unit 1106, the tracking unit 1105 tracks the coarse position/orientation of each of the candidate works other than the picking target work selected by the picking target work selection unit 1104, based on the three-dimensional position and orientation information measured by the three-dimensional position and orientation measurement unit 1103. The tracking method will be described later.
The picking unit 1106 operates, for example, a robot arm 203 shown in
The procedure of processing of the object gripping apparatus according to the first embodiment will be described next with reference to the flowchart of
In step S301, the image capturing unit 1101 captures the piled target works 210 using the global camera 201.
In step S302, the distance information obtaining unit 1102 obtains the distance information of the whole piled target works 210. The distance information obtaining method is not particularly limited. For example, the distance information can be obtained by active stereo measurement that time-serially projects a binary fringe pattern to divide the measurement space and thus obtains the distance information of a target region, as described in Kousuke Satou and Seiji Inokuchi, “Liquid crystal range finder. High speed range imaging system using liquid crystal shutter”, IEICE Transactions J71-D, No. 7, pp. 1249-1257, 1988-7. In the arrangement example shown in
In step S303, the three-dimensional position and orientation measurement unit 1103 detects the coarse positions/orientations of a plurality of picking candidate works from the piled target works 210 using the visible image obtained in step S301. The three-dimensional position and orientation of each picking candidate work are measured using the detected coarse position/orientation information and the distance information obtained in step S302. This step aims at detecting the three-dimensional positions and orientations of the plurality of picking candidate works. The measurement can be done using an arbitrary existing method. For example, Japanese Patent Laid-Open No. 2009-128201 proposes a method of estimating the coarse position/orientation of a target work using linear bright region information extracted from a visible image and estimating the three-dimensional position and orientation using the estimation result and distance information.
In step S304, the three-dimensional position and orientation measurement unit 1103 determines whether there exist one or more candidate works whose three-dimensional positions and orientations are detected in step S303. The process advances to step S305 upon determining that one or more candidate works exist (YES in step S304). The processing ends upon determining that no candidate work exists (NO in step S304).
In step S305, the picking target work selection unit 1104 selects one picking target work from the candidate works detected in step S303, based on the three-dimensional position and orientation information measured by the three-dimensional position and orientation measurement unit 1103 and a selection condition set for each three-dimensional position and orientation information. The candidate works other than the selected picking target work are set as tracking target works. The picking target work selection unit 1104 selects the picking target work based on the three-dimensional position and orientation information of each candidate work measured in step S303. In this embodiment, the candidate works are sequentially picked from the top of the pile. The target can easily be estimated from the depth information of the candidate works.
In step S306, the tracking unit 1105 starts tracking processing of the tracking target works after the robot arm has moved to above the picking target work selected in step S305 so as to be ready for picking. Note that tracking means processing of time-serially obtaining the image of the region including the piled target works 210 during picking and continuously estimating and updating the three-dimensional positions and orientations of the tracking target works from the obtained image. For example, the three-dimensional positions and orientations of the tracking target works are updated at a predetermined time interval. In this embodiment, the edges of CAD models of target works registered in the database 1200 are associated on the image, and the projection error is minimized, thereby performing tracking processing. At this time, the distance information is not used.
Note that interference between the arm and works or between works upon picking readily occurs for the works around the picking target work. For this reason, the tracking target works located on the periphery of the picking target work are supposed to easily vary their positions and orientations. Out of the tracking target works, only works on the periphery of the picking target work may undergo the tracking processing to reduce the calculation cost. The periphery may be, for example, a predetermined range from the picking target work.
In step S307, the picking unit 1106 controls picking processing of the picking target work in parallel to the tracking processing in step S306. The picking unit 1106 grips the predetermined picking point of the picking target work and moves it to a predetermined position. The next picking target work is selected from the works that have succeeded tracking.
Note that the tracking target work may be absent after the tracking processing is completed due to some reason when, for example, the track of a tracking target work is lost because of a tracking failure, or only one candidate work is measured in step S303.
Hence, in step S308, the picking target work selection unit 1104 determines whether a tracking target work exists. Upon determining that a tracking target work exists (YES in step S308), the process returns to step S305 to select the next picking target work. Upon determining that no tracking target work exists (NO in step S308), the process returns to step S301 to execute the processing of obtaining the visible image and distance information of the piled candidate works again.
Three-dimensional position and orientation estimation by tracking is done without using the distance information. For this reason, if the initial position and orientation of a tracking target work vary during picking, the accuracy of three-dimensional position and orientation estimation processing by tracking is assumed to be lower than the accuracy of three-dimensional position and orientation measurement processing in step S303. If a candidate work whose position and orientation have been measured using the distance information and a candidate work estimated by tracking are mixed, the candidate work measured using the distance information may preferentially be picked in the picking target work selection processing in step S305. For example, the selection condition may be set to, when picking the candidate works sequentially from the top of the pile, pick the work on the top of the pile out of the candidate works measured using the distance information. In addition, the selection condition may be set to, if no candidate work measured using the distance information exists, pick a candidate work estimated by tracking processing.
Alternatively, precise three-dimensional position and orientation measurement may be executed again after the picking processing. When it is determined in step S308 that a tracking target work exists, and it has varied the three-dimensional position and orientation from those measured in step S303, the distance information is obtained again only for the tracking target work and its periphery, thereby measuring the three-dimensional position and orientation. The periphery may be a predetermined range including the tracking target work. In this case as well, using the three-dimensional position and orientation information by tracking processing makes it possible to perform high-speed measurement as compared to three-dimensional position and orientation measurement for the entire piled target works 210.
In this way, the processing is repeated to pick the piled works until no more picking candidate work remains.
According to this embodiment, the positions and orientations of a plurality of candidate works are obtained at the time of candidate work detection. The pieces of position and orientation information of the plurality of candidate works are held independently of the presence/absence of interference between works or between works and the robot arm. This allows the time required for position and orientation measurement of the candidate works to be reduced and thus shorten the tact time necessary for picking the whole piled candidate works.
The second embodiment of the present invention will be described next. In the first embodiment, a plurality of candidate works are detected, and the candidate works other than a picking target work are tracked, thereby holding the position and orientation information of the plurality of candidate works. This reduces the calculation time required to perform three-dimensional position and orientation measurement in each picking operation. In the picking operation, however, when the robot arm exists between the global camera and a tracking target work, and the three-dimensional position and orientation of the shielded tracking target work vary, it may be impossible to track the position and orientation of the tracking target work.
In this embodiment, the picking target work is selected so as to reduce tracking processing failures that occur when a tracking target work is shielded by the robot arm during picking processing. This aims at suppressing losing the track of a candidate work due to a tracking failure.
The arrangement of the object gripping apparatus is the same as in the first embodiment, and a description thereof will be omitted. In this embodiment, the picking target work is selected such that the tracking failure ratio lowers. Hence, the algorithm for selecting the picking target work and tracking target works in S305 of
First, necessary data are obtained in advance.
In step S501, a picking target work selection unit 1104 obtains the three-dimensional position and orientation information of a plurality of candidate works measured by a three-dimensional position and orientation measurement unit 1103.
In step S502, the picking target work selection unit 1104 obtains the picking point information of the candidate works, the three-dimensional position and orientation information of the global camera, the CAD data of the robot arm, and the CAD data of the work, which are prepared in a database 1200 in advance. CAD data is the three-dimensional geometric information of the robot arm or the work.
The processes of steps S503 to S507 are repetitively executed as many times as the number N of detected candidate works.
In step S503, the picking target work selection unit 1104 selects an arbitrary work P(i) (i=1 to N) as the picking candidate work.
In step S504, the picking target work selection unit 1104 calculates, based on the gripping position information of the candidate works and the three-dimensional position and orientation information of the work P(i), the three-dimensional position and orientation of the robot arm when picking the work P(i).
In step S505, the picking target work selection unit 1104 obtains, based on the image obtained by the global camera, a region of the image region to be shielded by the robot arm at the time of picking, and detects candidate works included in the shielded region. More specifically, based on the three-dimensional position and orientation information of the robot arm calculated in step S504, the CAD data of the robot arm, and the three-dimensional position and orientation information of the global camera, the picking target work selection unit 1104 obtains a portion of the piled work region, which is to be shielded from the global camera by the robot arm. In addition, the picking target work selection unit 1104 detects candidate works included in the shielded region using the three-dimensional position and orientation information of the plurality of candidate works measured by the three-dimensional position and orientation measurement unit 1103.
In step S506, the picking target work selection unit 1104 obtains the ratio of the shielded region on the candidate works detected in step S505, based on the image obtained by the global camera. The ratio (shielding ratio) of the shielded region to the surface area of the candidate works on the two-dimensional image is calculated. Let S(i) be the sum of the shielding ratios of all candidate works except the work i when picking the work i.
S(i) is calculated for the N candidate works in this way. In step S507, the picking target work selection unit 1104 selects the candidate work P(i) having the minimum value S(i) as the picking target work. If there are a plurality of candidate works having the same value S(i), the work on the top of the pile is selected, as in the first embodiment.
According to this embodiment, it is possible to decrease the number of tracking target works to be shielded by the robot arm upon picking so as to be unobservable from the global camera. In addition, decreasing the number of works that fail in tracking allows the number of times three-dimensional position and orientation measurement processing is executed to be reduced.
The third embodiment of the present invention will be described. When picking piled works, the picking target work itself may move due to, for example, interference with the robot arm before it grips the picking target work. In such a case, picking fails at a high probability. In this embodiment, tracking processing is performed not only for the tracking target works but also for the picking target work to update the position and orientation information up to the moment just before picking processing. This allows to correctly transit to repicking processing and thus prevent a picking failure even when the position and orientation of the picking target work vary during picking.
The procedure of processing of an object gripping apparatus according to this embodiment will be described with reference to the flowchart of
The processes of steps S301 to S304 are the same as in the first embodiment.
In step S305, a picking target work selection unit 1104 selects the picking target work and tracking target works from the candidate works detected in step S303. When tracking the picking target work, it needs to be included in the field of view of the global camera. Hence, the picking target work is preferably not shielded by the robot arm when observed from the global camera. In this embodiment, the picking target work is selected based on the shielding ratio of the robot arm, as in the second embodiment. The procedure of processing is the same as described in the second embodiment. In the second embodiment, the sum S(i) of the shielding ratios is calculated based on the shielding ratios of (N−1) works except the picking target work i. In the third embodiment, however, the sum of the shielding ratios is calculated based on the shielding ratios of N works including the picking target work i. A weight may be added to the shielding ratio of the picking target work i so that the work i is hardly shielded.
In step S306, a tracking unit 1105 starts tracking the tracking target works and the picking target work. At this time, tracking of the picking target work selected in step S305 may be impossible because it is shielded by the robot arm. In this case, only tracking of the tracking target works is executed in step S306 so that the object gripping apparatus operates as in the first embodiment.
In step S307, a picking unit 1106 picks the picking target work. The procedure of processing when the picking target work is successfully tracked in step S306 will be explained with reference to the flowchart of
In step S701, the picking unit 1106 starts picking processing of the picking target work.
In step S702, the picking unit 1106 determines whether the position and orientation of the picking target work have varied before completion of picking. Upon determining that the position and orientation of the picking target work have varied before completion of picking (YES in steps S702), the process advances to step S703. Upon determining that the position and orientation of the picking target work have not varied before completion of picking (NO in steps S702), that is, no variation has occurred during picking, the process advances to step S706.
In step S703, the picking unit 1106 determines whether tracking of the picking target work whose position and orientation have varied has succeeded. Upon determining that tracking of the picking target work has succeeded (YES in step S703) the process advances to step S704. Upon determining that tracking of the picking target work has failed (NO in step S703), the process advances to step S705.
In step S704, the picking unit 1106 updates the position and orientation information of the picking target work to that obtained by tracking, and the process returns to step S701.
In step S705, the picking unit 1106 excludes the current picking target work from the candidate works because picking is impossible due to loss of position and orientation information, and ends the picking processing end.
In step S706, the picking unit 1106 grips the picking target work, moves it to a predetermined position, and ends the picking processing.
The process of step S308 is the same as in the first embodiment, and a description thereof will be omitted.
According to this embodiment, tracking the picking target work enables to suppress a picking failure caused by a variation in the position and orientation of the picking target work at the time of picking.
According to the present invention, it is possible to reduce the influence of a variation in the position and orientation of a work caused by interference upon picking.
Aspects of the present invention can also be realized by a computer of a system or apparatus (or devices such as a CPU or MPU) that reads out and executes a program recorded on a memory device to perform the functions of the above-described embodiment(s), and by a method, the steps of which are performed by a computer of a system or apparatus by, for example, reading out and executing a program recorded on a memory device to perform the functions of the above-described embodiment(s). For this purpose, the program is provided to the computer for example via a network or from a recording medium of various types serving as the memory device (for example, computer-readable storage medium).
While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.
This application claims the benefit of Japanese Patent Application No. 2010-279868, filed on Dec. 15, 2010, which is hereby incorporated by reference herein in its entirety.
Mitarai, Yusuke, Iio, Yuichiro
Patent | Priority | Assignee | Title |
10040199, | Aug 25 2015 | Canon Kabushiki Kaisha | Apparatus and method for determining work to be picked |
10335951, | Jul 29 2015 | Canon Kabushiki Kaisha | Information processing apparatus, information processing method, robot control apparatus, and robot system |
10350752, | Mar 13 2017 | Fanuc Corporation | Robot system, measurement data processing device and measurement data processing method for picking out workpiece using measurement data corrected by means of machine learning |
10894324, | Apr 10 2017 | Canon Kabushiki Kaisha | Information processing apparatus, measuring apparatus, system, interference determination method, and article manufacturing method |
11390469, | Mar 20 2018 | Fanuc Corporation | Article takeout apparatus and article takeout method using sensor and robot |
11845194, | Sep 25 2017 | Fanuc Corporation; Preferred Networks, Inc. | Robot system and workpiece picking method |
9984291, | Mar 24 2015 | Canon Kabushiki Kaisha | Information processing apparatus, information processing method, and storage medium for measuring a position and an orientation of an object by using a model indicating a shape of the object |
Patent | Priority | Assignee | Title |
4402053, | Sep 25 1980 | Board of Regents for Education for the State of Rhode Island | Estimating workpiece pose using the feature points method |
4412293, | Mar 30 1981 | Robot system which acquires cylindrical workpieces from bins | |
4486842, | Feb 12 1981 | Regie Nationale des Usines Renault | Apparatus and procedure for locating three-dimensional objects packed in bulk for purposes of controlling a gripping terminal |
4985846, | May 11 1989 | Acoustical/optical bin picking system | |
6328523, | Apr 21 1998 | Fanuc Ltd | Apparatus for picking up articles using a vision controlled robot |
6665588, | Jul 19 2001 | Fanuc Ltd. | Workpiece unloading apparatus |
6845296, | Jul 24 2002 | Fanuc Ltd | Object taking out apparatus |
7123992, | Nov 11 2002 | Fanuc Ltd | Article pickup device |
7177459, | Apr 08 1999 | Fanuc Ltd | Robot system having image processing function |
7203573, | Dec 13 2002 | Fanuc Ltd | Workpiece taking-out apparatus |
7313464, | Sep 05 2006 | Omron Corporation | Bin-picking system for randomly positioned objects |
7474939, | Jan 30 2003 | Fanuc Ltd | Object taking-out apparatus |
7502504, | Oct 17 2002 | Fanuc Ltd | Three-dimensional visual sensor |
7766828, | Oct 27 2004 | Canon Kabushiki Kaisha | Estimation apparatus and its control method |
7844104, | Sep 23 2002 | Method for establishing a data collection and method and device for gripping an object | |
7957580, | Feb 01 2006 | Fanuc Ltd | Workpiece picking device |
7966094, | Sep 29 2006 | Fanuc Ltd | Workpiece picking apparatus |
7983487, | Nov 07 2007 | Mitsubishi Electric Research Laboratories, Inc | Method and system for locating and picking objects using active illumination |
7996114, | May 29 2006 | Fanuc Ltd | Workpiece picking device and method |
8098928, | Mar 30 2007 | Fanuc Ltd | Apparatus for picking up objects |
8295975, | Jul 04 2008 | Fanuc Ltd | Object picking device |
8315739, | Dec 15 2007 | ABB AG | Determining the position of an object |
8472698, | Nov 24 2009 | Mitsubishi Electric Research Laboratories, Inc | System and method for determining poses of objects |
8504191, | Oct 10 2008 | HONDA MOTOR CO , LTD | Method for picking up work pieces |
8554359, | Jun 03 2010 | Kabushiki Kaisha Yaskawa Denki | Transfer apparatus |
8660685, | Oct 26 2009 | Kabushiki Kaisha Yaskawa Denki | Robot system and workpiece picking method |
20040041808, | |||
20050071048, | |||
20060104788, | |||
20080211904, | |||
20080253612, | |||
20110037984, | |||
20120165986, | |||
JP1183395, | |||
JP2000293695, | |||
JP2009128201, | |||
JP2010120141, | |||
JP3377465, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Dec 02 2011 | IIO, YUICHIRO | Canon Kabushiki Kaisha | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 027922 | /0762 | |
Dec 02 2011 | MITARAI, YUSUKE | Canon Kabushiki Kaisha | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 027922 | /0762 | |
Dec 06 2011 | Canon Kabushiki Kaisha | (assignment on the face of the patent) | / |
Date | Maintenance Fee Events |
Sep 20 2019 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Sep 20 2023 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
Date | Maintenance Schedule |
Apr 05 2019 | 4 years fee payment window open |
Oct 05 2019 | 6 months grace period start (w surcharge) |
Apr 05 2020 | patent expiry (for year 4) |
Apr 05 2022 | 2 years to revive unintentionally abandoned end. (for year 4) |
Apr 05 2023 | 8 years fee payment window open |
Oct 05 2023 | 6 months grace period start (w surcharge) |
Apr 05 2024 | patent expiry (for year 8) |
Apr 05 2026 | 2 years to revive unintentionally abandoned end. (for year 8) |
Apr 05 2027 | 12 years fee payment window open |
Oct 05 2027 | 6 months grace period start (w surcharge) |
Apr 05 2028 | patent expiry (for year 12) |
Apr 05 2030 | 2 years to revive unintentionally abandoned end. (for year 12) |