WO2021124445A1 - 情報処理装置、ワーク認識装置およびワーク取り出し装置 - Google Patents

情報処理装置、ワーク認識装置およびワーク取り出し装置 Download PDF

Info

Publication number
WO2021124445A1
WO2021124445A1 PCT/JP2019/049393 JP2019049393W WO2021124445A1 WO 2021124445 A1 WO2021124445 A1 WO 2021124445A1 JP 2019049393 W JP2019049393 W JP 2019049393W WO 2021124445 A1 WO2021124445 A1 WO 2021124445A1
Authority
WO
WIPO (PCT)
Prior art keywords
gripping
posture
work
information
evaluation
Prior art date
Application number
PCT/JP2019/049393
Other languages
English (en)
French (fr)
Inventor
亮輔 川西
彩佳里 大島
泰憲 櫻本
智樹 玉田
Original Assignee
三菱電機株式会社
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 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to DE112019007852.6T priority Critical patent/DE112019007852B4/de
Priority to CN201980102883.8A priority patent/CN114845844B/zh
Priority to JP2020521394A priority patent/JP6758540B1/ja
Priority to PCT/JP2019/049393 priority patent/WO2021124445A1/ja
Publication of WO2021124445A1 publication Critical patent/WO2021124445A1/ja

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1612Programme controls characterised by the hand, wrist, grip control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • B25J9/1666Avoiding collision or forbidden zones
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39271Ann artificial neural network, ffw-nn, feedforward neural network
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39514Stability of grasped objects
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40053Pick 3-D object from pile of objects

