Systems and methods for robotic assembly

By receiving and analyzing product data, automatically generated robot programs are generated, and combined with sensor technology, the time-consuming and expert knowledge of programming and automation applications in robot assembly is solved, and the assembly efficiency is realized automatically identifying and positioning of assembled parts is improved.

CN113453850BActive Publication Date: 2025-05-09ABB (SCHWEIZ) AG
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN201980093232.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2019-02-27
Publication Date
2025-05-09
Estimated Expiration
2039-02-27

AI Technical Summary

Technical Problem

Prior art programming and automation applications in robot assembly are still time consuming and require expert knowledge, and sensor-based object positioning and detection require additional programming and configuration work in individual applications.

Method used

By receiving product data, analyzing and determining robot functions, a fully automatic generated robot program, including sensor-based object detection and positioning, is used to identify and locate assembled parts and execute assembly instructions.

Benefits of technology

It realizes automatic identification and positioning of assembled parts in robot assembly, reducing programming and configuration workload, and improving assembly efficiency and automation level.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113453850B_ABST
    Figure CN113453850B_ABST
Patent Text Reader

Abstract

A method for robot assembly, comprising the following steps: receiving (S10) product data (Dp), the product data (Dp) comprising product structure data and / or product geometry data of a product (60), the product (60) having at least one assembly part (62) to be assembled and a basic component (61); analyzing (S20) the product data (Dp), thereby determining a robot function (F) related to a function of a robot (50) for assembling the product (60); generating (S30) a robot program (P) comprising assembly instructions (I) depending on the determined robot function and the product data (Dp); and executing (S40) the generated robot program (P), thereby identifying and / or locating at least one assembly part (62) and assembling the product (60).
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to systems and methods for robotic assembly. Background Art

[0002] Programming industrial robot applications is still time-consuming and requires expert knowledge in the application field and in the field of robotics. Apart from the generation of robot motion paths based on CAD / CAM data, attempts to automatically or semi-automatically generate robot applications are more on a theoretical level. There are also many research works on the generation of assembly diagrams, but they are not used in the realization of intelligent robot functions. On the other hand, sensor-based object localization and object feature detection are widely used in the field of robotics, however, using them for individual applications often requires specialized knowledge and additional programming or configuration effort.

[0003] Therefore, a need exists for improved methods for robotic assembly. Summary of the invention

[0004] According to one aspect, a method for robotic assembly comprises the following steps:

[0005] receiving product data, the product data comprising product structure data and / or product geometry data of a product, the product having at least one assembly part and a basic component to be assembled;

[0006] analyzing the product data to thereby determine robot functions related to functions of a robot used to assemble the product;

[0007] generating a robot program including assembly instructions dependent on the determined robot functions and the product data; and

[0008] The generated robot program is executed, thereby identifying and / or locating at least one assembly part and assembling a product.

[0009] Preferably, the functions of the robot for assembling the product include pushing, snapping and / or screwing.

[0010] As used herein, the term "assembly instructions" relates to instructions for a sequence of robots to assemble a product. Assembling the product preferably includes picking up at least one assembly part, moving at least one assembly part to an assembly position of a base component and / or connecting at least one assembly part to a base component.

[0011] Preferably, depending on the structural data, product hierarchy data relating to a hierarchy of individual components of the product are determined. Depending on the hierarchy of the individual components of the product, preferably basic components can be distinguished from assembled parts.

[0012] When analyzing the product data, a basic component and at least one assembly part are determined based on the product data, preferably based on product level data.

[0013] Preferably, the product data includes data relative to a component of the product. For example, the product data includes positional data of a component of the product relative to another component of the product. The product data preferably includes workspace data related to the design and / or layout of a workspace for assembling the product. The product data may include additional data about the product and / or the components of the product.

[0014] Preferably, the robot program is generated fully automatically.

[0015] Therefore, an improved method is provided for combining assembly instruction generation with sensor-based object detection and localization for efficient and automatic identification of at least one assembly part and localization of at least one assembly part.

