WO2025093098A1 - Method of determining position of industrial robot, and robot system comprising industrial robot - Google Patents
Method of determining position of industrial robot, and robot system comprising industrial robot Download PDFInfo
- Publication number
- WO2025093098A1 WO2025093098A1 PCT/EP2023/080216 EP2023080216W WO2025093098A1 WO 2025093098 A1 WO2025093098 A1 WO 2025093098A1 EP 2023080216 W EP2023080216 W EP 2023080216W WO 2025093098 A1 WO2025093098 A1 WO 2025093098A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- robot
- external element
- external
- industrial robot
- mating
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1615—Programme controls characterised by special kind of manipulator, e.g. planar, scara, gantry, cantilever, space, closed chain, passive/active joints and tendon driven manipulators
- B25J9/162—Mobile manipulator, movable base with manipulator arm mounted on it
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1692—Calibration of manipulator
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1679—Programme controls characterised by the tasks executed
- B25J9/1687—Assembly, peg and hole, palletising, straight line, weaving pattern movement
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/39—Robotics, robotics to robotics hand
- G05B2219/39024—Calibration of manipulator
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/50—Machine tool, machine tool null till machine tool work handling
- G05B2219/50132—Jig, fixture
Definitions
- the present disclosure generally relates to industrial robots.
- a method of determining a relative position between an industrial robot and an external element, and a robot system comprising an industrial robot and an external element are provided.
- a mobile robot may comprise a base, a traction arrangement configured to move the base on a ground surface, and a manipulator connected to the base.
- such mobile robot operates in a semi-structured environment by navigating autonomously to a workstation.
- the mobile robot may for example carry and use one or more two-dimensional (2D) lidars.
- the mobile robot may perform a manipulation task with respect to objects at the workstation using the manipulator.
- a vision sensor may be used to estimate a pose of a tag, such as a QR (quick response) code, fixed to the workstation. Vision sensors are however often either expensive or not accurate enough. Moreover, vision sensors require controlled lighting conditions.
- JP H04256526 A discloses a robot where a position detection jig held by a gripper of the robot is positioned in relation to a fixed part.
- the jig may comprise a conical tip.
- a transverse force is detected by a force sensor.
- the position of the jig is adjusted in the transverse direction based on a magnitude of the detected transverse force.
- One object of the invention is to provide an improved method of determining a relative position between an industrial robot and an external element.
- a further object of the invention is to provide an improved robot system.
- the invention is based on the realization that by providing an external element defining a mating axis, including a guiding structure and being fixed in a known relationship to an external structure, and by controlling an industrial robot to move a robot element substantially along the mating axis towards the external element with a relatively high mechanical impedance along the mating axis and with a relatively low mechanical impedance in a transverse direction, the external element can be guided by the guiding structure to mate with the external element in alignment with the mating axis. Positional information of the robot element when mated with the external element can then be used by the industrial robot to accurately determine a position of the external structure.
- a method of determining a relative position between an industrial robot and an external element comprising providing a robot element fixed to an industrial robot, and the external element, the robot element being configured to mate with the external element along an unequivocal mating axis defined by the external element, and at least one of the robot element and the external element including a guiding structure configured to guide the robot element in a transverse direction towards the mating axis when the robot element is moved in a positioning direction substantially parallel with the mating axis and transverse to the transverse direction; controlling, by a control system, the industrial robot to perform a positioning movement by moving the robot element in the positioning direction towards the external element and controlling a mechanical impedance of the industrial robot to be higher in the positioning direction than in the transverse direction during the positioning movement; determining, by the control system and based on robot positions of the industrial robot during the positioning movement, that the robot element is mated with the external element; and determining, by the control system and based on at least one robot
- the method enables a determination of a relative position between the industrial robot and the external element that is more accurate and more cost-efficient than today's vision-based systems. Moreover, the method is more robust than vision-based systems since in contrast to vision-based systems, the method is not sensitive to various light conditions, such as sunlight, darkness and smoke. Furthermore, the method can be implemented without needing a dedicated sensor to measure a magnitude of a force in the transverse direction.
- the industrial robot is calibrated with respect to the external element.
- the determination of the relative position may for example comprise determining a position and an orientation of the mating axis in a coordinate system of the industrial robot.
- positional information regarding the external element, which defines the mating axis is accurately obtained.
- This positional information may be used to assist in determining a pose of the external element in a coordinate system of the industrial robot.
- a position of the external element along the mating axis may or may not be determined by the control system.
- an orientation of the external element around the mating axis may or may not be determined by the control system.
- the positional information of the external element obtained by the method may be used as a complement to a visionbased position determination.
- the method may be carried out for two different external elements. For example, by using the method to determine a relative position between the industrial robot and each of a first external element defining a first mating axis, and a second external element defining a second mating axis, where the first and second mating axes are parallel, non-coincident and have a known positional relationship, also the orientations of each external element can be determined in a coordinate system of the industrial robot. If the first and second mating axes are non-parallel, also the position of each external element along the respective mating axis can be determined.
- the external element may be fixed to an external structure, with respect to which the industrial robot can perform a handling operation.
- the external element may thus be fixed in space.
- the external structure may for example be a workstation, such as a table.
- the industrial robot may perform pick and place operations of objects from and to the table.
- Knowledge of a relative position between the external element and the external structure e.g., as previously measured, can be used by the control system together with the relative position between the industrial robot and the external element in a determination of a relative position between the industrial robot and the external structure.
- the mechanical impedance of the industrial robot may be higher in the positioning direction than in each transverse direction.
- the positioning direction in which the mechanical impedance is controlled to be relatively high may be parallel with the Z-axis, and the mechanical impedance may be controlled to be relatively low in one or both of the X-axis and the Y-axis.
- the mechanical impedance is higher in the positioning direction than in at least one transverse direction.
- Mechanical impedances in the positioning direction and in the transverse directions may be referred to as translational mechanical impedances, in contrast to rotational mechanical impedances, i.e., mechanical impedances in a rotational direction around the respective directions.
- the method is not limited to any particular rotational mechanical impedance.
- the industrial robot may be controlled to provide either a stiff behavior (high mechanical impedance) or a compliant behavior (low mechanical impedance) around each axis of a three-dimensional Cartesian coordinate system.
- the industrial robot may be either a stationary robot or a mobile robot.
- the industrial robot may comprise a manipulator programmable in three or more axis, such as a serial manipulator programmable in at least six axes.
- the robot element may be fixed to the manipulator, such as to a tool flange thereof.
- the mechanical impedance of the industrial robot may be a mechanical impedance of the manipulator.
- Impedance control may for example be implemented using a mass-spring-damper model of the industrial robot with configurable values for mass, stiffness and damping for translation in each axis and rotation around each axis in a three-dimensional Cartesian coordinate system. For example, by setting the stiffness value relatively high for a first axis and relatively low for a second axis, a translational mechanical impedance will be higher in the first axis than in the second axis.
- the robot element can only mate or dock with the external element along the mating axis, hence the terminology unequivocal mating axis.
- the robot element and the external element may be referred to as a robot mating element and an external mating element, respectively.
- the robot element may comprise an elongated robot element portion defining a robot element axis.
- the robot element axis may for example be a longitudinal axis of the robot element.
- the external element may comprise an elongated external element portion defining the mating axis.
- the mating axis may for example be a longitudinal axis of the external element portion.
- Each of the robot element portion and the external element portion may have a constant cross-sectional profile along the robot element axis and the mating axis, respectively.
- the positioning direction may for example be angled less than 30 degrees, such as less than 15 degrees, to the mating axis prior to the robot element contacting the external element.
- a degree of angular and translational deviations between the positioning direction and the mating axis prior to the robot element contacting the external element may depend on the accuracy of a primary positioning system of the industrial robot.
- the robot element axis may be parallel with the positioning direction.
- the robot element may be a male element and the external element may be a female element, or vice versa. If the robot element and the external element are male and female, respectively, the largest exterior transverse dimension of the robot element with respect to the robot element axis may amount to at least 90 %, such as at least 95 %, of the largest interior transverse dimension of the external element with respect to the mating axis.
- the largest exterior transverse dimension of the external element with respect to the mating axis may amount to at least 90 %, such as at least 95 %, of the largest interior transverse dimension of the robot element with respect to the robot element axis.
- the dimensions may be distances, such as diameters.
- a play therebetween in the transverse direction may be less 5 mm, such as less than 1 mm. In case this play is less than 1 mm, the position of the mating axis in a coordinate system of the industrial robot can be determined with submillimeter accuracy.
- the guiding structure may be configured to exert a force on the robot element with a component in the transverse direction towards the mating axis when the robot element moves in the positioning direction and contacts the guiding structure. In this way, the guiding structure can guide the robot element in the transverse direction towards the mating axis.
- the guiding structure may be implemented in many different ways.
- the guiding structure may be tapered.
- the guiding structure may comprise at least one inclined surface.
- Each surface may be conical or planar.
- the at least one surface may for example define one or more sides of a cone, a pyramid (with a polygonal base) or a frustum, such as a truncated cone or a truncated pyramid (with a polygonal base).
- the external element comprises the guiding structure
- the at least one inclined surface may be inclined between io degrees and 6o degrees to the mating axis.
- the at least one inclined surface may be inclined between 30 degrees and 60 degrees to the robot element axis.
- the external element comprises a first pair of planar surfaces that are spaced from each other and oriented substantially in a V-shape, and a second pair of planar surfaces that are spaced from each other and oriented substantially in a V-shape.
- the second pair of planar surfaces may be positioned between the first pair of surfaces and the external element portion.
- the first and second pairs of planar surfaces may align the robot element in different transverse directions, e.g., in the X-axis and in the Y-axis, respectively.
- a guiding structure comprising such pairs of planar surfaces may alternatively be provided on the robot element portion.
- the control system may comprise at least one data processing device and at least one memory having at least one computer program stored therein, the at least one computer program comprising program code which, when executed by the at least one data processing device, causes the at least one data processing device to control the industrial robot to perform the positioning movement, determine that the robot element is mated with the external element, and determine the relative position.
- the position of the industrial robot in the positioning direction may always change during the positioning movement. If the robot element contacts the guiding structure during the positioning movement, the industrial robot will move in the transverse direction due to a resulting force from the guiding structure and due to the mechanical impedance being set relatively low in the transverse direction.
- the control system may determine that the robot element is mated with the external element. The positions of the industrial robot during the positioning movement when the robot element is guided by the external element along the mating axis correspond to positions of the mating axis.
- the control system may determine a position and an orientation of the mating axis in a coordinate system of the industrial robot based on at least two such positions to determine the relative position between the industrial robot and the external element.
- the mating axis maybe vertical.
- the mobile robot may in many implementations know the vertical direction with relatively high accuracy before carrying out the method.
- various requirements on equipment used for the method can be relaxed.
- rotational mechanical impedances around each transverse direction e.g., X- axis and Y-axis
- a vertical position of the external element along the mating axis may be predetermined, e.g., measured before carrying out the method.
- the control system can determine the position of the external element in space using the position of the vertical mating axis in space.
- the robot element and the external element may be configured such that the robot element can mate with the external element in an unequivocal mating position.
- the method may further comprise determining, by the control system and based on at least one robot position of the industrial robot when the robot element is mated with the external element in the mating position, the relative position between the industrial robot and the external element. By determining the relative position based on at least one robot position of the industrial robot when the robot element is mated with the external element in the mating position, a position of the external element along the mating axis can be determined by the control system.
- the external element may comprise a stop configured to be contacted by the robot element in the mating position. If the external element is female, the stop may be a bottom of the external element. If the external element is male, the stop may be a top of the external element.
- the robot element and the external element may be configured to define at least one mating orientation around the mating axis when mated.
- the method may further comprise determining, by the control system and based on at least one robot position of the industrial robot when the robot element is mated with the external element in the mating orientation, a relative orientation between the industrial robot and the external element.
- the rotational mechanical impedance of the industrial robot around the positioning direction such as a Z-axis, may be set relatively low, e.g., by setting the stiffness value relatively low for rotation around the Z-axis.
- the at least one robot position may be a robot pose.
- a pose of the external structure in known relationship with the external element can be determined by mating the robot element with only one single external element.
- the relationship between the pose of the external element and the pose of the external structure may for example be determined by using a vector defining a distance and a direction between the external element and the external structure.
- the robot element portion and the external element portion may for example have corresponding cross-sectional shapes transverse to the robot element axis and the mating axis, respectively.
- the guiding structure may have a corresponding cross-sectional shape. In this way, the guiding structure may not only guide the robot element in the transverse direction, but also rotationally guide the robot element around the positioning direction.
- Such shapes may for example comprise polygonal shapes, such as triangular and rectangular shapes.
- the robot element and the external element defines three mating orientations around the mating axes when mated.
- the robot element may be oriented in relation to the external element with sufficient accuracy prior to carrying out the method such that the robot element can only mate with the external element in one of these mating orientations.
- accuracy prior to carrying out the method can for example be obtained by using a primary positioning system as described herein.
- the industrial robot may comprise a primary positioning system.
- the method may further comprise positioning the industrial robot relative to the external element using the primary positioning system prior to controlling the industrial robot to perform the positioning movement.
- the primary positioning system may for example comprise one or more lidars or one or more radars.
- the industrial robot may be a mobile robot comprising a base, a traction arrangement configured to move the base on a ground surface, and a manipulator connected to the base.
- the robot element may be fixed to the manipulator.
- the control system may for example, but not necessarily, be entirely provided in the base.
- the manipulator may be of any type as described herein. The method may however also be carried out using a stationary robot comprising a manipulator connected to a base fixed in space.
- a robot system comprising an industrial robot; an external element; a robot element fixed to the industrial robot, the robot element being configured to mate with the external element along an unequivocal mating axis defined by the external element, and at least one of the robot element and the external element including a guiding structure configured to guide the robot element in a transverse direction towards the mating axis when the robot element is moved in a positioning direction substantially parallel with the mating axis and transverse to the transverse direction; and a control system comprising at least one data processing device and at least one memory having at least one computer program stored therein, the at least one computer program comprising program code which, when executed by the at least one data processing device, causes the at least one data processing device to control the industrial robot to perform a positioning movement by moving the robot element in the positioning direction towards the external element and controlling a mechanical impedance of the industrial robot to be higher in the positioning direction than in the transverse direction during the positioning movement; determine, based on robot positions of the industrial robot during the
- the robot system according to the second aspect and each element thereof may be of any type as described in connection with the first aspect, and vice versa.
- the mating axis may be vertical.
- the robot element and the external element may be configured such that the robot element can mate with the external element in an unequivocal mating position.
- the at least one computer program may further comprise program code which, when executed by the at least one data processing device, causes the at least one data processing device to determine, based on at least one robot position of the industrial robot when the robot element is mated with the external element in the mating position, the relative position between the industrial robot and the external element.
- the external element may comprise a stop configured to be contacted by the robot element in the mating position.
- the robot element and the external element may be configured to define at least one mating orientation around the mating axis when mated.
- the at least one computer program may further comprise program code which, when executed by the at least one data processing device, causes the at least one data processing device to determine, based on at least one robot position of the industrial robot when the robot element is mated with the external element in the mating orientation, a relative orientation between the industrial robot and the external element.
- the industrial robot may comprise a primary positioning system.
- the at least one computer program may further comprise program code which, when executed by the at least one data processing device, causes the at least one data processing device to control the industrial robot to be positioned relative to the external element using the primary positioning system prior to controlling the industrial robot to perform the positioning movement.
- the industrial robot may be a mobile robot comprising a base, a traction arrangement configured to move the base on a ground surface, and a manipulator connected to the base.
- the robot element may be fixed to the manipulator.
- Fig. 1 schematically represents a side view of a robot system comprising an industrial robot, a robot element and an external element
- Fig. 2a schematically represents a side view of the robot element and the external element
- Fig. 2b schematically represents a top view of the robot element and the external element in Fig. 2a;
- Fig. 3a schematically represents a side view of the robot element and the external element during a positioning movement of the robot element;
- Fig. 3b schematically represents a top view of the robot element and the external element in Fig. 3a;
- Fig. 4a schematically represents a side view of the robot element and the external element during the positioning movement of the robot element at a later time than in Fig. 3a;
- Fig. 4b schematically represents a top view of the robot element and the external element in Fig. 4a;
- Fig. 5a schematically represents a side view of the robot element and the external element during the positioning movement of the robot element at a later time than in Fig. 4a;
- Fig. 5b schematically represents a top view of the robot element and the external element in Fig. 5a;
- Fig. 6a schematically represents a side view of the robot element and the external element during the positioning movement of the robot element at a later time than in Fig. 5a;
- Fig. 6b schematically represents a top view of the robot element and the external element in Fig. 6a;
- Fig. 7a schematically represents a side view of a robot element and an external element according to a further example
- Fig. 7b schematically represents a top view of the robot element and the external element in Fig. 7a;
- Fig. 8 schematically represents a side view of a robot element and an external element according to a further example
- Fig. 9a schematically represents a side view of a robot element and an external element according to a further example
- Fig. 9b schematically represents a top view of the robot element and the external element in Fig. 9a;
- Fig. 10 schematically represents a side view of a robot system according to a further example comprising an industrial robot, a robot element and an external element;
- Fig. 11 is a flowchart outlining general steps of a method.
- Fig. 1 schematically represents a side view of a robot system 10a.
- the robot system 10a comprises a mobile robot 12a, a robot element 14a and an external element 16a.
- the mobile robot 12a is positioned on a ground surface 18, such as a floor.
- Fig. 1 also shows an external structure exemplified as a workstation 20.
- the external element 16a is fixed to the workstation 20 in a known relationship.
- the external element 16a is exemplified as a funnel.
- the external element 16a defines a mating axis 22.
- the mobile robot 12a is one example of an industrial robot.
- the mobile robot 12a comprises a base 24, a traction arrangement 26 and a manipulator 28.
- the traction arrangement 26 of this example comprises a plurality of steerable traction wheels 30.
- the manipulator 28 is connected to the base 24.
- the manipulator 28 of this example comprises a first link 32a rotatable relative to the base 24 around a first axis 34a, a second link 32b rotatable relative to the first link 32a around a second axis 34b, a third link 32c rotatable relative to the second link 32b around a third axis 34c, a fourth link 32d rotatable relative to the third link 32c around a fourth axis 34d, a fifth link 32c rotatable relative to the fourth link 32d around a fifth axis 34e, and a sixth link 32f rotatable relative to the fifth link 32e around a sixth axis 34f.
- the manipulator 28 of this example further comprises a tool flange 36 fixed to the most distal link, here the sixth link 32E In Fig. 1, the robot element 14a is fixed to the tool flange 36.
- a tool flange 36 fixed to the most distal link, here the sixth link 32E In Fig. 1, the robot element 14a is fixed to the tool flange 36.
- One, several or all of the links 32a-32f, and one, several or all of the axes 34a-34f, may also be referred to with reference numerals "32" and "34", respectively.
- the mobile robot 12a further comprises a control system 38, here provided in the base 24.
- the control system 38 of this example comprises a data processing device 40 and a memory 42.
- the memory 42 has a computer program stored therein.
- the computer program comprises program code which, when executed by the data processing device 40, causes the data processing device 40 to perform, or command performance of, various steps as described herein.
- the manipulator 28 For each axis 34, the manipulator 28 comprises an actuator 44, such as an electric motor, and a sensor 46. Each actuator 44 is configured to drive an associated distal link 32 around the associated axis 34. The actuators 44 are controlled by the control system 38. Each sensor 46 is configured to measure a position of the associated distal link 32 around the associated axis 34. The sensors 46 are in signal communication with the control system 38.
- Fig. 1 further shows three three-dimensional Cartesian coordinate systems: a tool coordinate system 48-1 comprising axes Xi, Yi and Zi, a base coordinate system 48-2 comprising axes X2, Y2 and Z2, and a global coordinate system 48-3 comprising axes X3, Y3 and Z3.
- the tool coordinate system 48-1, the base coordinate system 48-2 and the global coordinate system 48-3 are here fixed to the tool flange 36, the base 24 and in space, respectively.
- the mating axis 22 is oriented vertically, i.e., parallel with the Z3-axis.
- a position of the base coordinate system 48-2 in the global coordinate system 48-3 constitutes one example of a position of the mobile robot 12a.
- the control system 38 is configured to calculate the position of the tool coordinate system 48-1 in the base coordinate system 48-2 based on signals from the sensors 46 using forward kinematics.
- the mobile robot 12a of this example further comprises a primary positioning system 50.
- the primary positioning system 50 is here exemplified as comprising a lidar but may comprise alternative types of environment sensors.
- the primary positioning system 50 is in signal communication with the control system 38.
- the control system 38 is configured to control the traction arrangement 26 based on signals from the primary positioning system 50 such that the mobile robot 12a approaches the workstation 20 by autonomous navigation. Such autonomous navigation is previously known.
- the control system 38 controls the manipulator 28 to mate the robot element 14a with the external element 16a.
- the control system 38 determines a relative position between the mobile robot 12a and the external element 16a.
- the control system 38 also determines a pose of the workstation 20 based on the known relationship between the external element 16a and the workstation 20.
- the robot element 14a and the external element 16a form one example of a secondary positioning system having a higher accuracy than the primary positioning system 50.
- An object 52 on the workstation 20 may be handled by the manipulator 28, either by using the robot element 14a or by using another end effector.
- the robot element 14a may thus be a tool, such as a gripper.
- another end effector such as a gripper, may be attached to the tool flange 36 next to the robot element 14a.
- the manipulator 28 may be configured to perform a tool change to have an end effector other than the robot element 14a attached to the tool flange 36 when performing a handling operation on one or more of the objects 52.
- the control system 38 is configured to control the manipulator 28 with impedance control.
- impedance control is commercially available today.
- One example of such impedance control is SoftMove sold by ABB.
- Further examples of such impedance control are described in European patents EP 0333345 Bi and EP 3433060 Bi, and in US patent application US 2020282558 Al, the entire contents of which are incorporated herein by reference.
- the manipulator 28 can be made compliant, such as "free floating" or with a spring function, in one or more selected directions. When the manipulator 28 is made compliant in one direction, its mechanical impedance in that direction is low.
- translational and rotational mechanical impedances can be defined for each axis, for example in any of the coordinate systems 48-1, 48-2 and 48- 3.
- the control system 38 may for example use a mass-spring-damper model of the manipulator 28 with configurable values for mass, stiffness and damping for translation in each axis and for rotation around each axis.
- Fig. 2a schematically represents a side view of the robot element 14a and the external element 16a
- Fig. 2b schematically represents a top view of the robot element 14a and the external element 16a in Fig. 2a
- Figs. 2a and 2b show a robot pose 54 of the manipulator 28.
- the robot pose 54 defines a position and an orientation of the tool coordinate system 48-1 in the base coordinate system 48-2.
- the robot element 14a of this example comprises an elongated male robot element portion 56a and a rounded tip 58.
- the robot element portion 56a defines a robot element axis 60.
- the robot element portion 56a has a constant rectangular cross-sectional profile along the robot element axis 60.
- the tool coordinate system 48-1 is illustrated as being offset from the robot element portion 56a, the robot element axis 60 and the Zi- axis may be coinciding.
- the pose of the robot element 14a in the tool coordinate system 48-1 is known. Therefore, the robot pose 54 of the manipulator 28 always corresponds to the pose of the robot element 14a in the base coordinate system 48-2.
- the external element 16a of this example comprises a guiding structure 62a and an elongated female external element portion 64a.
- the external element portion 64a has a stop 66, here constituted by a bottom of the external element portion 64a.
- the external element portion 64a defines the mating axis 22.
- the external element portion 64a has a constant rectangular cross-sectional profile along the mating axis 22 corresponding to, but slightly larger than, the cross-sectional profile of the robot element portion 56a.
- the guiding structure 62a of this example is tapered and forms a truncated pyramid. Also the guiding structure 62a has a rectangular cross-sectional profile which, at the external element portion 64a, corresponds to the profile thereof, and expands along the mating axis 22 away from the external element portion 64a.
- the guiding structure 62a of this specific example comprises four planar surfaces angled 30 degrees to the mating axis 22.
- the control system 38 has controlled the manipulator 28 to position the robot element 14a aligned above the external element 16a based on position information from the primary positioning system 50. As illustrated, this positioning may not always be very accurate.
- the robot element axis 60 is slightly angled to, and slightly offset from, the mating axis 22, and the robot element portion 56a and the external element portion 64a are not rotationally aligned.
- the control system 38 controls the manipulator 28 to perform a positioning movement, e.g., starting from the robot pose 54 in Figs. 2a and 2b. During the entire positioning movement of this example, the control system 38 controls the translational mechanical impedance in the Zi- axis to be high and the translational mechanical impedances in the Xi-axis and in the Yi-axis to be low.
- a first stiffness value may be set for the Zi-axis and one or more second stiffness values, lower than the first stiffness value, such as less than 50 % thereof, such as less than 25 % thereof, may be set for the Xi-axis and the Yi-axis.
- the rotational mechanical impedance may be set low for each axis of the tool coordinate system 48-1.
- the robot element 14a thereby exhibits a compliant behavior in a plane transverse to the Zi-axis and rotationally around each axis.
- the compliance of the robot element 14a may for example be set such that a human user can move the robot element 14a by hand.
- the robot element 14a may be moved at least 30 mm in the Xi-axis or in the Yi-axis, and less than 5 mm in the Zi-axis, by applying a force of at least 10 N, and the robot element 14a may be rotated at least 15 degrees around an axis by applying a torque of at least 3 Nm around that axis.
- Fig. 3a schematically represents a side view of the robot element 14a and the external element 16a during a first part 68a of the positioning movement of the robot element 14a
- Fig. 3b schematically represents a top view of the robot element 14a and the external element 16a in Fig. 3a.
- the guiding structure 62a causes the robot element 14a to rotationally align with the external element 16a by rotation around the Zi-axis.
- Fig. 4a schematically represents a side view of the robot element 14a and the external element 16a during a further part 68b of the positioning movement of the robot element 14a
- Fig. 4b schematically represents a top view of the robot element 14a and the external element 16a in Fig. 4a.
- the guiding structure 62a exerts a force on the robot element 14a with force components in directions parallel to the Xi-axis and the Yi-axis, respectively, that guides the robot element 14a to also move along the Xi-axis and the Yi-axis towards the mating axis 22.
- Fig. 5a schematically represents a side view of the robot element 14a and the external element 16a during a further part 68c of the positioning movement of the robot element 14a
- Fig. 5b schematically represents a top view of the robot element 14a and the external element 16a in Fig. 5a.
- the robot element 14a moves further in the Zi- direction. Due to the shapes of the robot element portion 56a and the external element portion 64a, and due to the compliance of the robot element 14a around the Yi-axis, the robot element 14a also rotates around the Yi-axis until the robot element axis 60 becomes coincident with the mating axis 22.
- the robot element 14a and the external element 16a are now mated along the mating axis 22. Due to the corresponding shapes of the robot element portion 56a and the external element portion 64a, a mating orientation 70 around the mating axis 22 is defined. If the cross-sectional shapes of the robot element portion 56a and the external element portion 64a are circular, the control system 38 can determine the position and orientation of the mating axis 22, but not the mating orientation 70. Thus, corresponding polygonal cross- sectional shapes of the robot element portion 56a, the guiding structure 62a and the external element portion 64a, and a rotational alignment between the robot element 14a and the external element 16a around the Zi-axis caused by the guiding structure 62a, are optional. A play between the robot element 14a and the external element portion 64a may be less than 5 mm, such as less than 1 mm.
- Fig. 6a schematically represents a side view of the robot element 14a and the external element 16a during a further part 68d of the positioning movement of the robot element 14a
- Fig. 6b schematically represents a top view of the robot element 14a and the external element 16a in Fig. 6a.
- the robot element 14a moves further in the Zi- direction until the robot element 14a, here the tip 58 thereof, contacts the stop 66.
- the robot element 14a will only move in the Zi-direction and not in any of the transverse directions Xi and Yi.
- the control system 38 determines that the robot element 14a is mated with the external element portion 64a.
- the robot poses 54 during the part 68d of the positioning movement also correspond to a position and an orientation of the mating axis 22 in the base coordinate system 48-2.
- the translational mechanical impedances in each of the Xi-axis, the Yi-axis and the Zi-axis, and the rotational mechanical impedances around each of the Xi-axis, the Yi-axis and the Zi-axis may be set high during the part 68d of the positioning movement.
- the robot element 14a When the robot element 14a contacts the stop 66, the robot element 14a mates with the external element 16a in an unequivocal mating position 72 where the robot pose 54 corresponds to the pose of the external element 16a in the base coordinate system 48-2. An accurate relative position between the mobile robot 12a and the external element 16a is thereby determined in a robust manner.
- the control system 38 determines a pose of the workstation 20 based on the robot poses 54 and the known relationship between the external element 16a and the workstation 20.
- the position of the mobile robot 12a in relation to the workstation 20 is now known with higher accuracy than when only relying on the primary positioning system 50.
- the parts 68a-68d constitute one example of a positioning movement 68.
- Fig. 7a schematically represents a side view of a robot element 14b and an external element 16b according to a further example
- Fig. 7b schematically represents a top view of the robot element 14b and the external element 16b.
- the robot element 14b and the external element 16b may be used in the robot system 10a instead of the robot element 14a and the external element 16a, respectively.
- the robot element 14b differs from the robot element 14a in that the robot element 14b comprises an elongated male robot element portion 56b with a triangular cross-sectional profile.
- the external element 16b differs from the external element 16a in that the external element 16b comprises a guiding structure 62b and an elongated female external element portion 64b with triangular cross-sectional profiles.
- Fig. 8 schematically represents a side view of the robot element 14a and an external element 16c according to a further example.
- the external element 16c may be used in the robot system 10a instead of the external element 16a.
- the external element 16c differs from the external element 16a in that the external element 16c comprises an elongated female external element portion 64c that is open therethrough along the mating axis 22. Thus, the external element portion 64c does not comprise the stop 66.
- the robot element 14a can pass through the external element 16c.
- the robot element 14a and the external element 16c thus define the mating orientation 70 when mated, but not the mating position 72.
- the mating orientation 70 is sufficient to unambiguously determine the pose of the external element 16c in the base coordinate system 48-2.
- Fig. 9a schematically represents a side view of a robot element 14c and an external element i6d according to a further example
- Fig. 9b schematically represents a top view of the robot element 14c and the external element i6d.
- the robot element 14c and the external element i6d may be used in the robot system 10a instead of the robot element 14a and the external element 16a, respectively.
- the robot element 14c comprises an elongated male robot element portion 56c and a guiding structure 62c.
- the external element i6d comprises an elongated female external element portion 64d.
- Each of the robot element 14c and the external element portion 64d has a square cross-sectional profile.
- the guiding structure 62c is here exemplified as a pyramid tapering away from the robot element portion 56c towards an apex 74.
- the method comprises providing Sio a robot element 14a- 14c fixed to an industrial robot 12a; 12b, and an external element i6a-i6d, the robot element 140-140 being configured to mate with the external element i6a-i6d along an unequivocal mating axis 22 defined by the external element i6a-i6d, and at least one of the robot element 140-140 and the external element i6a-i6d including a guiding structure 620-620 configured to guide the robot element 140-140 in a transverse direction Xi, Yi towards the mating axis 22 when the robot element 140-140 is moved in a positioning direction Zi substantially parallel with the mating axis 22 and transverse to the transverse direction Xi, Yi.
- the method may further comprise positioning S12 the industrial robot 12a; 12b relative to the external element i6a-i6d using the primary positioning system 50.
- the method further comprises controlling S14, by a control system 38, the industrial robot 12a; 12b to perform a positioning movement 68 by moving the robot element 140-140 in the positioning direction Zi towards the external element i6a-i6d and controlling a mechanical impedance of the industrial robot 12a; 12b to be higher in the positioning direction Zi than in the transverse direction Xi, Yi during the positioning movement 68.
- the controlling S14 may be performed after the positioning S12.
- the method further comprises determining S16, by the control system 38 and based on robot positions 54 of the industrial robot 12a; 12b during the positioning movement 68, that the robot element 140-140 is mated with the external element i6a-i6d.
- the determination may comprise determining S22, by the control system 38 and based on at least one robot position 54 of the industrial robot 12a; 12b when the robot element 140-140 is mated with the external element i6a-i6d in the mating orientation 70, a relative orientation between the industrial robot 12a; 12b and the external element i6a-i6d.
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Orthopedic Medicine & Surgery (AREA)
- Manipulator (AREA)
Abstract
A method of determining a position of an industrial robot (12a; 12b), the method comprising providing an external element (16a-16d) and a robot element (14a-14c) configured to mate with the external element along an unequivocal mating axis (22); controlling the industrial robot to perform a positioning movement (68) by moving the robot element in a positioning direction (Z1) towards the external element while controlling a mechanical impedance of the industrial robot to be higher in the positioning direction than in a transverse direction; determining, based on robot positions (54) of the industrial robot during the positioning movement, that the robot element is mated with the external element; and determining, based on at least one robot position of the industrial robot when the robot element is mated with the external element, a relative position between the industrial robot and the external element.
Description
METHOD OF DETERMINING POSITION OF INDUSTRIAL ROBOT, AND ROBOT SYSTEM COMPRISING INDUSTRIAL ROBOT
Technical Field
The present disclosure generally relates to industrial robots. In particular, a method of determining a relative position between an industrial robot and an external element, and a robot system comprising an industrial robot and an external element, are provided.
Background
A mobile robot may comprise a base, a traction arrangement configured to move the base on a ground surface, and a manipulator connected to the base. In some implementations, such mobile robot operates in a semi-structured environment by navigating autonomously to a workstation. In order to navigate autonomously, the mobile robot may for example carry and use one or more two-dimensional (2D) lidars. Once arrived at the workstation, the mobile robot may perform a manipulation task with respect to objects at the workstation using the manipulator.
Many types of manipulation tasks require a high accuracy. For example, the mobile robot may need to know a position of an object at the workstation in the order of millimeters. Autonomous navigation based on 2D lidars typically provides an accuracy of a few centimeters. Thus, in many cases, a relative position between the mobile robot and the workstation as determined based on 2D lidars is not accurate enough for performing manipulation tasks. In order to determine the relative position more accurately, a vision sensor may be used to estimate a pose of a tag, such as a QR (quick response) code, fixed to the workstation. Vision sensors are however often either expensive or not accurate enough. Moreover, vision sensors require controlled lighting conditions.
JP H04256526 A discloses a robot where a position detection jig held by a gripper of the robot is positioned in relation to a fixed part. The jig may comprise a conical tip. When the jig is inserted into a hole of the part along a central axis, a transverse force is detected by a force sensor. The position of the jig is adjusted in the transverse direction based on a magnitude of the detected transverse force. Although this document describes a positioning solution not requiring vision sensors, the use of a dedicated force sensor to detect the transverse force adds costs and complexity.
Summary
One object of the invention is to provide an improved method of determining a relative position between an industrial robot and an external element.
A further object of the invention is to provide an improved robot system.
These objects are achieved by the method according to appended claim 1 and by the method according to appended claim 8.
The invention is based on the realization that by providing an external element defining a mating axis, including a guiding structure and being fixed in a known relationship to an external structure, and by controlling an industrial robot to move a robot element substantially along the mating axis towards the external element with a relatively high mechanical impedance along the mating axis and with a relatively low mechanical impedance in a transverse direction, the external element can be guided by the guiding structure to mate with the external element in alignment with the mating axis. Positional information of the robot element when mated with the external element can then be used by the industrial robot to accurately determine a position of the external structure.
According to a first aspect, there is provided a method of determining a relative position between an industrial robot and an external element, the method comprising providing a robot element fixed to an industrial robot, and the external element, the robot element being configured to mate with
the external element along an unequivocal mating axis defined by the external element, and at least one of the robot element and the external element including a guiding structure configured to guide the robot element in a transverse direction towards the mating axis when the robot element is moved in a positioning direction substantially parallel with the mating axis and transverse to the transverse direction; controlling, by a control system, the industrial robot to perform a positioning movement by moving the robot element in the positioning direction towards the external element and controlling a mechanical impedance of the industrial robot to be higher in the positioning direction than in the transverse direction during the positioning movement; determining, by the control system and based on robot positions of the industrial robot during the positioning movement, that the robot element is mated with the external element; and determining, by the control system and based on at least one robot position of the industrial robot when the robot element is mated with the external element, a relative position between the industrial robot and the external element.
The method enables a determination of a relative position between the industrial robot and the external element that is more accurate and more cost-efficient than today's vision-based systems. Moreover, the method is more robust than vision-based systems since in contrast to vision-based systems, the method is not sensitive to various light conditions, such as sunlight, darkness and smoke. Furthermore, the method can be implemented without needing a dedicated sensor to measure a magnitude of a force in the transverse direction.
By determining the relative position, the industrial robot is calibrated with respect to the external element. The determination of the relative position may for example comprise determining a position and an orientation of the mating axis in a coordinate system of the industrial robot. Thereby, positional information regarding the external element, which defines the mating axis, is accurately obtained. This positional information may be used to assist in determining a pose of the external element in a coordinate system of the industrial robot. In the method, a position of the external element along the
mating axis may or may not be determined by the control system. Furthermore, in the method, an orientation of the external element around the mating axis may or may not be determined by the control system. Alternatively, or in addition, the positional information of the external element obtained by the method may be used as a complement to a visionbased position determination. Alternatively, or in addition, the method may be carried out for two different external elements. For example, by using the method to determine a relative position between the industrial robot and each of a first external element defining a first mating axis, and a second external element defining a second mating axis, where the first and second mating axes are parallel, non-coincident and have a known positional relationship, also the orientations of each external element can be determined in a coordinate system of the industrial robot. If the first and second mating axes are non-parallel, also the position of each external element along the respective mating axis can be determined.
The external element may be fixed to an external structure, with respect to which the industrial robot can perform a handling operation. The external element may thus be fixed in space. The external structure may for example be a workstation, such as a table. The industrial robot may perform pick and place operations of objects from and to the table. Knowledge of a relative position between the external element and the external structure, e.g., as previously measured, can be used by the control system together with the relative position between the industrial robot and the external element in a determination of a relative position between the industrial robot and the external structure.
The mechanical impedance of the industrial robot may be higher in the positioning direction than in each transverse direction. For example, with reference to a three-dimensional Cartesian coordinate system comprising an X-axis, a Y-axis and a Z-axis, the positioning direction in which the mechanical impedance is controlled to be relatively high may be parallel with the Z-axis, and the mechanical impedance may be controlled to be relatively low in one or both of the X-axis and the Y-axis.
In the method, the mechanical impedance is higher in the positioning direction than in at least one transverse direction. Mechanical impedances in the positioning direction and in the transverse directions may be referred to as translational mechanical impedances, in contrast to rotational mechanical impedances, i.e., mechanical impedances in a rotational direction around the respective directions. The method is not limited to any particular rotational mechanical impedance. The industrial robot may be controlled to provide either a stiff behavior (high mechanical impedance) or a compliant behavior (low mechanical impedance) around each axis of a three-dimensional Cartesian coordinate system.
The industrial robot may be either a stationary robot or a mobile robot. In any case, the industrial robot may comprise a manipulator programmable in three or more axis, such as a serial manipulator programmable in at least six axes. The robot element may be fixed to the manipulator, such as to a tool flange thereof. The mechanical impedance of the industrial robot may be a mechanical impedance of the manipulator.
An impedance control of an industrial robot to provide different mechanical impedances in different translational directions and in different rotational directions is previously known as such. Impedance control may for example be implemented using a mass-spring-damper model of the industrial robot with configurable values for mass, stiffness and damping for translation in each axis and rotation around each axis in a three-dimensional Cartesian coordinate system. For example, by setting the stiffness value relatively high for a first axis and relatively low for a second axis, a translational mechanical impedance will be higher in the first axis than in the second axis.
The robot element can only mate or dock with the external element along the mating axis, hence the terminology unequivocal mating axis. Throughout the present disclosure, the robot element and the external element may be referred to as a robot mating element and an external mating element, respectively. The robot element may comprise an elongated robot element portion defining a robot element axis. The robot element axis may for
example be a longitudinal axis of the robot element. The external element may comprise an elongated external element portion defining the mating axis. The mating axis may for example be a longitudinal axis of the external element portion. Each of the robot element portion and the external element portion may have a constant cross-sectional profile along the robot element axis and the mating axis, respectively.
The positioning direction may for example be angled less than 30 degrees, such as less than 15 degrees, to the mating axis prior to the robot element contacting the external element. A degree of angular and translational deviations between the positioning direction and the mating axis prior to the robot element contacting the external element may depend on the accuracy of a primary positioning system of the industrial robot.
During the positioning movement, the robot element axis may be parallel with the positioning direction. The robot element may be a male element and the external element may be a female element, or vice versa. If the robot element and the external element are male and female, respectively, the largest exterior transverse dimension of the robot element with respect to the robot element axis may amount to at least 90 %, such as at least 95 %, of the largest interior transverse dimension of the external element with respect to the mating axis. Conversely, if the robot element and the external element are female and male, respectively, the largest exterior transverse dimension of the external element with respect to the mating axis may amount to at least 90 %, such as at least 95 %, of the largest interior transverse dimension of the robot element with respect to the robot element axis. In this regard, the dimensions may be distances, such as diameters. In any case, when the robot element is mated with the external element, a play therebetween in the transverse direction may be less 5 mm, such as less than 1 mm. In case this play is less than 1 mm, the position of the mating axis in a coordinate system of the industrial robot can be determined with submillimeter accuracy.
The guiding structure may be configured to exert a force on the robot element with a component in the transverse direction towards the mating axis when
the robot element moves in the positioning direction and contacts the guiding structure. In this way, the guiding structure can guide the robot element in the transverse direction towards the mating axis. The guiding structure may be implemented in many different ways.
The guiding structure may be tapered. The guiding structure may comprise at least one inclined surface. Each surface may be conical or planar. The at least one surface may for example define one or more sides of a cone, a pyramid (with a polygonal base) or a frustum, such as a truncated cone or a truncated pyramid (with a polygonal base). In case the external element comprises the guiding structure, the at least one inclined surface may be inclined between io degrees and 6o degrees to the mating axis. In case the robot element comprises the guiding structure, the at least one inclined surface may be inclined between 30 degrees and 60 degrees to the robot element axis. According to some examples, the external element comprises a first pair of planar surfaces that are spaced from each other and oriented substantially in a V-shape, and a second pair of planar surfaces that are spaced from each other and oriented substantially in a V-shape. The second pair of planar surfaces may be positioned between the first pair of surfaces and the external element portion. The first and second pairs of planar surfaces may align the robot element in different transverse directions, e.g., in the X-axis and in the Y-axis, respectively. A guiding structure comprising such pairs of planar surfaces may alternatively be provided on the robot element portion.
The control system may comprise at least one data processing device and at least one memory having at least one computer program stored therein, the at least one computer program comprising program code which, when executed by the at least one data processing device, causes the at least one data processing device to control the industrial robot to perform the positioning movement, determine that the robot element is mated with the external element, and determine the relative position.
Since the mechanical impedance of the industrial robot is set relatively high in the positioning direction, the position of the industrial robot in the
positioning direction may always change during the positioning movement. If the robot element contacts the guiding structure during the positioning movement, the industrial robot will move in the transverse direction due to a resulting force from the guiding structure and due to the mechanical impedance being set relatively low in the transverse direction. When the industrial robot during the positioning movement only moves in the positioning direction, but not in any transverse direction, the control system may determine that the robot element is mated with the external element. The positions of the industrial robot during the positioning movement when the robot element is guided by the external element along the mating axis correspond to positions of the mating axis. The control system may determine a position and an orientation of the mating axis in a coordinate system of the industrial robot based on at least two such positions to determine the relative position between the industrial robot and the external element.
The mating axis maybe vertical. For example, in case the industrial robot is a mobile robot, the mobile robot may in many implementations know the vertical direction with relatively high accuracy before carrying out the method. By orienting the mating axis vertically, various requirements on equipment used for the method can be relaxed. For example, by orienting the robot element vertically prior to performing the positioning movement, rotational mechanical impedances around each transverse direction (e.g., X- axis and Y-axis), can be set relatively high. As a consequence, a smaller guiding structure can be used. Furthermore, a vertical position of the external element along the mating axis may be predetermined, e.g., measured before carrying out the method. By knowing the vertical position of the external element, the control system can determine the position of the external element in space using the position of the vertical mating axis in space.
The robot element and the external element may be configured such that the robot element can mate with the external element in an unequivocal mating position. In these cases, the method may further comprise determining, by the control system and based on at least one robot position of the industrial
robot when the robot element is mated with the external element in the mating position, the relative position between the industrial robot and the external element. By determining the relative position based on at least one robot position of the industrial robot when the robot element is mated with the external element in the mating position, a position of the external element along the mating axis can be determined by the control system.
The external element may comprise a stop configured to be contacted by the robot element in the mating position. If the external element is female, the stop may be a bottom of the external element. If the external element is male, the stop may be a top of the external element.
The robot element and the external element may be configured to define at least one mating orientation around the mating axis when mated. In these cases, the method may further comprise determining, by the control system and based on at least one robot position of the industrial robot when the robot element is mated with the external element in the mating orientation, a relative orientation between the industrial robot and the external element. In this variant, the rotational mechanical impedance of the industrial robot around the positioning direction, such as a Z-axis, may be set relatively low, e.g., by setting the stiffness value relatively low for rotation around the Z-axis. Moreover, in this variant, the at least one robot position may be a robot pose.
By knowing both a position and an orientation of the external element in three dimensions, i.e., a pose thereof, also a pose of the external structure in known relationship with the external element can be determined by mating the robot element with only one single external element. The relationship between the pose of the external element and the pose of the external structure may for example be determined by using a vector defining a distance and a direction between the external element and the external structure.
The robot element portion and the external element portion may for example have corresponding cross-sectional shapes transverse to the robot element
axis and the mating axis, respectively. Also the guiding structure may have a corresponding cross-sectional shape. In this way, the guiding structure may not only guide the robot element in the transverse direction, but also rotationally guide the robot element around the positioning direction. Such shapes may for example comprise polygonal shapes, such as triangular and rectangular shapes. In case each of the robot element portion and the external element portion has an equilateral triangular shape, the robot element and the external element defines three mating orientations around the mating axes when mated. Although such robot element and external element can theoretically mate in three different orientations, the robot element may be oriented in relation to the external element with sufficient accuracy prior to carrying out the method such that the robot element can only mate with the external element in one of these mating orientations. Such accuracy prior to carrying out the method can for example be obtained by using a primary positioning system as described herein.
The industrial robot may comprise a primary positioning system. In these cases, the method may further comprise positioning the industrial robot relative to the external element using the primary positioning system prior to controlling the industrial robot to perform the positioning movement. The primary positioning system may for example comprise one or more lidars or one or more radars.
The industrial robot may be a mobile robot comprising a base, a traction arrangement configured to move the base on a ground surface, and a manipulator connected to the base. In these cases, the robot element may be fixed to the manipulator. The control system may for example, but not necessarily, be entirely provided in the base. The manipulator may be of any type as described herein. The method may however also be carried out using a stationary robot comprising a manipulator connected to a base fixed in space.
According to a second aspect, there is provided a robot system comprising an industrial robot; an external element; a robot element fixed to the industrial
robot, the robot element being configured to mate with the external element along an unequivocal mating axis defined by the external element, and at least one of the robot element and the external element including a guiding structure configured to guide the robot element in a transverse direction towards the mating axis when the robot element is moved in a positioning direction substantially parallel with the mating axis and transverse to the transverse direction; and a control system comprising at least one data processing device and at least one memory having at least one computer program stored therein, the at least one computer program comprising program code which, when executed by the at least one data processing device, causes the at least one data processing device to control the industrial robot to perform a positioning movement by moving the robot element in the positioning direction towards the external element and controlling a mechanical impedance of the industrial robot to be higher in the positioning direction than in the transverse direction during the positioning movement; determine, based on robot positions of the industrial robot during the positioning movement, that the robot element is mated with the external element; and determine, based on at least one robot position of the industrial robot when the robot element is mated with the external element, a relative position between the industrial robot and the external element.
The robot system according to the second aspect and each element thereof may be of any type as described in connection with the first aspect, and vice versa.
The mating axis may be vertical.
The robot element and the external element may be configured such that the robot element can mate with the external element in an unequivocal mating position. In these cases, the at least one computer program may further comprise program code which, when executed by the at least one data processing device, causes the at least one data processing device to determine, based on at least one robot position of the industrial robot when
the robot element is mated with the external element in the mating position, the relative position between the industrial robot and the external element.
The external element may comprise a stop configured to be contacted by the robot element in the mating position.
The robot element and the external element may be configured to define at least one mating orientation around the mating axis when mated. In these cases, the at least one computer program may further comprise program code which, when executed by the at least one data processing device, causes the at least one data processing device to determine, based on at least one robot position of the industrial robot when the robot element is mated with the external element in the mating orientation, a relative orientation between the industrial robot and the external element.
The industrial robot may comprise a primary positioning system. In these cases, the at least one computer program may further comprise program code which, when executed by the at least one data processing device, causes the at least one data processing device to control the industrial robot to be positioned relative to the external element using the primary positioning system prior to controlling the industrial robot to perform the positioning movement.
The industrial robot may be a mobile robot comprising a base, a traction arrangement configured to move the base on a ground surface, and a manipulator connected to the base. In these cases, the robot element may be fixed to the manipulator.
Brief Description of the Drawings
Further details, advantages and aspects of the present disclosure will become apparent from the following description taken in conjunction with the drawings, wherein:
Fig. 1: schematically represents a side view of a robot system comprising an industrial robot, a robot element and an external element;
Fig. 2a: schematically represents a side view of the robot element and the external element;
Fig. 2b: schematically represents a top view of the robot element and the external element in Fig. 2a;
Fig. 3a: schematically represents a side view of the robot element and the external element during a positioning movement of the robot element;
Fig. 3b: schematically represents a top view of the robot element and the external element in Fig. 3a;
Fig. 4a: schematically represents a side view of the robot element and the external element during the positioning movement of the robot element at a later time than in Fig. 3a;
Fig. 4b: schematically represents a top view of the robot element and the external element in Fig. 4a;
Fig. 5a: schematically represents a side view of the robot element and the external element during the positioning movement of the robot element at a later time than in Fig. 4a;
Fig. 5b: schematically represents a top view of the robot element and the external element in Fig. 5a;
Fig. 6a: schematically represents a side view of the robot element and the external element during the positioning movement of the robot element at a later time than in Fig. 5a;
Fig. 6b: schematically represents a top view of the robot element and the external element in Fig. 6a;
Fig. 7a: schematically represents a side view of a robot element and an external element according to a further example;
Fig. 7b: schematically represents a top view of the robot element and the external element in Fig. 7a;
Fig. 8: schematically represents a side view of a robot element and an external element according to a further example;
Fig. 9a: schematically represents a side view of a robot element and an external element according to a further example;
Fig. 9b: schematically represents a top view of the robot element and the
external element in Fig. 9a;
Fig. 10: schematically represents a side view of a robot system according to a further example comprising an industrial robot, a robot element and an external element; and
Fig. 11: is a flowchart outlining general steps of a method.
Detailed Description
In the following, a method of determining a relative position between an industrial robot and an external element, and a robot system comprising an industrial robot and an external element, will be described. The same or similar reference numerals will be used to denote the same or similar structural features.
Fig. 1 schematically represents a side view of a robot system 10a. The robot system 10a comprises a mobile robot 12a, a robot element 14a and an external element 16a. The mobile robot 12a is positioned on a ground surface 18, such as a floor. Fig. 1 also shows an external structure exemplified as a workstation 20. The external element 16a is fixed to the workstation 20 in a known relationship. In Fig. 1, the external element 16a is exemplified as a funnel. The external element 16a defines a mating axis 22.
The mobile robot 12a is one example of an industrial robot. The mobile robot 12a comprises a base 24, a traction arrangement 26 and a manipulator 28. The traction arrangement 26 of this example comprises a plurality of steerable traction wheels 30.
The manipulator 28 is connected to the base 24. The manipulator 28 of this example comprises a first link 32a rotatable relative to the base 24 around a first axis 34a, a second link 32b rotatable relative to the first link 32a around a second axis 34b, a third link 32c rotatable relative to the second link 32b around a third axis 34c, a fourth link 32d rotatable relative to the third link 32c around a fourth axis 34d, a fifth link 32c rotatable relative to the fourth link 32d around a fifth axis 34e, and a sixth link 32f rotatable relative to the fifth link 32e around a sixth axis 34f. The manipulator 28 of this example
further comprises a tool flange 36 fixed to the most distal link, here the sixth link 32E In Fig. 1, the robot element 14a is fixed to the tool flange 36. One, several or all of the links 32a-32f, and one, several or all of the axes 34a-34f, may also be referred to with reference numerals "32" and "34", respectively.
The mobile robot 12a further comprises a control system 38, here provided in the base 24. The control system 38 of this example comprises a data processing device 40 and a memory 42. The memory 42 has a computer program stored therein. The computer program comprises program code which, when executed by the data processing device 40, causes the data processing device 40 to perform, or command performance of, various steps as described herein.
For each axis 34, the manipulator 28 comprises an actuator 44, such as an electric motor, and a sensor 46. Each actuator 44 is configured to drive an associated distal link 32 around the associated axis 34. The actuators 44 are controlled by the control system 38. Each sensor 46 is configured to measure a position of the associated distal link 32 around the associated axis 34. The sensors 46 are in signal communication with the control system 38.
Fig. 1 further shows three three-dimensional Cartesian coordinate systems: a tool coordinate system 48-1 comprising axes Xi, Yi and Zi, a base coordinate system 48-2 comprising axes X2, Y2 and Z2, and a global coordinate system 48-3 comprising axes X3, Y3 and Z3. The tool coordinate system 48-1, the base coordinate system 48-2 and the global coordinate system 48-3 are here fixed to the tool flange 36, the base 24 and in space, respectively. In Fig. 1, the mating axis 22 is oriented vertically, i.e., parallel with the Z3-axis. A position of the base coordinate system 48-2 in the global coordinate system 48-3 constitutes one example of a position of the mobile robot 12a. The control system 38 is configured to calculate the position of the tool coordinate system 48-1 in the base coordinate system 48-2 based on signals from the sensors 46 using forward kinematics.
The mobile robot 12a of this example further comprises a primary positioning system 50. The primary positioning system 50 is here exemplified as comprising a lidar but may comprise alternative types of environment sensors. The primary positioning system 50 is in signal communication with the control system 38. The control system 38 is configured to control the traction arrangement 26 based on signals from the primary positioning system 50 such that the mobile robot 12a approaches the workstation 20 by autonomous navigation. Such autonomous navigation is previously known.
Once the mobile robot 12a has approached the workstation 20, the control system 38 controls the manipulator 28 to mate the robot element 14a with the external element 16a. When the robot element 14a is mated with the external element 16a, the control system 38 determines a relative position between the mobile robot 12a and the external element 16a. In this example, the control system 38 also determines a pose of the workstation 20 based on the known relationship between the external element 16a and the workstation 20. The robot element 14a and the external element 16a form one example of a secondary positioning system having a higher accuracy than the primary positioning system 50.
An object 52 on the workstation 20 may be handled by the manipulator 28, either by using the robot element 14a or by using another end effector. The robot element 14a may thus be a tool, such as a gripper. Alternatively, another end effector, such as a gripper, may be attached to the tool flange 36 next to the robot element 14a. Alternatively, the manipulator 28 may be configured to perform a tool change to have an end effector other than the robot element 14a attached to the tool flange 36 when performing a handling operation on one or more of the objects 52.
The control system 38 is configured to control the manipulator 28 with impedance control. Such impedance control is commercially available today. One example of such impedance control is SoftMove sold by ABB. Further examples of such impedance control are described in European patents EP 0333345 Bi and EP 3433060 Bi, and in US patent application US
2020282558 Al, the entire contents of which are incorporated herein by reference. With impedance control, the manipulator 28 can be made compliant, such as "free floating" or with a spring function, in one or more selected directions. When the manipulator 28 is made compliant in one direction, its mechanical impedance in that direction is low. With impedance control, translational and rotational mechanical impedances can be defined for each axis, for example in any of the coordinate systems 48-1, 48-2 and 48- 3. The control system 38 may for example use a mass-spring-damper model of the manipulator 28 with configurable values for mass, stiffness and damping for translation in each axis and for rotation around each axis.
Fig. 2a schematically represents a side view of the robot element 14a and the external element 16a, and Fig. 2b schematically represents a top view of the robot element 14a and the external element 16a in Fig. 2a. Figs. 2a and 2b show a robot pose 54 of the manipulator 28. The robot pose 54 defines a position and an orientation of the tool coordinate system 48-1 in the base coordinate system 48-2.
The robot element 14a of this example comprises an elongated male robot element portion 56a and a rounded tip 58. The robot element portion 56a defines a robot element axis 60. In this example, the robot element portion 56a has a constant rectangular cross-sectional profile along the robot element axis 60. Although the tool coordinate system 48-1 is illustrated as being offset from the robot element portion 56a, the robot element axis 60 and the Zi- axis may be coinciding. In any case, the pose of the robot element 14a in the tool coordinate system 48-1 is known. Therefore, the robot pose 54 of the manipulator 28 always corresponds to the pose of the robot element 14a in the base coordinate system 48-2.
The external element 16a of this example comprises a guiding structure 62a and an elongated female external element portion 64a. The external element portion 64a has a stop 66, here constituted by a bottom of the external element portion 64a. The external element portion 64a defines the mating axis 22. In this example, the external element portion 64a has a constant
rectangular cross-sectional profile along the mating axis 22 corresponding to, but slightly larger than, the cross-sectional profile of the robot element portion 56a.
The guiding structure 62a of this example is tapered and forms a truncated pyramid. Also the guiding structure 62a has a rectangular cross-sectional profile which, at the external element portion 64a, corresponds to the profile thereof, and expands along the mating axis 22 away from the external element portion 64a. The guiding structure 62a of this specific example comprises four planar surfaces angled 30 degrees to the mating axis 22.
In Figs. 2a and 2b, the control system 38 has controlled the manipulator 28 to position the robot element 14a aligned above the external element 16a based on position information from the primary positioning system 50. As illustrated, this positioning may not always be very accurate. For example, the robot element axis 60 is slightly angled to, and slightly offset from, the mating axis 22, and the robot element portion 56a and the external element portion 64a are not rotationally aligned.
In order to determine the relative position between the mobile robot 12a and the external element 16a, the control system 38 controls the manipulator 28 to perform a positioning movement, e.g., starting from the robot pose 54 in Figs. 2a and 2b. During the entire positioning movement of this example, the control system 38 controls the translational mechanical impedance in the Zi- axis to be high and the translational mechanical impedances in the Xi-axis and in the Yi-axis to be low. For example, a first stiffness value may be set for the Zi-axis and one or more second stiffness values, lower than the first stiffness value, such as less than 50 % thereof, such as less than 25 % thereof, may be set for the Xi-axis and the Yi-axis. The rotational mechanical impedance may be set low for each axis of the tool coordinate system 48-1. The robot element 14a thereby exhibits a compliant behavior in a plane transverse to the Zi-axis and rotationally around each axis. The compliance of the robot element 14a may for example be set such that a human user can move the robot element 14a by hand. According to one specific and non-
limiting example, the robot element 14a may be moved at least 30 mm in the Xi-axis or in the Yi-axis, and less than 5 mm in the Zi-axis, by applying a force of at least 10 N, and the robot element 14a may be rotated at least 15 degrees around an axis by applying a torque of at least 3 Nm around that axis.
Fig. 3a schematically represents a side view of the robot element 14a and the external element 16a during a first part 68a of the positioning movement of the robot element 14a, and Fig. 3b schematically represents a top view of the robot element 14a and the external element 16a in Fig. 3a. With collective reference to Figs. 3a and 3b, the robot element 14a has moved towards external element 16a in the Zi-direction such that the robot element 14a is brought into contact with the guiding structure 62a. Due to the shapes of the robot element portion 56a and the guiding structure 62a, and due to the compliance of the robot element 14a around the Zi-axis, the guiding structure 62a causes the robot element 14a to rotationally align with the external element 16a by rotation around the Zi-axis.
Fig. 4a schematically represents a side view of the robot element 14a and the external element 16a during a further part 68b of the positioning movement of the robot element 14a, and Fig. 4b schematically represents a top view of the robot element 14a and the external element 16a in Fig. 4a. With collective reference to Figs. 4a and 4b, during the part 68b of the positioning movement of the robot element 14a, the robot element 14a moves further in the Zi-direction. Due to the contact between the robot element 14a and the guiding structure 62a, and due to the compliance of the robot element 14a transverse to the Zi-axis, the guiding structure 62a exerts a force on the robot element 14a with force components in directions parallel to the Xi-axis and the Yi-axis, respectively, that guides the robot element 14a to also move along the Xi-axis and the Yi-axis towards the mating axis 22.
Fig. 5a schematically represents a side view of the robot element 14a and the external element 16a during a further part 68c of the positioning movement of the robot element 14a, and Fig. 5b schematically represents a top view of the robot element 14a and the external element 16a in Fig. 5a. With collective
reference to Figs. 5a and 5b, the robot element 14a moves further in the Zi- direction. Due to the shapes of the robot element portion 56a and the external element portion 64a, and due to the compliance of the robot element 14a around the Yi-axis, the robot element 14a also rotates around the Yi-axis until the robot element axis 60 becomes coincident with the mating axis 22. The robot element 14a and the external element 16a are now mated along the mating axis 22. Due to the corresponding shapes of the robot element portion 56a and the external element portion 64a, a mating orientation 70 around the mating axis 22 is defined. If the cross-sectional shapes of the robot element portion 56a and the external element portion 64a are circular, the control system 38 can determine the position and orientation of the mating axis 22, but not the mating orientation 70. Thus, corresponding polygonal cross- sectional shapes of the robot element portion 56a, the guiding structure 62a and the external element portion 64a, and a rotational alignment between the robot element 14a and the external element 16a around the Zi-axis caused by the guiding structure 62a, are optional. A play between the robot element 14a and the external element portion 64a may be less than 5 mm, such as less than 1 mm.
Fig. 6a schematically represents a side view of the robot element 14a and the external element 16a during a further part 68d of the positioning movement of the robot element 14a, and Fig. 6b schematically represents a top view of the robot element 14a and the external element 16a in Fig. 6a. With collective reference to Figs. 6a and 6b, the robot element 14a moves further in the Zi- direction until the robot element 14a, here the tip 58 thereof, contacts the stop 66. During the part 68d of the positioning movement, the robot element 14a will only move in the Zi-direction and not in any of the transverse directions Xi and Yi. Based on the robot poses 54 during the part 68d of the positioning movement, the control system 38 determines that the robot element 14a is mated with the external element portion 64a. The robot poses 54 during the part 68d of the positioning movement also correspond to a position and an orientation of the mating axis 22 in the base coordinate system 48-2. Optionally, the translational mechanical impedances in each of
the Xi-axis, the Yi-axis and the Zi-axis, and the rotational mechanical impedances around each of the Xi-axis, the Yi-axis and the Zi-axis, may be set high during the part 68d of the positioning movement.
When the robot element 14a contacts the stop 66, the robot element 14a mates with the external element 16a in an unequivocal mating position 72 where the robot pose 54 corresponds to the pose of the external element 16a in the base coordinate system 48-2. An accurate relative position between the mobile robot 12a and the external element 16a is thereby determined in a robust manner. The control system 38 then determines a pose of the workstation 20 based on the robot poses 54 and the known relationship between the external element 16a and the workstation 20. The position of the mobile robot 12a in relation to the workstation 20 is now known with higher accuracy than when only relying on the primary positioning system 50. The parts 68a-68d constitute one example of a positioning movement 68.
Fig. 7a schematically represents a side view of a robot element 14b and an external element 16b according to a further example, and Fig. 7b schematically represents a top view of the robot element 14b and the external element 16b. The robot element 14b and the external element 16b may be used in the robot system 10a instead of the robot element 14a and the external element 16a, respectively. The robot element 14b differs from the robot element 14a in that the robot element 14b comprises an elongated male robot element portion 56b with a triangular cross-sectional profile. The external element 16b differs from the external element 16a in that the external element 16b comprises a guiding structure 62b and an elongated female external element portion 64b with triangular cross-sectional profiles.
Fig. 8 schematically represents a side view of the robot element 14a and an external element 16c according to a further example. The external element 16c may be used in the robot system 10a instead of the external element 16a. The external element 16c differs from the external element 16a in that the external element 16c comprises an elongated female external element portion 64c that is open therethrough along the mating axis 22. Thus, the external
element portion 64c does not comprise the stop 66. As shown in Fig. 8, the robot element 14a can pass through the external element 16c. The robot element 14a and the external element 16c thus define the mating orientation 70 when mated, but not the mating position 72. In some implementations, such as when the mating axis 22 is vertical and the external element 16c is positioned at a known height above the ground surface 18, the mating orientation 70 is sufficient to unambiguously determine the pose of the external element 16c in the base coordinate system 48-2.
Fig. 9a schematically represents a side view of a robot element 14c and an external element i6d according to a further example, and Fig. 9b schematically represents a top view of the robot element 14c and the external element i6d. With collective reference to Figs. 9a and 9b, the robot element 14c and the external element i6d may be used in the robot system 10a instead of the robot element 14a and the external element 16a, respectively. In Figs. 9a and 9b, the robot element 14c comprises an elongated male robot element portion 56c and a guiding structure 62c. The external element i6d comprises an elongated female external element portion 64d. Each of the robot element 14c and the external element portion 64d has a square cross-sectional profile. The guiding structure 62c is here exemplified as a pyramid tapering away from the robot element portion 56c towards an apex 74.
Fig. 10 schematically represents a side view of a robot system 10b according to a further example. The robot system 10b comprises a stationary robot 12b, the robot element 14a and the external element 16a. The robot system 10b may alternatively comprise any of the robot elements 14b and 14c and a corresponding one of the external elements i6b-i6d. The base 24 is here fixed to the ground surface 18. Similarly to the mobile robot 12a, the stationary robot 12b can determine a pose of the external element 16a and the workstation 20 using the primary positioning system 50, and then determine this pose more accurately by docking the robot element 14a with the external element 16a.
Fig. n is a flowchart outlining general steps of a method. The method comprises providing Sio a robot element 14a- 14c fixed to an industrial robot 12a; 12b, and an external element i6a-i6d, the robot element 140-140 being configured to mate with the external element i6a-i6d along an unequivocal mating axis 22 defined by the external element i6a-i6d, and at least one of the robot element 140-140 and the external element i6a-i6d including a guiding structure 620-620 configured to guide the robot element 140-140 in a transverse direction Xi, Yi towards the mating axis 22 when the robot element 140-140 is moved in a positioning direction Zi substantially parallel with the mating axis 22 and transverse to the transverse direction Xi, Yi. The method may further comprise positioning S12 the industrial robot 12a; 12b relative to the external element i6a-i6d using the primary positioning system 50.
The method further comprises controlling S14, by a control system 38, the industrial robot 12a; 12b to perform a positioning movement 68 by moving the robot element 140-140 in the positioning direction Zi towards the external element i6a-i6d and controlling a mechanical impedance of the industrial robot 12a; 12b to be higher in the positioning direction Zi than in the transverse direction Xi, Yi during the positioning movement 68. The controlling S14 may be performed after the positioning S12. The method further comprises determining S16, by the control system 38 and based on robot positions 54 of the industrial robot 12a; 12b during the positioning movement 68, that the robot element 140-140 is mated with the external element i6a-i6d.
The method further comprises determining S18, by the control system 38 and based on at least one robot position 54 of the industrial robot 12a; 12b when the robot element 140-140 is mated with the external element i6a-i6d, a relative position between the industrial robot 12a; 12b and the external element i6a-i6d. The determination S18 may comprise determining S20, by the control system 38 and based on at least one robot position 54 of the industrial robot 12a; 12b when the robot element 140-140 is mated with the external element i6a-i6d in the mating position 72, the relative position
between the industrial robot 12a; 12b and the external element i6a-i6d.
Alternatively, or in addition, the determination may comprise determining S22, by the control system 38 and based on at least one robot position 54 of the industrial robot 12a; 12b when the robot element 140-140 is mated with the external element i6a-i6d in the mating orientation 70, a relative orientation between the industrial robot 12a; 12b and the external element i6a-i6d.
While the present disclosure has been described with reference to exemplary embodiments, it will be appreciated that the present invention is not limited to what has been described above. For example, it will be appreciated that the dimensions of the components may be varied as needed. Accordingly, it is intended that the present invention may be limited only by the scope of the claims appended hereto.
Claims
1. A method of determining a relative position between an industrial robot
(12a; 12b) and an external element (i6a-i6d), the method comprising:
- providing (Sio) a robot element (140-140) fixed to an industrial robot (12a; 12b), and the external element (i6a-i6d), the robot element (14a- 14c) being configured to mate with the external element (i6a-i6d) along an unequivocal mating axis (22) defined by the external element (16a- i6d), and at least one of the robot element (140-140) and the external element (i6a-i6d) including a guiding structure (620-620) configured to guide the robot element (140-140) in a transverse direction (Xi, Yi) towards the mating axis (22) when the robot element (140-140) is moved in a positioning direction (Zi) substantially parallel with the mating axis (22) and transverse to the transverse direction (Xi, Yi);
- controlling (S14), by a control system (38), the industrial robot (12a; 12b) to perform a positioning movement (68) by moving the robot element (140-140) in the positioning direction (Zi) towards the external element (i6a-i6d) and controlling a mechanical impedance of the industrial robot (12a; 12b) to be higher in the positioning direction (Zi) than in the transverse direction (Xi, Yi) during the positioning movement (68);
- determining (S16), by the control system (38) and based on robot positions (54) of the industrial robot (12a; 12b) during the positioning movement (68), that the robot element (140-140) is mated with the external element (i6a-i6d); and
- determining (S18), by the control system (38) and based on at least one robot position (54) of the industrial robot (12a; 12b) when the robot element (140-140) is mated with the external element (i6a-i6d), a relative position between the industrial robot (12a; 12b) and the external element (i6a-i6d).
2. The method according to claim 1, wherein the mating axis (22) is vertical.
3. The method according to any of the preceding claims, wherein the robot element (140-140) and the external element (i6a-i6d) are configured such that the robot element (140-140) can mate with the external element (i6a-i6d) in an unequivocal mating position (72), and wherein the method further comprises determining (S20), by the control system (38) and based on at least one robot position (54) of the industrial robot (12a; 12b) when the robot element (140-140) is mated with the external element (i6a-i6d) in the mating position (72), the relative position between the industrial robot (12a; 12b) and the external element (16a- i6d).
4. The method according to claim 3, wherein the external element (16a- i6d) comprises a stop (66) configured to be contacted by the robot element (140-140) in the mating position (72).
5. The method according to any of the preceding claims, wherein the robot element (140-140) and the external element (i6a-i6d) are configured to define at least one mating orientation (70) around the mating axis (22) when mated, and wherein the method further comprises determining (S22), by the control system (38) and based on at least one robot position (54) of the industrial robot (12a; 12b) when the robot element (140-140) is mated with the external element (i6a-i6d) in the mating orientation (70), a relative orientation between the industrial robot (12a; 12b) and the external element (i6a-i6d).
6. The method according to any of the preceding claims, wherein the industrial robot (12a; 12b) comprises a primary positioning system (50), and wherein the method further comprises positioning (S12) the industrial robot (12a; 12b) relative to the external element (i6a-i6d) using the primary positioning system (50) prior to controlling (S14) the industrial robot (12a; 12b) to perform the positioning movement (68).
7. The method according to any of the preceding claims, wherein the industrial robot (12a) is a mobile robot comprising a base (24), a
traction arrangement (26) configured to move the base (24) on a ground surface (18), and a manipulator (28) connected to the base (24), wherein the robot element (140-140) is fixed to the manipulator (28).
8. A robot system (10a; 10b) comprising:
- an industrial robot (12a; 12b);
- an external element (i6a-i6d);
- a robot element (140-140) fixed to the industrial robot (12a; 12b), the robot element (140-140) being configured to mate with the external element (i6a-i6d) along an unequivocal mating axis (22) defined by the external element (i6a-i6d), and at least one of the robot element (14a- 14c) and the external element (i6a-i6d) including a guiding structure (620-620) configured to guide the robot element (140-140) in a transverse direction (Xi, Yi) towards the mating axis (22) when the robot element (140-140) is moved in a positioning direction (Zi) substantially parallel with the mating axis (22) and transverse to the transverse direction (Xi, Yi); and
- a control system (38) comprising at least one data processing device (40) and at least one memory (42) having at least one computer program stored therein, the at least one computer program comprising program code which, when executed by the at least one data processing device (40), causes the at least one data processing device (40) to:
- control the industrial robot (12a; 12b) to perform a positioning movement (68) by moving the robot element (140-140) in the positioning direction (Zi) towards the external element (i6a-i6d) and controlling a mechanical impedance of the industrial robot (12a; 12b) to be higher in the positioning direction (Zi) than in the transverse direction (Xi, Yi) during the positioning movement (68);
- determine, based on robot positions (54) of the industrial robot (12a; 12b) during the positioning movement (68), that the robot element (143-140) is mated with the external element (i6a-i6d); and
- determine, based on at least one robot position (54) of the industrial robot (12a; 12b) when the robot element (140-140) is mated with the
external element (i6a-i6d), a relative position between the industrial robot (12a; 12b) and the external element (i6a-i6d).
9. The robot system (10a; 10b) according to claim 8, wherein the mating axis (22) is vertical.
10. The robot system (10a; 10b) according to claim 8 or 9, wherein the robot element (140-140) and the external element (i6a-i6d) are configured such that the robot element (140-140) can mate with the external element (i6a-i6d) in an unequivocal mating position (72), and wherein the at least one computer program further comprises program code which, when executed by the at least one data processing device (40), causes the at least one data processing device (40) to determine, based on at least one robot position (54) of the industrial robot (12a; 12b) when the robot element (140-140) is mated with the external element (i6a-i6d) in the mating position (72), the relative position between the industrial robot (12a; 12b) and the external element (i6a-i6d).
11. The robot system (10a; 10b) according to claim 10, wherein the external element (i6a-i6d) comprises a stop (66) configured to be contacted by the robot element (140-140) in the mating position (72).
12. The robot system (10a; 10b) according to any of claims 8 to 11, wherein the robot element (140-140) and the external element (i6a-i6d) are configured to define at least one mating orientation (70) around the mating axis (22) when mated, and wherein the at least one computer program further comprises program code which, when executed by the at least one data processing device (40), causes the at least one data processing device (40) to determine, based on at least one robot position (54) of the industrial robot (12a; 12b) when the robot element (143-140) is mated with the external element (i6a-i6d) in the mating orientation (70), a relative orientation between the industrial robot (12a; 12b) and the external element (i6a-i6d).
13- The robot system (10a; 10b) according to any of claims 8 to 12, wherein the industrial robot (12a; 12b) comprises a primary positioning system (50), and wherein the at least one computer program further comprises program code which, when executed by the at least one data processing device (40), causes the at least one data processing device (40) to control the industrial robot (12a; 12b) to be positioned relative to the external element (i6a-i6d) using the primary positioning system (50) prior to controlling the industrial robot (12a; 12b) to perform the positioning movement (68). 14. The robot system (10a; 10b) according to any of claims 8 to 13, wherein the industrial robot (12a) is a mobile robot comprising a base (24), a traction arrangement (26) configured to move the base (24) on a ground surface (18), and a manipulator (28) connected to the base (24), wherein the robot element (140-140) is fixed to the manipulator (28).
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/EP2023/080216 WO2025093098A1 (en) | 2023-10-30 | 2023-10-30 | Method of determining position of industrial robot, and robot system comprising industrial robot |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/EP2023/080216 WO2025093098A1 (en) | 2023-10-30 | 2023-10-30 | Method of determining position of industrial robot, and robot system comprising industrial robot |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2025093098A1 true WO2025093098A1 (en) | 2025-05-08 |
Family
ID=88650746
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/EP2023/080216 Pending WO2025093098A1 (en) | 2023-10-30 | 2023-10-30 | Method of determining position of industrial robot, and robot system comprising industrial robot |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2025093098A1 (en) |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0333345B1 (en) | 1988-03-15 | 1991-12-18 | International Business Machines Corporation | A method of positioning an object under force feedback control |
| JPH04256526A (en) | 1991-02-01 | 1992-09-11 | Nippon Telegr & Teleph Corp <Ntt> | Position detecting method for assembly parts |
| EP2783806A2 (en) * | 2013-03-15 | 2014-10-01 | Kabushiki Kaisha Yaskawa Denki | Robot system, calibration method, and method for producing to-be-processed material |
| US20200282558A1 (en) | 2019-03-07 | 2020-09-10 | LinkDyn Robotics Inc. | System and method for controlling a robot with torque-controllable actuators |
| EP3433060B1 (en) | 2016-03-24 | 2023-03-15 | CMR Surgical Limited | Robot control |
| CN116276910A (en) * | 2023-03-17 | 2023-06-23 | 佛山非夕机器人科技有限公司 | Relative pose calibration method and system of robot and workbench and robot |
-
2023
- 2023-10-30 WO PCT/EP2023/080216 patent/WO2025093098A1/en active Pending
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP0333345B1 (en) | 1988-03-15 | 1991-12-18 | International Business Machines Corporation | A method of positioning an object under force feedback control |
| JPH04256526A (en) | 1991-02-01 | 1992-09-11 | Nippon Telegr & Teleph Corp <Ntt> | Position detecting method for assembly parts |
| EP2783806A2 (en) * | 2013-03-15 | 2014-10-01 | Kabushiki Kaisha Yaskawa Denki | Robot system, calibration method, and method for producing to-be-processed material |
| EP3433060B1 (en) | 2016-03-24 | 2023-03-15 | CMR Surgical Limited | Robot control |
| US20200282558A1 (en) | 2019-03-07 | 2020-09-10 | LinkDyn Robotics Inc. | System and method for controlling a robot with torque-controllable actuators |
| CN116276910A (en) * | 2023-03-17 | 2023-06-23 | 佛山非夕机器人科技有限公司 | Relative pose calibration method and system of robot and workbench and robot |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8948904B2 (en) | Work picking system | |
| CN117062693B (en) | Systems and methods for adaptive compliance-based robotic assembly | |
| EP3326038B1 (en) | System and method for determining a work offset | |
| US11090814B2 (en) | Robot control method | |
| US9156160B2 (en) | Robot system, calibration method, and method for producing to-be-processed material | |
| CN106272416B (en) | Robotic slender axis precision assembly system and method based on force sense and vision | |
| US10480923B2 (en) | Sensor apparatus and robot system having the sensor apparatus | |
| JP6351293B2 (en) | Robot system and article manufacturing method | |
| EP3433061B1 (en) | Automatic calibration method for robot system and corresponding robot system | |
| US9903698B2 (en) | Object posture calculation system | |
| EP2781314A1 (en) | Robot picking system, control device, and method of manufacturing a workpiece | |
| EP3326037B1 (en) | System and method for determining tool offsets | |
| CN112643682B (en) | Teaching method | |
| US20240139935A1 (en) | Robotic arm calibration method | |
| US10195744B2 (en) | Control device, robot, and robot system | |
| KR20150015405A (en) | Robot system and product manufacturing method | |
| US12070862B2 (en) | Robot system, control method for robot system, and adjustment method for force control parameters in robot system | |
| WO2015054599A2 (en) | Robotic placement and manipulation with enhanced accuracy | |
| US20200338720A1 (en) | Robot | |
| CN113165187A (en) | Image information processing device, gripping system, and image information processing method | |
| JP5218540B2 (en) | Assembly robot and its control method | |
| JP5787646B2 (en) | Robot system and component manufacturing method | |
| WO2025093098A1 (en) | Method of determining position of industrial robot, and robot system comprising industrial robot | |
| JP7026176B2 (en) | Hole search method and hole search device | |
| US20240075625A1 (en) | Assembling apparatus, assembling method and computer readable storage medium |
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: 23798936 Country of ref document: EP Kind code of ref document: A1 |