Definitions

  • the present invention relates to an information processing device, a work recognition device, and a work take-out device that determine a position and a posture to be taken by a gripping mechanism.
  • Patent Document 1 includes a hand that is a gripping mechanism for gripping a work, and a work taking-out device that determines a gripping position / posture based on three-dimensional measurement data acquired by three-dimensionally measuring bulk workpieces. It is disclosed.
  • the gripping position posture is a position and a posture to be taken by the hand when gripping the work.
  • the work taking-out device according to Patent Document 1 evaluates the possibility of successful grasping by applying the hand model to the three-dimensional measurement data.
  • the work taking-out device according to Patent Document 1 determines the gripping position / posture based on the score which is the evaluation result of the possibility of successful gripping.
  • the gripping position and posture at which the work can be stably gripped will differ for each work, making it difficult to evaluate the possibility of successful gripping. For example, even if the gripping position / posture is determined so as to grip the portion near the center of gravity of the work, depending on the work, gripping the portion other than the vicinity of the center of gravity may enable more stable gripping.
  • the work taking-out device can accurately evaluate whether or not stable gripping is possible for a work having a small variation in the shape of the work, for example, an industrial part. , If there are variations in the shape of the work, accurate evaluation becomes difficult. Therefore, according to the prior art, there is a problem that it is difficult for the work taking-out device to determine the position and posture of the gripping mechanism that enables the work to be stably gripped for the work having a variation in shape.
  • the present invention has been made in view of the above, and an information processing device capable of determining the position and orientation of a gripping mechanism capable of stably gripping each of workpieces having various shapes can be obtained.
  • the purpose is acoustic waveform, a gripping mechanism, and a gripping mechanism capable of stably gripping each of workpieces having various shapes.
  • the information processing apparatus has a position and a position to be taken by the gripping mechanism at the time of gripping based on the measurement data of the work to be gripped by the gripping mechanism.
  • the position / orientation determination unit that determines the gripping position / orientation to be taken by the gripping mechanism based on the evaluation value, and the data set in which the measurement data for each work and the gripping position / orientation information for each work are associated with each other.
  • the evaluation value calculation unit calculates the evaluation value by inputting the information of the candidate gripping position / posture and the measurement data into the gripping evaluation model.
  • the information processing device has the effect of being able to determine the position and orientation of the gripping mechanism that enables stable gripping of each of the workpieces having different shapes.
  • FIG. 1 shows the structure of the work take-out apparatus which concerns on Embodiment 1 of this invention.
  • Block diagram of the work taking-out device according to the first embodiment A flowchart showing an operation procedure of the work taking-out device according to the first embodiment.
  • the first figure for demonstrating the recognition of the gripping position posture by the work take-out apparatus which concerns on Embodiment 1.
  • FIG. 2 for explaining recognition of the gripping position posture by the work taking-out device according to the first embodiment.
  • FIG. 1 is a diagram showing a configuration of a work taking-out device according to a first embodiment of the present invention.
  • the work taking-out device 1 according to the first embodiment takes out a plurality of works 7 bulk in the box 8 one by one.
  • Each work 7 is a target of gripping by the hand 6.
  • the work 7 is a product or product having individual differences in shape.
  • An example of the work 7 is a food that can be sorted into pieces.
  • the user is a business operator who undertakes the construction or operation of a system including the work take-out device 1, or a production engineer who uses the work take-out device 1.
  • the work taking-out device 1 includes a robot 2 which is an industrial robot, a controller 3 which controls the robot 2, a computer 4 which is an information processing device, and a sensor 5 which is a three-dimensional vision sensor.
  • the robot 2, the controller 3, the computer 4, and the sensor 5 are connected to each other so as to be able to communicate with each other.
  • the robot 2 has a hand 6 which is a gripping mechanism.
  • the hand 6 is attached to the tip of the arm of the robot 2.
  • the robot 2 moves the hand 6 within the movable area of the robot 2 and changes the posture of the hand 6.
  • the controller 3 controls the arm and the hand 6 of the robot 2.
  • the hand 6 has a mechanism for sandwiching the work 7 by two or a plurality of claws that can be opened and closed.
  • the hand 6 may have a mechanism for sucking the work 7 by generating a suction force.
  • the hand 6 may have a mechanism for inserting two or a plurality of claws into the hole to open the claws and hold the work 7.
  • the computer 4 and the sensor 5 constitute a work recognition device that recognizes the position of the work 7 and the posture of the work 7.
  • the work recognition device also recognizes the position and posture to be taken by the hand 6 when the hand 6 grips the work 7.
  • the sensor 5 acquires the three-dimensional measurement data of the work 7 by observing the scene including the work 7.
  • the sensor 5 generates scene information including the three-dimensional measurement data of the work 7.
  • the sensor 5 outputs the generated scene information to the computer 4.
  • the senor 5 is a stereo camera with two or more eyes.
  • the sensor 5 is an active stereo camera equipped with a light projecting unit such as a laser or a projector, a device using a time-of-flight method, a factor decomposition method, a device using the Structure from Motion or Structure and Motion method, a motion stereo camera, and the like. It may be a device using the visual volume crossing method.
  • the sensor 5 may be any device that can acquire three-dimensional data in an arbitrary area.
  • the computer 4 is an information processing device that performs arithmetic processing for recognizing the gripping position / posture based on the three-dimensional measurement data.
  • the gripping position / posture recognized by the computer 4 is an actual gripping position / posture to be taken by the hand 6 when the hand 6 grips the work 7.
  • the computer 4 is a computer such as a personal computer.
  • a program for recognizing the gripping position / posture is installed in the computer 4.
  • FIG. 2 is a block diagram of the work taking-out device according to the first embodiment.
  • FIG. 2 shows a functional configuration of the computer 4 and a hardware configuration for realizing the functional configuration of the computer 4.
  • the computer 4 is an interface (InterFace: I /) that is responsible for transmitting and receiving information between a processor 10 that is a processing unit that executes various processes, a memory 11 that is a storage unit that stores information, and an external device of the computer 4.
  • F has 12 and.
  • the processor 10 is a CPU (Central Processing Unit).
  • the processor 10 may be a processing device, an arithmetic unit, a microprocessor, a microcomputer, or a DSP (Digital Signal Processor).
  • the memory 11 includes RAM (Random Access Memory), ROM (Read Only Memory), flash memory, EPROM (Erasable Programmable Read Only Memory) or EEPROM (registered trademark) (Electrically Erasable Programmable Read Only Memory), HDD (Hard Disk Drive). Or SSD (Solid State Drive) is included.
  • the program for recognizing the gripping position / posture is stored in the memory 11.
  • the processor 10 executes a program stored in the memory 11.
  • FIG. 2 shows a functional configuration realized by using the processor 10.
  • the computer 4 includes a candidate detection unit 13, an evaluation value calculation unit 14, a position / orientation determination unit 15, a data set acquisition unit 16, a performance acquisition unit 17, and a learning unit 18, which are functional units realized by using the processor 10. Be prepared.
  • Each function of the candidate detection unit 13, the evaluation value calculation unit 14, the position / orientation determination unit 15, the data set acquisition unit 16, the achievement acquisition unit 17, and the learning unit 18 is realized by a combination of the processor 10 and software.
  • Each function may be realized by the combination of the processor 10 and the firmware, and may be realized by the combination of the processor 10, the software and the firmware.
  • the software or firmware is described as a program and stored in the memory 11.
  • Processor 10 reads software or firmware.
  • Processor 10 executes software or firmware.
  • the program for recognizing the gripping position / posture may be recorded on a storage medium that can be read by a computer.
  • the computer 4 may store the program recorded in the storage medium in the memory 11.
  • the storage medium may be a portable storage medium that is a flexible disk, or a flash memory that is a semiconductor memory.
  • the program for recognizing the gripping position / posture may be installed in the computer 4 from another computer or server device via a communication network.
  • the I / F 12 receives the scene information output by the sensor 5.
  • the candidate detection unit 13 detects a candidate for the gripping position / posture based on the scene information input from the I / F 12.
  • the candidate detection unit 13 outputs the information of the gripping position / posture which is the detected candidate to the evaluation value calculation unit 14.
  • the evaluation value calculation unit 14 calculates an evaluation value which is the result of evaluating the gripping stability when the hand 6 grips the work 7 by taking a candidate gripping position posture.
  • the stability of gripping is defined as the degree to which the work 7 can be successfully gripped and the hand 6 can maintain the holding of the work 7 until the hand 6 releases the grip.
  • the gripping stability is low, there is a high possibility that the gripping will fail when gripping the work 7, a case where the gripped work 7 is likely to fall off from the hand 6, and a case where the gripping work 7 is around the work 7. This includes the case where the grip fails due to the interference of the hand 6 with the object.
  • Objects that the hand 6 can interfere with include a work 7 around the work 7 to be gripped, a box 8, and the like.
  • the evaluation value calculation unit 14 calculates the evaluation value by inputting the candidate gripping position / posture information and the scene information into the gripping evaluation model.
  • the gripping evaluation model is an evaluation model for evaluating the gripping state when the hand 6 grips the work 7.
  • the evaluation value calculation unit 14 evaluates the gripping state estimated from the measurement data of the work 7 and the gripping position / posture based on the gripping evaluation model.
  • the evaluation value calculation unit 14 outputs the calculated evaluation value to the position / orientation determination unit 15.
  • the position / posture determination unit 15 determines the gripping position / posture to be taken by the hand 6 by controlling the hand 6 by the controller 3 based on the evaluation value.
  • the position / posture determining unit 15 outputs the determined gripping position / posture information to the I / F 12.
  • the I / F 12 transmits the gripping position / posture information to the controller 3.
  • the controller 3 controls the gripping operation by the robot 2 based on the information on the gripping position and posture.
  • the controller 3 outputs the actual data about the actual result of grasping the work 7 by the hand 6 to the I / F 12.
  • the actual data includes information indicating the success or failure of gripping by the hand 6, information on the gripping position and posture, and a calculated evaluation value.
  • the memory 11 stores the grip evaluation model and the reliability evaluation model.
  • the grip evaluation model includes an interference model, a holding model and weight information.
  • the interference model is an evaluation model for evaluating the state of occurrence of interference between the object around the gripped work 7 and the hand 6.
  • the holding model is an evaluation model for evaluating a state in which the work 7 is held by the hand 6 when the work 7 is gripped.
  • the weight information is a parameter representing the weighting between the evaluation of the state in which interference occurs and the evaluation of the state in which the work 7 is held in the hand 6.
  • the evaluation value calculation unit 14 calculates the evaluation value by weighting the evaluation result by the interference model and the evaluation result by the holding model according to the weight information.
  • the reliability evaluation model is an evaluation model for evaluating the reliability of the determined gripping position / posture.
  • the learning unit 18 is a machine learning device that learns various evaluation models.
  • the learning unit 18 includes a grip evaluation learning unit 21 that learns the grip evaluation model, a model update unit 22 that updates the grip evaluation model, and a reliability learning unit 23 that learns the reliability evaluation model.
  • the data set acquisition unit 16 acquires a data set in which the measurement data for each work 7 and the gripping position / posture information for each work 7 are associated with each other.
  • the data set acquisition unit 16 outputs the acquired data set to the grip evaluation learning unit 21.
  • the grip evaluation learning unit 21 learns the grip evaluation model based on the data set input from the data set acquisition unit 16.
  • the data set acquisition unit 16 acquires the measurement data of the work 7 from the scene information received by the I / F 12.
  • the achievement acquisition unit 17 acquires the achievement data received by the I / F12.
  • the achievement acquisition unit 17 outputs the acquired achievement data to the model update unit 22 and the reliability learning unit 23.
  • the reliability learning unit 23 learns a reliability evaluation model for evaluating the reliability of the gripping position / posture determined by the position / posture determination unit 15 based on the actual data.
  • the computer 4 may be provided with an input device that accepts input operations by the user.
  • the input device is a device for inputting information such as a keyboard, a mouse, or a touch panel.
  • the computer 4 may include a display device that displays information on a screen. The illustration of the input device and the display device is omitted.
  • FIG. 3 is a flowchart showing an operation procedure of the work taking-out device according to the first embodiment.
  • FIG. 3 shows a procedure from the start-up adjustment before starting the operation of the work taking-out device 1 to the gripping of the work 7 by the operation of the work taking-out device 1.
  • the procedure from step S1 to step S3 is a procedure in the rise adjustment.
  • Steps S4 to S9 are steps from step S4 to step S9 until the work 7 is gripped by the operation of the work take-out device 1.
  • step S1 the data set acquisition unit 16 acquires the data set.
  • the user instructs the computer 4 to register the work for model learning.
  • Work registration refers to registering information about the work 7 to be gripped.
  • the user instructs work registration, for example, by operating an input device.
  • the computer 4 outputs a measurement command to the sensor 5 in accordance with the work registration instruction.
  • the sensor 5 acquires the scene information according to the measurement command and sends the scene information to the computer 4.
  • the data set acquisition unit 16 acquires scene information which is a component of the data set.
  • the sensor 5 may measure either the work 7 bulkly stacked in the box 8 or the work 7 placed alone on the measurement stage.
  • the data set acquisition unit 16 creates a data set by registering the information input to the input device in association with the measurement data of the work 7. In this way, the data set acquisition unit 16 acquires the data set.
  • the data set acquisition unit 16 may register information on the gripping position / posture by means other than manual input.
  • the data set acquisition unit 16 may take in the information of the gripping position / posture obtained by executing the existing recognition algorithm. Information indicating the success or failure of gripping is registered by assigning a correct answer label.
  • the computer 4 may acquire a data set by utilizing a simulation. The acquisition of the data set by utilizing the simulation will be described later.
  • the grip evaluation learning unit 21 learns the grip evaluation model based on the data set acquired in step S1.
  • the grip evaluation learning unit 21 learns the grip evaluation model by, for example, supervised learning according to a neural network.
  • supervised learning is learning in which a large number of sets of data, which are an input and a label as a result, are given to a machine learning device to learn the features in the data set and estimate the result from the input. Is.
  • the memory 11 stores the grip evaluation model.
  • the state in which interference occurs and the state in which the work 7 is held are important viewpoints.
  • the grip evaluation learning unit 21 can perform learning by narrowing down the evaluation target to each of the state in which interference occurs and the state in which the work 7 is held. ..
  • the computer 4 can improve the convergence of the learning model.
  • the computer 4 By setting the weighting between the evaluation result by the interference model and the evaluation result by the holding model, the computer 4 attaches importance to each of the evaluation of the state of occurrence of interference and the evaluation of the state of holding the work 7. The degree can be adjusted. As a result, in the computer 4, avoiding interference during gripping contributes to improving the gripping success rate, and improving the contact state of the hand 6 with the work 7 contributes to improving the gripping success rate. It is possible to determine the gripping position and posture in both cases. Further, the computer 4 learns the weight information to provide the weight information such that the weight for avoiding interference and the weight for improving the contact state of the hand 6 become the optimum ratio. It can be obtained regardless of the setting of.
  • the computer 4 may divide the data set into training data and test data, and present the learning result of the grip evaluation model to the user based on the detection accuracy of the grip position / posture in the test data.
  • the computer 4 presents the learning result by, for example, displaying on a display device.
  • the user can confirm the accuracy of the evaluation using the grip evaluation model, and can quickly determine whether or not the operation of the work taking-out device 1 by using the grip evaluation model can be started. It becomes.
  • the computer 4 may present to the user a list of data in which the correct label included in the data set is incorrect by evaluating the gripping position / posture using the gripping evaluation model during learning.
  • the user modifies or deletes the data contained in the dataset according to the presentation.
  • the computer 4 can suppress a decrease in learning accuracy due to misplacement of correct label included in the data set.
  • the user installs the robot program on the controller 3 in the adjustment process for starting up the work take-out device 1.
  • the controller 3 executes the robot program.
  • the controller 3 transmits a recognition command for recognizing the gripping position / posture to the sensor 5 according to the description of the robot program.
  • the sensor 5 acquires the scene information and transmits the scene information to the computer 4.
  • step S4 the computer 4 acquires the scene information transmitted from the sensor 5.
  • step S5 the candidate detection unit 13 detects a candidate for the gripping position / posture based on the measurement data of the work 7.
  • the candidate detection unit 13 detects a candidate position for the gripping position by extracting a portion including a feature that can be gripped by the hand 6 from the shape of the work 7.
  • the candidate detection unit 13 recognizes the feature by image analysis.
  • the candidate detection unit 13 detects the gripping posture for gripping at the detected position. As a result, the candidate detection unit 13 detects the candidate for the gripping position posture.
  • the number of candidates detected shall be arbitrary.
  • the candidate detection unit 13 outputs information on the gripping position / posture of the detected candidate to the evaluation value calculation unit 14.
  • step S6 the evaluation value calculation unit 14 calculates the evaluation value for each candidate detected in step S5.
  • the evaluation value calculation unit 14 reads the grip evaluation model corresponding to the work 7 designated in the robot program from the memory 11.
  • the evaluation value calculation unit 14 calculates the evaluation value by inputting the candidate gripping position / posture information and the scene information into the gripping evaluation model.
  • the evaluation value calculation unit 14 outputs the calculated evaluation value and information on the candidate gripping position / posture to the position / posture determination unit 15.
  • step S7 the position / posture determining unit 15 determines the gripping position / posture to be taken by the hand 6 from the candidate gripping position / postures.
  • the position / posture determining unit 15 determines the gripping position / posture having the highest evaluation value among the candidates. In this way, the position / posture determining unit 15 determines the gripping position / posture based on the evaluation value.
  • step S8 the I / F 12 transmits the information on the gripping position / posture determined in step S7 to the controller 3.
  • the candidate detection unit 13 detects the position of the center of gravity of the work 7 or the area occupied by the work 7 recognized by the image analysis, and the measurement data in the vicinity of the work 7 including the work 7 is input to the evaluation value calculation unit 14.
  • the evaluation value calculation unit 14 may calculate the gripping position / posture and the evaluation value.
  • the grip evaluation learning unit 21 learns the evaluation value and at the same time learns the grip position posture.
  • the measurement data in a certain range centered on the center of gravity of the work 7 is input to the input layer of the neural network, and the evaluation value is input from the output layer of the neural network. And the information of the gripping position and posture are output.
  • the evaluation value calculation unit 14 corrects the grip position / posture by inputting the information of the gripping position / posture, which is a candidate detected by the candidate detection unit 13, into the evaluation value calculation unit 14, and the evaluation value is calculated.
  • the unit 14 may output the information on the gripping position and posture after the correction.
  • learning the gripping position / orientation after correction is realized by a neural network
  • measurement data in a certain range centered on the center of gravity of the work 7 and information on the candidate gripping position / orientation are input to the input layer of the neural network.
  • Information on the corrected gripping position and orientation is output from the output layer of the neural network.
  • step S9 the hand 6 grips the work 7 in a gripping position posture determined by the computer 4 in accordance with an operation command input to the robot 2.
  • the work taking-out device 1 ends the operation according to the procedure shown in FIG.
  • the gripping position / posture information transmitted from the computer 4 to the controller 3 includes three-dimensional coordinates indicating the gripping position in the robot coordinate system and data on the approach direction of the claw.
  • the approach direction is represented by an angle centered on each of the three axes.
  • the gripping position / posture information may include the evaluation value calculated in step S6 as the reliability of the recognition result. Confidence is represented by a real number from 0 to 1.
  • the evaluation value as the reliability may be any of an evaluation value for gripping stability, an evaluation value for the state in which interference occurs, and an evaluation value for the state in which the work 7 is held.
  • FIG. 4 is a first diagram for explaining recognition of the gripping position / posture by the work taking-out device according to the first embodiment.
  • FIG. 5 is a second diagram for explaining recognition of the gripping position / posture by the work taking-out device according to the first embodiment.
  • FIG. 4 shows an example of the hand model 25 when gripping each of the three works 7 together with the three works 7.
  • the hand model 25 shown in FIG. 4 schematically represents a hand 6 that holds the work 7 by two claws.
  • the shape of each work 7 is irregular and includes complicated irregularities.
  • FIG. 5 shows an example in which two gripping position postures are detected as candidates for one work 7.
  • the hand model 25-1 which represents one of the two gripping position postures
  • one of the two claws is applied to the convex portion and the other is applied to the concave portion.
  • the hand model 25-2 which represents the other of the two grip position postures
  • both of the two claws are applied to the flat edges.
  • the work 7 can be gripped more stably at the position of the hand model 25-1 than at the position of the hand model 25-2.
  • the gripping position posture represented by the hand model 25-2 is evaluated more than the gripping position posture represented by the hand model 25-1. It gets higher.
  • the evaluation may be low even though the position suitable for gripping can be gripped, such as the gripping position posture of the hand model 25-1.
  • the evaluation may be high even though the position that is not suitable for gripping such as the gripping position posture of the hand model 25-2 is gripped.
  • the computer 4 accurately evaluates whether or not stable gripping is possible for each of the workpieces 7 having individual differences in shape by using the gripping evaluation model obtained by learning. It becomes possible.
  • the data set includes measurement data of the work 7, information on the gripping position and posture, and information indicating the success or failure of gripping.
  • the data set may include information on the axial direction of the work 7. ..
  • the computer 4 can recognize the gripping position posture suitable for the posture of the work 7.
  • the data set may include information indicating the state of the hand 6.
  • information on the opening width of the claws may be included in the data set.
  • information on the insertion depth of the nail may be included in the data set.
  • the computer 4 may transmit information on the gripping position / posture for each candidate to the controller 3.
  • the computer 4 may sort the gripping position / posture information in the order of evaluation values and transmit it to the controller 3.
  • the data set may include information on the order in which each of the plurality of works 7 in bulk is taken out.
  • the grip evaluation learning unit 21 may learn the optimum order for taking out each of the plurality of works 7 in bulk based on the data set.
  • the computer 4 can recognize the optimum order for taking out the work 7.
  • the work taking-out device 1 performs the work taking-out operation a plurality of times by determining the order of each work 7 within a range in which the scene is not collapsed by the work 7 taking out. It is possible to improve the gripping success rate in.
  • FIG. 6 is a diagram showing a configuration example of a data set acquisition unit included in the work taking-out device according to the first embodiment.
  • FIG. 6 shows a configuration example of the data set acquisition unit 16 when the data set is automatically generated by simulation.
  • the data set acquisition unit 16 sets the scene setting unit 31 that sets the scene in the virtual space simulating the environment in which the work 7 is taken out, the scene information generation unit 32 that generates the scene information according to the scene setting, and the gripping information. It has a grip information setting unit 33, a data set generation unit 34 that generates a data set that associates grip information and scene information, and a data conversion unit 35.
  • the gripping information includes information on the gripping position and posture for each work 7 and an evaluation value.
  • the scene setting unit 31 arranges a virtual sensor and a virtual work assuming the same specifications and the same situation as when the work 7 is actually taken out in the virtual space, and simulates the measurement data that can be acquired.
  • the spec is a condition such as an angle of view or a resolution when the sensor 5 observes a scene.
  • the situation is a situation such as a measurement distance or an arrangement state of the work 7.
  • the arrangement state is a state such as bulk stacking, flat placement, and alignment.
  • the scene information generation unit 32 simulates the measurement data that can be acquired and generates the scene information.
  • the gripping information setting unit 33 is set with an index indicating what kind of gripping position / posture is optimal for the work 7.
  • the indicators are the distance between the gripping position and the center of gravity of the work 7, the size of the contact area between the hand 6 and the work 7, the angle of the contact surface between the hand 6 and the work 7, and the surface of the work 7 that comes into contact with the hand 6. Items such as the degree of unevenness in the above, the constraint condition in the approach direction, and the presence or absence of damage to the work 7 or the hand 6 when the hand 6 is inserted can be adopted.
  • the index may be an evaluation function containing parameters for a plurality of these items.
  • the evaluation function may include weighting for each item.
  • the approach-direction constraint is a condition for such a constraint.
  • the data set generation unit 34 generates not only correct answer data which is data when grasping is successful, but also failure data which is data when grasping fails. Failure data is also called negative data.
  • the dataset includes not only failure data when gripping is clearly impossible, but also failure data for gripping position postures that are close to the optimum gripping position posture but are prone to gripping failure.
  • the case where the grip is close to the optimum grip position posture but the grip is likely to fail includes the case where the surface of the work 7 has a local depression or a local sharpness in the vicinity of the optimum grip position.
  • the computer 4 can accurately evaluate the optimum gripping position / posture and the gripping position / posture that is confusing and is expected to fail in gripping.
  • the computer 4 can obtain a grip evaluation model having higher performance.
  • the data conversion unit 35 performs data conversion to bring the quality of the scene information generated by the scene information generation unit 32 closer to the quality of the scene information acquired by observing the actual scene including the work 7.
  • simulation data does not contain noise that is contained in actual data. Even if noise is artificially added to the simulation data, it is difficult to make the data quality of the simulation data the same as the actual data.
  • the data conversion unit 35 performs data conversion so that the data quality of the simulation data is the same as the actual data.
  • the data conversion unit 35 performs data conversion by applying GAN (Generative Adversarial Networks), which is a framework of a neural network that performs mutual conversion of data having different qualities.
  • GAN Generic Adversarial Networks
  • one of the two data groups is a simulation data group generated by simulation.
  • the other of the two data groups is the actual data group actually acquired.
  • the data conversion unit 35 performs data conversion for giving the simulation data a quality close to the quality of the actual data based on the learning result of the mutual conversion between the simulation data and the actual data.
  • the data set generation unit 34 outputs the data set that has been converted by the data conversion unit 35.
  • the computer 4 obtains the simulation data in the data set acquisition unit 16 with little deviation from the actual data acquired by the sensor 5 by the data conversion by the data conversion unit 35. As a result, the computer 4 can perform learning close to learning based on a data set which is actual data, and can accurately evaluate the gripping state.
  • the computer 4 performs training based on the data set generated using the simulation data, converts the actual data to a quality close to the quality of the simulation data, and the converted data. May be used as an input to evaluate the gripping state. Which method is used for data conversion can be appropriately selected depending on the work 7 or the task performed by the robot 2. Data conversion by both methods may be tested and one method with good test results may be selected.
  • the computer 4 learns the grip evaluation model based on the data set which is the simulation data, and gives the actual data about the grip position / orientation recognized at the time of gripping a quality close to the quality of the simulation data.
  • the actual data about the gripping position / orientation may be converted.
  • the computer 4 can accurately evaluate the gripping state by using the gripping evaluation model based on the simulation data.
  • the data set acquisition unit 16 acquires the data set by utilizing the simulation.
  • the computer 4 can reduce the labor and work cost of creating the data set.
  • the model update unit 22 updates the grip evaluation model read from the memory 11 based on the actual data.
  • the model update unit 22 updates the grip evaluation model by re-learning based on the actual grip result.
  • the model update unit 22 updates the grip evaluation model based on the result of the grip test performed in the rise adjustment.
  • the model update unit 22 may update the grip evaluation model at an arbitrary timing in the operation of the work take-out device 1.
  • the model update unit 22 updates the grip evaluation model at the timing instructed by the user.
  • the model update unit 22 may acquire actual data at any time and continue learning of the grip evaluation model by reinforcement learning.
  • the model update unit 22 may perform these updates in combination.
  • the computer 4 obtains a grip evaluation model by learning using a data set generated by simulation, and applies the grip evaluation model to an actual scene to evaluate the grip state.
  • the gripping success rate may decrease due to the discrepancy between the scene information generated by the simulation and the scene information acquired in the real space.
  • the scene information acquired in the real space may include measurement errors due to noise, distortion of the optical system in the sensor 5, calibration deviation, etc., whereas the scene information generated by the simulation is such.
  • the computer 4 can accurately evaluate the gripping state by updating the gripping evaluation model based on the scene information acquired in the real space.
  • the model update unit 22 receives a solution that is information on the grip position and posture acquired based on the grip evaluation model as an input, and generates a new grip evaluation model having a function of excluding a solution having a low grip success rate. You may. In this case as well, the computer 4 can accurately evaluate the gripping state.
  • the model update unit 22 may return the grip evaluation model to the grip evaluation model before the update when the grip success rate becomes less than a certain success rate due to the update of the grip evaluation model.
  • the computer 4 may display an alarm on the display device informing that the success rate has decreased.
  • the work taking-out device 1 can secure the minimum gripping performance.
  • the learning of the grip evaluation model by reinforcement learning is continued, the operation of the robot 2 changes in real time by updating the grip evaluation model. Therefore, the computer 4 returns the grip evaluation model when the success rate decreases. Therefore, it is possible to suppress a decrease in the success rate of gripping.
  • the memory 11 stores the reliability evaluation model obtained by learning by the reliability learning unit 23.
  • the position / orientation determination unit 15 reads the reliability evaluation model corresponding to the work 7 specified in the robot program from the memory 11.
  • the position / posture determination unit 15 calculates an evaluation value for reliability by inputting the determined gripping position / posture information into the reliability evaluation model.
  • the position / posture determining unit 15 determines whether or not the gripping position / posture determined by comparing the reliability evaluation value, which is the calculated evaluation value, with the threshold value is a gripping position / posture with a high possibility of failure in gripping. To judge.
  • the position / posture determination unit 15 outputs the determined gripping position / posture information to the I / F 12 when the reliability evaluation value is equal to or higher than the threshold value. When the reliability evaluation value is less than the threshold value, the position / orientation determination unit 15 grips the candidate gripping position / posture based on the evaluation value calculated by the evaluation value calculation unit 14 and the reliability evaluation value. The gripping position and orientation are redetermined by selecting the position and orientation again. The position / posture determining unit 15 outputs the determined gripping position / posture information to the I / F 12.
  • the computer 4 can further improve the gripping success rate by selecting the gripping position posture based on the reliability evaluation model.
  • the computer 4 may perform at least one of updating the gripping evaluation model by the model updating unit 22 and selecting the gripping position / posture based on the reliability evaluation model. As a result, the computer 4 can improve the success rate of gripping.
  • the computer 4 is equipped with a function of prompting the user to review the calibration by displaying a system error or a log when the success rate of gripping is low even if the gripping evaluation model that feeds back the actual data is used. You may. As the parts of the hand 6 or the robot 2 deteriorate over time, the calibration value input to the robot 2 and the state of the robot 2 may deviate from each other. In this case, even if the gripping evaluation model that feeds back the actual data is used, the gripping success rate may not be improved. As a result, the computer 4 can prompt the user to perform calibration for improving the success rate of gripping.
  • the machine learning device which is the learning unit 18, is not limited to the one built in the computer 4, and may be provided outside the computer 4.
  • the machine learning device may be a device connected to the computer 4 via a network.
  • the machine learning device may exist on the cloud server.
  • a trained grip evaluation model may be installed in the computer 4.
  • the machine learning device may generate a grip evaluation model based on data sets collected from a plurality of sites on a cloud server.
  • a gripping evaluation model based on big data, which is a data set generated for a large amount of work 7, the computer 4 can further improve the gripping success rate.
  • the computer 4 treats the grip evaluation model generated based on big data as a base model that reflects general grip features, and grips each site or a new work 7 based on the base model.
  • An evaluation model may be generated. Since it is expected that the base model reflects the features that are common regardless of the site or the work 7, the machine learning device requires more learning than the case where the grip evaluation model is newly learned. You can save time. Further, by using the base model, the machine learning device can learn the grip evaluation model capable of recognizing the grip position and posture with high accuracy based on a small data set.
  • the machine learning device may learn the gripping evaluation model by diverting the trained model for the works 7 having such similarities. Since it is expected that the learned learning model reflects the features common to the works 7, the machine learning device is more suitable for learning than the case where the grip evaluation model is newly learned. The time required can be shortened. Further, the machine learning device can learn the grip evaluation model capable of recognizing the grip position and posture with high accuracy by using the trained model based on a small data set.
  • the computer 4 may register the attribute information of the work 7 such as the cooking method or the material. By making it possible to search for similar works 7 based on attribute information, the computer 4 may recommend using a trained model when learning about similar works 7.
  • the computer 4 may learn the gripping evaluation model for recognizing the gripping position / posture, that is, the information directly related to gripping, and at the same time, learn the information indirectly related to gripping.
  • the computer 4 may learn information for class identification processing for identifying the type of the work 7, or information related to a task after grasping, such as determining the front and back of the work 7.
  • the work taking-out device 1 can reduce the number of steps and make the configuration compact as compared with the case where the type of the work 7 and the front and back sides of the work 7 are discriminated after gripping the work 7.
  • the computer 4 learns a grip evaluation model within the range of the constraint condition of the hand 6 in order to move the hand 6 within the movable area of the robot 2.
  • the computer 4 may learn the gripping evaluation model by releasing or relaxing the constraint condition of the hand 6.
  • the computer 4 collects information such as the opening width of the hand 6 by performing the recognition test of the work 7 based on the grip evaluation model when the constraint condition is released or relaxed.
  • the computer 4 can estimate the design value of the hand 6 that can be stably gripped by analyzing the collected information.
  • the hand 6 is designed so that the median opening width of the hand 6 matches the opening width of the hand 6 at the center position of the stroke of the hand 6.
  • the computer 4 learns the model again based on the hand 6 thus designed.
  • the computer 4 can learn the model adapted to the work 7 and can improve the success rate of gripping, as compared with the case where the constraint condition of the hand 6 is determined in advance and then the model is learned.
  • the gripping evaluation learning unit 21 evaluates the gripping stability based on the data set in which the measurement data for each work 7 and the gripping position / posture information for each work 7 are associated with each other. Learn the grip evaluation model.
  • the evaluation value calculation unit 14 calculates the evaluation value by inputting the information of the candidate gripping position / posture and the measurement data into the gripping evaluation model.
  • the computer 4 has the effect of being able to determine the position and orientation of the gripping mechanism that enables stable gripping of each of the workpieces 7 having variations in shape.
  • the configuration shown in the above-described embodiment shows an example of the content of the present invention, can be combined with another known technique, and is one of the configurations without departing from the gist of the present invention. It is also possible to omit or change the part.
  • 1 work take-out device 2 robot, 3 controller, 4 computer, 5 sensor, 6 hand, 7 work, 8 box, 10 processor, 11 memory, 12 I / F, 13 candidate detection unit, 14 evaluation value calculation unit, 15 position Posture determination unit, 16 data set acquisition unit, 17 achievement acquisition unit, 18 learning unit, 21 grip evaluation learning unit, 22 model update unit, 23 reliability learning unit, 25, 25-1, 25-2 hand model, 31 scenes Setting unit, 32 scene information generation unit, 33 grip information setting unit, 34 data set generation unit, 35 data conversion unit.

