Calibration-free path generation for collaborative robots

The method allows collaborative robots to generate accurate paths without calibration by using operator-input shapes and points, enhancing their efficiency and reliability in task execution.

WO2026044558A9PCT designated stage Publication Date: 2026-05-21ABB (SCHWEIZ) AG +3
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
ABB (SCHWEIZ) AG
Filing Date
2024-08-28
Publication Date
2026-05-21

AI Technical Summary

Technical Problem

Calibration of collaborative robots is complex, especially for robots with multiple axes or complex kinematics, requiring technical expertise and complicating trajectory or workspace planning.

Method used

A method for collaborative robots that allows operators to input a desired regular shape and a set of points, generating a fine profile without calibration by using a scoring system to refine the profile based on an offset threshold, enabling multiple profiles to be generated and evaluated for accuracy.

Benefits of technology

Enables efficient and reliable trajectory or workspace planning without the need for traditional calibration, improving the reliability and flexibility of collaborative robots in task execution.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024115288_21052026_PF_FP_ABST
    Figure CN2024115288_21052026_PF_FP_ABST
Patent Text Reader

Abstract

Embodiments of the present disclosure provide calibration-free path generation for collaborative robots. A method performed by a collaborative robot (10), is provided, the method comprising: receiving (112), from an operator (20), a first input to select one regular shape in a set of regular shapes and a second input corresponding to a set of points, generating (114) a first profile (100) corresponding to the selected one regular shape based on a first number of points in the set of points, determining (116) a score of the generated first profile based on an offset between the first profile and the first number of points, generating (118), in response to the determination that the score is lower than a threshold, a second profile (200) based on a second number of points in the set of points.
Need to check novelty before this filing date? Find Prior Art

Description

CALIBRATION-FREE PATH GENERATION FOR COLLABORATIVE ROBOTSFIELD

[0001] Embodiments of the present disclosure generally relate to a collaborative robot, and more specifically, to a method of generating a path or workspace for an end effector of the collaborative robot.BACKGROUND

[0002] Collaborative robots are designed to work alongside humans. The teaching of collaborative robots is the process of enabling robots to learn and perform specific tasks. Drag-and-teach is a common method that allows operators to demonstrate tasks by manually moving the robot’s end-effector. The collaborative robot records these movements and translates them into programs for subsequent execution. The advantages of drag-and-teach include simplified programming, rapid deployment, and flexibility.

[0003] In general, calibration of collaborative robots needs to be performed to ensure their accuracy and reliability for processing the objects to be processed and is essential for the following trajectory or workspace planning of the collaborative robots. However, the process of calibration of collaborative robots is complex. Robots with more axes or those with complex kinematics are inherently more challenging to calibrate due to the increased number of variables that need to be accounted for. In addition, the process of calibration requires a good understanding of robotics, kinematics, and control systems. The lack of technical expertise can make calibration a daunting task.SUMMARY

[0004] Embodiments of the present disclosure provide calibration-free path generation for collaborative robots. The efficiency about generating trajectory or workspace planning of the collaborative robots may be improved.

[0005] In a first aspect, a method performed by a collaborative robot is provided. The method comprises receiving, from an operator, a first input to select one regular shape in a set of regular shapes and a second input corresponding to a set of points, generating a first profile corresponding to the selected one regular shape based on a first number of points in  the set of points, determining a score of the generated first profile based on an offset between the first profile and the first number of points, generating, in response to the determination that the score is lower than a threshold, a second profile based on a second number of points in the set of points.

[0006] By utilizing the method provided according to the first aspect, the operator can input a desired regular shape and a set of points used to depict the rough profile in the real-world space to the collaborative robot. The collaborative robot is informed of the intent that the operator requires the collaborative robot to generate the desired regular shape using the sets of points that delimit the boundary or dimension of the desired regular shape. With this intent, the collaborative robot then outputs a fine profile matching the desired regular shape.

[0007] Because the sets of points are deliberately prepared by the operator, and the distribution of the sets of points may depict a rough profile corresponding to the desired regular shape, the collaborative robot can generate a fine profile matching the intent of the operator using the set of points without performing the process of calibration of the collaborative robot. Thus, calibration of the collaborative robot has not to be done prior to the use of the collaborative robot.