[0016] Thus, the effort for programming robotic assembly applications is minimized.

[0017] In a preferred embodiment, the method comprises the following steps:

[0018] The product data is received from the CAD data of the product.

[0019] The CAD data of a product preferably include product components (such as assembly parts or basic components) and / or a 2D model and / or a 3D model of the product.

[0020] The CAD system supports the definition and analysis of assembly sequences.Preferably, at least product level data based on product structure data and product geometry data can be determined based on the CAD data.

[0021] Therefore, an improved method is provided for combining CAD-based assembly instruction generation with sensor-based object detection and localization for efficient and automatic identification of at least one assembly component and localization of at least one assembly part.

[0022] In a preferred embodiment, the method comprises the following steps:

[0023] While the robotic program is being executed, at least one assembly part of the product is identified by an RFID reader.

[0024] The assembly parts are preferably provided with an RFID transponder storing at least a part identification number of the respective assembly part. The RFID reader preferably reads out the RFID transponder, thereby identifying at least one assembly part.

[0025] Thus, an improved identification of at least one assembly part may be provided.

[0026] In a preferred embodiment, the method comprises the following steps:

[0027] While the robot program is being executed, at least one assembly part of the product is positioned by the vision system.

[0028] Thus, an improved positioning of at least one assembly part may be provided.

[0029] In a preferred embodiment, the method comprises the following steps:

[0030] determining a CAD model of at least one assembly part from the product data; and

[0031] The 3D image of the vision system is matched to the determined CAD model of at least one assembly part.

[0032] Thus, an improved positioning of at least one assembly part may be provided.

[0033] In a preferred embodiment, analyzing product data includes: creating a local coordinate system for a basic component; creating a local coordinate system for at least one assembly part; determining a starting pose of at least one assembly part; determining an orientation of at least one assembly part and / or determining a picking pose of at least one assembly part.

[0034] Preferably, the starting pose of at least one assembly part, the orientation of at least one assembly part and / or the picking pose of at least one assembly part are specifications relative to each other and / or to the base component. The starting pose and / or orientation are preferably related to an assembly movement of the robot.

[0035] Therefore, an improved method is provided for combining assembly instruction generation with sensor-based object detection and localization for efficient and automatic identification of at least one assembly part and localization of at least one assembly part.

[0036] In a preferred embodiment, the assembly instructions include: finding at least one assembly part; adjusting the reference coordinate system to the local coordinate system of the basic component; adjusting the picking posture of at least one assembly part; picking up at least one assembly part using the corresponding picking posture; assembling at least one assembly part and / or updating product data using the corresponding starting posture and direction of at least one assembly part.

[0037] Based on the relative data, when the base component is found, the local coordinate system for the base component and the local coordinate system for at least one assembly part are adjusted.

[0038] Therefore, an improved method is provided for combining assembly instruction generation with sensor-based object detection and localization for efficient and automatic identification of at least one assembly part and localization of at least one assembly part.

[0039] In a preferred embodiment, the method comprises the following steps:

[0040] While executing the robot program, the parameters of the robot functions are determined and / or adjusted.

[0041] Preferably, the robot program includes parameters that can be adjusted while executing the robot program.When identifying and locating at least one assembly part, the starting pose, orientation and / or pick-up pose (which is a relative pose) can be adjusted to absolute values ​​independently of another assembly part.

[0042] Therefore, an improved method is provided for combining assembly instruction generation with sensor-based object detection and localization for efficient and automatic identification of at least one assembly part and localization of at least one assembly part.

[0043] According to an aspect, a system for robotic assembly comprises: a database comprising product data, the product data comprising product structure data and / or product geometry data of a product to be assembled; a control unit configured to analyze the product data, thereby determining robot functions related to functions of a robot for assembling the product, and generating a robot program, the robot program comprising assembly instructions depending on the determined robot functions and the product data; and a robot system comprising a robot controller, the robot controller configured to execute the generated robot program, thereby identifying and positioning at least one assembly part and assembling the product.