Abstract

情報処理装置である計算機(4)は、把持機構による把持の対象であるワークの計測データに基づいて、把持の際に把持機構に取らせる位置および姿勢である把持位置姿勢の候補を検出する候補検出部(13)と、候補である把持位置姿勢を取って把持機構がワークを把持した場合における把持の安定性を評価した結果である評価値を算出する評価値算出部(14)と、把持機構に取らせる把持位置姿勢を評価値に基づいて決定する位置姿勢決定部(15)と、ワークごとの計測データとワークごとの把持位置姿勢の情報とを互いに関連付けたデータセットに基づいて、把持の安定性を評価するための把持評価モデルを学習する把持評価学習部(21)と、を備える。評価値算出部(14)は、候補である把持位置姿勢の情報と計測データとを把持評価モデルへ入力することによって評価値を算出する。

Description

情報処理装置、ワーク認識装置およびワーク取り出し装置
 本発明は、把持機構に取らせる位置および姿勢を決定する情報処理装置、ワーク認識装置およびワーク取り出し装置に関する。
 ばら積みされた複数のワークからワークを1つずつ取り出すワーク取り出し装置が知られている。ばら積みとは、位置および姿勢がランダムな状態で物が積まれていることを指すものとする。特許文献1には、ワークを把持する把持機構であるハンドを有し、ばら積みされたワークを3次元計測することによって取得された3次元計測データに基づいて把持位置姿勢を決定するワーク取り出し装置が開示されている。把持位置姿勢とは、ワークを把持する際にハンドに取らせる位置および姿勢とする。特許文献1にかかるワーク取り出し装置は、3次元計測データにハンドモデルを当てはめることによって、把持が成功する可能性を評価する。特許文献1にかかるワーク取り出し装置は、把持が成功する可能性の評価結果であるスコアに基づいて把持位置姿勢を決定する。