[0008] Moreover, the sets of points may be divided into two or more different subsets during the generation of the fine profile, and these subsets may be used to generate a corresponding profile corresponding to one of the subsets, and thus more than one fine profile matching the desired regular shape may be generated. In addition, the fine profile may be scored and compared with a threshold such that the generation of the fine profile may be evaluated. The generated fine profile that does not have a score larger than the threshold may be discarded and the generated fine profile that has a score larger than the threshold may be output. In this way, the reliability of the generation of the fine profile matching the desired regular shape is increased.

[0009] In some embodiments, the second input corresponding to the set of points is received by: guiding an end effector of the collaborative robot by the operator to a position in a physical space corresponding to each point in the set of points.

[0010] In some embodiments, the set of regular shapes comprises a plurality of one-dimension, 1D, shapes and / or a plurality of two-dimension, 2D, shapes, wherein the plurality of 1D shapes comprise a straight line and / or a curve, and wherein the plurality of 2D shapes comprise a circle and / or a polygon.

[0011] In some embodiments, determining the score of the first profile based on the offset between the first profile and the first number of points comprises: determining the closest  distance of the first profile to each of the first number of points as the offset, calculating a sum of the respective offsets for the first number of points, and determining the score based on the sum.

[0012] In some embodiments, the method comprises in response to receiving a third input indicating that the operator is not satisfied with the second profile: generating a third profile based on a third number of points in the sets of points, wherein the third number of points are determined based on removing a fraction of the second number of points by the operator.

[0013] In some embodiments, the first number of points are equal to a total number of the set of points.

[0014] In some embodiments, the method comprises: determining first and second templates that form respective edge portions of the 2D shape, generating, in accordance with the determined first template, a first sub-profile based on a first subset of the first number of points, generating, in accordance with the determined second template, a second sub-profile based on a second subset of the first number of points, and generating the first profile corresponding to the 2D shape based on the first sub-profile and the second sub-profile.

[0015] In some embodiments, the method comprises in response to a determination that the first sub-profile and the second sub-profile are not applicable to generate the first profile: generating a new first sub-profile based on a fraction of the first subset, and generating a new second sub-profile based on a fraction of the second subset, generating an updated first profile based on the new first sub-profile and the first sub-profile.

[0016] In some embodiments, the determination that the first sub-profile and the second sub-profile are not applicable to generate the first profile is at least based on one or more of the following: the first sub-profile is not coplanar with the second sub-profile in a 3D space, at least three intersections between the first sub-profile and second sub-profile exist, or a scaled version of the first sub-profile and a scaled version of the second sub-profile cannot form a closed shape together.

[0017] In some embodiments, the method comprises: in response to a determination that the selected one regular shape is a 2D shape: generating a first sub-profile based on a first subset of the first number of points, generating, a second sub-profile based on a second subset of the first number of points, as a diagonal or diameter of the 2D shape, determining a plane where the first profile corresponding to the 2D shape is to be located based on the first sub-profile, and generating the first profile, based on the second sub-profile and the determined plane.

[0018] In some embodiments, the method comprises: in response to a determination that  the selected one regular shape is a circle, generating a first sub-profile based on a first subset of the first number of points, generating, a second sub-profile based on a second subset of the first number of points, as an edge portion of the 2D shape, determining a plane where the first profile corresponding to the circle is to be located based on the first sub-profile, and generating the first profile, based on the second sub-profile and the determined plane.

[0019] In some embodiments, the method comprises: defining a workspace based on the first profile, and processing an object based on the defined workspace, wherein processing the object comprising: polishing a surface of the object.

[0020] In some embodiments, the method comprises: receiving a fourth input indicating a pattern of the processing within the defined workspace, and processing the object following the pattern of the processing.

[0021] In a second aspect, a collaborative robot is provided. The collaborative robot may be configured to perform the method of the first aspect.