[0044]

[0013] Accordingly, an improved system is provided for combining assembly instruction generation with sensor-based object detection and localization for efficient and automatic identification of at least one assembly part and localization of at least one assembly part.

[0045] In a preferred embodiment, the product data comprises CAD data of the product.

[0046]

[0013] Accordingly, an improved system is provided for combining CAD-based assembly instruction generation with sensor-based object detection and localization for efficient and automatic identification of at least one assembly part and localization of at least one assembly part.

[0047] In a preferred embodiment, the robotic system includes an RFID reader system having at least one RFID reader configured to identify at least one assembly part of the product.

[0048] Thus, an improved identification of at least one assembly part may be provided.

[0049] In a preferred embodiment, the robotic system comprises a vision system, preferably having at least one camera device and / or a data processing unit configured for absolutely positioning assembly parts of a product.

[0050] The camera is preferably a 3D camera.

[0051] Thus, an improved positioning of at least one assembly part may be provided.

[0052] In a preferred embodiment, at least one assembly part is provided with an RFID transponder.

[0053] Each assembly part is provided with an RFID transponder. The RFID transponder is preferably arranged directly on the assembly part. The RFID transponder is alternatively arranged on a container storing the assembly parts and / or a feeding system for feeding the assembly parts. Each container preferably only comprises assembly parts of the same type.

[0054] The container and the supply system are particularly suitable for relatively small assembly parts.The RFID transponder preferably stores at least a part identification number of the assembly part.

[0055] The RFID transponder can be recognized by an RFID reader system to identify the assembly part provided with the RFID transponder.

[0056] Thus, an improved identification of at least one assembly part may be provided.

[0057] The present invention also relates to: a computer program product comprising computer program code for controlling one or more processors of a device, the device being suitable for connecting to a communication network and / or being configured to: store standardized configuration representations; a specially assembled computer program product comprising a computer readable medium in which the computer program code is contained. BRIEF DESCRIPTION OF THE DRAWINGS

[0058] The subject matter of the invention will be explained in more detail hereinafter with reference to preferred exemplary embodiments illustrated in the accompanying drawings, in which:

[0059] Figure 1 A flow chart showing a system for robotic assembly;

[0060] Figure 2 A schematic diagram showing a system for robotic assembly; and

[0061] Figure 3 A flow chart showing a method for robotic assembly.

[0062] The reference symbols used in the drawings and their meanings are listed in summary form in the reference symbol list.In principle, identical assembly parts are provided with the same reference symbols in the drawings. DETAILED DESCRIPTION

[0063] Preferably, the functional modules and / or configuration mechanisms are implemented as programming software modules or procedures, respectively; however, those skilled in the art will appreciate that the functional modules and / or configuration mechanisms may be fully implemented or partially assembled in hardware.

[0064] Figure 1 A system 10 for robotic assembly is shown, the system 10 comprising a database 20, a control unit 30 and a robotic system 40. The control unit 30 comprises an analysis unit 31 and a generation unit 32. The robotic system 40 comprises an RFID reader system 41, a vision system 42 and a robot controller 43. The database contains product data Dp of a product 60 to be assembled. The product data Dp comprises product structure data and / or product geometry data of the product 60. For example, the product data Dp comprises CAD data of the product. The CAD data preferably relates to a 3D model of the product and product components. The product data Dp is provided to the control unit 30, in particular the analysis unit 31 of the control unit 30.

[0065] The analyzing unit 31 analyzes the product data Dp. Therefore, the robot function F related to the function of the robot for assembling the product is determined by the analyzing unit 31. In addition, the components of the product 60 (preferably the basic component 61 and at least one assembly part 62) can be determined from the product data Dp. The robot function F is provided to the generating unit 32, which is configured to automatically generate a robot program P or a module of the robot program P. The robot program P is provided to the robot controller 43 of the robot system 40.