特許第5558585号公報
 ワークの形状に個体差が大きい場合、ワークを安定して把持可能な把持位置姿勢がワークごとに異なることになるため、把持が成功する可能性を評価することが難しくなる。例えばワークの重心付近の部分を把持するように把持位置姿勢を決定したとしても、ワークによっては、重心付近以外の部分を把持するほうが安定した把持が可能となる場合がある。特許文献1に開示される従来技術によると、ワーク取り出し装置は、ワークの形状にばらつきが小さいワーク、例えば工業部品については、安定した把持が可能であるか否かを正確に評価可能である一方、ワークの形状にばらつきがある場合には正確な評価が困難となる。このため、従来技術によると、ワーク取り出し装置は、形状にばらつきがあるワークについて、ワークを安定して把持可能とする把持機構の位置および姿勢を決定することが困難であるという問題があった。
 本発明は、上記に鑑みてなされたものであって、形状にばらつきがあるワークの各々を安定して把持可能とする把持機構の位置および姿勢を決定することができる情報処理装置を得ることを目的とする。
 上述した課題を解決し、目的を達成するために、本発明にかかる情報処理装置は、把持機構による把持の対象であるワークの計測データに基づいて、把持の際に把持機構に取らせる位置および姿勢である把持位置姿勢の候補を検出する候補検出部と、候補である把持位置姿勢を取って把持機構がワークを把持した場合における把持の安定性を評価した結果である評価値を算出する評価値算出部と、把持機構に取らせる把持位置姿勢を評価値に基づいて決定する位置姿勢決定部と、ワークごとの計測データとワークごとの把持位置姿勢の情報とを互いに関連付けたデータセットに基づいて、把持の安定性を評価するための把持評価モデルを学習する把持評価学習部と、を備える。評価値算出部は、候補である把持位置姿勢の情報と計測データとを把持評価モデルへ入力することによって評価値を算出する。
 本発明にかかる情報処理装置は、形状にばらつきがあるワークの各々を安定して把持可能とする把持機構の位置および姿勢を決定することができるという効果を奏する。