[0022] In a third aspect, a computer-readable non-transitory storage medium is provided, the computer-readable non-transitory storage medium having instructions stored thereon, the instructions, when executed by a processor of a collaborative robot, cause the collaborative robot to perform the method of the first aspect.

[0023] In a fourth aspect, a computer program product is provided, the computer program product comprising instructions, which when executed by a processor of a collaborative robot, causes the collaborative robot to perform the method of the first aspect.

[0024] It is to be understood that the Summary is not intended to identify key or essential features of embodiments of the present disclosure, nor is it intended to be used to limit the scope of the present disclosure. Other features of the present disclosure will become easily comprehensible through the description below.BRIEF DESCRIPTION OF THE DRAWINGS

[0025] The above and other objectives, features and advantages of the present disclosure will become more apparent through more detailed depiction of example embodiments of the present disclosure in conjunction with the accompanying drawings, wherein in the example embodiments of the present disclosure, same reference numerals usually represent the same components.

[0026] FIG. 1 shows a perspective view of a collaborative robot according to embodiments of the present disclosure;

[0027] FIG. 2 shows a library comprising regular shapes according to embodiments of the present disclosure;

[0028] FIG. 3 shows a flowchart of the method according to embodiments of the present disclosure;

[0029] FIGS. 4A-4B show the first and second profiles corresponding to a straight line according to embodiments of the present disclosure;

[0030] FIGS. 5A-5B show the first and second profiles corresponding to a curve according to embodiments of the present disclosure;

[0031] FIGS. 6A-6C show the first, second and third profiles corresponding to a circle according to embodiments of the present disclosure;

[0032] FIGS. 7A-7C show the first and second sub-profiles to form the first profile corresponding to a square according to embodiments of the present disclosure;

[0033] FIGS. 8A-8C show the first and second sub-profiles to form the first profile corresponding to a square according to embodiments of the present disclosure;

[0034] FIGS. 9A-9C show the first and second sub-profiles to form the first profile corresponding to a circle according to embodiments of the present disclosure;

[0035] FIGS. 10A-10C show the first and second sub-profiles to form the first profile corresponding to a circle according to embodiments of the present disclosure; and

[0036] FIG. 11 shows the processing of the object within the workspace defined by the generated profile.

[0037] Throughout the drawings, the same or similar reference symbols are used to indicate the same or similar elements.DETAILED DESCRIPTION

[0038] The present disclosure will now be discussed with reference to several example embodiments. It is to be understood these embodiments are discussed only for the purpose of enabling those skilled persons in the art to better understand and thus implement the present disclosure, rather than suggesting any limitations on the scope of the subject matter.

[0039] As used herein, the term “comprises” and its variants are to be read as open terms  that mean “comprises, but is not limited to. ” The term “based on” is to be read as “based at least in part on. ” The term “one embodiment” and “an embodiment” are to be read as “at least one embodiment. ” The term “another embodiment” is to be read as “at least one other embodiment. ” The terms “first” , “second” , and the like may refer to different or same objects. Other definitions, explicit and implicit, may be comprised below. A definition of a term is consistent throughout the description unless the context clearly indicates otherwise.

[0040] FIG. 1 shows a collaborative robot 10 comprising an end effector 11, a plurality of robotic arms 12, 13, and a base 14 positioned on the ground.

[0041] In one embodiment, the collaborative robot 10 further comprises a processor configured to receive an input of an operator 20 and a sensor configured to generate sensor information related to the changes in coordinates of the end effector 11 in a real-world-based 3D coordinate system during movement. The processor is further configured to determine changes in coordinates of the end effector 11 at a stopping position of the movement of the end effector 11 in the real-world-based 3D coordinate system relative to a starting position of the movement of the end effector 11 based on the sensor information. The changes in coordinates of the end effector 11 in the real-world-based 3D coordinate system may be used in determining appropriate subsets of the set of points that are used in generating the profile, e.g. first and second subsets, as discussed below.

[0042] The processor may be configured to communicate with a memory. In one embodiment, the memory may be a local memory, as a part of the collaborative robot. In another embodiment, the memory may be a remote memory, such cloud storage. The processor may be further configured to receive an input to select one regular shape in the set of regular shapes and retrieve the selected one regular shape in a library stored in the memory in response to receiving the input to select one regular shape.