[0066] The robot controller 43 executes the provided robot program P. Thereby, at least one assembly part 62 is identified and located. The assembly part 62 is identified by the RFID reader system 41 and located by the vision system 42. The RFID reader system 41 and the vision system 42 are provided with product data Dp from the database 20. In particular, the layout and design of the workspace, the starting posture of the assembly part 62 for assembling the product and / or the picking posture of the assembly part 62 are provided to the RFID reader system 41 and the vision system 42. Therefore, the RFID reader system 41 and the vision system 42 have a rough estimate of the position of the assembly part 62. The RFID reader system 41 identifies the assembly part 62 and provides the robot controller 43 with RFID data Dr related to the identity of the assembly part 62. The vision system 42 locates the assembly part 62 and provides the robot controller 43 with vision data Dv related to the position of the assembly part 62. Based on the RFID data Dr, the vision data Dv and the robot program P, the robot 50 for assembling the product 60 can be preferably controlled by the robot instruction I provided by the robot controller 43. The robot program P starts with a set of parameters based on the product data Dp. Once the RFID reader system 41 and the vision system 42 are activated and identify and / or locate the assembly part 62, the parameters of the robot program P are updated based on the RFID data Dr and / or the vision data Dv. In addition, the product data Dp from the database 20 can be adjusted based on the RFID data Dr and / or the vision data Dv.

[0067] Figure 2 A schematic diagram of a system 10 for robotic assembly is shown. The system 10 includes an RFID reader system 41, a vision system 42, a robot 50 for assembling a product 60, a computer 70, and a robot workspace 80. The robot 50 and the product 60 are arranged on the robot workspace 80. The product 60 includes a basic component 61 having two openings 61a, which are assembly positions in this example, where assembly parts 62 need to be inserted to assemble the product 60. The product 60 also includes two assembly parts 62, which are configured as screws. The assembly of the product 60 includes screwing the two assembly parts 62 into the openings 61a of the basic component 61, respectively.

[0068] The assembly part 62 is located at a predefined position or area within the robot workspace 80. This information relates to the product data Dp provided by the computer 70.

[0069] Assembly parts 62 may be supplied to the robotic workspace 80 manually and / or using a supply system.

[0070] Each of the two assembly parts 62 is provided with an RFID transponder 62a. The RFID transponder 62a is preferably arranged directly on the assembly part 62. However, the RFID transponder 62a can also be arranged on each type of container and / or supply system for the assembly part 62. This is particularly suitable for relatively small assembly parts. The RFID transponder 62a stores at least the part identification number of the assembly part 62.

[0071] The RFID reader system 41 comprises at least one RFID reader 41a. The RFID reader system 41 is configured to read at least a part of the identification number of the corresponding assembly part 62. The RFID reader system 41 can obtain further information, in particular product data, from the database 20. The RFID reader system 41 is connected to the robot controller 43.

[0072] The vision system 42 comprises at least one camera 42 a , in particular a 3D camera, and a data processing unit for determining visual data Dv.

[0073] An exemplary method for robotic assembly comprises: the control unit 30 (in this case the robot program generation software) retrieves the product data Dp to be assembled by the robot system 10 from the database 20, wherein this may be triggered by an upstream system or by a human operator via a user interface. The control unit 20 analyzes the product data Dp and obtains at least the following information:

[0074] First, the basic component 61 is obtained. Therefore, if a local coordinate system does not already exist in the product data Dp obtained from the database 20, a local coordinate system is created.

[0075] Next, the assembly part 62 to be inserted is obtained, in this case, the assembly part 62 is screwed into the opening 61a of the base component 61. Therefore, if a local coordinate system does not already exist in the product data Dp obtained from the database 20, a local coordinate system is created for each assembly part 62. The direction and starting pose of the insertion relative to the base component 61 are obtained. Optionally, a pick-up pose, which is a tool pose relative to the assembly part 62, is also obtained.