本発明の実施の形態1にかかるワーク取り出し装置の構成を示す図 実施の形態1にかかるワーク取り出し装置のブロック図 実施の形態1にかかるワーク取り出し装置の動作手順を示すフローチャート 実施の形態1にかかるワーク取り出し装置による把持位置姿勢の認識について説明するための第1の図 実施の形態1にかかるワーク取り出し装置による把持位置姿勢の認識について説明するための第2の図 実施の形態1にかかるワーク取り出し装置が有するデータセット取得部の構成例を示す図
 以下に、本発明の実施の形態にかかる情報処理装置、ワーク認識装置およびワーク取り出し装置を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態1.
 図1は、本発明の実施の形態1にかかるワーク取り出し装置の構成を示す図である。実施の形態1にかかるワーク取り出し装置1は、箱8の中にばら積みされた複数のワーク7を1つずつ取り出す。各ワーク7は、ハンド6による把持の対象である。実施の形態1において、ワーク7は、形状に個体差がある製品あるいは生産物である。ワーク7の例は、ピースごとに仕分けることが可能な食品である。実施の形態1において、ユーザとは、ワーク取り出し装置1を含むシステムの構築または運用を請け負う事業者、あるいはワーク取り出し装置1を使用する生産技術者とする。
 ワーク取り出し装置1は、産業用ロボットであるロボット2と、ロボット2を制御するコントローラ3と、情報処理装置である計算機4と、3次元ビジョンセンサであるセンサ5とを備える。ロボット2とコントローラ3と計算機4とセンサ5とは、互いに通信可能に接続されている。
 ロボット2は、把持機構であるハンド6を有する。ハンド6は、ロボット2のアーム先端に取り付けられている。ロボット2は、ロボット2の可動領域内にてハンド6を移動させるとともに、ハンド6の姿勢を変化させる。コントローラ3は、ロボット2のアームとハンド6とを制御する。
 実施の形態1において、ハンド6は、開閉可能な2つあるいは複数の爪によってワーク7を挟持する機構を有する。ハンド6は、吸引力を発生させることによってワーク7を吸着させる機構を有しても良い。ワーク7に穴が形成されている場合、ハンド6は、2つあるいは複数の爪を穴に挿し入れて、爪を開いてワーク7を保持する機構を有しても良い。
 計算機4とセンサ5とは、ワーク7の位置とワーク7の姿勢とを認識するワーク認識装置を構成する。ワーク認識装置は、ハンド6がワーク7を把持する際にハンド6に取らせる位置および姿勢も認識する。センサ5は、ワーク7を含むシーンを観測することによって、ワーク7の3次元計測データを取得する。センサ5は、ワーク7の3次元計測データを含むシーン情報を生成する。センサ5は、生成されたシーン情報を計算機4へ出力する。
 実施の形態1において、センサ5は、二眼あるいは三眼以上のステレオカメラである。センサ5は、レーザまたはプロジェクタといった投光部を備えるアクティブ方式のステレオカメラ、タイムオブフライト方式を用いた機器、因子分解法、Structure from MotionあるいはStructure and Motionの手法を用いた機器、モーションステレオカメラ、視体積交差法を用いた機器などであっても良い。センサ5は、任意の領域の3次元データを取得できる機器であれば良い。
 計算機4は、3次元計測データに基づいて把持位置姿勢を認識するための演算処理を行う情報処理装置である。計算機4が認識する把持位置姿勢は、ハンド6がワーク7を把持する際にハンド6に取らせる実際の把持位置姿勢である。実施の形態1において、計算機4は、パーソナルコンピュータなどのコンピュータである。計算機4には、把持位置姿勢を認識するためのプログラムがインストールされる。
 図2は、実施の形態1にかかるワーク取り出し装置のブロック図である。図2には、計算機4が有する機能構成と、計算機4の機能構成を実現するためのハードウェア構成とを示している。
 計算機4は、各種処理を実行する処理部であるプロセッサ10と、情報を記憶する記憶部であるメモリ11と、計算機4の外部の装置との間における情報の送受信を担うインタフェース(InterFace:I/F)12とを有する。
 プロセッサ10は、CPU(Central Processing Unit)である。プロセッサ10は、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、又はDSP(Digital Signal Processor)であっても良い。メモリ11は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable Read Only Memory)またはEEPROM(登録商標)(Electrically Erasable Programmable Read Only Memory)、HDD(Hard Disk Drive)またはSSD(Solid State Drive)を含む。把持位置姿勢を認識するためのプログラムは、メモリ11に格納される。プロセッサ10は、メモリ11に格納されているプログラムを実行する。
 図2には、プロセッサ10を使用することによって実現される機能構成を示している。計算機4は、プロセッサ10を使用することによって実現される機能部である候補検出部13、評価値算出部14、位置姿勢決定部15、データセット取得部16、実績取得部17および学習部18を備える。
 候補検出部13、評価値算出部14、位置姿勢決定部15、データセット取得部16、実績取得部17および学習部18の各機能は、プロセッサ10およびソフトウェアの組み合わせによって実現される。各機能は、プロセッサ10およびファームウェアの組み合わせによって実現されても良く、プロセッサ10、ソフトウェアおよびファームウェアの組み合わせによって実現されても良い。ソフトウェアまたはファームウェアは、プログラムとして記述され、メモリ11に格納される。プロセッサ10は、ソフトウェアまたはファームウェアを読み出す。プロセッサ10は、ソフトウェアまたはファームウェアを実行する。
 把持位置姿勢を認識するためのプログラムは、コンピュータによる読み取りが可能とされた記憶媒体に記録されたものであっても良い。計算機4は、記憶媒体に記録されたプログラムをメモリ11へ格納しても良い。記憶媒体は、フレキシブルディスクである可搬型記憶媒体、あるいは半導体メモリであるフラッシュメモリであっても良い。把持位置姿勢を認識するためのプログラムは、他のコンピュータあるいはサーバ装置から通信ネットワークを介して計算機4へインストールされても良い。
 I/F12は、センサ5によって出力されたシーン情報を受信する。候補検出部13は、I/F12から入力されたシーン情報に基づいて、把持位置姿勢の候補を検出する。候補検出部13は、検出された候補である把持位置姿勢の情報を評価値算出部14へ出力する。
 評価値算出部14は、候補である把持位置姿勢を取ってハンド6がワーク7を把持した場合における把持の安定性を評価した結果である評価値を算出する。把持の安定性とは、ワーク7の把持が成功し、かつハンド6が把持を解除するまでハンド6によるワーク7の保持を維持可能である度合いであるものとする。把持の安定性が低い場合には、ワーク7を把持するときに把持が失敗する可能性が高い場合と、把持されたワーク7がハンド6から脱落する可能性が高い場合と、ワーク7の周囲の物体へのハンド6の干渉によって把持が失敗する場合とが含まれる。ハンド6が干渉し得る物体としては、把持しようとしているワーク7の周囲にあるワーク7、あるいは箱8などがある。
 評価値算出部14は、候補である把持位置姿勢の情報とシーン情報とを把持評価モデルへ入力することによって評価値を算出する。把持評価モデルは、ハンド6がワーク7を把持した場合における把持状態を評価するための評価モデルである。評価値算出部14は、ワーク7の計測データと把持位置姿勢とから推測される把持状態を、把持評価モデルに基づいて評価する。評価値算出部14は、算出された評価値を位置姿勢決定部15へ出力する。
 位置姿勢決定部15は、コントローラ3によるハンド6の制御によってハンド6に取らせる把持位置姿勢を評価値に基づいて決定する。位置姿勢決定部15は、決定された把持位置姿勢の情報をI/F12へ出力する。I/F12は、把持位置姿勢の情報をコントローラ3へ送信する。コントローラ3は、把持位置姿勢の情報に基づいて、ロボット2による把持動作を制御する。コントローラ3は、ハンド6によってワーク7を把持した実績についての実績データをI/F12へ出力する。実績データは、ハンド6による把持の成否を表す情報と、把持位置姿勢の情報と、算出された評価値とを含む。
 メモリ11は、把持評価モデルと信頼性評価モデルとを記憶する。把持評価モデルは、干渉モデル、保持モデルおよび重み情報を含む。干渉モデルは、把持されるワーク7の周囲にある物体とハンド6との干渉の発生状態を評価するための評価モデルである。保持モデルは、ワーク7が把持された場合にハンド6にワーク7が保持される状態を評価するための評価モデルである。
 重み情報は、干渉の発生状態についての評価とハンド6にワーク7が保持される状態についての評価との重み付けを表すパラメータである。評価値算出部14は、干渉モデルによる評価結果と保持モデルによる評価結果とを重み情報に従って重み付けして評価値を算出する。信頼性評価モデルは、決定される把持位置姿勢の信頼性を評価するための評価モデルである。
 学習部18は、各種評価モデルを学習する機械学習装置である。学習部18は、把持評価モデルを学習する把持評価学習部21と、把持評価モデルを更新するモデル更新部22と、信頼性評価モデルを学習する信頼性学習部23とを有する。
 データセット取得部16は、ワーク7ごとの計測データとワーク7ごとの把持位置姿勢の情報とを互いに関連付けたデータセットを取得する。データセット取得部16は、取得されたデータセットを把持評価学習部21へ出力する。把持評価学習部21は、データセット取得部16から入力されるデータセットに基づいて把持評価モデルを学習する。データセット取得部16は、I/F12にて受信されるシーン情報からワーク7の計測データを取得する。
 実績取得部17は、I/F12にて受信された実績データを取得する。実績取得部17は、取得された実績データをモデル更新部22と信頼性学習部23とへ出力する。信頼性学習部23は、位置姿勢決定部15において決定される把持位置姿勢の信頼性を実績データに基づいて評価するための信頼性評価モデルを学習する。
 計算機4は、ユーザによる入力操作を受け付ける入力装置を備えていても良い。入力装置は、キーボード、マウスあるいはタッチパネルといった、情報を入力するための装置である。計算機4は、画面にて情報を表示する表示装置を備えていても良い。入力装置と表示装置との図示は省略する。
 次に、ワーク取り出し装置1による動作の詳細について説明する。図3は、実施の形態1にかかるワーク取り出し装置の動作手順を示すフローチャートである。図3には、ワーク取り出し装置1の運用を開始する前における立上調整から、ワーク取り出し装置1の運用によりワーク7の把持が行われるまでの手順を示している。ステップS1からステップS3の手順は、立上調整における手順である。ステップS4からステップS9は、ワーク取り出し装置1の運用によるワーク7の把持が行われるまでの手順である。
 ステップS1において、データセット取得部16は、データセットを取得する。ユーザは、モデル学習のためのワーク登録を計算機4に指示する。ワーク登録とは、把持の対象となるワーク7に関する情報を登録することを指すものとする。ユーザは、例えば入力装置を操作することによってワーク登録を指示する。計算機4は、ワーク登録の指示に従ってセンサ5へ計測指令を出力する。センサ5は、計測指令に従ってシーン情報を取得し、シーン情報を計算機4へ送る。データセット取得部16は、データセットの構成要素であるシーン情報を取得する。なお、センサ5は、箱8にばら積みされているワーク7と、計測用のステージ上に単体で置かれたワーク7とのどちらを計測しても良い。
 また、ユーザは、把持位置姿勢の情報と、ハンド6に当該把持位置姿勢を取らせた場合における把持の成否を示す情報とを入力装置へ入力する。データセット取得部16は、入力装置へ入力された情報をワーク7の計測データに対応付けて登録することによって、データセットを作成する。このようにして、データセット取得部16は、データセットを取得する。
 なお、データセット取得部16には、手動入力以外によって把持位置姿勢の情報が登録されても良い。データセット取得部16は、既存の認識アルゴリズムを実行することによって得られた把持位置姿勢の情報を取り込んでも良い。把持の成否を示す情報は、正解ラベルの付与によって登録される。また、計算機4は、シミュレーションを活用することによってデータセットを取得しても良い。シミュレーションの活用によるデータセットの取得については後述する。
 データセットが取得されると、ステップS2において、把持評価学習部21は、ステップS1において取得されたデータセットに基づいて把持評価モデルを学習する。把持評価学習部21は、例えば、ニューラルネットワークに従って、いわゆる教師あり学習によって、把持評価モデルを学習する。ここで、教師あり学習とは、ある入力と、結果であるラベルとであるデータの組を大量に機械学習装置へ与えることで、データセットにある特徴を学習し、入力から結果を推定する学習である。把持評価モデルの学習が完了すると、ステップS3において、メモリ11は、把持評価モデルを記憶する。
 ワーク7の把持状態の評価において、干渉の発生状態とワーク7が保持される状態とは重要な観点となる。把持評価学習部21は、干渉モデルと保持モデルとに把持評価モデルが分けられることによって、干渉の発生状態とワーク7が保持される状態とのそれぞれに評価対象を絞り込んで学習を行うことができる。これにより、計算機4は、学習モデルの収束性を向上させることができる。
 干渉モデルによる評価結果と保持モデルによる評価結果との重み付けが設定されることによって、計算機4は、干渉の発生状態についての評価とワーク7が保持される状態についての評価との各々についての重視の度合いを調整可能とする。これにより、計算機4は、把持の際に干渉を避けることが把持の成功率向上に寄与する場合と、ワーク7へのハンド6の接触状態を良好にすることが把持の成功率向上に寄与する場合との両方に対応して、把持位置姿勢を決定することが可能となる。また、計算機4は、重み情報を学習することによって、干渉を避けることについての重みと、ハンド6の接触状態を良好にすることについての重みとが最適な比率となるような重み情報を、ユーザの設定によらずに得ることができる。
 計算機4は、データセットをトレーニングデータとテストデータとに分けておき、テストデータにおける把持位置姿勢の検出精度に基づいて把持評価モデルの学習結果をユーザに提示しても良い。計算機4は、例えば表示装置における表示によって学習結果を提示する。これにより、ユーザは、把持評価モデルを用いた評価の精度を確認することができ、把持評価モデルの使用によるワーク取り出し装置1の運用を開始して良いか否かを早期に判断することが可能となる。
 計算機4は、学習中の把持評価モデルを用いて把持位置姿勢についての評価を行うことによって、データセットに含まれる正解ラベルに付け違いがあったデータのリストをユーザに提示しても良い。ユーザは、提示に従って、データセットに含まれるデータの修正あるいは削除を行う。これにより、計算機4は、データセットに含まれる正解ラベルの付け違いによる学習精度の低下を抑制できる。
 立上調整の次に、ワーク取り出し装置1の立ち上げのための調整工程において、ユーザは、コントローラ3にロボットプログラムをインストールする。コントローラ3は、ロボットプログラムを実行する。コントローラ3は、ロボットプログラムの記述に従って、把持位置姿勢を認識するための認識指令をセンサ5へ送信する。センサ5は、シーン情報を取得して、計算機4へシーン情報を送信する。
 ステップS4において、計算機4は、センサ5から送信されたシーン情報を取得する。ステップS5において、候補検出部13は、ワーク7の計測データに基づいて、把持位置姿勢の候補を検出する。候補検出部13は、ワーク7の形状からハンド6による把持が可能な特徴が含まれる部分を抽出することによって、把持位置の候補とする位置を検出する。
 把持が可能な特徴としては、爪によってワーク7を挟持するハンド6であれば、爪の形状に合致するエッジが該当する。ワーク7を吸着させるハンド6であれば、一定のサイズよりも大きい平面が該当する。爪を開いてワーク7を保持するハンド6であれば、爪を差し入れる穴が該当する。候補検出部13は、画像解析によって特徴を認識する。候補検出部13は、検出された位置での把持のための把持姿勢を検出する。これにより、候補検出部13は、把持位置姿勢の候補を検出する。検出される候補の数は、任意であるものとする。候補検出部13は、検出された候補についての把持位置姿勢の情報を評価値算出部14へ出力する。
 ステップS6において、評価値算出部14は、ステップS5にて検出された各候補についての評価値を算出する。評価値算出部14は、ロボットプログラムにおいて指定されているワーク7に対応する把持評価モデルをメモリ11から読み出す。評価値算出部14は、候補である把持位置姿勢の情報とシーン情報とを把持評価モデルへ入力することによって評価値を算出する。評価値算出部14は、算出された評価値と候補である把持位置姿勢の情報とを位置姿勢決定部15へ出力する。
 ステップS7において、位置姿勢決定部15は、候補である把持位置姿勢の中から、ハンド6に取らせる把持位置姿勢を決定する。位置姿勢決定部15は、候補の中で評価値が最も高い把持位置姿勢を決定する。このように、位置姿勢決定部15は、評価値に基づいて把持位置姿勢を決定する。ステップS8において、I/F12は、ステップS7にて決定された把持位置姿勢の情報をコントローラ3へ送信する。
 計算機4は、画像解析によって認識されたワーク7の重心位置またはワーク7が占める領域を候補検出部13が検出し、ワーク7を含むワーク7付近の計測データが評価値算出部14へ入力されることによって評価値算出部14が把持位置姿勢と評価値とを算出しても良い。この場合、把持評価学習部21は、評価値を学習すると同時に、把持位置姿勢を学習する。評価値と把持位置姿勢との学習をニューラルネットワークによって実現させる場合、ニューラルネットワークの入力層にはワーク7の重心を中心とした一定範囲の計測データが入力され、ニューラルネットワークの出力層からは評価値と把持位置姿勢の情報とが出力される。
 または、計算機4は、候補検出部13によって検出された候補である把持位置姿勢の情報が評価値算出部14へ入力されることによって評価値算出部14が把持位置姿勢を修正し、評価値算出部14が修正後の把持位置姿勢の情報を出力しても良い。修正後の把持位置姿勢の学習をニューラルネットワークによって実現させる場合、ニューラルネットワークの入力層にはワーク7の重心を中心とした一定範囲の計測データと候補である把持位置姿勢の情報とが入力され、ニューラルネットワークの出力層からは修正後の把持位置姿勢の情報が出力される。
 コントローラ3は、把持位置姿勢の情報を受信すると、計算機4によって決定された把持位置姿勢をハンド6に取らせる動作指令をロボット2へ送信する。ステップS9において、ハンド6は、ロボット2へ入力される動作指令に従い、計算機4によって決定された把持位置姿勢を取ってワーク7を把持する。これにより、ワーク取り出し装置1は、図3に示す手順による動作を終了する。
 計算機4からコントローラ3へ送信される把持位置姿勢の情報には、ロボット座標系における把持位置を示す3次元座標と、爪のアプローチ方向のデータとが含まれる。アプローチ方向は、3軸の各々を中心とする角度によって表される。把持位置姿勢の情報には、認識結果の信頼度として、ステップS6にて算出された評価値が含まれても良い。信頼度は、0から1までの実数によって表される。信頼度とする評価値は、把持の安定性についての評価値と、干渉の発生状態についての評価値と、ワーク7が保持される状態についての評価値とのいずれであっても良い。
 図4は、実施の形態1にかかるワーク取り出し装置による把持位置姿勢の認識について説明するための第1の図である。図5は、実施の形態1にかかるワーク取り出し装置による把持位置姿勢の認識について説明するための第2の図である。図4には、3つのワーク7とともに、各ワーク7を把持するときにおけるハンドモデル25の例を示している。図4に示すハンドモデル25は、2つの爪によってワーク7を挟持するハンド6を模式的に表したものである。図4に示すように、各ワーク7の形状は、不揃いであって、かつ複雑な凹凸が含まれている。
 図5には、1つのワーク7についての候補として、2つの把持位置姿勢が検出された場合の例を示している。2つの把持位置姿勢のうちの一方を表すハンドモデル25-1では、2つの爪のうちの一方が凸部、他方が凹部に当てられる。2つの把持位置姿勢のうちの他方を表すハンドモデル25-2では、2つの爪の双方が平坦なエッジに当てられる。また、ハンドモデル25-1によって表される把持位置姿勢の場合、ワーク7の重心に近い位置が把持可能である一方、ハンドモデル25-2によって表される把持位置姿勢の場合、ワーク7の重心から外れた位置が把持されることになる。
 図5に示す例の場合、ハンドモデル25-2の位置よりもハンドモデル25-1の位置のほうがワーク7を安定して把持可能となる。ただし、爪の形状に合致するか否かという観点のみに着目した場合、ハンドモデル25-2によって表される把持位置姿勢のほうが、ハンドモデル25-1によって表される把持位置姿勢よりも評価が高くなる。このように、あらかじめ決められた基準による評価が行われる場合、ハンドモデル25-1の把持位置姿勢のように把持に適した位置を把持可能であるにも関わらず評価が低くなることがある。また、あらかじめ決められた基準による評価が行われる場合、ハンドモデル25-2の把持位置姿勢のように把持に適さない位置を把持することになるにも関わらず評価が高くなることがある。実施の形態1では、計算機4は、学習によって得られた把持評価モデルを用いることによって、形状に個体差があるワーク7の各々について、安定した把持が可能であるか否かを正確に評価することが可能となる。
 実施の形態1において、データセットには、ワーク7の計測データと、把持位置姿勢の情報と、把持の成否を示す情報とが含まれる。ワーク7が直線状の形状である場合のように、ワーク7の軸方向によってワーク7の姿勢を表現可能である場合において、データセットには、ワーク7の軸方向の情報が含まれても良い。軸方向の情報を含むデータセットに基づいた学習によって、計算機4は、ワーク7の姿勢に適する把持位置姿勢を認識することが可能となる。
 また、データセットには、ハンド6の状態を表す情報が含まれても良い。2つの爪によってワーク7を挟持するハンド6の場合、爪の開き幅の情報がデータセットに含まれても良い。また、爪の挿し入れ深さの情報がデータセットに含まれても良い。ハンド6の状態を表す情報を含むデータセットに基づいた学習によって、計算機4は、ワーク7の状態に合わせた最適なハンド6の状態を認識することが可能となる。ワーク7の形状、位置または姿勢によっては、あらかじめ一意に設定された開き幅あるいは挿し入れ深さでは把持が安定しないことが想定される。ワーク取り出し装置1は、ワーク7の形状、位置または姿勢に従って、開き幅および進入深さを動的に変更することができることによって、把持の成功率をさらに向上することができる。
 把持位置姿勢の複数の候補が検出された場合に、計算機4は、各候補についての把持位置姿勢の情報をコントローラ3へ送信しても良い。計算機4は、把持位置姿勢の情報を評価値の順にソートして、コントローラ3へ送信しても良い。
 データセットには、ばら積みされた複数のワーク7の各々を取り出す順番の情報が含まれても良い。把持評価学習部21は、かかるデータセットに基づいて、ばら積みされた複数のワーク7の各々を取り出すための最適な順番を学習しても良い。計算機4は、ワーク7を取り出すための最適な順番を認識することが可能となる。一度の認識によってワーク7の取り出しを複数回行う場合には、ワーク7の取り出しによってシーンが崩れない範囲においてワーク7ごとの順番が決定されることによって、ワーク取り出し装置1は、複数回の取り出し動作における把持成功率を向上させることが可能となる。
 次に、シミュレーションの活用によるデータセットの取得について説明する。図6は、実施の形態1にかかるワーク取り出し装置が有するデータセット取得部の構成例を示す図である。図6には、シミュレーションによってデータセットを自動で生成する場合におけるデータセット取得部16の構成例を示している。
 データセット取得部16は、ワーク7が取り出される環境を模擬した仮想空間におけるシーンを設定するシーン設定部31と、シーンの設定に従ってシーン情報を生成するシーン情報生成部32と、把持情報を設定する把持情報設定部33と、把持情報とシーン情報とを関連付けたデータセットを生成するデータセット生成部34と、データ変換部35とを有する。把持情報は、ワーク7ごとの把持位置姿勢の情報と評価値とを含む。
 シーン設定部31では、仮想空間に、実際にワーク7が取り出される場合と同じスペックおよび同じシチュエーションを想定した仮想センサおよび仮想ワークを配置し、取得され得る計測データをシミュレートする。スペックとは、センサ5がシーンを観測する際における画角または解像度といった条件である。シチュエーションとは、計測距離、またはワーク7の配置状態といった状況である。配置状態とは、ばら積み、平置き、整列といった状態である。シーン情報生成部32は、取得され得る計測データをシミュレートし、シーン情報を生成する。
 把持情報を作成するために、把持情報設定部33には、ワーク7に対してどのような把持位置姿勢が最適であるかを示す指標が設定されている。指標としては、把持位置とワーク7の重心との距離、ハンド6とワーク7との接触面積の大きさ、ハンド6とワーク7との接触面の角度、ワーク7のうちハンド6と接触する面における凹凸の度合い、アプローチ方向の制約条件、ハンド6の挿し入れ時におけるワーク7またはハンド6の破損の有無といった項目を採用することができる。指標は、これらの項目のうちの複数の項目についてのパラメータを含む評価関数であっても良い。評価関数には、項目ごとの重み付けが含まれても良い。鉛直上側のみが開放されている箱8にワーク7が配置されている場合、箱8の水平方向あるいは箱8の鉛直下方から箱8の内部へのハンド6の移動は制約されることになる。アプローチ方向の制約条件とは、このような制約についての条件である。
 データセット生成部34は、把持が成功する場合におけるデータである正解データのみならず、把持が失敗する場合におけるデータである失敗データも生成する。失敗データは、ネガティブデータとも称される。把持が明らかに不可能である場合の失敗データのみならず、最適な把持位置姿勢には近いが把持が失敗し易いような把持位置姿勢についての失敗データがデータセットには含まれる。最適な把持位置姿勢には近いが把持が失敗し易いような場合とは、最適な把持位置付近におけるワーク7の表面に局所的な窪みあるいは局所的な尖りがある場合などが挙げられる。このような失敗データが生成されることによって、計算機4は、最適な把持位置姿勢と紛らわしくかつ把持の失敗が見込まれる把持位置姿勢を正確に評価することができる。計算機4は、より性能の高い把持評価モデルを得ることができる。
 データ変換部35は、シーン情報生成部32によって生成されるシーン情報の品質を、ワーク7を含む実際のシーンを観測することによって取得されるシーン情報の品質に近づけさせるためのデータ変換を行う。
 一般に、シミュレーションデータには、実データに含まれるようなノイズが含まれていない。シミュレーションデータへノイズを人工的に付加しても、シミュレーションデータのデータ品質を実データと同じデータ品質とすることは困難である。これに対し、データ変換部35は、シミュレーションデータのデータ品質を実データと同じデータ品質とするためのデータ変換を行う。データ変換部35は、互いに異なる質を持つデータの相互変換を行うニューラルネットワークの枠組みであるGAN(Generative Adversarial Networks)を適用したデータ変換を行う。データ変換処理の方法としては、物理モデルに基づいてデータ欠損と誤差要因とを再現する方法と、データ変換のための特徴表現を機械学習によって獲得する方法などがある。
 ここで、2つのデータ群のうちの一方はシミュレーションによって生成されたシミュレーションデータ群とする。2つのデータ群のうちの他方は実際に取得された実データ群とする。データ変換の1つの方式として、データ変換部35は、シミュレーションデータと実データとの相互変換の学習結果に基づいて、実データの品質に近い品質をシミュレーションデータに与えるためのデータ変換を行う。データセット生成部34は、データ変換部35による変換を経たデータセットを出力する。このように、計算機4は、データ変換部35によるデータ変換によって、センサ5によって取得される実データとの乖離が少ないシミュレーションデータをデータセット取得部16において得る。これにより、計算機4は、実データであるデータセットに基づいた学習に近い学習を行うことができ、把持状態を正確に評価することが可能となる。
 または、計算機4は、データ変換の他の方式として、シミュレーションデータを用いて生成されたデータセットを基づいた学習を行い、シミュレーションデータの品質に近い品質に実データを変換して、変換されたデータを入力として把持状態の評価を行っても良い。どちらの方式によるデータ変換を行うかは、ワーク7によって、またはロボット2が行うタスク等によって適宜選択可能である。両方の方式によるデータ変換をテストして、良好なテスト結果が得られた一方の方式が選択されることとしても良い。
 なお、計算機4は、シミュレーションデータであるデータセットに基づいて把持評価モデルを学習し、把持を行う際に認識された把持位置姿勢についての実データにシミュレーションデータの品質に近い品質を与えるように、把持位置姿勢についての実データを変換することとしても良い。これにより、計算機4は、シミュレーションデータに基づく把持評価モデルを用いて、把持状態を正確に評価することが可能となる。
 このように、データセット取得部16は、シミュレーションの活用によってデータセットを取得する。これにより、計算機4は、データセットを作成する手間と作業コストとを低減することができる。
 次に、フィードバックによる把持評価モデルの更新について説明する。モデル更新部22には、把持の成否である把持結果を示す実績データが入力される。モデル更新部22は、メモリ11から読み出された把持評価モデルを実績データに基づいて更新する。モデル更新部22は、実際の把持結果に基づいた再学習によって、把持評価モデルを更新する。
 実施の形態1において、モデル更新部22は、立上調整において実施された把持試験の結果に基づいて把持評価モデルを更新する。モデル更新部22は、ワーク取り出し装置1の運用において任意のタイミングで把持評価モデルを更新しても良い。モデル更新部22は、ユーザによって指示されるタイミングにて把持評価モデルを更新する。または、モデル更新部22は、実績データを随時取得し、強化学習による把持評価モデルの学習を継続しても良い。モデル更新部22は、これらの更新を組み合わせて行っても良い。
 仮に、計算機4が、シミュレーションによって生成されたデータセットを用いた学習によって把持評価モデルを得て、把持評価モデルを実際のシーンに適用して把持状態を評価したとする。この場合において、シミュレーションによって生成されるシーン情報と実空間において取得されるシーン情報との乖離に起因して、把持成功率が低下することがある。実空間にて取得されるシーン情報には、ノイズ、センサ5における光学系の歪みあるいは校正ずれなどに起因する計測誤差が含まれ得るのに対し、シミュレーションによって生成されるシーン情報にはこのような計測誤差が含まれないことが、理由の1つとして挙げられる。これに対し、計算機4は、実空間において取得されるシーン情報を基に把持評価モデルを更新することによって、把持状態を正確に評価することが可能となる。
 なお、モデル更新部22は、把持評価モデルに基づいて取得された把持位置姿勢の情報である解を入力として、把持の成功率が低い解を除外する機能を有する新たな把持評価モデルを生成しても良い。この場合も、計算機4は、把持状態を正確に評価することが可能となる。
 モデル更新部22は、把持評価モデルの更新によって把持の成功率が一定の成功率未満となった場合に、把持評価モデルを更新前の把持評価モデルに戻しても良い。計算機4は、成功率が一定の成功率未満となった場合に、成功率が低下したことを知らせるアラームを表示装置に表示しても良い。これにより、ワーク取り出し装置1は、最低限の把持性能を確保し得る。強化学習による把持評価モデルの学習を継続する場合には、把持評価モデルの更新によってロボット2の動作がリアルタイムに変化することから、計算機4は、成功率が低下した場合に把持評価モデルを戻すことによって、把持の成功率の低下を抑制することができる。
 次に、信頼性評価モデルに基づく把持位置姿勢の選択について説明する。メモリ11は、信頼性学習部23による学習によって得られた信頼性評価モデルを記憶する。位置姿勢決定部15は、ロボットプログラムにおいて指定されているワーク7に対応する信頼性評価モデルをメモリ11から読み出す。位置姿勢決定部15は、決定された把持位置姿勢の情報を信頼性評価モデルへ入力することによって、信頼性についての評価値を算出する。位置姿勢決定部15は、算出された評価値である信頼性評価値と閾値とを比較することによって、決定された把持位置姿勢が、把持が失敗する可能性が高い把持位置姿勢であるか否かを判断する。
 位置姿勢決定部15は、信頼性評価値が閾値以上である場合、決定された把持位置姿勢の情報をI/F12へ出力する。位置姿勢決定部15は、信頼性評価値が閾値未満である場合、評価値算出部14にて算出された評価値と信頼性評価値とに基づいて、候補である把持位置姿勢の中から把持位置姿勢の選択を再度行うことによって、把持位置姿勢を決定し直す。位置姿勢決定部15は、決定された把持位置姿勢の情報をI/F12へ出力する。
 計算機4は、信頼性評価モデルに基づいて把持地位姿勢を選択することによって、把持の成功率をさらに向上させることができる。なお、計算機4は、モデル更新部22による把持評価モデルの更新と、信頼性評価モデルに基づく把持位置姿勢の選択とのうちの少なくとも一方を行うものであれば良い。これにより、計算機4は、把持の成功率を向上させることができる。
 次に、実施の形態1の応用について説明する。計算機4は、実績データをフィードバックした把持評価モデルを使用しても把持の成功率が低迷している場合に、システムエラーあるいはログを表示することによって校正の見直しをユーザに促す機能が搭載されていても良い。ハンド6またはロボット2の部品等が経時劣化することによって、ロボット2へ入力される校正値とロボット2の状態とが乖離する場合がある。この場合に、実績データをフィードバックした把持評価モデルが使用されても、把持の成功率が向上しない可能性がある。これにより、計算機4は、把持の成功率を向上させるための校正をユーザに促すことができる。
 学習部18である機械学習装置は、計算機4に内蔵されるものに限られず、計算機4の外部に設けられたものであっても良い。機械学習装置は、ネットワークを介して計算機4に接続される装置であっても良い。機械学習装置は、クラウドサーバ上に存在していても良い。計算機4には、学習済の把持評価モデルがインストールされても良い。
 機械学習装置は、クラウドサーバ上にて複数の現場から収集されたデータセットに基づいて把持評価モデルを生成しても良い。大量のワーク7について生成されたデータセットであるビッグデータに基づいて把持評価モデルが生成されることによって、計算機4は、把持の成功率をさらに向上させることができる。計算機4は、ビッグデータを基に生成された把持評価モデルを、一般的な把持の特徴量が反映されたベースモデルとして扱い、ベースモデルを基準として、現場ごと、あるいは新規のワーク7についての把持評価モデルを生成しても良い。ベースモデルには、現場あるいはワーク7に関わらず共通となる特徴量が反映されていると期待されることから、機械学習装置は、把持評価モデルを新規に学習する場合と比べて、学習に要する時間を短縮することができる。また、機械学習装置は、ベースモデルが使用されることによって、把持位置姿勢を高い精度で認識することが可能な把持評価モデルを少ないデータセットに基づいて学習することができる。
 食品のように、調理方法が同じであってかつ材料が異なるワーク7同士では、形状が異なりかつワーク7の表面の状態が類似する場合と、形状が類似しかつワーク7の表面の状態が異なる場合とがあり得る。機械学習装置は、このように類似性があるワーク7同士について、学習済のモデルを流用して把持評価モデルを学習しても良い。学習済の学習モデルには、ワーク7同士で共通となる特徴量が反映されていることが期待されることから、機械学習装置は、把持評価モデルを新規に学習する場合と比べて、学習に要する時間を短縮することができる。また、機械学習装置は、学習済のモデルが使用されることによって、把持位置姿勢を高い精度で認識することが可能な把持評価モデルを少ないデータセットに基づいて学習することができる。計算機4には、ワーク登録の際に、調理方法あるいは材料といったワーク7の属性情報が登録されも良い。類似するワーク7を属性情報に基づいて検索できるようにすることによって、計算機4は、互いに類似するワーク7についての学習の際において学習済のモデルを使用することを推奨しても良い。
 計算機4は、把持位置姿勢を認識するための把持評価モデル、すなわち把持に直接関連する情報についての学習と同時に、把持に間接的に関連する情報の学習を行っても良い。例えば、計算機4は、ワーク7の種類を識別するクラス識別処理のための情報、またはワーク7の表裏の判別といった把持後のタスクに関連する情報を学習しても良い。これにより、ワーク取り出し装置1は、ワーク7を把持した後にワーク7の種類とワーク7の表裏を判別する場合よりも、工程数を少なくすることができ、かつ構成をコンパクトにすることができる。
 実施の形態1では、計算機4は、ロボット2の可動領域内にてハンド6を移動させるために、ハンド6の制約条件の範囲内についての把持評価モデルを学習する。計算機4は、ハンド6の制約条件を解除あるいは緩和して把持評価モデルを学習しても良い。制約条件が解除あるいは緩和された場合における把持評価モデルを基にワーク7の認識試験が行われることによって、計算機4は、ハンド6の開き幅などの情報を収集する。計算機4は、収集された情報を解析することによって、安定して把持可能なハンド6の設計値を推測することができる。例えば、ハンド6の開き幅の中央値が、ハンド6のストロークの中心位置におけるハンド6の開き幅と一致するように、ハンド6が設計される。計算機4は、このようにして設計されたハンド6に基づいて再度モデルを学習する。計算機4は、ハンド6の制約条件をあらかじめ定めてからモデルを学習する場合と比較して、ワーク7に適応したモデルを学習することができ、把持の成功率を向上させることができる。
 実施の形態1によると、把持評価学習部21は、ワーク7ごとの計測データとワーク7ごとの把持位置姿勢の情報とを互いに関連付けたデータセットに基づいて、把持の安定性を評価するための把持評価モデルを学習する。評価値算出部14は、候補である把持位置姿勢の情報と計測データとを把持評価モデルへ入力することによって、評価値を算出する。これにより、計算機4は、形状にばらつきがあるワーク7の各々を安定して把持可能とする把持機構の位置および姿勢を決定することができるという効果を奏する。
 以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
 1 ワーク取り出し装置、2 ロボット、3 コントローラ、4 計算機、5 センサ、6 ハンド、7 ワーク、8 箱、10 プロセッサ、11 メモリ、12 I/F、13 候補検出部、14 評価値算出部、15 位置姿勢決定部、16 データセット取得部、17 実績取得部、18 学習部、21 把持評価学習部、22 モデル更新部、23 信頼性学習部、25,25-1,25-2 ハンドモデル、31 シーン設定部、32 シーン情報生成部、33 把持情報設定部、34 データセット生成部、35 データ変換部。