[0043] FIG. 2 shows a library comprising a set of regular shapes. The set of regular shapes may comprise a plurality of one-dimension, 1D, shapes, such as a straight line and, a curve, e.g., sinusoidal curve a plurality of two-dimension, 2D, shapes, such as a square and rectangle, or a plurality of three-dimension, 3D, shapes, such as a cuboid, e.g. a cube, a cylinder, or a cone. In one embodiment, the library may be updated by the operator. The operator may input a new regular shape through an interface of the collaborative robot to the collaborative robot, and the collaborative robot may be configured to add the new regular shape to the library in the memory.

[0044] Referring to FIG. 1, the collaborative robot is configured to receive a sets of points corresponding a sequence of target positions. The sequence of target positions may be determined based on the input of the operator 20 to the collaborative robot. In one embodiment, the input of the operator 20 is received by dragging the end effector 11 to move. Point in the set of points is recorded when the end effector is guided by the operator 20 to a target position in a physical space corresponding to each point in the set of points. This can also be called “Drag-and-Teach” process, and it allows the operator to demonstrate a relatively rough trajectory by manually moving the end effector. The points in the set of points may be labeled with a temporal marking. Alternatively, the points in the set of points may be sorted by collection time and assigned with sequence tags.

[0045] In FIG. 1, the operator 20 has dragged the end effector 11 from position P1 to position P2 in the physical space. The collaborative robot may be configured to determine whether dragging the end effector 11 by the operator 20 has stopped, and in response to the determination that the dragging has stopped, monitor a trigger to record a point corresponding to a position where the end effector is in the physical space, and after the trigger is received, record information about the point.

[0046] FIG. 3 shows the general process of generating a profile matching the regular shape selected by the operator. At block 112, the first input to select one regular shape in a set of regular shapes and the second input corresponding to a set of points are received. The collaborative robot may comprise a display screen and may display the received first and second inputs to the operator using the display screen. At block 114, a first profile corresponding to the selected one regular shape is generated based on a first number of points in the set of points. In one embodiment, the first number of points are equal to a total number of the set of points. In another embodiment, the first number of points are less than the total number of the set of points. The first number of points may be determined by automatically removing the “abnormal point” in the set of points. The abnormal point may be determined based on the association among points of the set of points in accordance with the selected one regular shape. Additionally, the point may be determined as an abnormal point based on the changes in coordinates of the end effector 11 in the real-world-based 3D coordinate system corresponding to the point. In one embodiment, it is detected that the change in coordinates is beyond the maximum work range of the end effector 11, the point thus is identified as the abnormal point and be removed.

[0047] At block 116, a score of the generated first profile is determined based on offset between the first profile and the first number of points. In some embodiments, determining the score of the first profile based on the offset between the first profile and the first number of points comprises: determining the closest distance of the first profile to each of the first number of points as the offset, calculating a sum of the respective offsets for the first number of points, and determining the score based on the sum.

[0048] At block 118, in response to the determination that the score is lower than a threshold, a second profile is generated based on a second number of points in the set of points. In some embodiments, the second number of points is less than the first number of points. The second number of points may be determined by removing the points with a larger offset in the first number of points. In other embodiments, the second number of points comprises a portion of first number of points and one or more points that were not contained in the first number of points.

[0049] In some embodiments, the collaborative robot may be configured to display the second profile to the operator. The collaborative robot may be configured to display the second profile to the operator and the distribution of set of points simultaneously. Each point in the second number of points may be highlighted while displaying the set of points. The operator might be unsatisfied with the second profile. After an input indicating that the operator is not satisfied with the second profile has been received by the collaborative robot, the collaborative robot is configured to monitor manual change to the second number of points. The manual change to the second number of points creates a third number of points that may be used to generate a third profile. In some embodiments, the third number of points are determined based on removing a fraction of the second number of points by the operator. The collaborative robot is configured to generate the third profile based on the third number of points.