[0076] The control unit 30 (in particular, the generation unit 32) automatically generates a robot program module P that calls the following assembly instruction I. Find the assembly part 62, such as the assembly part identification number and / or the assembly part position. If at least the basic component 61 is found, the reference coordinate system of the assembly part 62 is adjusted to the coordinate system of the basic component 61. If the assembly part 62 to be inserted is found, the picking posture is adjusted to the actual posture of the assembly part 62. If the basic component 61 is found and at least one assembly part 62 to be inserted is found, the assembly part 62 is picked up with the corresponding picking posture. Insert the assembly part 62 with the corresponding starting posture and insertion direction. Update the product data Dp in the database 20 and / or on the RFID transponder 62a.

[0077] The robot controller 40 executes the generated robot program P, calling the assembly instruction I mentioned above. Finding the assembly part 62 is accomplished by the RFID reader system 41 that detects the presence of the assembly part 62. When a group of small assembly parts 62 are delivered together, an RFID transponder 62a is placed on the assembly part 62 and / or on a container of the assembly part 62. At least the assembly part identification number is stored on the RFID transponder 62a. In the case where the RFID transponder is on the container, a plurality of assembly parts 62 and a pattern for placing the assembly parts 62 in the container are stored on the RFID transponder 62a or in the database 20.

[0078] If available, predefined locations of assembly parts 62 or assembly part containers are received from the database 20, such as a workspace layout.

[0079] If workspace layout data is not available, multiple RFID readers 41 a with defined detection ranges may be placed at different locations to roughly locate the assembly part 62 .

[0080] If necessary, the vision system 42 detects the position and / or corrects the assembly part 62, or in other words, updates the predefined product data Dp, in particular the position data for matching the actual installation. Therefore, the CAD model of the assembly part 62 is received from the database 20. The 3D image is matched with the CAD model of the assembly part 62. In the case where the assembly part 62 is supplied using a container, the vision system 42 can also detect the presence of the assembly part 62 within the container. Therefore, the relative pose of the assembly part 62 from the database 20 and the part position obtained above are used to adjust the pose and the reference coordinate system.

[0081] Matching the 3D image with the CAD model of the assembly part 62 can be done more efficiently by using only a sub-portion of the image, knowing the rough position of the assembly part 62 from the product data Dp (particularly the CAD data) and / or by using a depth threshold, and greatly reducing the dimension of the model matching when the assembly part 62 is supplied only in a known orientation.

[0082] Figure 3 A flow chart of a method for robot assembly is shown. In step S10, product data Dp is received, the product data Dp comprising product structure data and / or product geometry data of a product 60 having at least one assembly part 62 to be assembled and a basic component 61. In step S20, the product data Dp is analyzed, thereby determining a robot function F related to the function of a robot 50 for assembling the product 60. In step S30, a robot program P is generated comprising assembly instructions I depending on the determined robot function F and the product data Dp. In step 40, the generated robot program P is executed, thereby identifying and positioning at least one assembly part 62 and assembling the product 60.

[0083] Reference Symbols List

[0084] 10 System

[0085] 20 Database

[0086] 30 Control unit

[0087] 31 Analysis Unit

[0088] 32 Generation Units

[0089] 40 Robotic System

[0090] 41 RFID reader system

[0091] 41a RFID Reader

[0092] 42 Vision System

[0093] 42a 3D camera

[0094] 43 Robot Controller

[0095] 50 Robot

[0096] 60 Products

[0097] 61 Basic Components

[0098] 61a Opening

[0099] 62 Assemble parts

[0100] 62a RFID tag

[0101] 70 Computer

[0102] 80 Workspace

[0103] Dp Product Data

[0104] Dr RFID Data

[0105] Dv visual data

[0106] I Assembly Instructions

[0107] P Robot Program

[0108] F Robot Function

[0109] S10 Receive product data

[0110] S20 Analyze Product Data