Claims (11)

  1.  把持機構による把持の対象であるワークの計測データに基づいて、把持の際に前記把持機構に取らせる位置および姿勢である把持位置姿勢の候補を検出する候補検出部と、
     前記候補である把持位置姿勢を取って前記把持機構がワークを把持した場合における把持の安定性を評価した結果である評価値を算出する評価値算出部と、
     前記把持機構に取らせる把持位置姿勢を前記評価値に基づいて決定する位置姿勢決定部と、
     ワークごとの計測データとワークごとの把持位置姿勢の情報とを互いに関連付けたデータセットに基づいて、把持の安定性を評価するための把持評価モデルを学習する把持評価学習部と、を備え、
     前記評価値算出部は、前記候補である把持位置姿勢の情報と前記計測データとを前記把持評価モデルへ入力することによって前記評価値を算出することを特徴とする情報処理装置。
  2.  前記把持評価モデルは、把持されるワークの周囲にある物体と前記把持機構との干渉の発生状態を評価するための干渉モデルと、ワークが把持された場合に前記把持機構にワークが保持される状態を評価するための保持モデルとを含み、
     前記評価値算出部は、前記干渉モデルによる評価結果と前記保持モデルによる評価結果とを基に前記評価値を算出することを特徴とする請求項1に記載の情報処理装置。
  3.  前記把持評価モデルは、前記干渉の発生状態についての評価と前記把持機構にワークが保持される状態についての評価との重み付けを表す重み情報を含み、
     前記評価値算出部は、前記干渉モデルによる評価結果と前記保持モデルによる評価結果とを前記重み情報に従って重み付けして前記評価値を算出することを特徴とする請求項2に記載の情報処理装置。
  4.  前記把持評価学習部は、前記重み情報を学習することを特徴とする請求項3に記載の情報処理装置。
  5.  ワークごとの把持位置姿勢の情報と評価値とを含む把持情報を設定する把持情報設定部と、
     前記把持情報と前記計測データを含むシーン情報とを関連付けた前記データセットを生成するデータセット生成部と、を備えることを特徴とする請求項1から4のいずれか1つに記載の情報処理装置。
  6.  ワークが取り出される環境を模擬した仮想空間におけるシーンを生成するための情報を設定するシーン設定部と、
     シーンについて設定された情報に基づいて前記シーン情報を生成するシーン情報生成部と、を備えることを特徴とする請求項5に記載の情報処理装置。
  7.  前記シーン情報生成部によって生成される前記シーン情報のデータ品質を、ワークを含む実際のシーンを観測することによって取得されるシーン情報のデータ品質に近づけさせるためのデータ変換を行うデータ変換部を備えることを特徴とする請求項6に記載の情報処理装置。
  8.  前記把持機構による把持の成否を表す情報と、把持位置姿勢の情報と、算出された前記評価値とを含む実績データを取得する実績取得部と、
     前記位置姿勢決定部において決定される把持位置姿勢の信頼性を前記実績データに基づいて評価するための信頼性評価モデルを学習する信頼性学習部と、を備え、
     前記位置姿勢決定部は、前記信頼性評価モデルに基づいて把持位置姿勢を選択することを特徴とする請求項1から7のいずれか1つに記載の情報処理装置。
  9.  把持機構による把持の対象であるワークを含むシーンを観測し、ワークの計測データを出力するセンサと、
     前記計測データに基づいて、把持の際に前記把持機構に取らせる位置および姿勢である把持位置姿勢の候補を検出する候補検出部と、
     前記候補である把持位置姿勢を取って前記把持機構がワークを把持した場合における把持の安定性を評価した結果である評価値を算出する評価値算出部と、
     前記把持機構に取らせる把持位置姿勢を前記評価値に基づいて決定する位置姿勢決定部と、
     ワークごとの計測データとワークごとの把持位置姿勢の情報とを互いに関連付けたデータセットに基づいて、把持の安定性を評価するための把持評価モデルを学習する把持評価学習部と、を備え、
     前記評価値算出部は、前記候補である把持位置姿勢の情報と前記計測データとを前記把持評価モデルへ入力することによって前記評価値を算出することを特徴とするワーク認識装置。
  10.  把持機構を有するロボットと、
     前記ロボットを制御するコントローラと、
     前記把持機構による把持の対象であるワークを含むシーンを観測し、ワークの計測データを出力するセンサと、
     把持の際に前記把持機構に取らせる位置および姿勢である把持位置姿勢についての把持の安定性を評価する把持評価モデルへ前記計測データが入力されることによって、前記把持機構に取らせる把持位置姿勢を決定し、決定された把持位置姿勢の情報を前記コントローラへ出力する計算機と、を備えることを特徴とするワーク取り出し装置。
  11.  前記計算機は、
     前記計測データに基づいて、前記把持機構に取らせる把持位置姿勢の候補を検出する候補検出部と、
     前記候補である把持位置姿勢を取って前記把持機構がワークを把持した場合における把持の安定性を評価した結果である評価値を算出する評価値算出部と、
     前記把持機構の制御にて適用される把持位置姿勢を前記評価値に基づいて決定し、決定された把持位置姿勢の情報を前記コントローラへ出力する位置姿勢決定部と、
     ワークごとの計測データとワークごとの把持位置姿勢の情報とを互いに関連付けたデータセットに基づいて前記把持評価モデルを学習する把持評価学習部と、を備え、
     前記評価値算出部は、前記候補である把持位置姿勢の情報と前記計測データとを前記把持評価モデルへ入力することによって前記評価値を算出することを特徴とする請求項10に記載のワーク取り出し装置。