[0050] FIGS. 4A-4B show the first and second profiles corresponding to a straight line according to some embodiments. Referring to FIG. 4A, the four points P1, P2, P3, and P4 serve as a first number of points. The straight line is selected from the set of regular shapes and the selection of the straight line is input to the collaborative robot. The first profile 100 may be generated based on the four points P1, P2, P3, and P4 in accordance with the straight line as the selected one regular shape. After the first profile 100 has been generated, the offset between the first profile 100 and the four points P1, P2, P3, and P4 may be determined  and scored. As shown in FIG. 4A, each offset corresponding to one of the four points P1, P2, P3, and P4 may be determined as Offset 1, Offset 2, Offset 3, and Offset 4, respectively.

[0051] In FIG. 4B, point P3 is removed and three points P1, P2, and P4 serve as a second number of points. Point P3 is removed because the sum of the offset is larger and the score corresponding to the sum of the offset is less than the threshold. The second profile 200 may be generated based on the three points P1, P2, and P4 in accordance with the straight line as the selected one regular shape. In one embodiment, after the second profile 200 has been generated, the offset between the second profile 200 and the four points P1, P2, P3, and P4 may be determined to evaluate the second profile 200. In another embodiment, the generation of the first profile 100 and the second profile 200 may be iteratively performed such that the final second profile has a score no less than the threshold.

[0052] FIGS. 5A-5B show the first and second profiles corresponding to a curve according to some embodiments. Referring to FIG. 5A, the eight points P1, P2, P3, P4, P5, P6, P7, and P8 serve as a first number of points. The curve is a sinusoidal curve selected from the set of regular shapes and the selection of the sinusoidal curve is input to the collaborative robot. The first profile 100 may be generated based on the eight points P1, P2, P3, P4, P5, P6, P7, and P8 in accordance with the sinusoidal curve as the selected one regular shape. After the first profile 100 has been generated, the offset between the first profile 100 and the eight points P1, P2, P3, P4, P5, P6, P7, and P8 may be determined and scored.

[0053] In FIG. 5B, points P2 and P4 are removed and six points P1, P3, P5, P6, P7, and P8 serve as a second number of points. Points P2 and P4 are removed because the sum of the offset is larger and the score corresponding to the sum of the offset is less than the threshold. The second profile 200 may be generated based on the six points P1, P3, P5, P6, P7, and P8 in accordance with the sinusoidal curve as the selected one regular shape. In one embodiment, after the second profile 200 has been generated, the offset between the second profile 200 and the eight points P1, P2, P3, P4, P5, P6, P7, and P8 may be determined to evaluate the second profile 200. In another embodiment, the generation of the first profile 100 and the second profile 200 may be iteratively performed such that the final second profile has a score no less than the threshold.

[0054] In other embodiments, the curve as the selected one regular shape may be adjusted based on the set of points by taking one of: (1) Moving Average, (2) Gaussian Smoothing, (3) Spline Interpolation, or (4) Savitzky-Golay Filtering. The adjusted curve may be used in  the generation of the first and second profiles. In one embodiment, the first and second profiles are generated based on the first and second number of points, respectively, in accordance with the adjusted curve.

[0055] FIGS. 6A-6C show the first, second and third profiles corresponding to a circle according to some embodiments. Referring to FIG. 6A, the five points P1, P2, P3, P4, and P5 serve as a first number of points. The circle is selected from the set of regular shapes and the selection of the circle is input to the collaborative robot. The first profile 100 may be generated based on the five points P1, P2, P3, P4, and P5 in accordance with the circle as the selected one regular shape.

[0056] In FIG. 6B, the point P5 is removed and four points P1, P2, P3, and P4 serve as a second number of points. Point P5 is removed because the sum of the offset is larger and the score corresponding to the sum of the offset is less than the threshold. The second profile 200 may be generated based on the four points P1, P2, P3, and P4 in accordance with the circle as the selected one regular shape. After the second profile 200 has been generated, the offset between the second profile 200 and the five points P1, P2, P3, P4, and P5 may be determined to evaluate the second profile 200.

