WO2022210948A1 - 特定点検出システム、特定点検出方法及び特定点検出プログラム - Google Patents

特定点検出システム、特定点検出方法及び特定点検出プログラム Download PDF

Info

Publication number
WO2022210948A1
WO2022210948A1 PCT/JP2022/016214 JP2022016214W WO2022210948A1 WO 2022210948 A1 WO2022210948 A1 WO 2022210948A1 JP 2022016214 W JP2022016214 W JP 2022016214W WO 2022210948 A1 WO2022210948 A1 WO 2022210948A1
Authority
WO
WIPO (PCT)
Prior art keywords
detection
specific point
burr
detection model
dimensional information
Prior art date
Application number
PCT/JP2022/016214
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 CN202280023818.8A priority Critical patent/CN117043546A/zh
Priority to US18/552,675 priority patent/US20240169550A1/en
Publication of WO2022210948A1 publication Critical patent/WO2022210948A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01BMEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
    • G01B11/00Measuring arrangements characterised by the use of optical techniques
    • G01B11/24Measuring arrangements characterised by the use of optical techniques for measuring contours or curvatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/174Segmentation; Edge detection involving the use of two or more images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • G06T7/74Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning

Definitions

  • the present disclosure relates to a specific point detection system, a specific point detection method, and a specific point detection program.
  • Patent Literature 1 discloses an apparatus that detects burrs as specific points by comparing a three-dimensional shape expressed using voxels from measurement data of a workpiece with a 3D-CAD model of the workpiece.
  • the present disclosure has been made in view of this point, and its purpose is to simplify processing when detecting specific points from three-dimensional information of an object.
  • the specific point detection system of the present disclosure uses an imaging device that acquires an image of an object and a first detection model that has been learned by machine learning, and the image acquired by the imaging device is used as an input, and the object a first detection unit that detects a specific point included in a three-dimensional information acquisition device that acquires three-dimensional information of the object including the specific point detected by the first detection unit; and learning by machine learning a second detection unit that re-detects the specific point using the three-dimensional information obtained by the three-dimensional information obtaining device using the already-finished second detection model.
  • the specific point detection method of the present disclosure acquires an image of an object and uses a first detection model that has been learned by machine learning to detect specific points included in the object using the image as an input. obtaining three-dimensional information of the object including the specific point detected by the first detection model; and acquiring the three-dimensional information using a second detection model that has been learned by machine learning. and re-detecting said specific point as an input.
  • the specific point detection program of the present disclosure acquires an image of an object to a computer in order to detect a specific point of the object, and uses a first detection model that has been learned by machine learning to input the image. As, detecting a specific point included in the object, acquiring three-dimensional information of the object including the specific point detected by the first detection model, and learning by machine learning and re-detecting the specific point using a second detection model with the three-dimensional information as an input.
  • the specific point detection system it is possible to simplify processing when detecting specific points from three-dimensional information of an object.
  • the specific point detection method it is possible to simplify processing when detecting specific points from the three-dimensional information of the object.
  • the process for detecting specific points from the three-dimensional information of the object can be simplified.
  • FIG. 1 is a schematic diagram showing the configuration of a machining system.
  • FIG. 2 is a diagram showing a schematic hardware configuration of the robot controller.
  • FIG. 3 is a diagram showing a schematic hardware configuration of the operation control device.
  • FIG. 4 is a diagram showing a schematic hardware configuration of the control device.
  • FIG. 5 is a block diagram showing the configuration of a control system for manual control of the machining system.
  • FIG. 6 is a block diagram showing the configuration of a control system for automatic control of the machining system.
  • FIG. 7 is a flow chart of automatic control of the machining system.
  • FIG. 8 is a schematic diagram showing the state of the robot arm when the object W is imaged.
  • FIG. 9 is a schematic diagram showing an example of an image acquired by an imaging device.
  • FIG. 9 is a schematic diagram showing an example of an image acquired by an imaging device.
  • FIG. 10 is a schematic diagram showing the state of the robot arm when acquiring point cloud data of an object.
  • FIG. 11 is a schematic diagram showing an example of point cloud data acquired by a three-dimensional scanner.
  • FIG. 12 is a schematic diagram showing the state of the robot arm when grinding burrs.
  • FIG. 1 is a schematic diagram showing the configuration of a processing system 100 according to an embodiment. Note that the dashed lines in FIG. 1 represent wireless communication.
  • the processing system 100 includes a specific point detection system 200 (hereinafter also referred to as "detection system 200") that detects specific points on the object W.
  • the specific point is a burr on the object W.
  • FIG. Burrs include casting burrs, cutting burrs, grinding burrs, shear burrs, plastic deformation burrs, sprue burrs and welding burrs.
  • the detection system 200 includes an imaging device 71 that acquires an image of the object W, and a first detection unit 83 that detects burrs B included in the object W based on the image acquired by the imaging device 71 (see FIG. 6). a three-dimensional scanner 72 that acquires three-dimensional information of the object W including the burr B detected by the first detection unit 83; and a second detection unit 85 (see FIG. 6).
  • the 3D scanner 72 is an example of a 3D information acquisition device.
  • the detection system 200 further comprises a robot arm 12.
  • An imaging device 71 and a three-dimensional scanner 72 are arranged on the robot arm 12 .
  • the detection system 200 further includes a robot 1 and a controller 3 that controls the robot 1 .
  • a robot arm 12 is included in the robot 1 .
  • the processing system 100 further includes an operating device 2 operated by a user.
  • the robot 1 acts on the object W according to the operation of the operating device 2 .
  • the control device 3 also controls the operating device 2 .
  • the robot 1 and the operating device 2 are remotely arranged.
  • the processing system 100 is capable of manually processing the object W and automatically processing the object W. FIG.
  • the processing system 100 realizes remote control between the operating device 2 and the robot 1.
  • the operating device 2 functions as a master device and the robot 1 functions as a slave device.
  • the work performed by the robot 1 does not include teaching work and teaching confirmation and correction work. Therefore, the operating device 2 does not include a teach pendant.
  • the robot 1 and the operation device 2 are communicably connected. Specifically, the robot 1 is communicably connected to the control device 3 .
  • the operation device 2 is communicably connected to the control device 3 . That is, the operating device 2 communicates with the robot 1 via the control device 3 .
  • robot 1 is an industrial robot.
  • the robot 1 applies an action to the object W.
  • the action is specifically machining, more specifically grinding.
  • the action is not limited to grinding, and may be cutting, polishing, or the like.
  • the robot 1 has a sensor that detects the operating state of the robot 1.
  • the robot 1 further has a contact force sensor 13 that detects a reaction force received from the object W (hereinafter referred to as "contact force").
  • the control device 3 receives the detection result of the contact force sensor 13 via the robot 1.
  • the control device 3 executes motion control of at least one of the robot 1 and the operation device 2 based on the detection result of the contact force sensor 13 .
  • the control device 3 controls the motion of the robot 1 and presents the reaction force acting on the robot 1 to the user in accordance with the operation of the operation device 2 by the user and the detection result of the contact force sensor 13 . It controls the operation of the operating device 2 .
  • the robot 1 may have an end effector 11 that acts on the object W and a robot arm 12 that operates the end effector 11 .
  • the robot 1 operates, that is, moves the end effector 11 by the robot arm 12 and applies an action to the object W by the end effector 11 .
  • the robot 1 may further include a base 10 that supports the robot arm 12 and a robot controller 14 that controls the robot 1 as a whole.
  • a robot coordinate system with three orthogonal axes is defined for the robot 1.
  • the Z-axis is set in the vertical direction
  • the X-axis and Y-axis are set in the horizontal direction, which are perpendicular to each other.
  • the end effector 11 has a grinding device 11a and applies grinding to the object W as an action.
  • the grinding device 11a may be a grinder, an orbital sander, a random orbit sander, a delta sander, a belt sander, or the like.
  • the grinder may be of a type that rotates a disk-shaped grinding wheel, a type that rotates a conical or cylindrical grinding wheel, or the like.
  • the grinding device 11a is a grinder.
  • the robot arm 12 changes the position of the grinding device 11a. Furthermore, the robot arm 12 may change the posture of the grinding device 11a.
  • the robot arm 12 is a vertically articulated robot arm.
  • the robot arm 12 has a plurality of links 12a, joints 12b that connect the plurality of links 12a, and a servo motor 15 (see FIG. 2) that rotationally drives the plurality of joints 12b.
  • the robot arm 12 may be a horizontal articulated robot arm, a parallel link robot arm, a rectangular coordinate robot arm, a polar coordinate robot arm, or the like.
  • the contact force sensor 13 is provided between the robot arm 12 and the end effector 11 (specifically, the connecting portion between the robot arm 12 and the end effector 11).
  • the contact force sensor 13 detects the contact force that the end effector 11 receives from the object W. As shown in FIG.
  • the contact force sensor 13 detects forces in directions of three orthogonal axes and moments around the three axes.
  • the force sensor is not limited to the contact force sensor 13.
  • the contact force sensor 13 may detect only uniaxial, biaxial, or triaxial forces.
  • the force sensor may be a current sensor that detects the current of the servomotor 15 of the robot arm 12 or a torque sensor that detects the torque of the servomotor 15 .
  • the imaging device 71 is attached to the robot arm 12. Specifically, the imaging device 71 is attached to the link 12 a on the most tip side of the robot arm 12 . The imaging device 71 shoots an RGB image. An image captured by the imaging device 71 is input from the robot control device 14 to the control device 3 as an image signal.
  • the three-dimensional scanner 72 is attached to the robot arm 12. Specifically, the three-dimensional scanner 72 is attached to the link 12a of the robot arm 12, which is the most distal end.
  • the three-dimensional scanner 72 acquires point cloud data of the object W as three-dimensional information. That is, the three-dimensional scanner 72 outputs three-dimensional coordinates of many points on the surface of the object W as a point group. Point cloud data of the three-dimensional scanner 72 is input from the robot controller 14 to the controller 3 .
  • the imaging device 71 When the robot arm 12 acquires an image of the object W, the imaging device 71 is moved to a predetermined imaging position.
  • the three-dimensional scanner 72 is moved to a position corresponding to the burr B that has been detected.
  • FIG. 2 is a diagram showing a schematic hardware configuration of the robot control device 14.
  • the robot controller 14 controls the servo motor 15 of the robot arm 12 and the grinding device 11a.
  • the robot controller 14 receives detection signals from the contact force sensor 13 .
  • the robot control device 14 transmits and receives information, commands, data, etc. to and from the control device 3 .
  • the robot control device 14 has a control section 16 , a storage section 17 and a memory 18 .
  • the control unit 16 controls the robot control device 14 as a whole.
  • the control unit 16 performs various arithmetic processing.
  • the control unit 16 is formed by a processor such as a CPU (Central Processing Unit).
  • the control unit 16 may be formed of MCU (Micro Controller Unit), MPU (Micro Processor Unit), FPGA (Field Programmable Gate Array), PLC (Programmable Logic Controller), system LSI, and the like.
  • the storage unit 17 stores programs executed by the control unit 16 and various data.
  • the storage unit 17 is formed of a nonvolatile memory, HDD (Hard Disc Drive), SSD (Solid State Drive), or the like.
  • the memory 18 temporarily stores data and the like.
  • memory 18 is formed of volatile memory.
  • the operation device 2 has an operation unit 21 operated by a user and an operation force sensor 23 that detects an operation force applied to the operation unit 21 by the user.
  • the operation device 2 receives an input for manually operating the robot 1 and outputs operation information, which is the input information, to the control device 3 .
  • the user operates the operation device 2 by gripping the operation unit 21 .
  • the operating force sensor 23 detects the force applied to the operating portion 21 at that time.
  • the operating force detected by the operating force sensor 23 is output to the control device 3 as operation information.
  • the operation device 2 may further include a base 20 , a support mechanism 22 provided on the base 20 to support the operation section 21 , and an operation control device 24 that controls the entire operation device 2 .
  • the operation device 2 presents the user with a reaction force against the operation force under the control of the control device 3 .
  • the operation control device 24 receives a command from the control device 3 and controls the support mechanism 22 to allow the user to sense the reaction force.
  • the operation device 2 has an operation coordinate system with three orthogonal axes.
  • the operation coordinate system corresponds to the robot coordinate system. That is, the Z-axis is set in the vertical direction, and the X-axis and the Y-axis are set in the horizontal direction, which are perpendicular to each other.
  • the support mechanism 22 has a plurality of links 22a, joints 22b that connect the plurality of links 22a, and a servo motor 25 (see FIG. 3) that rotationally drives the plurality of joints 22b.
  • the support mechanism 22 supports the operating section 21 so that the operating section 21 can assume any position and orientation within the three-dimensional space.
  • a servomotor 25 rotates in accordance with the position and orientation of the operation unit 21 . The amount of rotation of the servomotor 25, that is, the rotation angle is uniquely determined.
  • the operating force sensor 23 is provided between the operating portion 21 and the support mechanism 22 (specifically, the connecting portion between the operating portion 21 and the support mechanism 22).
  • the operating force sensor 23 detects forces in directions of three orthogonal axes and moments around the three axes.
  • the operating force detection unit is not limited to the operating force sensor 23 .
  • the operating force sensor 23 may detect only uniaxial, biaxial, or triaxial forces.
  • the detection unit may be a current sensor that detects the current of the servomotor 25 of the support mechanism 22, a torque sensor that detects the torque of the servomotor 25, or the like.
  • FIG. 3 is a diagram showing a schematic hardware configuration of the operation control device 24.
  • the operation control device 24 operates the support mechanism 22 by controlling the servomotor 25 .
  • the operation control device 24 receives detection signals from the operation force sensor 23 .
  • the operation control device 24 transmits and receives information, commands, data, etc. to and from the control device 3 .
  • the operation control device 24 has a control section 26 , a storage section 27 and a memory 28 .
  • the control unit 26 controls the operation control device 24 as a whole.
  • the control unit 26 performs various arithmetic processing.
  • the control unit 26 is formed by a processor such as a CPU (Central Processing Unit).
  • the control unit 26 may be formed of MCU (Micro Controller Unit), MPU (Micro Processor Unit), FPGA (Field Programmable Gate Array), PLC (Programmable Logic Controller), system LSI, and the like.
  • the storage unit 27 stores programs executed by the control unit 26 and various data.
  • the storage unit 27 is formed of a nonvolatile memory, HDD (Hard Disc Drive), SSD (Solid State Drive), or the like.
  • the memory 28 temporarily stores data and the like.
  • memory 28 is formed of volatile memory.
  • the control device 3 controls the processing system 100 and the detection system 200 as a whole, and performs motion control of the robot 1 and the operation device 2 . Specifically, the control device 3 performs manual control of the processing system 100 and automatic control of the processing system 100 according to the user's operation. In manual control, the control device 3 performs master-slave control, specifically bilateral control, between the robot 1 and the operating device 2 . The control device 3 controls the operation of the robot 1 according to the operation of the operation device 2 by the user's operation, and operates the operation device 2 so as to present the user with a reaction force according to the detection result of the contact force sensor 13. to control.
  • the end effector 11 processes the object W according to the user's operation, and the reaction force during processing is presented to the user via the operation device 2 . Further, the control device 3 detects the burr B of the object W in the automatic control. Furthermore, the control device 3 automatically grinds the burr B after the burr B is detected.
  • FIG. 4 is a diagram showing a schematic hardware configuration of the control device 3.
  • the control device 3 transmits and receives information, commands, data, etc. to and from the robot control device 14 and the operation control device 24 .
  • the control device 3 has a control section 31 , a storage section 32 and a memory 33 . Although illustration is omitted, the control device 3 further has an input operation unit operated by the user to set the operation control of the robot 1 and the operation device 2, and a display for displaying the setting contents. good too.
  • the control unit 31 controls the control device 3 as a whole.
  • the control unit 31 performs various kinds of arithmetic processing.
  • the control unit 31 is formed by a processor such as a CPU (Central Processing Unit).
  • the control unit 31 may be formed of MCU (Micro Controller Unit), MPU (Micro Processor Unit), FPGA (Field Programmable Gate Array), PLC (Programmable Logic Controller), system LSI, and the like.
  • the storage unit 32 stores programs executed by the control unit 31 and various data.
  • the storage unit 32 stores programs for controlling the processing system 100 and the detection system 200 .
  • the storage unit 32 is formed of a non-volatile memory, HDD (Hard Disc Drive), SSD (Solid State Drive), or the like.
  • the program stored in the storage unit 32 is a specific point detection program 32a that causes a computer to execute a predetermined procedure in order to detect the burrs B on the object W.
  • the memory 33 temporarily stores data and the like.
  • memory 33 is formed of volatile memory.
  • control device 3 controls the operation of the robot 1 according to the operation of the operation device 2 operated by the user, Manual control is performed to control the operation of the operating device 2 so as to present the user with a reaction force according to the detection result of the contact force sensor 13 .
  • the control device 3 detects the burr B based on the image of the object W and the three-dimensional information obtained by the imaging device 71 and the three-dimensional scanner 72, and detects the detected burr B. Automatic control for processing by the robot 1 is executed.
  • FIG. 5 is a block diagram showing the configuration of a control system for manual control of the machining system 100. As shown in FIG. 5
  • the control unit 16 of the robot control device 14 implements various functions by reading programs from the storage unit 17 to the memory 18 and expanding them. Specifically, the control unit 16 functions as an input processing unit 41 and an operation control unit 42 .
  • the input processing unit 41 outputs information, data, commands, etc. received from the contact force sensor 13 and the servomotor 15 to the control device 3 .
  • the input processing unit 41 receives six-axis force detection signals (hereinafter referred to as “sensor signals”) from the contact force sensor 13 and outputs the sensor signals to the control device 3 .
  • the input processing unit 41 also receives detection signals from a rotation sensor (for example, an encoder) and a current sensor from the servomotor 15 .
  • the input processing unit 41 outputs the detection signal to the motion control unit 42 for feedback control of the robot arm 12 by the motion control unit 42 .
  • the input processing unit 41 also outputs the detection signal to the control device 3 as positional information of the robot arm 12 .
  • the motion control unit 42 receives the command position xds from the control device 3 and generates a control command for operating the robot arm 12 according to the command position xds.
  • the motion control unit 42 outputs a control command to the servomotor 15 to operate the robot arm 12 and move the grinding device 11a to a position corresponding to the commanded position.
  • the motion control unit 42 feedback-controls the motion of the robot arm 12 based on the detection signal of the rotation sensor and/or the current sensor of the servomotor 15 from the input processing unit 41 .
  • the operation control unit 42 outputs a control command to the grinding device 11a to operate the grinding device 11a.
  • the grinding device 11a grinds the target object W.
  • the control unit 26 of the operation control device 24 implements various functions by reading programs from the storage unit 27 into the memory 28 and expanding them. Specifically, the control unit 26 functions as an input processing unit 51 and an operation control unit 52 .
  • the input processing unit 51 outputs information, data, commands, etc. received from the operating force sensor 23 to the control device 3 . Specifically, the input processing unit 51 receives detection signals of six-axis forces from the operating force sensor 23 and outputs the detection signals to the control device 3 . The input processing unit 51 also receives detection signals from a rotation sensor (for example, an encoder) and a current sensor from the servomotor 25 . The input processing unit 51 outputs the detection signal to the operation control unit 52 for feedback control of the support mechanism 22 by the operation control unit 52 .
  • a rotation sensor for example, an encoder
  • a current sensor from the servomotor 25
  • the motion control unit 52 receives the command position xdm from the control device 3 and generates a control command for operating the support mechanism 22 according to the command position xdm.
  • the motion control unit 52 outputs a control command to the servomotor 25 to operate the support mechanism 22 and move the operation unit 21 to a position corresponding to the commanded position.
  • the motion control unit 52 feedback-controls the motion of the support mechanism 22 based on the detection signal of the rotation sensor and/or the current sensor of the servomotor 25 from the input processing unit 51 .
  • a reaction force is applied to the operation force applied to the operation unit 21 by the user.
  • the user can operate the operation unit 21 while feeling the reaction force of the object W from the operation unit 21 in a pseudo manner.
  • the control unit 31 of the control device 3 implements various functions by reading programs from the storage unit 32 to the memory 33 and expanding them.
  • the control unit 31 includes an operating force acquisition unit 61, a contact force acquisition unit 62, an addition unit 63, a force/velocity conversion unit 64, a first speed/position conversion unit 65, and a second speed/position conversion unit 66. function as
  • the operating force acquiring unit 61 receives the detection signal of the operating force sensor 23 via the input processing unit 51 and acquires the operating force fm based on the detection signal.
  • the operating force acquisition unit 61 inputs the operating force fm to the adding unit 63 .
  • the contact force acquisition unit 62 receives the sensor signal of the contact force sensor 13 via the input processing unit 41 and acquires the contact force fs based on the sensor signal.
  • the contact force acquisition unit 62 inputs the contact force fs to the addition unit 63 .
  • the adding section 63 calculates the sum of the operating force fm input from the operating force acquiring section 61 and the contact force fs input from the contact force acquiring section 62 .
  • the operating force fm and the contact force fs are forces in opposite directions, the positive and negative signs of the operating force fm and the contact force fs are different. That is, by adding the operation force fm and the contact force fs, the absolute value of the resultant force fm+fs, which is the sum of the operation force fm and the contact force fs, becomes smaller than the absolute value of the operation force fm.
  • Adder 63 outputs resultant force fm+fs.
  • the force/velocity conversion unit 64 converts the input combined force fm+fs into the command velocity xd'.
  • the force/velocity conversion unit 64 calculates the command velocity xd' using a motion model based on an equation of motion including an inertia coefficient, a viscosity coefficient (damper coefficient), and a stiffness coefficient (spring coefficient). Specifically, the force/velocity conversion unit 64 calculates the command velocity xd' based on the following equation of motion.
  • xd is the command position.
  • md is the inertia coefficient.
  • cd is the viscosity coefficient.
  • kd is the stiffness coefficient.
  • fm is the operating force.
  • fs is the contact force.
  • "'" represents one-time differentiation, and """ represents two-time differentiation.
  • Equation (1) is a linear differential equation, and solving Equation (1) for xd' yields Equation (2).
  • A is a term represented by fm, fs, md, cd, kd, and so on.
  • Formula (2) is stored in the storage unit 32.
  • the force/velocity conversion unit 64 reads the formula (2) from the storage unit 32 to obtain the command speed xd′, and converts the obtained command speed xd′ to the first speed/position conversion unit 65 and the second speed/position conversion unit. 66.
  • the first speed/position conversion unit 65 converts the coordinate-converted command speed xd' into a command position xds for the robot 1 on the basis of the robot coordinate system. For example, when the ratio of the movement amount of the robot 1 to the movement amount of the operating device 2 is set, the first speed/position conversion unit 65 multiplies the command position xd obtained from the command speed xd' according to the movement ratio. to obtain the command position xds. The first speed/position converter 65 outputs the obtained command position xds to the robot controller 14 , more specifically, to the motion controller 42 . The motion control unit 42 moves the robot arm 12 based on the command position xds as described above.
  • the second speed/position conversion unit 66 converts the command speed xd' into a command position xdm for the operating device 2 based on the operation coordinate system.
  • the second speed/position conversion section 66 outputs the obtained command position xdm to the operation control device 24 , more specifically, to the motion control section 52 .
  • the motion control unit 52 operates the support mechanism 22 based on the command position xdm as described above.
  • FIG. 6 is a block diagram showing the configuration of the control system for automatic control of the machining system 100. As shown in FIG. 6
  • the control unit 31 of the control device 3 implements various functions by reading a program (for example, a specific point detection program 32a) from the storage unit 32 into the memory 33 and developing it. Specifically, the control unit 31 functions as an operation command unit 81 , an imaging unit 82 , a first detection unit 83 , a three-dimensional information acquisition unit 84 and a second detection unit 85 .
  • a program for example, a specific point detection program 32a
  • the control unit 31 functions as an operation command unit 81 , an imaging unit 82 , a first detection unit 83 , a three-dimensional information acquisition unit 84 and a second detection unit 85 .
  • the first detection unit 83 uses a first detection model 86 that has been learned by machine learning, receives an image captured by the imaging device 71 as an input, and detects burrs B included in the object W (hereinafter referred to as this detection). is also called “first detection”).
  • the second detection unit 85 uses a second detection model 87 that has already been learned by machine learning, receives point cloud data acquired by the three-dimensional scanner 72 as an input, and redetects the burr B (hereinafter, this detection is referred to as " Also referred to as "second detection”).
  • the first detection model 86 and the second detection model 87 are stored in the storage unit 32 .
  • the motion command unit 81 creates command positions for the robot arm 12 and obtains the rotation angle of each joint 12b of the robot arm 12 according to the created command positions. Further, the motion command unit 81 creates a command value corresponding to the obtained rotation angle of each joint 12b and outputs the created command value to the robot control device 14 .
  • the robot control device 14 drives the servomotor 15 based on the command value from the motion command section 81 . At this time, the robot control device 14 feedback-controls the supply current to the servomotor 15 based on the detection result of the encoder.
  • the imaging unit 82 controls the imaging device 71 and causes the imaging device 71 to capture an image of the object W.
  • the first detection unit 83 detects burrs B on the object W based on the image acquired by the imaging device 71 .
  • the first detection unit 83 detects the burr B using a first detection model 86 that has been learned by machine learning.
  • the first detection model 86 receives the image of the object W as an input and outputs the position of the burr B of the object W.
  • the three-dimensional information acquisition unit 84 controls the three-dimensional scanner 72 to acquire the point cloud data of the target object W.
  • the second detection unit 85 detects burrs B on the object W based on the point cloud data acquired by the three-dimensional scanner 72 .
  • the second detection unit 85 detects the burr B using a second detection model 87 that has been learned by machine learning.
  • the second detection model 87 receives the point cloud data of the object W and outputs the position of the burr B of the object W.
  • the first detection model 86 and the second detection model 87 will be further explained.
  • the first detection model 86 is created by machine learning such as deep learning or neural network. For example, training data in which images of the object W before and after grinding the burr B are acquired, and classes and regions (that is, positions) are annotated from the acquired images with attributes of the burr B and portions other than the burr B. is created. Using the created training data as an input, a first detection model 86 is created using a deep learning algorithm such as a neural network. The first detection model 86 receives the image of the object W as an input, and outputs the presence or absence of the burr B on the object W and the position of the burr B. FIG.
  • the first detection model 86 includes an extraction block that extracts the feature amount of the burr from the image, a position prediction block that regression-predicts the position coordinates of the burr from the feature amount extracted by the extraction block, and an extraction block that and a prediction block that predicts the burr class from the extracted features.
  • a convolutional neural network is used to extract the feature amount in the extraction block. Note that a convolutional neural network that encompasses all blocks may also be used. Also, each block need not exist independently, and one block may have the functions of a plurality of blocks.
  • the training data for the first detection model 86 is an image that includes a relatively large range of the object W, such as an image that includes all or most of the object W. For each type of object W, images of the object W having various burrs B are employed as training data. Also, the training data for the first detection model 86 is preferably images of the object W before and after actual processing by the manually controlled processing system 100 . Since the object W is actually manually processed using the machining system 100, training data can be easily obtained by acquiring images of the object W before and after grinding at this time. Furthermore, since an image reflecting the environment of the site where the robot 1 is actually installed can be acquired, the first detection model 86 with high detection accuracy of the burr B is created.
  • the second detection model 87 is created by machine learning with higher descriptiveness or readability than the first detection model 86.
  • the second detection model 87 is created using a decision tree based machine learning algorithm. For example, from point cloud data obtained from a sample of burr B, training data annotated with classes and regions (ie positions) with attributes of burr B and parts other than burr B are created.
  • a second detection model 87 is created using a decision tree machine learning algorithm using the created training data as an input.
  • the second detection model 87 receives the point cloud data of the target object W, and outputs the presence or absence of the burr B on the target object W and the position of the burr B.
  • the second detection model 87 includes a calculation block that calculates a local feature amount for each point of the point cloud data or each voxel area generated from the point cloud data, and a burr detection model based on the feature amount calculated by the calculation block.
  • Machine learning having a prediction block that predicts a class, and a position calculation block that calculates position coordinates of burrs from geometric processing of feature values calculated by the calculation block, classes predicted by the prediction block, and point cloud data. can be a model.
  • a decision tree-based machine learning algorithm is used for the prediction block.
  • each block need not exist independently, and one block may have the functions of a plurality of blocks.
  • the range of the object W represented by the point cloud data may be a local portion including the burr B, and is smaller than the range of the object W represented by the image input to the first detection model 86.
  • the second detection model 87 is a model created by machine learning that can be additionally learned. That is, the learned second detection model 87 is updated by additionally performing machine learning using new training data.
  • the training data for the second detection model 87 is an image including a relatively small range of the object W, such as a local image including the burr B.
  • the training data does not need to be point cloud data of the entire sample, and may be local point cloud data including at least the burr B. Therefore, the sample may be a component of the same type as the object W, or may be a component of a different type from the object W.
  • the range of the object W input to the second detection model 87 as point cloud data is narrower than the range of the object W input to the first detection model 86 as an image.
  • the object W represented by the point cloud data input to the second detection model 87 is localized compared to the object W represented by the image input to the first detection model 86 .
  • the first detection model 86 globally and preliminarily detects the burr B from the entire object W based on the image of the object W.
  • the second detection model 87 locally examines the burr B detected by the first detection unit 83 based on the point cloud data of the object W, and re-detects it with higher accuracy than the first detection model 86. do.
  • ⁇ Manual control> In manual control, the user operates the operation device 2 to cause the robot 1 to perform the actual work on the object W.
  • FIG. For example, the user operates the operating device 2 to grind the object W by the robot 1 .
  • the operating force sensor 23 detects an operating force applied by the user to the operating unit 21 as an operation performed by the user through the operating device 2 .
  • the robot arm 12 is controlled according to the operating force.
  • the operating force sensor 23 detects the operating force applied by the user via the operating section 21 .
  • the contact force sensor 13 of the robot 1 detects the contact force.
  • the operating force detected by the operating force sensor 23 is input to the control device 3 as a detection signal by the input processing unit 51 .
  • the operating force acquiring section 61 inputs the operating force fm based on the detection signal to the adding section 63 .
  • the contact force detected by the contact force sensor 13 is input to the input processing unit 41 as a sensor signal.
  • a sensor signal input to the input processing unit 41 is input to the contact force acquisition unit 62 .
  • the contact force acquisition unit 62 inputs the contact force fs based on the sensor signal to the addition unit 63 .
  • the addition unit 63 inputs the resultant force fm+fs to the force/velocity conversion unit 64.
  • the force/velocity conversion unit 64 obtains the command velocity xd' based on the formula (2) using the combined force fm+fs.
  • the first speed/position conversion unit 65 obtains the command position xds from the command speed xd'.
  • the motion control unit 42 of the robot control device 14 operates the robot arm 12 according to the command position xds to control the position of the grinding device 11a.
  • the object W is ground by the grinding device 11a while a pressing force corresponding to the operating force fm is applied to the object W.
  • the second speed/position conversion unit 66 obtains the command position xdm from the command speed xd'.
  • the operation control unit 52 of the operation control device 24 operates the support mechanism 22 according to the command position xdm to control the position of the operation unit 21 . Thereby, the user perceives the reaction force corresponding to the contact force fs.
  • the processing of the object W by the robot 1 is executed by the user's operation of the operating device 2 as described above.
  • a first detection model 86 can be created using the acquired images as training data.
  • FIG. 7 is a flow chart of automatic control of the processing system 100. As shown in FIG.
  • step S1 the control device 3 captures an image of the object W.
  • FIG. 8 is a schematic diagram showing the state of the robot arm 12 when the object W is imaged.
  • FIG. 9 is a schematic diagram showing an example of an image acquired by the imaging device 71. As shown in FIG.
  • the motion command unit 81 moves the robot arm 12 so that the imaging device 71 is positioned at a predetermined imaging position.
  • the imaging unit 82 causes the imaging device 71 to image the object W.
  • FIG. For example, the imaging device 71 images the object W so as to obtain an image of the entire object W, as shown in FIG.
  • the imaging of the object W may be performed multiple times instead of once. That is, the imaging device 71 moves to a plurality of imaging positions and images the object W at each imaging position.
  • control device 3 may acquire point cloud data of the object W in order to detect the position of the object W in the robot coordinate system.
  • the three-dimensional information acquisition unit 84 causes the three-dimensional scanner 72 to acquire point cloud data of a relatively large range of the object W (preferably, the entire range of the object W).
  • the three-dimensional scanner 72 acquires point cloud data of the object W at the position of the robot arm 12 when imaging the object W described above.
  • the operation command unit 81 causes the robot arm 12 may be moved to the appropriate position, and then the three-dimensional scanner 72 may acquire point cloud data of the appropriate area of the object W.
  • step S2 the control device 3 performs the first detection of the burr B from the image acquired by the imaging device 71. Specifically, the first detection unit 83 inputs the obtained image to the first detection model 86 . The first detection model 86 outputs the position of the burr B. When the object W does not include the burr B, the first detection model 86 outputs that the object W does not include the burr B. The first detection is performed as many times as the number of acquired images.
  • step S3 the control device 3 acquires the point cloud data of the object W.
  • FIG. 10 is a schematic diagram showing the state of the robot arm 12 when point cloud data of the object W is acquired.
  • FIG. 11 is a schematic diagram showing an example of point cloud data acquired by the three-dimensional scanner 72. As shown in FIG.
  • the motion command unit 81 controls the robot arm 12 so that the three-dimensional scanner 72 is positioned at a position where the point cloud data of the portion of the object W that includes the burr B detected by the first detection can be obtained. to move.
  • the motion command unit 81 moves the robot arm 12 based on the position of the burr B detected by the first detection.
  • the three-dimensional information acquisition unit 84 causes the three-dimensional scanner 72 to acquire point cloud data of the object W.
  • the three-dimensional scanner 72 acquires point cloud data of a local portion of the object W including at least the burr B instead of the point cloud data of the entire object W.
  • the number of acquisitions of the point cloud data of the object W corresponds to the number of burrs B detected in the first detection. That is, when multiple burrs B are detected in the first detection, multiple point cloud data are obtained. However, when a plurality of burrs B can be included in one piece of point cloud data, acquisition of point cloud data is performed once for those burrs B. FIG.
  • step S4 the control device 3 executes the second detection of the burr B from the point cloud data acquired by the three-dimensional scanner 72.
  • the second detection unit 85 inputs the point cloud data to the second detection model 87 .
  • the second detection model 87 outputs the position of the burr B.
  • the second detection model 87 outputs that the object W does not include the burr B.
  • the detection of the burr B by the second detection model 87 is performed the same number of times as the point cloud data acquisition.
  • Point cloud data of the burr B preliminarily detected by the first detection model 86 is input to the second detection model 87 . That is, the detection of the burr B by the second detection model 87 is re-determination of the burr B detected by the first detection model 86, that is, re-evaluation.
  • the first detection model 86 detects the burr B from a two-dimensional image
  • the second detection model 87 detects the burr B from point cloud data, which is three-dimensional information. Therefore, the second detection model 87 can detect the burr B with higher accuracy than the first detection model 86 can.
  • the point cloud data input to the second detection model 87 is local point cloud data of the object W. FIG. In this respect as well, the second detection model 87 can detect the burr B with high accuracy.
  • step S5 the control device 3 grinds the burr B.
  • FIG. 12 is a schematic diagram showing the state of the robot arm 12 when grinding the burr B.
  • the operation command unit 81 outputs a control command to the grinding device 11a to operate the grinding device 11a. Then, the operation command unit 81 moves the robot arm 12 so that the grinding device 11a grinds the burr B detected by the second detection. The motion command unit 81 moves the robot arm 12 based on the position of the burr B detected by the second detection. Thereby, the grinding device 11a grinds the target object W. FIG. Grinding is performed on all burrs B detected by the second detection.
  • the processing system 100 detects the burr B on the object W and grinds the detected burr B by the grinding device 11a.
  • the burr B included in the object W is preliminarily detected using the first detection model 86 using the image of the object W as an input.
  • the three-dimensional scanner 72 acquires point cloud data of the object W including the burr B detected by the first detection model 86 .
  • the burr B included in the object W is finally detected using the second detection model 87 using the point cloud data of the object W as an input.
  • the detection accuracy of the burr B is improved. At this time, it is not necessary to obtain the point cloud data of the entire object W, and the point cloud data including the burrs B preliminarily detected from the image of the object W may be obtained. Therefore, since local point cloud data of the object W with the burr B enlarged can be obtained, fine point cloud data of the burr B can be obtained. This also improves the detection accuracy of the burr B.
  • the object W when acquiring fine point cloud data for the entire object W, it is necessary to divide the object W into a plurality of pieces and acquire the point cloud data multiple times.
  • the number of times of acquiring point cloud data can be reduced. That is, the man-hours for acquiring the point cloud data can be reduced, and as a result, the man-hours for analyzing the point cloud data (that is, the man-hours for detecting the burrs B using the second detection model 87) can also be reduced. .
  • the burr B can be detected with high accuracy. Processing can be simplified.
  • the resolution of three-dimensional information such as point cloud data is finite, and if the three-dimensional scanner 72 obtains the point cloud data of the object W over a relatively wide range, data corresponding to the burrs B may be lost. .
  • the burr B is approached and enlarged. Point cloud data of the burr B that has been formed can be obtained. As a result, loss of data corresponding to the burr B in the point cloud data can be prevented.
  • the training data of the second detection model 87 is the point cloud data including the burr B. and does not depend on the type of object W. That is, the point cloud data of the burrs B of the object W of different types can also be training data. Therefore, the learned second detection model 87 can be applied to detect the burrs B of various types of objects W without depending on the type of the object W.
  • the detection system 200 uses the imaging device 71 that acquires the image of the target object W and the first detection model 86 that has been learned by machine learning, and the image acquired by the imaging device 71 is input, A first detection unit 83 that detects burrs B (specific points) included in the object W, and a three-dimensional scanner 72 that acquires three-dimensional information of the object W including the burrs B detected by the first detection unit 83. (three-dimensional information acquisition device) and a second detection unit 85 that re-detects the burr B by inputting the three-dimensional information acquired by the three-dimensional scanner 72 using the second detection model 87 that has been learned by machine learning. and
  • the specific point detection method of the specific point detection system acquires an image of the target object W, and uses the first detection model 86 that has been learned by machine learning as an input to detect the image included in the target object W. detection of the burr B (specific point) that is detected by the first detection model 86, acquisition of three-dimensional information of the object W including the burr B detected by the first detection model 86, and learning of the second detection model by machine learning. 87 using the three-dimensional information as input to re-detect burrs B.
  • the specific point detection program causes the computer to acquire an image of the object W in order to detect the burrs B of the object W, and uses the first detection model 86 that has been learned by machine learning to obtain the image.
  • detection of burrs B (specific points) included in the object W acquisition of three-dimensional information of the object W including the burrs B detected by the first detection model 86, and machine learning.
  • the burr B is re-detected with three-dimensional information as an input.
  • the image of the object W acquired by the imaging device 71 is input, and the burr B included in the object W is detected using the first detection model 86 .
  • the three-dimensional scanner 72 acquires three-dimensional information of the object W including the burr B thus detected.
  • the burr B included in the object W is detected. That is, the detection of the burr B based on the image of the object W is preliminary detection.
  • Three-dimensional information of the burr B located by the preliminary detection of the burr B is obtained by the three-dimensional scanner 72 . Therefore, the local three-dimensional information of the burr B, that is, the three-dimensional information of the enlarged burr B can be obtained.
  • the burr B can be detected with high accuracy. That is, the detection of the burr B based on the three-dimensional information of the object W is final or definite detection.
  • the range of the object W from which the three-dimensional information is acquired is limited. The number of man-hours for obtaining information is reduced, and detailed three-dimensional information of the burr B can be obtained. As a result, the processing for detecting the burr B from the three-dimensional information of the object W can be simplified, and the detection accuracy of the burr B can be improved.
  • the range of the target W input to the second detection model 87 as three-dimensional information is narrower than the range of the target W input to the first detection model 86 as an image.
  • the burr B is detected by the first detection model 86 by inputting the image of the object W in a relatively wide range, and the three-dimensional information of the object W in a relatively narrow range is input.
  • the burr B is detected by the 2 detection model 87 . Since the detection of the burr B by the first detection model 86 is a preliminary detection, it is possible to detect the burr B from a wide range of the target W by inputting an image of the target W in a relatively wide range.
  • the detection of the burr B by the second detection model 87 is for re-detecting the burr B detected by the first detection model 86, by inputting the three-dimensional information of the object W in a relatively narrow range, Fine three-dimensional information can be used, and the detection accuracy of the burr B can be improved.
  • the three-dimensional information is point cloud data.
  • the position of the burr B on the object W is preliminarily specified by detecting the burr B by the first detection model 86, and then the point cloud data of the burr B is acquired by the three-dimensional scanner 72. Therefore, the enlarged point cloud data of the burr B can be acquired, and the loss of the point cloud data corresponding to the burr B can be prevented.
  • the machine learning of the second detection model 87 is more explainable than the machine learning of the first detection model 86.
  • the machine learning of the second detection model 87 is highly explainable, so when burr B is erroneously detected, it is easy to verify the reason for the erroneous detection.
  • machine learning with high descriptiveness is easy to perform additional learning, additional learning can be performed using erroneously detected three-dimensional information as training data, and updating of the second detection model 87 is facilitated.
  • the detection system 200 further includes a robot arm 12, the imaging device 71 and the three-dimensional scanner 72 are arranged on the robot arm 12, and the robot arm 12, when acquiring an image of the object W, uses the imaging device 71 is moved to a predetermined imaging position, and the three-dimensional scanner 72 is moved to a position corresponding to the burr B detected by the first detection section 83 when three-dimensional information of the object W is acquired.
  • the movement of the imaging device 71 and the three-dimensional scanner 72 is realized by the robot arm 12. Therefore, the imaging device 71 can be flexibly moved to an imaging position suitable for acquiring an image of the object W, and the three-dimensional scanner 72 can be flexibly moved to a position suitable for acquiring three-dimensional information of the object W.
  • the robot arm 12 can acquire images of the object W multiple times by moving the imaging device 71 to a plurality of imaging positions so that there are no blind spots. Also, the robot arm 12 can move the three-dimensional scanner 72 to the optimum position for acquiring three-dimensional information of the burrs B detected by the first detection model 86 .
  • the detection system 200 is incorporated in the processing system 100, but is not limited to this.
  • the robot 1 is not limited to those capable of bilateral control.
  • the operating device 2 may be omitted.
  • the detection system 200 does not need to process the burr B until it detects the burr B.
  • the specific point of the object is not limited to burr B. Any portion can be a specific point as long as it can be detected using a trained model with input of an image and three-dimensional information.
  • the specific point may be a point to be painted or welded (that is, a point to be painted or welded) of the object. If the painting or welding target point can be distinguished from other parts of the object, by creating the first detection model 86 and the second detection model 87 so that the painting or welding target point can be detected, A target point of painting or welding can be detected by inputting each of the image and the three-dimensional information. In that case, the processing of processing system 100 is painting or welding instead of grinding.
  • the imaging device 71 may not be provided on the robot arm 12.
  • the imaging device 71 may be fixed at a location distant from the robot 1 .
  • the imaging device 71 may be arranged above the robot 1 and the object W. FIG.
  • the device that moves the three-dimensional scanner 72 is not limited to the robot arm 12.
  • the three-dimensional scanner 72 is arranged on any device as long as it can be moved to a position suitable for acquiring three-dimensional information of the specific point detected by the first detection.
  • the 3D information of the object is not limited to point cloud data.
  • the three-dimensional information may be any information that expresses the three-dimensional shape of the object.
  • the three-dimensional information may be depth images.
  • the training data for the first detection model 86 is not limited to images of the object W before and after actual processing by the manually controlled processing system 100 .
  • the training data for the first detection model 86 is not limited to images reflecting the environment of the site where the robot 1 is actually installed, and any image can be used.
  • the first detection model 86 can be a model that has been learned by machine learning using deep learning.
  • Deep learning can be, for example, neural networks, more specifically convolutional neural networks.
  • the second detection model 87 is not limited to a model that has been learned by decision tree machine learning.
  • the second detection model 87 may be any model as long as it is a model that detects specific points from input of three-dimensional information such as point cloud data.
  • the second detection model 87 may be a regression model using logistic regression or support vector machines, or a tree structure model using regression trees, gradient boosting trees, random forests, or the like.
  • the second detection model 87 may be a rule-based model.
  • the models exemplified as these second detection models 87 have relatively high explanatory power.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Manipulator (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Analysis (AREA)

Abstract

特定点検出システム200は、対象物Wの画像を取得する撮像装置71と、機械学習によって学習済みの第1検出モデル86を用いて、撮像装置71によって取得された画像を入力として、対象物Wに含まれるバリBを検出する第1検出部83と、第1検出部83によって検出されたバリBを含む対象物Wの三次元情報を取得する三次元スキャナ72と、機械学習によって学習済みの第2検出モデル87を用いて、三次元スキャナ72によって取得された三次元情報を入力として、バリBを再検出する第2検出部85とを備えている。

Description

特定点検出システム、特定点検出方法及び特定点検出プログラム
 本開示は、特定点検出システム、特定点検出方法及び特定点検出プログラムに関する。
 従来より、ワークに含まれる特定点を検出する装置が知られている。例えば、特許文献1には、ワークの計測データからボクセルを用いて表現される三次元形状と、ワークの3D-CADモデルとを比較することによって、特定点としてバリを検出する装置が開示されている。
特開2009-128097号公報
 ところで、特許文献1のように対象物の三次元情報を計測、即ち、取得して、対象物の特定点を検出する場合には、三次元情報が精細であるほど特定点の検出精度が向上する。精細な三次元情報を取得するためには、拡大された対象物の三次元情報を取得することによって、対象物を表す三次元情報の解像度を向上させることが考えられる。しかしながら、拡大された対象物の三次元情報を取得すると、1回の三次元情報の取得では対象物の部分的な三次元情報しか取得できない。そのため、三次元情報を取得する工数が増加すると共に、三次元情報から特定点を検出する工数も増加する。
 本開示は、かかる点に鑑みてなされたものであり、その目的とするところは、対象物の三次元情報から特定点を検出する際の処理を簡便にすることにある。
 本開示の特定点検出システムは、対象物の画像を取得する撮像装置と、機械学習によって学習済みの第1検出モデルを用いて、前記撮像装置によって取得された前記画像を入力として、前記対象物に含まれる特定点を検出する第1検出部と、前記第1検出部によって検出された前記特定点を含む、前記対象物の三次元情報を取得する三次元情報取得装置と、機械学習によって学習済みの第2検出モデルを用いて、前記三次元情報取得装置によって取得された前記三次元情報を入力として、前記特定点を再検出する第2検出部とを備える。
 本開示の特定点検出方法は、対象物の画像を取得することと、機械学習によって学習済みの第1検出モデルを用いて、前記画像を入力として、前記対象物に含まれる特定点を検出することと、前記第1検出モデルによって検出された前記特定点を含む、前記対象物の三次元情報を取得することと、機械学習によって学習済みの第2検出モデルを用いて、前記三次元情報を入力として、前記特定点を再検出することとを含む。
 本開示の特定点検出プログラムは、対象物の特定点を検出するためにコンピュータに、対象物の画像を取得することと、機械学習によって学習済みの第1検出モデルを用いて、前記画像を入力として、前記対象物に含まれる特定点を検出することと、前記第1検出モデルによって検出された前記特定点を含む、前記対象物の三次元情報を取得することと、機械学習によって学習済みの第2検出モデルを用いて、前記三次元情報を入力として、前記特定点を再検出することとを実行させる。
 前記特定点検出システムによれば、対象物の三次元情報から特定点を検出する際の処理を簡便にすることができる。
 前記特定点検出方法によれば、対象物の三次元情報から特定点を検出する際の処理を簡便にすることができる。
 前記特定点検出プログラムによれば、対象物の三次元情報から特定点を検出する際の処理を簡便にすることができる。
図1は、加工システムの構成を示す模式図である。 図2は、ロボット制御装置の概略的なハードウェア構成を示す図である。 図3は、操作制御装置の概略的なハードウェア構成を示す図である。 図4は、制御装置の概略的なハードウェア構成を示す図である。 図5は、加工システムの手動制御の制御系統の構成を示すブロック図である。 図6は、加工システムの自動制御の制御系統の構成を示すブロック図である。 図7は、加工システムの自動制御のフローチャートである。 図8は、対象物Wの撮像時のロボットアームの状態を示す模式図である。 図9は、撮像装置によって取得された画像の一例を示す模式図である。 図10は、対象物の点群データ取得時のロボットアームの状態を示す模式図である。 図11は、三次元スキャナによって取得された点群データの一例を示す模式図である。 図12は、バリを研削するときのロボットアームの状態を示す模式図である。
 以下、例示的な実施形態を図面に基づいて詳細に説明する。図1は、実施形態に係る加工システム100の構成を示す模式図である。尚、図1における破線は、無線通信を表している。
 加工システム100は、対象物Wの特定点を検出する特定点検出システム200(以下、「検出システム200」ともいう)を備えている。この例では、特定点は、対象物Wのバリである。バリには、鋳造バリ、切削バリ、研削バリ、せん断バリ、塑性変形バリ、湯口バリ及び溶接バリ等が含まれる。
 検出システム200は、対象物Wの画像を取得する撮像装置71と、撮像装置71によって取得された画像に基づいて対象物Wに含まれるバリBを検出する第1検出部83(図6参照)と、第1検出部83によって検出されたバリBを含む対象物Wの三次元情報を取得する三次元スキャナ72と、三次元スキャナ72によって取得された三次元情報に基づいてバリBを再検出する第2検出部85(図6参照)とを備えている。三次元スキャナ72は、三次元情報取得装置の一例である。
 検出システム200は、ロボットアーム12をさらに備えている。撮像装置71及び三次元スキャナ72は、ロボットアーム12に配置されている。より詳しくは、検出システム200は、ロボット1と、ロボット1を制御する制御装置3とをさらに備えている。ロボットアーム12は、ロボット1に含まれている。
 加工システム100は、ユーザに操作される操作装置2をさらに備えている。ロボット1は、操作装置2の動作に応じて対象物Wに作用を加える。制御装置3は、操作装置2も制御する。ロボット1と操作装置2とは、遠隔配置されている。加工システム100は、対象物Wの手動での加工と対象物Wの自動での加工とが実施可能である。
 加工システム100は、操作装置2とロボット1との間で遠隔制御を実現する。遠隔制御においては、操作装置2は、マスタ装置として機能し、ロボット1は、スレーブ装置として機能する。
 尚、本開示において、ロボット1が行う作業は、ティーチング作業並びに教示の確認及び修正作業を含まない。したがって、操作装置2は、ティーチペンダントを含まない。
 ロボット1と操作装置2とは、通信可能に接続されている。具体的には、ロボット1は、制御装置3に通信可能に接続されている。操作装置2は、制御装置3に通信可能に接続されている。すなわち、操作装置2は、制御装置3を介してロボット1と通信を行う。
 この例では、ロボット1は、産業用ロボットである。ロボット1は、対象物Wに作用を加える。作用は、具体的には加工であり、より具体的には研削である。作用は、研削に限定されず、切削又は研磨等であってもよい。
 ロボット1は、ロボット1の動作状態を検出するセンサを有している。この例では、センサは、ロボット1は、対象物Wから受ける反力(以下、「接触力」という)を検出する接触力センサ13をさらに有している。
 制御装置3は、接触力センサ13の検出結果をロボット1を介して受信している。制御装置3は、接触力センサ13の検出結果に基づいてロボット1及び操作装置2の少なくとも一方の動作制御を実行している。この例では、制御装置3は、ユーザによる操作装置2の操作及び接触力センサ13の検出結果に応じて、ロボット1の動作を制御すると共にロボット1に作用する反力をユーザに提示するように操作装置2の動作を制御する。
 [ロボット]
 ロボット1は、対象物Wに作用を加えるエンドエフェクタ11と、エンドエフェクタ11を動作させるロボットアーム12とを有していてもよい。ロボット1は、ロボットアーム12によってエンドエフェクタ11を動作、即ち、移動させて、エンドエフェクタ11によって対象物Wに作用を加える。ロボット1は、ロボットアーム12を支持するベース10と、ロボット1の全体を制御するロボット制御装置14とをさらに有していてもよい。
 ロボット1には、直交3軸のロボット座標系が規定されている。例えば、上下方向にZ軸が設定され、水平方向に互いに直交するX軸及びY軸が設定される。
 エンドエフェクタ11は、研削装置11aを有し、対象物Wに作用としての研削を加える。例えば、研削装置11aは、グラインダ、オービタルサンダ、ランダムオービットサンダ、デルタサンダ又はベルトサンダ等であってもよい。グラインダは、円盤状の研削砥石を回転させるタイプ、円錐状又は円柱状の研削砥石を回転させるタイプ等であってもよい。ここでは、研削装置11aは、グラインダである。
 ロボットアーム12は、研削装置11aの位置を変更する。さらに、ロボットアーム12は、研削装置11aの姿勢を変更してもよい。ロボットアーム12は、垂直多関節型のロボットアームである。ロボットアーム12は、複数のリンク12aと、複数のリンク12aを接続する関節12bと、複数の関節12bを回転駆動するサーボモータ15(図2参照)とを有している。
 尚、ロボットアーム12は、水平多関節型、パラレルリンク型、直角座標型、又は極座標型のロボットアーム等であってもよい。
 接触力センサ13は、この例では、ロボットアーム12とエンドエフェクタ11との間(具体的には、ロボットアーム12とエンドエフェクタ11との連結部)に設けられている。接触力センサ13は、エンドエフェクタ11が対象物Wから受ける接触力を検出する。接触力センサ13は、直交する3軸方向の力と該3軸回りのモーメントを検出する。
 尚、力覚センサは、接触力センサ13に限定されない。例えば、接触力センサ13は、1軸、2軸又は3軸方向の力のみを検出してもよい。あるいは、力覚センサは、ロボットアーム12のサーボモータ15の電流を検出する電流センサ又はサーボモータ15のトルクを検出するトルクセンサ等であってもよい。
 撮像装置71は、ロボットアーム12に取り付けられている。具体的には、撮像装置71は、ロボットアーム12のうち、最も先端側のリンク12aに取り付けられている。撮像装置71は、RGB画像を撮影する。撮像装置71の撮影画像は、画像信号としてロボット制御装置14から制御装置3へ入力される。
 三次元スキャナ72は、ロボットアーム12に取り付けられている。具体的には、三次元スキャナ72は、ロボットアーム12のうち、最も先端側のリンク12aに取り付けられている。三次元スキャナ72は、三次元情報として対象物Wの点群データを取得する。つまり、三次元スキャナ72は、対象物Wの表面の多数の点の三次元座標を点群として出力する。三次元スキャナ72の点群データは、ロボット制御装置14から制御装置3へ入力される。
 ロボットアーム12は、対象物Wの画像を取得する際には、撮像装置71を所定の撮像位置へ移動させ、対象物Wの点群データを取得する際には、第1検出部83によって検出されたバリBに対応する位置へ三次元スキャナ72を移動させる。
 図2は、ロボット制御装置14の概略的なハードウェア構成を示す図である。ロボット制御装置14は、ロボットアーム12のサーボモータ15及び研削装置11aを制御する。ロボット制御装置14は、接触力センサ13の検出信号を受け付ける。ロボット制御装置14は、制御装置3と情報、指令及びデータ等の送受信を行う。ロボット制御装置14は、制御部16と、記憶部17と、メモリ18とを有している。
 制御部16は、ロボット制御装置14の全体を制御する。制御部16は、各種の演算処理を行う。例えば、制御部16は、CPU(Central Processing Unit)等のプロセッサで形成されている。制御部16は、MCU(Micro Controller Unit)、MPU(Micro Processor Unit)、FPGA(Field Programmable Gate Array)、PLC(Programmable Logic Controller)、システムLSI等で形成されていてもよい。
 記憶部17は、制御部16で実行されるプログラム及び各種データを格納している。記憶部17は、不揮発性メモリ、HDD(Hard Disc Drive)又はSSD(Solid State Drive)等で形成される。
 メモリ18は、データ等を一時的に格納する。例えば、メモリ18は、揮発性メモリで形成される。
 [操作装置]
 操作装置2は、図1に示すように、ユーザが操作する操作部21と、操作部21にユーザから加えられる操作力を検出する操作力センサ23とを有している。操作装置2は、ロボット1を手動運転で操作するための入力を受け付け、入力された情報である操作情報を制御装置3へ出力する。具体的には、ユーザは、操作部21を把持して操作装置2を操作する。その際に操作部21に加えられる力を操作力センサ23が検出する。操作力センサ23によって検出される操作力は、操作情報として制御装置3へ出力される。
 操作装置2は、ベース20と、ベース20に設けられ、操作部21を支持する支持機構22と、操作装置2の全体を制御する操作制御装置24とをさらに有していてもよい。操作装置2は、制御装置3からの制御によって、操作力に対する反力をユーザに提示する。具体的には、操作制御装置24は、制御装置3からの指令を受けて、支持機構22を制御することによって、反力をユーザに感知させる。
 操作装置2には、直交3軸の操作座標系が規定されている。操作座標系は、ロボット座標系と対応している。つまり、上下方向にZ軸が設定され、水平方向に互いに直交するX軸及びY軸が設定される。
 支持機構22は、複数のリンク22aと、複数のリンク22aを接続する関節22bと、複数の関節22bを回転駆動するサーボモータ25(図3参照)とを有している。支持機構22は、操作部21が三次元空間内で任意の位置及び姿勢をとることができるように、操作部21を支持する。操作部21の位置及び姿勢に対応して、サーボモータ25が回転する。サーボモータ25の回転量、即ち、回転角は、一義的に決まる。
 操作力センサ23は、この例では、操作部21と支持機構22との間(具体的には、操作部21と支持機構22との連結部)に設けられている。操作力センサ23は、直交する3軸方向の力と該3軸回りのモーメントを検出する。
 尚、操作力の検出部は、操作力センサ23に限定されない。例えば、操作力センサ23は、1軸、2軸又は3軸方向の力のみを検出してもよい。あるいは、検出部は、支持機構22のサーボモータ25の電流を検出する電流センサ又はサーボモータ25のトルクを検出するトルクセンサ等であってもよい。
 図3は、操作制御装置24の概略的なハードウェア構成を示す図である。操作制御装置24は、サーボモータ25を制御することによって支持機構22を動作させる。操作制御装置24は、操作力センサ23の検出信号を受け付ける。操作制御装置24は、制御装置3と情報、指令及びデータ等の送受信を行う。操作制御装置24は、制御部26と、記憶部27と、メモリ28とを有している。
 制御部26は、操作制御装置24の全体を制御する。制御部26は、各種の演算処理を行う。例えば、制御部26は、CPU(Central Processing Unit)等のプロセッサで形成されている。制御部26は、MCU(Micro Controller Unit)、MPU(Micro Processor Unit)、FPGA(Field Programmable Gate Array)、PLC(Programmable Logic Controller)、システムLSI等で形成されていてもよい。
 記憶部27は、制御部26で実行されるプログラム及び各種データを格納している。記憶部27は、不揮発性メモリ、HDD(Hard Disc Drive)又はSSD(Solid State Drive)等で形成される。
 メモリ28は、データ等を一時的に格納する。例えば、メモリ28は、揮発性メモリで形成される。
 [制御装置]
 制御装置3は、加工システム100及び検出システム200の全体を制御し、ロボット1及び操作装置2の動作制御を行う。具体的には、制御装置3は、ユーザの操作に応じた加工システム100の手動制御と、加工システム100の自動制御とを行う。制御装置3は、手動制御においては、ロボット1と操作装置2との間でマスタスレーブ制御、具体的には、バイラテラル制御を行う。制御装置3は、ユーザの操作による操作装置2の動作に応じてロボット1の動作を制御すると共に、接触力センサ13の検出結果に応じた反力をユーザに提示するように操作装置2の動作を制御する。つまり、エンドエフェクタ11がユーザの操作に応じて対象物Wを加工すると共に、加工時の反力が操作装置2を介してユーザに提示される。また、制御装置3は、自動制御においては、対象物WのバリBを検出する。さらに、制御装置3は、バリBの検出後にバリBを自動的に研削する。
 図4は、制御装置3の概略的なハードウェア構成を示す図である。制御装置3は、ロボット制御装置14及び操作制御装置24と情報、指令及びデータ等の送受信を行う。制御装置3は、制御部31と、記憶部32と、メモリ33とを有している。尚、図示を省略するが、制御装置3は、ロボット1及び操作装置2の動作制御の設定を行うためにユーザが操作する入力操作部と、設定内容を表示するディスプレイとをさらに有していてもよい。
 制御部31は、制御装置3の全体を制御する。制御部31は、各種の演算処理を行う。例えば、制御部31は、CPU(Central Processing Unit)等のプロセッサで形成されている。制御部31は、MCU(Micro Controller Unit)、MPU(Micro Processor Unit)、FPGA(Field Programmable Gate Array)、PLC(Programmable Logic Controller)、システムLSI等で形成されていてもよい。
 記憶部32は、制御部31で実行されるプログラム及び各種データを格納している。例えば、記憶部32は、加工システム100及び検出システム200を制御するプログラムが格納されている。記憶部32は、不揮発性メモリ、HDD(Hard Disc Drive)又はSSD(Solid State Drive)等で形成される。例えば、記憶部32に記憶されたプログラムは、対象物WのバリBを検出するためにコンピュータに所定の手順を実行させる特定点検出プログラム32aである。
 メモリ33は、データ等を一時的に格納する。例えば、メモリ33は、揮発性メモリで形成される。
 <加工システムの制御>
 このように構成された加工システム100においては、手動での加工が実行される際には、制御装置3は、ユーザの操作による操作装置2の動作に応じてロボット1の動作を制御すると共に、接触力センサ13の検出結果に応じた反力をユーザに提示するように操作装置2の動作を制御する手動制御を実行する。自動での加工が実行される際には、制御装置3は、撮像装置71及び三次元スキャナ72による対象物Wの画像及び三次元情報に基づいてバリBを検出し、検出されたバリBに対してロボット1によって加工を行う自動制御を実行する。
 まず、加工システム100の手動制御について説明する。図5は、加工システム100の手動制御の制御系統の構成を示すブロック図である。
 ロボット制御装置14の制御部16は、記憶部17からプログラムをメモリ18に読み出して展開することによって、各種機能を実現する。具体的には、制御部16は、入力処理部41と動作制御部42として機能する。
 入力処理部41は、接触力センサ13及びサーボモータ15から受け取る情報、データ及び指令等を制御装置3に出力する。具体的には、入力処理部41は、接触力センサ13から6軸の力の検出信号(以下、「センサ信号」という)を受け取り、該センサ信号を制御装置3へ出力する。また、入力処理部41は、サーボモータ15から回転センサ(例えば、エンコーダ)及び電流センサの検出信号を受け取る。入力処理部41は、動作制御部42によるロボットアーム12のフィードバック制御のために該検出信号を動作制御部42へ出力する。また、入力処理部41は、ロボットアーム12の位置情報として該検出信号を制御装置3へ出力する。
 動作制御部42は、制御装置3から指令位置xdsを受け取り、指令位置xdsに従ってロボットアーム12を動作させるための制御指令を生成する。動作制御部42は、サーボモータ15へ制御指令を出力し、ロボットアーム12を動作させ、研削装置11aを指令位置に対応する位置へ移動させる。このとき、動作制御部42は、入力処理部41からのサーボモータ15の回転センサ及び/又は電流センサの検出信号に基づいて、ロボットアーム12の動作をフィードバック制御する。また、動作制御部42は、研削装置11aに制御指令を出力し、研削装置11aを動作させる。これにより、研削装置11aが対象物Wを研削する。
 操作制御装置24の制御部26は、記憶部27からプログラムをメモリ28に読み出して展開することによって、各種機能を実現する。具体的には、制御部26は、入力処理部51と動作制御部52として機能する。
 入力処理部51は、操作力センサ23から受け取る情報、データ及び指令等を制御装置3に出力する。具体的には、入力処理部51は、操作力センサ23から6軸の力の検出信号を受け取り、該検出信号を制御装置3へ出力する。また、入力処理部51は、サーボモータ25から回転センサ(例えば、エンコーダ)及び電流センサの検出信号を受け取る。入力処理部51は、動作制御部52による支持機構22のフィードバック制御のために該検出信号を動作制御部52へ出力する。
 動作制御部52は、制御装置3から指令位置xdmを受け取り、指令位置xdmに従って支持機構22を動作させるための制御指令を生成する。動作制御部52は、サーボモータ25へ制御指令を出力し、支持機構22を動作させ、操作部21を指令位置に対応する位置へ移動させる。このとき、動作制御部52は、入力処理部51からのサーボモータ25の回転センサ及び/又は電流センサの検出信号に基づいて、支持機構22の動作をフィードバック制御する。これにより、ユーザが操作部21に与える操作力に対して反力が与えられる。その結果、ユーザは、対象物Wから反力を操作部21から疑似的に感じつつ、操作部21を操作することができる。
 制御装置3の制御部31は、記憶部32からプログラムをメモリ33に読み出して展開することによって、各種機能を実現する。具体的には、制御部31は、操作力取得部61と接触力取得部62と加算部63と力/速度換算部64と第1速度/位置換算部65と第2速度/位置換算部66として機能する。
 操作力取得部61は、入力処理部51を介して、操作力センサ23の検出信号を受け取り、検出信号に基づいて操作力fmを取得する。操作力取得部61は、操作力fmを加算部63へ入力する。
 接触力取得部62は、入力処理部41を介して、接触力センサ13のセンサ信号を受け取り、センサ信号に基づいて接触力fsを取得する。接触力取得部62は、接触力fsを加算部63へ入力する。
 加算部63は、操作力取得部61から入力された操作力fmと接触力取得部62から入力された接触力fsとの和を算出する。ここで、操作力fmと接触力fsとは、反対向きの力なので、操作力fmと接触力fsとは正負の符号が異なる。つまり、操作力fmと接触力fsとが足されることによって、操作力fmと接触力fsとの和である合成力fm+fsの絶対値は、操作力fmの絶対値よりも小さくなる。加算部63は、合成力fm+fsを出力する。
 力/速度換算部64は、入力された合成力fm+fsを指令速度xd’に換算する。力/速度換算部64は、慣性係数、粘性係数(ダンパ係数)及び剛性係数(バネ係数)を含む運動方程式に基づく運動モデルを用いて指令速度xd’を算出する。具体的には、力/速度換算部64は、以下の運動方程式に基づいて指令速度xd’を算出する。
Figure JPOXMLDOC01-appb-M000001
 ここで、xdは、指令位置である。mdは、慣性係数である。cdは、粘性係数である。kdは、剛性係数である。fmは、操作力である。fsは、接触力である。尚、「’」は1回微分を表し、「”」は2回微分を表す。
 式(1)は線形微分方程式であり、式(1)をxd’について解くと、式(2)のようになる。
Figure JPOXMLDOC01-appb-M000002
 ここで、Aは、fm,fs,md,cd,kd等によって表される項である。
 式(2)は、記憶部32に格納されている。力/速度換算部64は、記憶部32から式(2)を読み出して指令速度xd’を求め、求められた指令速度xd’を第1速度/位置換算部65及び第2速度/位置換算部66へ出力する。
 第1速度/位置換算部65は、座標変換された指令速度xd’をロボット座標系を基準として、ロボット1のための指令位置xdsに換算する。例えば、操作装置2の移動量に対するロボット1の移動量の比が設定されている場合、第1速度/位置換算部65は、指令速度xd’から求めた指令位置xdを移動比に応じて逓倍して指令位置xdsを求める。第1速度/位置換算部65は、求めた指令位置xdsをロボット制御装置14、具体的には、動作制御部42へ出力する。動作制御部42は、前述の如く、指令位置xdsに基づいてロボットアーム12を動作させる。
 第2速度/位置換算部66は、操作座標系を基準として、指令速度xd’を操作装置2のための指令位置xdmに換算する。第2速度/位置換算部66は、求めた指令位置xdmを操作制御装置24、具体的には、動作制御部52へ出力する。動作制御部52は、前述の如く、指令位置xdmに基づいて支持機構22を動作させる。
 次に、加工システム100の自動制御について説明する。図6は、加工システム100の自動制御の制御系統の構成を示すブロック図である。
 制御装置3の制御部31は、記憶部32からプログラム(例えば、特定点検出プログラム32a)をメモリ33に読み出して展開することによって、各種機能を実現する。具体的には、制御部31は、動作指令部81と、撮像部82と、第1検出部83と、三次元情報取得部84と、第2検出部85として機能する。
 第1検出部83は、機械学習によって学習済みの第1検出モデル86を用いて、撮像装置71によって取得された画像を入力として、対象物Wに含まれるバリBを検出する(以下、この検出を「第1検出」ともいう)。第2検出部85は、機械学習によって学習済みの第2検出モデル87を用いて、三次元スキャナ72によって取得された点群データを入力として、バリBを再検出する(以下、この検出を「第2検出」ともいう)。第1検出モデル86及び第2検出モデル87は、記憶部32に保存されている。
 動作指令部81は、ロボットアーム12の指令位置を作成し、作成された指令位置に応じたロボットアーム12の各関節12bの回転角を求める。さらに、動作指令部81は、求められた各関節12bの回転角に応じた指令値を作成し、作成された指令値をロボット制御装置14へ出力する。
 ロボット制御装置14は、動作指令部81からの指令値に基づいてサーボモータ15を駆動する。このとき、ロボット制御装置14は、エンコーダの検出結果に基づいてサーボモータ15への供給電流をフィードバック制御する。
 撮像部82は、撮像装置71を制御して、撮像装置71に対象物Wを撮像させる。
 第1検出部83は、撮像装置71によって取得された画像に基づいて対象物WのバリBを検出する。第1検出部83は、機械学習によって学習済みの第1検出モデル86を用いてバリBを検出する。第1検出モデル86は、対象物Wの画像を入力として、対象物WのバリBの位置を出力する。
 三次元情報取得部84は、三次元スキャナ72を制御して、三次元スキャナ72に対象物Wの点群データを取得させる。
 第2検出部85は、三次元スキャナ72によって取得された点群データに基づいて対象物WのバリBを検出する。第2検出部85は、機械学習によって学習済みの第2検出モデル87を用いてバリBを検出する。第2検出モデル87は、対象物Wの点群データを入力として、対象物WのバリBの位置を出力する。
 第1検出モデル86及び第2検出モデル87についてさらに説明する。
 第1検出モデル86は、深層学習又はニューラルネットワークなどの機械学習によって作成される。例えば、バリBの研削前後の対象物Wの画像が取得されると共に、取得された画像から、バリBとバリB以外の部分という属性でクラス及び領域(即ち、位置)がアノテーションされた訓練データが作成される。作成された訓練データを入力として、ニューラルネットワークなどの深層学習アルゴリズムを用いて第1検出モデル86が作成される。第1検出モデル86は、対象物Wの画像を入力として、対象物WのバリBの有無及びバリBの位置を出力する。
 より詳しくは、第1検出モデル86は、画像からバリの特徴量の抽出を行う抽出ブロックと、抽出ブロックで抽出された特徴量からバリの位置座標を回帰予測する位置予測ブロックと、抽出ブロックで抽出された特徴量からバリのクラスを予測する予測ブロックとを有する機械学習モデルであり得る。抽出ブロックにおける特徴量の抽出には、畳み込みニューラルネットワークが用いられる。尚、全てのブロックを包含する畳み込みニューラルネットワークが用いられてもよい。また、各ブロックは、独立して存在する必要はなく、1つのブロックが複数のブロックの機能を有していてもよい。
 第1検出モデル86の訓練データは、対象物Wの全体又は大部分が含まれる画像等の、対象物Wの比較的大きな範囲を含む画像である。対象物Wの種類ごとに、様々なバリBを有する対象物Wの画像が訓練データとして採用される。また、第1検出モデル86の訓練データは、手動制御の加工システム100によって実際に加工される前後の対象物Wの画像であることが好ましい。加工システム100を用いて実際に対象物Wが手動で加工されているので、このときに研削前後の対象物Wの画像を取得することによって、訓練データを容易に入手することができる。さらに、実際にロボット1が設置されている現場の環境を反映した画像を取得することができるため、バリBの検出精度が高い第1検出モデル86が作成される。
 第2検出モデル87は、第1検出モデル86よりも説明性又は可読性が高い機械学習によって作成される。例えば、第2検出モデル87は、決定木系の機械学習アルゴリズムを利用して作成される。例えば、バリBのサンプルから取得された点群データから、バリBとバリB以外の部分という属性でクラス及び領域(即ち、位置)がアノテーションされた訓練データが作成される。作成された訓練データを入力として、決定木系の機械学習アルゴリズムを用いて第2検出モデル87が作成される。第2検出モデル87は、対象物Wの点群データを入力として、対象物WのバリBの有無及びバリBの位置を出力する。
 より詳しくは、第2検出モデル87は、点群データの各点又は点群データから生成された各ボクセル領域に局所特徴量を算出する算出ブロックと、算出ブロックによって算出された特徴量からバリのクラスを予測する予測ブロックと、算出ブロックで算出された特徴量及び予測ブロックで予測されたクラス並びに点群データに対する幾何学的な処理からバリの位置座標を算出する位置算出ブロックとを有する機械学習モデルであり得る。予測ブロックに、決定木系の機械学習アルゴリズムが用いられる。また、各ブロックは、独立して存在する必要はなく、1つのブロックが複数のブロックの機能を有していてもよい。
 点群データで表される対象物Wの範囲は、バリBを含んだ局所的な部分であればよく、第1検出モデル86に入力される画像で表される対象物Wの範囲よりも小さくてもよい。また、第2検出モデル87は、追加学習できる機械学習によって作成されたモデルである。つまり、学習済の第2検出モデル87は、新たな訓練データにより追加的に機械学習を行うことによって更新される。
 第2検出モデル87の訓練データは、バリBが含まれる局所的な画像等の、対象物Wの比較的小さな範囲を含む画像である。訓練データは、サンプル全体の点群データである必要はなく、少なくともバリBを含む局所的な点群データであればよい。そのため、サンプルは、対象物Wと同じ種類の部品であってもよく、対象物Wと異なる種類の部品であってもよい。
 点群データとして第2検出モデル87に入力される対象物Wの範囲は、画像として第1検出モデル86に入力される対象物Wの範囲よりも狭い。換言すると、第2検出モデル87に入力される点群データによって表される対象物Wは、第1検出モデル86に入力される画像によって表される対象物Wに比べて局所的である。
 このように、第1検出モデル86は、対象物Wの画像に基づいて、バリBを対象物Wの全体から大域的に且つ予備的に検出する。その後、第2検出モデル87は、第1検出部83によって検出されたバリBを、対象物Wの点群データに基づいて局所的に調べて、第1検出モデル86よりも高い精度で再検出する。
 [加工システムの動作]
 次に、このように構成された加工システム100の動作について説明する。
 〈手動制御〉
 手動制御においては、ユーザが操作装置2を操作することによってロボット1に対象物Wに対して実際の作業を実行させる。例えば、ユーザは、操作装置2を操作して、ロボット1によって対象物Wに研削加工を行う。ユーザの操作装置2を介した操作として、操作部21にユーザから加えられる操作力が操作力センサ23によって検出される。ロボットアーム12は、操作力に応じて制御される。
 具体的には、ユーザが操作装置2を操作すると、ユーザが操作部21を介して加えた操作力を操作力センサ23が検出する。このとき、ロボット1の接触力センサ13が接触力を検出する。
 操作力センサ23に検出された操作力は、入力処理部51によって検出信号として制御装置3へ入力される。制御装置3では、操作力取得部61が、検出信号に基づく操作力fmを加算部63へ入力する。
 このとき、接触力センサ13に検出された接触力は、センサ信号として入力処理部41に入力される。入力処理部41に入力されたセンサ信号は、接触力取得部62へ入力される。接触力取得部62は、センサ信号に基づく接触力fsを加算部63へ入力する。
 加算部63は、合成力fm+fsを力/速度換算部64へ入力する。力/速度換算部64は、合成力fm+fsを用いて式(2)に基づいて指令速度xd’を求める。
 ロボット1に関しては、第1速度/位置換算部65が指令速度xd’から指令位置xdsを求める。ロボット制御装置14の動作制御部42は、指令位置xdsに従ってロボットアーム12を動作させ、研削装置11aの位置を制御する。これにより、操作力fmに応じた押付力が対象物Wに加えられつつ、対象物Wが研削装置11aにより研削される。
 一方、操作装置2に関しては、第2速度/位置換算部66が指令速度xd’から指令位置xdmを求める。操作制御装置24の動作制御部52は、指令位置xdmに従って支持機構22を動作させ、操作部21の位置を制御する。これにより、ユーザは接触力fsに応じた反力を感知する。
 ユーザがこのような操作装置2の操作を行うことによって、ロボット1による対象物Wの加工が実行される。
 尚、このようなユーザの手動操作による対象物Wの加工の前後において、前述のように対象物Wの画像が取得されることが好ましい。取得された画像を訓練データとして、第1検出モデル86を作成することができる。
 〈自動制御〉
 続いて、加工システム100の自動制御の動作を説明する。図7は、加工システム100の自動制御のフローチャートである。
 まず、ステップS1において、制御装置3は、対象物Wの撮像を実行する。図8は、対象物Wの撮像時のロボットアーム12の状態を示す模式図である。図9は、撮像装置71によって取得された画像の一例を示す模式図である。
 具体的には、動作指令部81は、図8に示すように、撮像装置71が所定の撮像位置に位置するようにロボットアーム12を移動させる。その後、撮像部82は、撮像装置71に対象物Wを撮像させる。例えば、撮像装置71は、図9に示すように、対象物Wの全体の画像を取得するように、対象物Wを撮像する。
 尚、対象物Wの撮像は、1回ではなく、複数回であってもよい。つまり、撮像装置71は、複数の撮像位置へ移動し、各撮像位置において対象物Wを撮像する。
 さらに、制御装置3は、ロボット座標系における対象物Wの位置を検出するために、対象物Wの点群データの取得を実行してもよい。このとき、三次元情報取得部84は、三次元スキャナ72に対象物Wの比較的大きな範囲(好ましくは、対象物Wの全範囲)の点群データを取得させる。例えば、前述の対象物Wの撮像を実行するときのロボットアーム12の位置において、三次元スキャナ72は、対象物Wの点群データを取得する。尚、対象物Wの撮像時のロボットアーム12の位置(、即ち、三次元スキャナの位置)が対象物Wの広範囲の点群データの取得に適さない場合には、動作指令部81がロボットアーム12を適切な位置に移動させてから、三次元スキャナ72が対象物Wの適切な範囲の点群データを取得してもよい。
 尚、ロボット座標系における対象物Wの位置が既知の場合、又は、ステップS1における対象物Wの取得画像等を用いて対象物Wの位置を検出する場合などには、前述の対象物Wの点群データの取得を省略することができる。
 ステップS2において、制御装置3は、撮像装置71による取得画像からバリBの第1検出を実行する。具体的には、第1検出部83は、取得画像を第1検出モデル86に入力する。第1検出モデル86は、バリBの位置を出力する。尚、対象物WにバリBが含まれない場合には、第1検出モデル86は、対象物WにバリBが含まれない旨を出力する。第1検出は、取得画像の個数だけ実行される。
 ステップS3において、制御装置3は、対象物Wの点群データの取得を実行する。図10は、対象物Wの点群データ取得時のロボットアーム12の状態を示す模式図である。図11は、三次元スキャナ72によって取得された点群データの一例を示す模式図である。
 具体的には、動作指令部81は、対象物Wのうち第1検出によって検出されたバリBが含まれる部分の点群データが取得できる位置に三次元スキャナ72が位置するようにロボットアーム12を移動させる。動作指令部81は、第1検出によって検出されたバリBの位置に基づいてロボットアーム12を移動させる。その後、三次元情報取得部84は、三次元スキャナ72に対象物Wの点群データを取得させる。例えば、三次元スキャナ72は、対象物Wの全体の点群データではなく、少なくともバリBを含む対象物Wの局所的な部分の点群データを取得する。
 尚、対象物Wの点群データの取得の回数は、第1検出において検出されたバリBの個数に対応している。つまり、第1検出において複数のバリBが検出された場合には、複数の点群データが取得される。ただし、複数のバリBが1つの点群データに含まれ得る場合には、それらのバリBに関して1回の点群データの取得が実行される。
 ステップS4において、制御装置3は、三次元スキャナ72によって取得された点群データからバリBの第2検出を実行する。具体的には、第2検出部85は、点群データを第2検出モデル87に入力する。第2検出モデル87は、バリBの位置を出力する。尚、対象物WにバリBが含まれない場合には、第2検出モデル87は、対象物WにバリBが含まれない旨を出力する。第2検出モデル87によるバリBの検出は、点群データの取得回数と同じ回数だけ実行される。
 第2検出モデル87に入力されるのは、第1検出モデル86によって予備的に検出されたバリBの点群データである。つまり、この第2検出モデル87によるバリBの検出は、第1検出モデル86によって検出されたバリBの再判定、即ち、再評価である。第1検出モデル86は二次元的な画像からバリBを検出しているのに対し、第2検出モデル87は、三次元情報である点群データによってバリBを検出している。そのため、第2検出モデル87は、第1検出モデル86に比べて、より高い精度でバリBを検出することができる。さらに、第2検出モデル87に入力される点群データは、対象物Wの局所的な点群データである。この点においても、第2検出モデル87は、バリBを高精度で検出することができる。
 ステップS5において、制御装置3は、バリBの研削を実行する。図12は、バリBを研削するときのロボットアーム12の状態を示す模式図である。具体的には、動作指令部81は、研削装置11aに制御指令を出力し、研削装置11aを動作させる。そして、動作指令部81は、第2検出によって検出されたバリBを研削装置11aが研削するように、ロボットアーム12を移動させる。動作指令部81は、第2検出によって検出されたバリBの位置に基づいてロボットアーム12を移動させる。これにより、研削装置11aが対象物Wを研削する。研削は、第2検出によって検出された全てのバリBに対して実行される。
 このように、加工システム100の自動制御によれば、加工システム100は、対象物WのバリBを検出し、検出されたバリBを研削装置11aによって研削する。このとき、まず対象物Wの画像を入力として、第1検出モデル86を用いて対象物Wに含まれるバリBが予備的に検出される。その後、第1検出モデル86によって検出されたバリBを含む、対象物Wの点群データが三次元スキャナ72によって取得される。対象物Wの点群データを入力として、第2検出モデル87を用いて対象物Wに含まれるバリBが最終的に検出される。
 最終的にバリBが点群データに基づいて検出されるので、バリBの検出精度が向上する。このとき、対象物Wの全体の点群データを取得する必要はなく、対象物Wの画像から予備的に検出されたバリBを含む点群データを取得すればよい。そのため、バリBが拡大された、対象物Wの局所的な点群データを取得することができるので、バリBの精細な点群データを取得することができる。これによっても、バリBの検出精度が向上する。
 さらに、対象物Wの全体に関して精細な点群データを取得する場合には、対象物Wを複数に分割して、点群データを複数回取得する必要がある。しかしながら、第1検出モデル86を用いてバリBを予備的に検出することによって、点群データを取得する対象物Wの範囲を限定することができる。そのため、点群データを取得する回数を低減することができる。つまり、点群データを取得する工数を低減することができ、結果として、点群データを解析する工数(即ち、第2検出モデル87を用いてバリBを検出する工数)も削減することができる。
 加工システム100の特定点検出によれば、設計データのような三次元データが無くても、バリBを精度よく検出できると共に、対象物Wの点群データの取得からバリBを検出するまでの処理を簡便にすることができる。
 特に、点群データ等の三次元情報の解像度は有限であり、三次元スキャナ72によって比較的広い範囲の対象物Wの点群データを取得すると、バリBに対応するデータが欠損する虞がある。それに対し、前述のように、第1検出モデル86によってバリBを予備的に検出することによって、三次元スキャナ72によって対象物Wの点群データを取得する際にバリBに接近して、拡大されたバリBの点群データを取得することができる。これにより、点群データにおけるバリBに対応するデータの欠損を防止することができる。
 また、第2検出モデル87は、バリBを含む対象物Wの局所的な点群データを入力としてバリBを検出するため、第2検出モデル87の訓練データは、バリBを含む点群データであり、対象物Wの種類に依存しない。つまり、種類が異なる対象物WのバリBの点群データも訓練データとなり得る。そのため、学習済みの第2検出モデル87は、対象物Wの種類に依存せず、様々な種類の対象物WのバリBの検出に適用することができる。
 以上のように、検出システム200は、対象物Wの画像を取得する撮像装置71と、機械学習によって学習済みの第1検出モデル86を用いて、撮像装置71によって取得された画像を入力として、対象物Wに含まれるバリB(特定点)を検出する第1検出部83と、第1検出部83によって検出されたバリBを含む、対象物Wの三次元情報を取得する三次元スキャナ72(三次元情報取得装置)と、機械学習によって学習済みの第2検出モデル87を用いて、三次元スキャナ72によって取得された三次元情報を入力として、バリBを再検出する第2検出部85とを備えている。
 換言すると、特定点検出システムの特定点検出方法は、対象物Wの画像を取得することと、機械学習によって学習済みの第1検出モデル86を用いて、画像を入力として、対象物Wに含まれるバリB(特定点)を検出することと、第1検出モデル86によって検出されたバリBを含む、対象物Wの三次元情報を取得することと、機械学習によって学習済みの第2検出モデル87を用いて、三次元情報を入力として、バリBを再検出することとを含む。
 また、特定点検出プログラムは、対象物WのバリBを検出するためにコンピュータに、対象物Wの画像を取得することと、機械学習によって学習済みの第1検出モデル86を用いて、画像を入力として、対象物Wに含まれるバリB(特定点)を検出することと、第1検出モデル86によって検出されたバリBを含む、対象物Wの三次元情報を取得することと、機械学習によって学習済みの第2検出モデル87を用いて、三次元情報を入力として、バリBを再検出することとを実行させる。
 これらの構成によれば、撮像装置71によって取得された対象物Wの画像を入力として、第1検出モデル86を用いて、対象物Wに含まれるバリBが検出される。これにより検出されたバリBを含む、対象物Wの三次元情報が三次元スキャナ72によって取得される。取得された三次元情報を入力として、第2検出モデル87を用いて、対象物Wに含まれるバリBが検出される。つまり、対象物Wの画像に基づくバリBの検出は、予備的な検出である。バリBの予備的な検出によって位置が特定されたバリBの三次元情報が三次元スキャナ72によって取得される。そのため、バリBの局所的な三次元情報、即ち、拡大されたバリBの三次元情報を取得することができる。そのような三次元情報を入力として、第2検出モデル87を用いてバリBを検出することによって、バリBを精度よく検出することができる。つまり、対象物Wの三次元情報に基づくバリBの検出は、最終的又は確定的な検出である。このような第1検出部83によるバリBの検出及び第2検出部85によるバリBの検出を順番に行うことによって、三次元情報を取得する対象物Wの範囲が限定されるので、三次元情報を取得する工数が低減されると共に、バリBの精細な三次元情報を取得することができる。その結果、対象物Wの三次元情報からバリBを検出する際の処理を簡便にすることができると共に、バリBの検出精度を向上させることができる。
 また、三次元情報として第2検出モデル87に入力される対象物Wの範囲は、画像として第1検出モデル86に入力される対象物Wの範囲よりも狭い。
 この構成によれば、相対的に広い範囲の対象物Wの画像を入力として第1検出モデル86によってバリBを検出する一方、相対的に狭い範囲の対象物Wの三次元情報を入力として第2検出モデル87によってバリBを検出する。第1検出モデル86によるバリBの検出は予備的な検出なので、相対的に広い範囲の対象物Wの画像を入力することによって対象物Wの広い範囲からからバリBを検出ことができる。第2検出モデル87によるバリBの検出は、第1検出モデル86によって検出されたバリBを再検出するためのものなので、相対的に狭い範囲の対象物Wの三次元情報を入力することによって精細な三次元情報を利用することができ、バリBの検出精度を高めることができる。
 具体的には、三次元情報は、点群データである。
 この構成によれば、第1検出モデル86によるバリBの検出によって対象物WにおけるバリBの位置を予備的に特定した上で、バリBの点群データが三次元スキャナ72によって取得される。そのため、拡大されたバリBの点群データを取得することができ、バリBに対応する点群データの欠損を防止することができる。
 また、第2検出モデル87の機械学習は、第1検出モデル86の機械学習に比べて説明性が高い。
 この構成によれば、第2検出モデル87の機械学習は説明性が高いため、バリBの誤検出が発生した場合に、誤検出の理由を検証しやすい。また、説明性が高い機械学習は追加学習がしやすいため、誤検出した三次元情報を訓練データとして追加学習を行うことができ、第2検出モデル87の更新が容易となる。
 また、検出システム200は、ロボットアーム12をさらに備え、撮像装置71及び三次元スキャナ72は、ロボットアーム12に配置され、ロボットアーム12は、対象物Wの画像を取得する際には、撮像装置71を所定の撮像位置へ移動させ、対象物Wの三次元情報を取得する際には、第1検出部83によって検出されたバリBに対応する位置へ三次元スキャナ72を移動させる。
 この構成によれば、撮像装置71及び三次元スキャナ72の移動がロボットアーム12によって実現される。そのため、撮像装置71を対象物Wの画像の取得に適した撮像位置へ柔軟に移動させることができると共に、三次元スキャナ72を対象物Wの三次元情報の取得に適した位置へ柔軟に移動させることができる。例えば、死角によって映らない部分が無いように、ロボットアーム12は、撮像装置71を複数の撮像位置へ移動させて、対象物Wの画像を複数回取得することができる。また、ロボットアーム12は、第1検出モデル86によって検出されたバリBの三次元情報を取得するのに最適な位置へ三次元スキャナ72を移動させることができる。
 《その他の実施形態》
 以上のように、本出願において開示する技術の例示として、前記実施形態を説明した。しかしながら、本開示における技術は、これに限定されず、適宜、変更、置き換え、付加、省略などを行った実施の形態にも適用可能である。また、前記実施形態で説明した各構成要素を組み合わせて、新たな実施の形態とすることも可能である。また、添付図面および詳細な説明に記載された構成要素の中には、課題解決のために必須な構成要素だけでなく、前記技術を例示するために、課題解決のためには必須でない構成要素も含まれ得る。そのため、それらの必須ではない構成要素が添付図面や詳細な説明に記載されていることをもって、直ちに、それらの必須ではない構成要素が必須であるとの認定をするべきではない。
 例えば、検出システム200は、加工システム100に組み込まれているが、これに限定されるものではない。ロボット1は、バイラテラル制御が実現可能なものに限定されない。例えば、操作装置2が省略されてもよい。
 検出システム200は、バリBを検出するまでで、バリBの加工は必須ではない。
 対象物の特定点は、バリBに限定されない。学習済のモデルを用いて、画像及び三次元情報のそれぞれを入力として検出可能な部分であれば、任意の部分が特定点となり得る。例えば、特定点は、対象物のうち塗装又は溶接の対象点(すなわち、塗装又は溶接が行われる点)であってもよい。塗装又は溶接の対象点が対象物における他の部分と識別可能な場合には、塗装又は溶接の対象点を検出可能に第1検出モデル86及び第2検出モデル87を作成しておくことによって、塗装又は溶接の対象点を画像及び三次元情報のそれぞれを入力として検出することができる。その場合、加工システム100の加工は、研削ではなく、塗装又は溶接である。
 撮像装置71は、ロボットアーム12に設けられていなくてもよい。例えば、撮像装置71は、ロボット1から離れた場所に固定されていてもよい。例えば、撮像装置71は、ロボット1及び対象物Wの上方に配置されていてもよい。
 三次元スキャナ72を移動させる装置は、ロボットアーム12に限定されない。三次元スキャナ72は、第1検出によって検出された特定点の三次元情報を取得するのに適した位置へ移動可能な装置であれば、任意の装置に配置される。
 対象物の三次元情報は、点群データに限定されない。三次元情報は、対象物の三次元形状を表現する情報であればよい。例えば、三次元情報は、デプス画像であってもよい。
 第1検出モデル86の訓練データは、手動制御の加工システム100によって実際に加工される前後の対象物Wの画像に限定されない。第1検出モデル86の訓練データは、実際にロボット1が設置されている現場の環境を反映した画像に限定されず、任意の画像を採用し得る。
 第1検出モデル86は、深層学習を用いた機械学習によって学習済みのモデルであり得る。深層学習は、例えば、ニューラルネットワーク、より具体的には、畳み込みニューラルネットワークであり得る。
 第2検出モデル87は、決定木系の機械学習によって学習済のモデルに限定されない。第2検出モデル87は、点群データ等の三次元情報を入力として、特定点を検出するモデルであれば、任意のモデルであり得る。例えば、第2検出モデル87は、ロジスティック回帰若しくはサポートベクターマシン等を用いた回帰モデル、又は、回帰木、勾配ブースティング木、、若しくはランダムフォレスト等を用いた木構造モデルであってもよい。あるいは、第2検出モデル87は、ルールベース系のモデルであってもよい。これらの第2検出モデル87として例示されたモデルは、比較的高い説明性を有する。

 

Claims (7)

  1.  対象物の画像を取得する撮像装置と、
     機械学習によって学習済みの第1検出モデルを用いて、前記撮像装置によって取得された前記画像を入力として、前記対象物に含まれる特定点を検出する第1検出部と、
     前記第1検出部によって検出された前記特定点を含む、前記対象物の三次元情報を取得する三次元情報取得装置と、
     機械学習によって学習済みの第2検出モデルを用いて、前記三次元情報取得装置によって取得された前記三次元情報を入力として、前記特定点を再検出する第2検出部とを備える特定点検出システム。
  2.  請求項1に記載の特定点検出システムにおいて、
     前記三次元情報として前記第2検出モデルに入力される前記対象物の範囲は、前記画像として前記第1検出モデルに入力される前記対象物の範囲よりも狭い特定点検出システム。
  3.  請求項1又は2に記載の特定点検出システムにおいて、
     前記三次元情報は、点群データである特定点検出システム。
  4.  請求項1乃至3の何れか1つに記載の特定点検出システムにおいて、
     前記第2検出モデルの機械学習は、前記第1検出モデルの機械学習に比べて説明性が高い特定点検出システム。
  5.  請求項1乃至4の何れか1つに記載の特定点検出システムにおいて、
     ロボットアームをさらに備え、
     前記撮像装置及び前記三次元情報取得装置は、前記ロボットアームに配置され、
     前記ロボットアームは、
      前記対象物の前記画像を取得する際には、前記撮像装置を所定の撮像位置へ移動させ、
      前記対象物の前記三次元情報を取得する際には、前記第1検出部によって検出された前記特定点に対応する位置へ前記三次元情報取得装置を移動させる特定点検出システム。
  6.  対象物の画像を取得することと、
     機械学習によって学習済みの第1検出モデルを用いて、前記画像を入力として、前記対象物に含まれる特定点を検出することと、
     前記第1検出モデルによって検出された前記特定点を含む、前記対象物の三次元情報を取得することと、
     機械学習によって学習済みの第2検出モデルを用いて、前記三次元情報を入力として、前記特定点を再検出することとを含む特定点検出方法。
  7.  対象物の特定点を検出するためにコンピュータに、
     対象物の画像を取得することと、
     機械学習によって学習済みの第1検出モデルを用いて、前記画像を入力として、前記対象物に含まれる特定点を検出することと、
     前記第1検出モデルによって検出された前記特定点を含む、前記対象物の三次元情報を取得することと、
     機械学習によって学習済みの第2検出モデルを用いて、前記三次元情報を入力として、前記特定点を再検出することとを実行させる特定点検出プログラム。

     
PCT/JP2022/016214 2021-03-30 2022-03-30 特定点検出システム、特定点検出方法及び特定点検出プログラム WO2022210948A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202280023818.8A CN117043546A (zh) 2021-03-30 2022-03-30 特定点检测系统、特定点检测方法以及特定点检测程序
US18/552,675 US20240169550A1 (en) 2021-03-30 2022-03-30 Specific point detection system, specific point detection method, and specific point detection program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021-058534 2021-03-30
JP2021058534A JP2022155168A (ja) 2021-03-30 2021-03-30 特定点検出システム、特定点検出方法及び特定点検出プログラム

Publications (1)

Publication Number Publication Date
WO2022210948A1 true WO2022210948A1 (ja) 2022-10-06

Family

ID=83459562

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/016214 WO2022210948A1 (ja) 2021-03-30 2022-03-30 特定点検出システム、特定点検出方法及び特定点検出プログラム

Country Status (4)

Country Link
US (1) US20240169550A1 (ja)
JP (1) JP2022155168A (ja)
CN (1) CN117043546A (ja)
WO (1) WO2022210948A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06273137A (ja) * 1993-03-18 1994-09-30 Tokico Ltd バリ取りロボット
JP2018120300A (ja) * 2017-01-23 2018-08-02 株式会社リコー 情報処理装置、情報処理方法およびプログラム
US20190080446A1 (en) * 2017-09-11 2019-03-14 All Axis Robotics, LLC System and method for automated defect detection
WO2020129618A1 (ja) * 2018-12-19 2020-06-25 パナソニックIpマネジメント株式会社 溶接システム及びそれを用いたワークの溶接方法
JP2021021669A (ja) * 2019-07-30 2021-02-18 三菱パワー株式会社 点検支援方法、点検支援システム、及び点検支援プログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06273137A (ja) * 1993-03-18 1994-09-30 Tokico Ltd バリ取りロボット
JP2018120300A (ja) * 2017-01-23 2018-08-02 株式会社リコー 情報処理装置、情報処理方法およびプログラム
US20190080446A1 (en) * 2017-09-11 2019-03-14 All Axis Robotics, LLC System and method for automated defect detection
WO2020129618A1 (ja) * 2018-12-19 2020-06-25 パナソニックIpマネジメント株式会社 溶接システム及びそれを用いたワークの溶接方法
JP2021021669A (ja) * 2019-07-30 2021-02-18 三菱パワー株式会社 点検支援方法、点検支援システム、及び点検支援プログラム

Also Published As

Publication number Publication date
CN117043546A (zh) 2023-11-10
JP2022155168A (ja) 2022-10-13
US20240169550A1 (en) 2024-05-23

Similar Documents

Publication Publication Date Title
González et al. Advanced teleoperation and control system for industrial robots based on augmented virtuality and haptic feedback
Neto et al. High‐level robot programming based on CAD: dealing with unpredictable environments
Siradjuddin et al. A position based visual tracking system for a 7 DOF robot manipulator using a Kinect camera
Ponte et al. Visual sensing for developing autonomous behavior in snake robots
JP2018167334A (ja) 教示装置および教示方法
JP7239399B2 (ja) 調整支援装置
Lai et al. Integration of visual information and robot offline programming system for improving automatic deburring process
WO2023037634A1 (ja) 指令値生成装置、方法、及びプログラム
Lippiello et al. An open architecture for sensory feedback control of a dual‐arm industrial robotic cell
Nemec et al. Learning by demonstration and adaptation of finishing operations using virtual mechanism approach
WO2022210948A1 (ja) 特定点検出システム、特定点検出方法及び特定点検出プログラム
Teke et al. Real-time and robust collaborative robot motion control with Microsoft Kinect® v2
CN116652939A (zh) 一种并联机器人无标定视觉伺服柔顺控制方法
Shauri et al. Sensor integration and fusion for autonomous screwing task by dual-manipulator hand robot
Zhao et al. Visual servoing using non-vector space control theory
Yip et al. Development of an omnidirectional mobile robot using a RGB-D sensor for indoor navigation
WO2023013559A1 (ja) ロボットシステム、ロボットの加工方法及び加工プログラム
WO2022220217A1 (ja) ロボットシステム、その制御方法及び制御プログラム
JP2021186929A (ja) 多軸ロボットの制御方法
WO2023013560A1 (ja) ロボットシステム、ロボットの加工方法及び加工プログラム
WO2021210514A1 (ja) ロボットの制御装置及び制御方法、ロボットシステム、ロボットの動作プログラムを生成する装置及び方法
Lippiello et al. An experimental setup for visual servoing applications on an industrial robotic cell
US20220401169A1 (en) Master-slave system and controlling method
Kiswanto et al. Development of Robotic Arm Manipulator Control System for Micromilling Tool Wear Monitoring Based on Computer Vision
WO2022265644A1 (en) System and method to generate augmented training data for neural network

Legal Events

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

Ref document number: 22781158

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 202280023818.8

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 18552675

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22781158

Country of ref document: EP

Kind code of ref document: A1