PCT/JP2019/049393 2019-12-17 2019-12-17 情報処理装置、ワーク認識装置およびワーク取り出し装置 WO2021124445A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
DE112019007852.6T DE112019007852B4 (de) 2019-12-17 2019-12-17 Informationsverarbeitungsvorrichtung, Werkstückerkennungsvorrichtung und Werkstückaufgreifvorrichtung
CN201980102883.8A CN114845844B (zh) 2019-12-17 2019-12-17 信息处理装置、工件识别装置及工件取出装置
JP2020521394A JP6758540B1 (ja) 2019-12-17 2019-12-17 情報処理装置、ワーク認識装置およびワーク取り出し装置
PCT/JP2019/049393 WO2021124445A1 (ja) 2019-12-17 2019-12-17 情報処理装置、ワーク認識装置およびワーク取り出し装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2019/049393 WO2021124445A1 (ja) 2019-12-17 2019-12-17 情報処理装置、ワーク認識装置およびワーク取り出し装置

Publications (1)

Publication Number Publication Date
WO2021124445A1 true WO2021124445A1 (ja) 2021-06-24

Family

ID=72517872

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/049393 WO2021124445A1 (ja) 2019-12-17 2019-12-17 情報処理装置、ワーク認識装置およびワーク取り出し装置