[0057] In FIG. 6C, the point P1 is removed from the second number of points by the operator 20 and three points P2, P3, and P4 serve as a third number of points. The third profile 300 may be generated based on the three points P2, P3, and P4 in accordance with the circle as the selected one regular shape.

[0058] FIGS. 7A-7C show the first and second sub-profiles to form the first profile corresponding to a square according to embodiments of the present disclosure. The square is selected from the set of regular shapes and the selection of the square is input to the collaborative robot. The first and second templates that form the edge portion of the square may be determined. In the case where the square serves as the selected one regular shape, both the first and second templates are determined as first and second straight lines perpendicular to each other. In other embodiments, the first and second templates may be determined based on the characteristics of the edge and / or angle of the 2D regular shape.

[0059] In FIG. 7A, a first sub-profile 110 may be generated based on a first subset of the first number of points. The first subset of points is relevant to the movement of the end effector 11 along the direction D1, and the first subset of points are determined based on the association of the coordinates of the end effector 11 in the real-world-based 3D coordinate  system with the movement along the direction D1. In FIG. 7B, a second sub-profile 120 is generated based on a second subset of the first number of points. The second subset of points is relevant to the movement of the end effector 11 along the direction D2, and the second subset of points are determined based on the association of the coordinates of the end effector 11 in the real-world-based 3D coordinate system with the movement along the direction D2. In FIG. 7C, the first profile 100 corresponding to the square is generated based on the first sub-profile 110 and the second sub-profile 120.

[0060] FIGS. 8A-8C show the first and second sub-profiles to form the first profile corresponding to a square according to some embodiments.

[0061] In FIG. 8A, a first sub-profile 110 may be generated based on a first subset of the first number of points. The first sub-profile may be used to determine a plane where the first profile 100 corresponding to the square is to be located. In FIG. 8B, a second sub-profile 120 may be generated based on a second subset of the first number of points as a diagonal of the square. In FIG. 8C, the first profile corresponding to the square may be determined based on the second profile 120 and the determined plane.

[0062] FIGS. 9A-9C show the first and second sub-profiles to form the first profile corresponding to a circle according to some embodiments. The circle is selected from the set of regular shapes and the selection of the circle is input to the collaborative robot. The first template that forms the edge portion of the circle may be determined. In the case where the circle serves as the selected one regular shape, the first template is determined as an arc,

[0063] In FIG. 9A, a first sub-profile 110 may be generated based on a first subset of the first number of points. The first sub-profile may be used to determine a plane where the first profile 100 corresponding to the circle is to be located. In FIG. 9B, a second sub-profile 120 may be generated as an edge portion of the circle based on a second subset of the first number of points. In FIG. 9C, the first profile 100 corresponding to the circle may be determined based on the second profile 120 and the determined plane.

[0064] FIGS. 10A-10C show the first and second sub-profiles to form the first profile corresponding to a circle according to some embodiments.

[0065] In FIG. 10A, a first sub-profile 110 may be generated based on a first subset of the first number of points. The first sub-profile may be used to determine a plane where the first profile 100 corresponding to the circle is to be located. In FIG. 10B, a second sub- profile 120 may be generated a diameter of the circle based on a second subset of the first number of points. In FIG. 10C, the first profile 100 corresponding to the circle may be determined based on the second profile 120 and the determined plane.

[0066] In some embodiments, a 3D shape, such as a cuboid, a cylinder, or a cone may be selected and the sets of points relating to the selected 3D shape is received by the collaborative robot. The processes of generating profiles corresponding to the 1D shape and 2D shape may be combined to generate the 3D shape. In one embodiment, a cylinder is selected by the operator, the collaborative robot may be configured to generate a first profile corresponding to a circle as described herein with reference to FIGS. 9A-10C and generate a first profile corresponding to a straight line as described herein with reference to FIGS. 4A-4C, and generate a first profile corresponding to a cylinder based on both the generated first profile corresponding to the straight line and the generated first profile corresponding to the circle. The generating the first profile corresponding to the cylinder may comprise virtually moving the generated first profile corresponding to the circle along the generated first profile corresponding to the straight line. In another embodiment, a cone is selected by the operator, the collaborative robot may be configured to generate a first profile corresponding to a circle as described herein with reference to FIGS. 9A-10C and generate a first profile corresponding to a straight line as described herein with reference to FIGS. 4A-4C, and generate a first profile corresponding to a cone based on both the generated first profile corresponding to the straight line and the generated first profile corresponding to the circle. The generating the first profile corresponding to the cone may comprise virtually moving the generated first profile corresponding to the circle along the generated first profile corresponding to the straight line, and while moving, the dimension of the generated first profile corresponding to the circle is decreased to zero. It is noted that there are other various embodiments for generating the first profile corresponding to the same 3D shape based on one or more 1D shapes and one or more 2D shapes. These embodiments are similar to the embodiments described herein and can be derived therefrom, and thus these embodiments are also provided by the present disclosure.