[0111] S30 Generate robot program

[0112] S40 Execute robot program

Claims

1. A method for robot assembly, comprising the following steps: Receiving (S10) product data (Dp), the product data (Dp) comprising product structure data and / or product geometry data of a product (60), the product (60) having at least one assembly part (62) to be assembled and a basic component (61); analyzing (S20) the product data (Dp) to thereby determine a robot function (F) associated with a function of a robot (50) for assembling the product (60), wherein the robot function (F) comprises pushing, snapping and / or screwing; generating (S30) a robot program (P) comprising assembly instructions (I) depending on the determined robot functions and said product data (Dp); determining parameters of the robot function (F) according to the product data (Dp); executing (S40) the generated robot program (P), thereby identifying and / or locating the at least one assembly part (62) and assembling the product (60); identifying said at least one assembly part (62) of said product (60) by means of an RFID reader system (41) while executing said robot program (P) and providing RFID data (Dr); and The parameters of the robot function (F) are adjusted based on the RFID data (Dr).

2. The method according to claim 1, comprising the steps of: Product data (Dp) is received from CAD data of the product (60).

3. The method according to any one of the preceding claims, comprising the steps of: While executing the robot program (P), the at least one assembly part (62) of the product (60) is located by a vision system (42).

4. The method according to any one of claims 3, comprising the steps of: determining a CAD model of said at least one assembly part (62) from said product data (Dp); as well as The 3D image of the vision system (42) is matched to the determined CAD model of the at least one assembly part (62).

5. The method according to any one of claims 1 to 2, wherein Analyzing the product data (Dp) comprises: Creating a local coordinate system for the basic component (61); Creating a local coordinate system for the at least one assembly part (62); determining a starting pose of at least one assembly part (62); The orientation of the at least one assembly part (62) is determined and / or the picking posture of the at least one assembly part (62) is determined.

6. The method according to claim 5, wherein The assembly instruction (I) comprises: Finding the at least one assembly part (62); adjusting the reference coordinate system to the local coordinate system of the basic component (61); Adjusting the picking posture of the at least one assembly part (62); picking up the at least one assembly part (62) using the corresponding picking posture; assembling the at least one assembly part (62) and / or updating the product data (Dp) using the corresponding starting posture and direction of the at least one assembly part (62).

7. A system for robotic assembly, comprising: a database (20), the database (20) comprising product data (Dp), the product data (Dp) comprising product structure data and / or product geometry data of a product, the product having at least one assembly part (62) to be assembled and a basic component (61); a control unit (30) configured to analyze the product data (Dp), thereby determining a robot function (F) related to a function of a robot for assembling the product (60), and to generate a robot program (P) comprising assembly instructions (I) depending on the determined robot function (F) and the product data (Dp), wherein the robot function (F) comprises pushing, snapping and / or screwing; a robot system (40), the robot system (40) comprising a robot controller (43), the robot controller (43) being configured to execute the generated robot program (P), thereby identifying and locating the at least one assembly part (62), and assembling the product (60) and being configured to determine parameters of the robot function (F) according to the product data (Dp) and to adjust the parameters of the robot function (F) based on the RFID data (Dr); as well as An RFID reader system (41) having at least one RFID reader (41a) is configured to identify the at least one assembly part (62) of the product (60) and provide the RFID data (Dr) while the robot program (P) is being executed.

8. The system according to claim 7, wherein The product data (Dp) includes CAD data of the product (60).

9. A system according to any one of claims 7 to 8, wherein The robotic system (40) comprises a vision system (42) having at least one camera device (42a) and / or a data processing unit configured to locate the at least one assembly part (62) of the product (60).

10. The system according to any one of claims 7 to 8, wherein The at least one assembly part (62) is provided with an RFID transponder (62a).

Citation Information

Patent Citations

  • Automatic teaching system and method for assembly work robot

    JP2008009899A

  • Control device, robot, robot system, and control method

    US20150120047A1