Country Status (4)

Country Link
JP (1) JP6758540B1 (ja)
CN (1) CN114845844B (ja)
DE (1) DE112019007852B4 (ja)
WO (1) WO2021124445A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6908907B1 (ja) * 2021-01-12 2021-07-28 株式会社エクサウィザーズ 情報処理装置、情報処理方法、およびプログラム
JP2022179118A (ja) * 2021-05-21 2022-12-02 株式会社Preferred Networks 把持推定装置、モデル生成方法、モデル学習装置、及びグリッパ
DE102022207847A1 (de) 2022-07-29 2024-02-01 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum Steuern eines Roboters zum Manipulieren, insbesondere Aufnehmen, eines Objekts

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010179443A (ja) * 2009-02-09 2010-08-19 Honda Motor Co Ltd 把持位置計算装置及び把持位置計算方法
JP2015044274A (ja) * 2013-08-29 2015-03-12 三菱電機株式会社 部品供給装置および部品供給装置のプログラム生成方法

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9089966B2 (en) * 2010-11-17 2015-07-28 Mitsubishi Electric Corporation Workpiece pick-up apparatus
CN103687702B (zh) * 2011-06-29 2016-08-24 三菱电机株式会社 部件供给装置
GB201309156D0 (en) * 2013-05-21 2013-07-03 Univ Birmingham Grasp modelling
JP5788460B2 (ja) 2013-11-05 2015-09-30 ファナック株式会社 バラ積みされた物品をロボットで取出す装置及び方法
US9889564B2 (en) 2015-07-08 2018-02-13 Empire Technology Development Llc Stable grasp point selection for robotic grippers with machine vision and ultrasound beam forming
JP6700726B2 (ja) * 2015-11-06 2020-05-27 キヤノン株式会社 ロボット制御装置、ロボット制御方法、ロボット制御システムおよびコンピュータプログラム
JP6902208B2 (ja) 2017-11-14 2021-07-14 オムロン株式会社 把持方法、把持システム及びプログラム
JP6676030B2 (ja) * 2017-11-20 2020-04-08 株式会社安川電機 把持システム、学習装置、把持方法、及び、モデルの製造方法
JP6662836B2 (ja) 2017-11-24 2020-03-11 ファナック株式会社 収容領域又は治具にワークを配置するワーク配置システム
JP6912415B2 (ja) 2018-04-10 2021-08-04 ファナック株式会社 ハンド制御装置およびハンド制御システム
CN110363815A (zh) * 2019-05-05 2019-10-22 东南大学 一种单视角点云下基于实例分割的机器人抓取检测方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010179443A (ja) * 2009-02-09 2010-08-19 Honda Motor Co Ltd 把持位置計算装置及び把持位置計算方法
JP2015044274A (ja) * 2013-08-29 2015-03-12 三菱電機株式会社 部品供給装置および部品供給装置のプログラム生成方法

Also Published As

Publication number Publication date
CN114845844A (zh) 2022-08-02
DE112019007852T5 (de) 2022-07-28
DE112019007852B4 (de) 2023-06-22
JP6758540B1 (ja) 2020-09-23
JPWO2021124445A1 (ja) 2021-12-23
CN114845844B (zh) 2023-05-30

Similar Documents

Publication Publication Date Title
JP6758540B1 (ja) 情報処理装置、ワーク認識装置およびワーク取り出し装置
CN111684474B (zh) 运算装置、运算方法及记录介质
JP6438512B2 (ja) 機械学習により補正した計測データでワークの取り出しを行うロボットシステム、計測データ処理装置および計測データ処理方法
JP6586532B2 (ja) ロボットの把持のための深層機械学習方法および装置
US10899011B2 (en) Method and system for selecting a preferred robotic grasp of an object-of-interest using pairwise ranking
EP3166084B1 (en) Method and system for determining a configuration of a virtual robot in a virtual environment
US10286557B2 (en) Workpiece position/posture calculation system and handling system
US10964057B2 (en) Information processing apparatus, method for controlling information processing apparatus, and storage medium
US11745355B2 (en) Control device, control method, and non-transitory computer-readable storage medium
CN111439594B (zh) 基于3d视觉引导的拆垛方法和系统
JP2019058960A (ja) ロボットシステム及びワーク取り出し方法
CN109794933B (zh) 机器人指尖设计方法、抓取规划器和抓取方法
JP5561384B2 (ja) 認識プログラム評価装置および認識プログラム評価方法
CN110378325B (zh) 一种机器人抓取过程中的目标位姿识别方法
JP2017055913A (ja) 動作フォーム判定装置、判定方法、判定プログラム、判定システム
JP2017094407A (ja) シミュレーション装置、シミュレーション方法、およびシミュレーションプログラム
JP2021030407A (ja) 情報処理装置、情報処理方法及びプログラム
EP4052869A1 (en) Machine learning data generation device, machine learning device, work system, computer program, machine learning data generation method, and method for manufacturing work machine
EA038279B1 (ru) Способ и система захвата объекта с помощью роботизированного устройства
JP6869060B2 (ja) マニピュレータの制御装置、制御方法およびプログラム、ならびに作業システム
JP6902369B2 (ja) 提示装置、提示方法およびプログラム、ならびに作業システム
Wolniakowski et al. Task and context sensitive gripper design learning using dynamic grasp simulation
JP6456557B1 (ja) 把持位置姿勢教示装置、把持位置姿勢教示方法及びロボットシステム
CN116276973A (zh) 基于深度学习的视觉感知抓取训练方法
JP2019197441A (ja) 学習装置、学習方法及び学習プログラム

Legal Events

Date Code Title Description
ENP Entry into the national phase

Ref document number: 2020521394

Country of ref document: JP

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19956628

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 19956628

Country of ref document: EP

Kind code of ref document: A1