[0067] In some embodiments, the collaborative robot may be configured to determine whether the first sub-profile 110 and the second sub-profile 120 are not applicable to generate the first profile 100 and in response to a determination that the first sub-profile 110 and the second sub-profile 120 are not applicable to generate the first profile 100, generating a new first sub-profile based on a fraction of the first subset, generating a new second sub-profile  based on a fraction of the second subset, and generating an updated first profile based on the new first sub-profile and the second sub-profile. The determination that the first sub-profile 110 and the second sub-profile 120 are not applicable to generate the first profile 100 may be at least based on one or more of the following: the first sub-profile 110 is not coplanar with the second sub-profile 120 in a 3D space, at least three intersections between the first sub-profile and second sub-profile 120 exist, or a scaled version of the first sub-profile 110 and a scaled version of the second sub-profile 120 cannot form a closed shape together.

[0068] In some embodiments, a workspace may be defined based on the generated first profile. In one embodiment, the first profile is a straight line or curve that corresponds to the selected one regular shape, and a trajectory or working path for the end effector 11 may be defined based on the first profile, and the collaborative robot is configured to process an object based on the defined trajectory or working path. In another embodiment, the first profile is a circle or square that corresponds to the selected one regular shape, and a work space for the end effector 11 may be defined based on the first profile, and the collaborative robot is configured to process an object within the work space. Processing the object may comprise polishing a surface of the object. Additionally, the collaborative robot may be configured to receive a fourth input indicating a pattern of the processing within the defined workspace, and process the object following the pattern of the processing.

[0069] FIG. 11 shows the processing of the object within the workspace defined by the generated profile. In FIG. 11, the first profile 100 corresponding to a circle as the selected one regular shape is generated. The end effector 11 is equipped with a grinding head configured for polishing object 30. In one embodiment, in the process of polishing object 30, the grinding head is limited to moving within the first profile 100 or along the first profile 100. The end effector 11 may be configured to move upward and downward in a direction Z perpendicular to an X-Y plane where the generated first profile 100 is located. The movement of the end effector 11 in the direction Z may be further defined based on the dimension of object 30. The dimension of object 30 may be input to the collaborative robot before or after generating the first profile 100. In another embodiment, the movement of the end effector may be defined according to an offset associated with the X-Y plane where the generated first profile 100 is located. The disclosure also provides a computer-readable non-transitory storage medium and a computer program product comprising instructions to cause the collaborative robots to implement the above embodiments.

[0070] It should be appreciated that the above detailed embodiments of the present disclosure are only for exemplifying or explaining principles of the present disclosure and do not limit the present disclosure. Therefore, any modifications, equivalent alternatives and improvements, etc. without departing from the spirit and scope of the present disclosure shall be comprised in the scope of protection of the present disclosure. Meanwhile, appended claims of the present disclosure aim to cover all the variations and modifications falling under the scope and boundary of the claims or equivalents of the scope and boundary.

Claims

1.A method performed by a collaborative robot (10) , comprising:receiving (112) , from an operator (20) , a first input to select one regular shape in a set of regular shapes and a second input corresponding to a set of points,generating (114) a first profile (100) corresponding to the selected one regular shape based on a first number of points in the set of points,determining (116) a score of the generated first profile based on an offset between the first profile and the first number of points,generating (118) , in response to the determination that the score is lower than a threshold, a second profile (200) based on a second number of points in the set of points.2.The method of claim 1, wherein the second input corresponding to the set of points is received by:an end effector (11) of the collaborative robot (10) that is guided by the operator (20) to a position in a physical space corresponding to each point in the set of points.3.The method of claim 1, wherein the set of regular shapes comprises a plurality of one-dimension, 1D, shapes a plurality of two-dimension, 2D, shapes, and / or a plurality of three-dimension, 3D, shapes,wherein the plurality of 1D shapes comprise a straight line and / or a curve,wherein the plurality of 2D shapes comprise a circle and / or a polygon, andwherein the plurality of 3D shapes comprise a cuboid, a cylinder, and / or a cone.4.The method of claim 1, whereindetermining the score of the first profile based on the offset between the first profile and the first number of points comprises:determining the closest distance of the first profile to each of the first number of points as the offset,calculating a sum of the respective offsets for the first number of points, anddetermining the score based on the sum.5.The method of any of claims 1-4, comprising,in response to receiving a third input indicating that the operator (20) is not satisfied with the second profile (200) :generating a third profile (300) based on a third number of points in the sets of points, wherein the third number of points are determined based on removing a fraction of the second number of points by the operator (20) .6.The method of any of claims 1-4, comprisingin response to a determination that the selected one regular shape is a 2D shape, determining first and second templates that form respective edge portions of the 2D shape,generating, in accordance with the determined first template, a first sub-profile (110) based on a first subset of the first number of points,generating, in accordance with the determined second template, a second sub-profile (120) based on a second subset of the first number of points, andgenerating the first profile (100) corresponding to the 2D shape based on the first sub-profile (110) and the second sub-profile (120) .7.The method of claim 6, comprisingin response to a determination that the first sub-profile (110) and the second sub-profile (120) are not applicable to generate the first profile (100) ,generating a new first sub-profile based on a fraction of the first subset,generating a new second sub-profile based on a fraction of the second subset, andgenerating an updated first profile (100) based on the new first sub-profile and the first sub-profile.8.The method of claim 7, wherein the determination that the first sub-profile (110) and the second sub-profile (120) are not applicable to generate the first profile (100) is at least based on one or more of the following:the first sub-profile (110) is not coplanar with the second sub-profile (120) in a 3D space,at least three intersections between the first sub-profile and second sub-profile (120) exist, ora scaled version of the first sub-profile (110) and a scaled version of the second sub-profile (120) cannot form a closed shape together.9.The method of any of claims 1-4, comprisingin response to a determination that the selected one regular shape is a 2D shape:generating a first sub-profile (110) based on a first subset of the first number of points,generating, a second sub-profile (120) based on a second subset of the first number of points, as a diagonal or diameter of the 2D shape,determining a plane where the first profile (100) corresponding to the 2D shape is to be located based on the first sub-profile (110) , andgenerating the first profile (100) , based on the second sub-profile (120) and the determined plane.10.The method of any of claims 1-4, comprisingin response to a determination that the selected one regular shape is a circle,generating a first sub-profile (110) based on a first subset of the first number of points,generating, a second sub-profile (120) based on a second subset of the first number of points, as an edge portion of the 2D shape,determining a plane where the first profile (100) corresponding to the circle is to be located based on the first sub-profile (110) , andgenerating the first profile (100) , based on the second sub-profile (120) and the determined plane.11.The method of any of claims 1-4, comprisingdefining a workspace based on the first profile (100) , andprocessing an object based on the defined workspace,wherein processing the object comprising:polishing a surface of the object.12.The method of claim 11, comprisingreceiving a fourth input indicating a pattern of a processing within the defined workspace, andprocessing the object following the pattern of the processing.13.A collaborative robot (10) configured to perform the method of any of claims 1-12.14.A computer-readable non-transitory storage medium having instructions stored thereon, the instructions, when executed by a processor of a collaborative robot (10) , cause the collaborative robot (10) to perform the method of any of claims 1-12.15.A computer program product comprising instructions, which when executed by a processor of a collaborative robot (10) , causes the collaborative robot (10) to perform the method of any of claims 1-12.