Method for calibrating multi-axis robot equipped with camera and printing head, and robot configured to implement such method
The method addresses the complexity of calibrating multi-axis robots by determining the directional position of the print head frame using a transformation matrix, achieving precise positioning and operation without the need for labels.
Patent Information
- Application Number
- JP2024209919
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-12-05
- Filing Date
- 2024-12-03
- Publication Date
- 2025-06-17
AI Technical Summary
Current methods for calibrating multi-axis robots equipped with a camera and a print head are complex and do not optimize the calibration process, lacking a straightforward method for achieving accurate and easy setup of the print head without the need for labels.
A method that determines the directional position of the print head frame relative to the wrist frame using a transformation matrix defined by six parameters, involving steps such as targeting points on a surface, applying impacts, measuring coordinates, and configuring an objective function to minimize deviations.
This method enables precise determination of the relative position between the print head and the coated surface, allowing for accurate positioning and operation of the multi-axis robot, thereby improving the calibration process and eliminating the need for labels.
Smart Images

Figure 2025090544000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a method for calibrating a multi-axis robot associated with a base frame and comprising a camera and a print head.
Background Art
[0002] In the field of applying coating products using a multi-axis robot equipped with a print head, it is important to be able to accurately control the operation of this print head. In particular, it is important to be able to control it by taking into account the positioning of this print head relative to the surface to be coated. To do this, the multi-axis robot is equipped with a camera that can identify the environment of the robot, in particular the surface to be coated relative to which the print head is positioned.
[0003] Currently, the operation of a multi-axis robot equipped with a print head is based on the assumption that the position and orientation of the orthogonal frame coupled to the print head are known relative to the frame coupled to the wrist of the robot and relative to the fixed base frame to which the multi-axis robot is attached. The exact position of this frame coupled to the print head depends in particular on the way the print head is attached to the wrist of the robot and its accuracy.
[0004] From French Patent Application Publication No. 3061076 (Patent Document 1), it is known to calibrate the position of the print head mounted on the robot by performing an automatic inspection of the actual position of the print point relative to the reference point of the print head before each operation cycle of the print head and, if necessary, correcting the deviation between the print point and the reference point of the print head. This method is quite complex to implement and the teachings of this document do not optimize the calibration.
[0005] The other, German Patent Application Publication No. 102016204123 (Patent Document 2) discloses a method of marking using a label in which fine positioning of a print head is used, but does not explain how such fine positioning can be achieved.
[0006] Therefore, there is a need for an effective calibration method for a multi-axis robot equipped with a camera and a print head. Such a method should be able to set up the print head easily and accurately without being too complex and without the need to use labels.
Prior Art Documents
Patent Documents
[0007]
Patent Document 1
Patent Document 2
Summary of the Invention
[0008] For this purpose, the present invention relates to a method of calibrating a multi-axis robot, the multi-axis robot being associated with a basic frame and comprising a camera and a print head having at least a first nozzle, the camera and the print head being attached to the wrist of the multi-axis robot. According to the present invention, the method consists of determining the directional position of the frame associated with the print head in the frame coupled to the wrist, the directional position of the frame coupled to the print head being defined by six parameters of a matrix that moves between the frame coupled to the print head and the frame coupled to the wrist. The method comprises at least (a) targeting at least one point on a surface fixed within the basic frame with the camera; (b) Determine, from the result of step (a), a mathematical surface representing the fixed surface; (c) Move the print head to a first position relative to the fixed surface, wherein at the first position the print head is oriented towards the fixed surface; (d) Apply, by the first nozzle, at least one first impact on the fixed surface when the print head is at the first position; (e) Measure, using a camera, the coordinates of a first feature point of the first impact in the basic frame; (f) Move the print head to at least one second position relative to the fixed surface, wherein the second position is different from the first position and wherein at the second position the print head is oriented towards the fixed surface; (g) Apply, by the first nozzle, at least one second impact on the fixed surface when the print head is at the second position; (h) Measure, using a camera, the coordinates of a second feature point of the second impact in the basic frame; (i) Represent, in the BF basic frame and using a transformation matrix, the coordinates of a first intersection point between the mathematical surface representing the fixed surface and a line passing through the first nozzle at the first position; (j) Represent, in the BF basic frame and using a transformation matrix, the coordinates of a second intersection point between the mathematical surface representing the fixed surface and a line passing through the first nozzle (B4) at the second position; (k) Represent a deviation for each position and each impact of the print head based on the coordinates of its feature point and the coordinates of its intersection point; (l) Configure an objective function, wherein the variables of the objective function are the deviations represented in step (k); (m) Determine the values of six parameters of the transformation matrix that minimize the objective function. (n) A step of using the six parameters determined in step (m) to determine the directional position of the frame coupled to the print head in the frame coupled to the wrist part.
[0009] The steps in the method of the present invention enable the determination of the directional position of the frame coupled to the print head in the frame coupled to the wrist part, thereby enabling the correct positioning of the print head at a predetermined position. In other words, the present invention enables the knowledge of the position and orientation of the print head in the reference frame coupled to the wrist part of the robot, while on the other hand, enabling the robot model to know the position of the wrist part in the basic reference frame coupled to the room where the robot is installed. Therefore, the method of the present invention enables the precise determination of the relative position between the print head and the fixed surface coated by this print head.
[0010] According to an advantageous but not essential aspect of the present invention, such a method can incorporate one or more of the following features while taking into account technically possible combinations. In step (d), a third impact is applied onto the fixed surface by the second nozzle. In step (e), a person measures, using a camera, the coordinates of a third point characterizing the third impact in the basic frame. In step (g), a fourth impact is applied onto the fixed surface by the second nozzle. In step (h), a person measures, using a camera, the coordinates of a fourth point characterizing the fourth impact in the basic frame. In step (i), the coordinates of a third intersection point between the mathematical surface representing the fixed surface and the line passing through the second nozzle at the first position are represented in the basic frame and using a transformation matrix. In step (j), the coordinates of the fourth intersection point between the mathematical surface representing the fixed surface and the line passing through the second nozzle in the second position are expressed in the basic frame and using the transformation matrix.
[0011] The axis of the frame coupled to the print head is parallel to the ejection directions of the two nozzles of the print head. On the other hand, the two nozzles are arranged on each side of the reference nozzle of the print head through which the axis of the frame associated with the print head passes and at an equal distance from the reference nozzle.
[0012] The six parameters of the transformation matrix can be decomposed into three translation parameters and three rotation parameters, and step (m) includes: (m1) a sub-step of determining the three rotation parameters by minimizing the objective function configured in step (l); (m2) for each position and each nozzle of the print head, a sub-step of expressing a further deviation based on the coordinates of the characteristic point and the coordinates of the intersection point, the further deviation being different from that expressed in step (k); (m3) a sub-step of configuring another objective function, the variables of the other objective function being the deviations expressed in sub-step (m2); (m4) a sub-step of determining the three translation parameters by minimizing the objective function configured in step (m3).
[0013] The above-mentioned further deviation is expressed in the form of the following number 1, or expressed in the form of the following number 2, a k is the further deviation expressed in sub-step (m2) for position k, I k,j BF is the coordinate of the intersection point of the nozzle of rank j for position k in the basic frame, P k,j BFare the coordinates of the characteristic points of the impact applied using the nozzle of rank j at position k in the basic frame, T TCP→PG is the transfer matrix from the frame coupled to the print head to the frame coupled to the wrist, The following number 3 is the representation of the origin of the frame related to the print head in the frame related to the print head.
[0014]
Number
[0015]
Number
[0016]
Number
[0017] The method includes the step of correcting the origin of the frame coupled to the print head, and this step is implemented between step (m) and step (n), and (p1) arranging the print head at a position within the mathematical surface indicating the fixed surface (S) where the origin of the frame coupled to the print head is located, such that the print head faces the fixed surface and is orthogonal to the fixed surface; (p2) measuring the distance between the print head and the fixed surface; (p3) correcting the translation parameters by applying a translation along the height axis of the frame coupled to the print head such that the distance measured in step (p2) is equal to a predetermined distance.
[0018] Step (c) and step (d) are executed before step (e), and step (f) and step (g) are executed before step (h).
[0019] The first position and the second position are arbitrarily selected.
[0020] The objective function or each objective function is the sum of the squares of the deviations expressed at step (k) and optionally at step (m2).
[0021] In step (m), the values of the six parameters are determined by solving the system of non - linear equations by partial differentiation starting from a neighboring position according to the least - squares method, Newton's method, gradient method, Levenberg - Marquardt method, Newton - Raphson method, secant method, bisection method, or iterative method, or by discretizing the region of the six parameters around the neighboring position and solving by evaluating the objective function.
[0022] During step (i) and / or step (j), the representation of the coordinates of the intersection point is obtained by representing the intersection of the ballistic line from the nozzle corresponding to the mathematical surface indicating the fixed surface.
[0023] According to another aspect, the present invention relates to a multi - axis robot associated with a basic frame and equipped with a camera and a print head, the print head comprising at least a first nozzle, and the camera and the print head being attached to the wrist part of the multi - axis robot. According to this method, this robot is equipped with an electronic control unit configured to implement the above - described calibration method.
[0024] This robot provides the same advantageous effects as the method described in the present invention.
[0025] Given by way of example only and with reference to the accompanying drawings, the present invention will be better understood and other advantageous effects will also become clearer in light of the following described embodiments of the calibration method and the multi - axis robot based on its principle.
Brief Description of the Drawings
[0026]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
DETAILED DESCRIPTION OF THE INVENTION
[0027] The multi-axis robot 20 shown in Figure 1 is formed by an arm formed by sections articulated together around six axes A1 - A6, and a wrist portion 21 forming the distal end of this arm. According to a modification of the present invention not shown, this wrist portion may be articulated to the end of the arm of the multi-axis robot 20 around a seventh axis.
[0028] The print head 10 includes a rigid body 12 to which a nozzle 14 is attached. This print head 10 is mounted on the wrist portion 21. It is designed to apply coating products such as paint or varnish to an object (not shown) such as an automobile body.
[0029] The camera 30 is placed on the wrist portion 21 and fixed thereto by suitable mechanical means such as screws or clips. The camera 30 is attached to the wrist portion 21 in such a way that it has sufficient strength to withstand the acceleration that the camera will receive when the robot moves.
[0030] Advantageously, the camera is a CCD camera or a laser camera (binocular and / or a profilometer) with one or two cameras.
[0031] Consider a fixed BF basic frame coupled to the room LO where the multi-axis robot 20 is located.
[0032] Consider the PG frame coupled to the wrist 21. The robot model may be used to switch the PG frame to the BF frame or vice versa. This model is well known. By way of non-limiting example, this may be the "Denavit-Hartenberg" model or the "modified Denavit-Hartenberg" model, which are also known as the "Khalil Kleinfinger" model or the PoE (Product of Exponential) model.
[0033] The applicant considers a TCP frame coupled to the print head 10 and located on the opposite side of the reference nozzle in the longitudinal direction LD of the body 12. A frame oriented in this way is sometimes referred to as the "Tool Centre Point". The x-axis of the TCP frame is parallel to the longitudinal direction LD, and its origin O, which is the centre of the TCP frame TCP is marked.
[0034] In the example, the print head 10 has 32 nozzles arranged on both sides of the median plane P12 of the body 12. The median plane P12 includes the y-axis and z-axis of the TCP frame, and the x-axis of this frame is orthogonal to them. This median plane P12 is located midway between the longitudinal ends 122 and 124 of the body 12 along the transverse axis and the longitudinal direction LD.
[0035] j is the rank of the nozzle 14 in the column of nozzles 14, and j is a natural number between 1 and 32. B jis the nozzle of rank j.
[0036] The x-axis of the TCP frame is directed from nozzle B32 towards nozzle B1.
[0037] In the illustrated example, the reference nozzle is B16. Thus, the origin O TCP is arranged opposite to nozzle B16.
[0038] The height axis z of the TCP passes through the reference nozzle B16 and is directed away from the body 12.
[0039] Alternatively, the reference nozzle is another nozzle in the column of nozzle 14, in which case the origin O TCP is arranged to face this other nozzle, and the height axis z passes through this other nozzle and is directed away from this other nozzle.
[0040] The origin O TCP is arranged to have a height h0 measured parallel to the z-axis from the outlet of the nearest nozzle 14. This height h0 is set to a value between 2 and 30 mm, preferably 10 mm.
[0041] According to the viewer, the height axis z of the TCP frame is parallel to the ejection direction of nozzle 14 and is directed in the ejection direction. The height axis z is aligned with the ejection direction of the reference nozzle, which is nozzle B16 in this example.
[0042] The y-axis of the TCP frame is orthogonal to the x-axis and the z-axis.
[0043] The method of calibrating the present invention consists of determining the directional position of the TCP reference coupled to the print head with respect to the PG reference coupled to the wrist part 21.
[0044] This method is implemented in a computer 40, which is in the form of the computer shown in FIG. 1 and communicates with a controller 24 disposed at the base 22 of the robot 20. The computer 40 is programmed to automatically implement the method of the present invention. The controller 24 and the computer 40 together form an electronic control unit for the multi-axis robot 20.
[0045] Alternatively, parts 24 and 40 of this control unit are formed by a single physical entity, which may be integrated into the base 22.
[0046] Consider a physical surface S that is supported by a plate 50 and is fixedly arranged in the region accessible to the print head 10 within the room LO, in close proximity to the robot 20. The robot 20 can eject paint droplets onto the surface S. This fixed surface S is the surface of the plate 50 that serves as a support for the droplets of the coating product to be applied.
[0047] The method of the present invention is started by a startup step 100 in which the controller 24 and the computer 40 are initialized.
[0048] In a second step 102 of the present invention, the robot 20 scans the fixed surface S within the basic frame BF using its camera 30. This operation of locating the surface S is continuously employed by the print head 10 carried by the robot arm 20 at target points PV1, PV2,..., PV N which are determined by several readings shown in FIG. 3.
[0049] At least one target point is used to enable at least one cloud consisting of several points on the fixed surface S to be targeted. In practice, several target points are used, especially when the fixed surface S is left-handed.
[0050] When viewed from each point PV1, PV2, etc., the camera 30 can locate one or more clouds of points belonging to the fixed surface S within its field of view, as shown by the four-sided polyhedron in FIG. 3, as long as they are included therein.
[0051] From the cloud of points identified by the camera 30 during this step 102, the computer 40, during step 104, determines the mean plane that best passes through all of these points of the cloud, to the extent possible, when the surface S is flat as in FIG. 3. This can be determined, for example, using the least squares method. This determination shows the fixed surface S that is itself fixed within the BF basic frame and enables the construction of the geometric reference plane P ref BF which constitutes. This reference plane P ref BF is defined by the origin O ref BF and the normal vector n ref BF . The plane P ref BF is a mathematical reference plane that represents the fixed surface S and is known to the computer 40 at the end of step 104.
[0052] In the example shown, the fixed plane S is flat and the reference plane P ref BF coincides with the surface S.
[0053] Alternatively, the surface S can be cylindrical, conical, spherical, or of other shapes. In this case, step 104 consists of determining the mean shape associated with the cylindrical, conical, spherical, or other surface S.
[0054] At the end of step 104, a mathematical reference plane representing the surface S is obtained.
[0055] To implement the method of the present invention, the robot 20 has the coordinates of the theoretical TCP frame of the print head in the PG wrist frame. These coordinates of the theoretical TCP frame are taken from the CAD model of the robot 20 adapted to the print head 10. They are used during the step of obtaining points by bringing the print head 10 to different positions indicated by three positions in FIG. 4 and applying droplets onto the surface S.
[0056] K is the number of the print positions used to obtain points, and K is a natural number greater than 1. k is the sequence number of the positions used to obtain points, and k is a natural number between 1 and K. Each position of the print head 10 corresponds to the position of the wrist 21, or vice versa. Therefore, hereinafter, the position k is referred to as the position of the print head 10 or the position of the wrist or both. At each of these positions, the print head faces the fixed surface S of the plate 50.
[0057] According to the method of calibrating the robot 20, the print head is placed at the first position relative to the fixed surface S where k is equal to 1. In step 106, the robot activates a specific nozzle 14 on the print head, and each nozzle applies an impact onto the fixed surface S when activated.
[0058] L is the number of active nozzles 14 at each position of the print head 10, that is, the number of droplets applied at each position on the surface S.
[0059] In the version of the present invention described in detail below with reference to the drawings, L is 2, which corresponds to selecting a pair of nozzles. Advantageously, these selected nozzles are equidistant from the reference nozzle along the x-axis of the TCP frame. In the above example, these nozzles B4 and B28 attached to the body 12 are equidistant from the reference nozzle B16.
[0060] Alternatively, another pair of nozzles 14, preferably another pair of nozzles 14 that are equidistant from the reference nozzle, may be used.
[0061] During step 106, nozzle B4 applies an impact on the fixed surface S, and nozzle B28 applies another impact on the fixed surface S.
[0062] Generally speaking, the applicant designates the feature point in the BF basic frame, which is the geometric center of the impact corresponding to the droplet placed on the surface S by the nozzle of rank j when the wrist is at position k, as P k,j BF and calls it so. Therefore, the applicant designates the feature point of the impact given by nozzle B4 as P k,4 BF when the wrist is at position k, and the feature point of the impact applied by nozzle B28 as P k,28 BF respectively.
[0063] For each position k of the printhead 10, the vector V k BF is defined as extending from the feature point P k,28 BF to the feature point P k,4 BF .
[0064] The applicant has the following relational expressions.
Equation
[0065] Each vector V k BF can be determined by the computer 40 based on the feature points P k,28 BF and P k,4 BF identified by the camera 30.
[0066] Alternatively, the number L is strictly greater than 2 and equal to, for example, 5 or 7. This allows for defining vectors of a plurality of V k BF types.
[0067] In step 108 of the method, the coordinates of the feature points P 1,4 BF and P 1,28 BF are measured by the camera 30, which locates the impact of the droplet placed on the surface S, and then the vector V1 BF is calculated by the computer 40.
[0068] Thereafter, the multi-axis robot 20 moves the print head to at least one second position relative to the fixed surface S. The second position is different from the first position but is similarly oriented such that the print head 10 faces the fixed surface. At the second position of the wrist 21 and the print head 10, k is 2.
[0069] In step 110, the robot activates the nozzles B4 and B28 of the print head as in step 106, applies a second impact on the fixed surface S using the nozzle B4, and applies other impacts using the nozzle B28.
[0070] When the print head 10 is in the first position and the second position respectively, the other impacts applied using the nozzle B28 can be considered as the third impact and the fourth impact.
[0071] In step 112, the coordinates of the feature points P 2,4 BF and P 2,28 BF are measured by the camera 30. The camera 30 detects the impact of the droplet placed on the surface S, and then the vector V2 BF is calculated by the computer 40.
[0072] If K is strictly greater than 2, steps 106 and 108 are repeated the necessary number of times, using positions that are different from the first two positions and different from each other for k in the range from 3 to K.
[0073] The position of the wrist part 21 determines the position of the print head 10, but is arbitrarily selected so as to be different for paired k between 1 and K.
[0074] The applicant of the present application is B k,4 BF and B k,28 BF are respectively referred to as the positions of nozzle B4 and nozzle B28 in the BF basic frame when the print head 10 is at position k.
[0075] Due to the definition and configuration of the print head 10, these two positions B in the TCP frame of the print head 10 k,4 BF and B k,28 BF are known.
[0076] Also, these positions can be expressed in the BF basic frame by the following two mathematical formulas. In the formulas, T k PG→BF is the transition matrix from the PG wrist part frame to the BF basic frame when the print head 10 is at position k, and T TCP→PG is the passage matrix from the TCP frame to the PG wrist part frame.
[0077]
Number
[0078]
Number
[0079] The first passing matrix T k PG→BF is an orthogonal matrix defined for each position k, while the second passing matrix T TCP→PG is independent of the position k of the print head 10.
[0080] The second passing matrix can be expressed as follows. In this formula, the 16 coefficients of the second passing matrix T TCP→PG are expressed as functions of six parameters X1 to X6.
[0081]
Equation
[0082] The parameters X1, X2, and X3 correspond to the translation of the center of the TCP frame coupled to the print head with respect to the center of the PG frame coupled to the wrist part 21. On the other hand, the parameters X4, X5, and X6 correspond to the angle of rotation of these two reference frames with respect to each other. In the example of the matrix shown by Equation 7, these are the angles in the Roll-Pitch-Yaw convention.
[0083] Alternatively, other expressions of these angles may be used.
[0084] By knowing the second matrix T TCP→PG the TCP frame can be positioned in the PG frame coupled to the wrist part, and thus the print head forming the tool part of the robot 20 can be calibrated. By the method of the present invention, the parameters X1 to X6, and thus the second matrix, can be determined.
[0085] The applicant also defines I k,4 BF and I k,28 BF with respect to the mathematical reference plane P ref BFAnd the coordinates of the intersection between the straight line D4 or D28, which respectively passes through the nozzle B4 or the nozzle B28 in a direction parallel to the direction in which the coating product is ejected from the corresponding nozzle, are called. More generally, I k,j BF refers to the coordinates of the intersection between the mathematical reference plane P in the BF basic frame ref BF and the straight line passing through the nozzle of rank j.
[0086] Due to the configuration of the TCP frame, the straight line D4 or D28 passing through the nozzle B4 or B28 is considered to be parallel to the z-axis of this frame regardless of the position k. In step 114, each position I k,4 BF or I k,28 BF is calculated by the computer 40 as the intersection between the straight line D4 or D28 corresponding to the nozzle B4 or B28 at the position k of the print head and the representative mathematical reference plane formed by the plane P ref BF
[0087] At each position k, the coordinates of each intersection I k,4 BF or I k,28 BF are expressed by the computer 40 as a function of the position B k,4 BF or B k,28 BF of the corresponding nozzle B4 or B28, as well as the passing matrices T k PG→BF and T TCP→PG . In particular, the coordinates of each intersection I k,4 BF or I k,28 BF depend on the second passing matrix T TCP→PG , and thus depend on its parameters X1 to X6.
[0088] In practice, each intersection I 1,4 BF or I 1,28 BF The coordinates of each intersection point I where k is equal to 2 and which are represented in step 114 2,4 BF and I 2,28 BF are represented in step 116.
[0089] The order of steps 114 and 116 is not restrictive. They may be simultaneous.
[0090] For each position k of the print head 10 or the wrist part 21, the vector W k BF is defined to extend from the intersection point I k,28 BF to the intersection point I k,4 BF The applicant has the following relational expressions.
[0091]
Equation
[0092] Each vector W k BF can be calculated by the computer 40 and depends on the second pass matrix T TCP→PG and its parameters X1 to X6. This is because this holds for the intersection points I k,4 BF and I k,28 BF is true.
[0093] Theoretically, the positions of P k,4 BF and I k,4 BF should be the same, and the same should be true for the positions of P k,28 BF and I k,28 BF Therefore, the vectors V k BF and W k BF should overlap. However, for example, in FIG. 4, the vectors V2 BF and W2BF or vector V k BF and W k BF As shown by, this does not actually hold.
[0094] For each position k of the wrist part 21, that is, for each position of the print head, the first deviation ε k is defined between the vector V k BF and W k BF and in step 120, the computer 40 expresses it as follows.
[0095]
Equation
[0096] In the above equation, T k PG→BF is the first passing matrix described above, I k,4 PG and I k,28 PG are the positions of the intersections for the position k expressed in the PG frame of the wrist part 21, and P k,4 PG and P k,28 PG are the positions of the centers of the droplet impacts for the position k expressed in the PG frame of the wrist part 21.
[0097] This can be expressed as follows.
[0098]
Equation
[0099] Matrix P k BF→PG is an orthonormal matrix, so the vector V k BF and W k BFThe difference between them can also be expressed as follows.
[0100]
Number
[0101] The number 9 is the expression of the deviation ε in the BF basic frame, while the number 11 is the expression of the same deviation in the PG wrist frame. The length of the deviation vector ε k is equal in both cases. k The intersection point I
[0102] or I k,4 BF k,28 BF k Like the coordinates of, the deviation ε k depends on the second pass matrix T TCP→PG and thus depends on its parameters X1 to X4.
[0103] Each deviation ε k can be considered as an error due to the inaccuracy of the positioning of the TCP frame in the PG frame. This error must be minimized by adjusting the parameters X1 to X6 so that the measurement of the print head 10 in the TCP frame becomes as accurate as possible in the BF basic frame. This is because they are related to determining this deviation.
[0104] In the subsequent step 122, the objective function F is configured by the computer 40 in the following form as the sum of the squares of the deviations determined in step 120 for all positions k.
[0105]
Number
[0106] In step 124, which is similarly implemented by the computer 40 following step 122, the objective function F is minimized, whereby the deviation ε at various positionsk It becomes possible to determine the values of parameters X1 to X6 that decrease the whole.
[0107] Step 124 includes sub-step 124A, in which the objective function F is minimized by adjusting only the rotation parameters X4 to X6. Thereby, it becomes possible to determine the optimized values for these three parameters.
[0108] The minimization of the objective function F in sub-step 124A is preferably performed by using the least squares method by partial differentiation from the positions in the vicinity and solving a system of non-linear equations.
[0109] Alternatively, this system of non-linear equations can be solved by the Newton method, the gradient method, the Levenberg-Marquardt method, the Newton-Raphson method, the secant method, the bisection method, or the iteration method.
[0110] In yet another variant, this system of non-linear equations can be solved by starting from the positions in the vicinity, discretizing the regions of the six parameters X1 to X6 around the positions in the vicinity, and evaluating the objective function F as a function of these parameters.
[0111] Then, in the second sub-step 124B, the computer 40 represents another deviation a k which is also known as the second deviation.
[0112] This second deviation a k is different from the first deviation ε k and is a shift, representing the shift between the center O TCP of the TCP frame and the midpoint M k,4 BF k,2 BF defined to be at the intermediate distance from them between the feature point P in the BF basic frame and P k BF and them.
[0113] In sub-step 124B of step 124, the deviation a k is expressed by computer 40 as follows for each wrist position k.
[0114]
Equation
[0115] In the above equation, the following equation 14 is the expression of the origin O of the TCP frame in the PG frame TCP of.
[0116]
Equation
[0117] In subsequent sub-step 124C of step 124, the objective function G is configured by computer 40 in the following form as the sum of the squares of the second deviations determined in sub-step 124B for all positions k.
[0118]
Equation
[0119] Step 124 includes sub-step 124D, in which the objective function G is minimized by adjusting only the transition parameters X1 to X3. Thereby, the optimized values for these three parameters can be determined.
[0120] Advantageously, the objective function G is minimized by using a second method, which may be the same as or different from the one used to minimize the objective function F, to solve a system of non-linear equations. In particular, the least squares method is appropriate here. The method used is preferably selected from among those listed above for minimizing the objective function F.
[0121] The results of the two sub-steps 124A and 124D are that the parameters X1 to X6 are optimized so that the orientation of the TCP reference frame and its origin O in the PG wrist reference frame are known with good accuracy. TCP That is, it is optimized so that the position of O is known with good accuracy.
[0122] Being satisfied with this, it is possible to directly process step 128. In step 128, the computer 40 uses the six parameters X1 to X6 determined in step 124 to construct a second passing matrix T TCP→PG and determines the directional position of the TCP frame in the PG frame.
[0123] In this example, the position of the origin O along the height axis z of the TCP frame TCP is not clearly known.
[0124] To find this position, the method of the present invention includes an optional step 126 of correcting the position of the origin O along the height axis z of the TCP frame. This step 126 is implemented between steps 124 and 128. TCP In this step 126, the coordinates of the theoretical TCP reference frame in the PG wrist reference frame, which are known to the robot 20 described above, are used.
[0125] During sub-step 126A of step 126, the robot 20 arranges the print head 10 to face the fixed surface S, and arranges the x-axis and y-axis of the TCP frame defined using the parameters X1 to X6 optimized in step 124 to be parallel to the average plane of the fixed surface S. In other words, the nozzle 14 is oriented perpendicular to the fixed surface S. During this sub-step 126A, the robot moves the print head towards the fixed surface until the origin O of the TCP frame
[0126] enters the fixed surface S. This means that the robot 20 moves the origin O TCP towards the fixed surface until it enters the fixed surface S. This means that the robot 20 moves the origin O TCP which is the reference plane P refBF is considered to be achieved when calculating belonging to
[0127] In sub-step 126B of step 126, the computer 40 projects the origin O of this theoretical frame TCP onto a straight line of the height of the TCP frame defined using the parameters X1 to X6 optimized in step 124.
[0128] In sub-step 126C called step 126, the distance d between one or more of the nozzles 14 and the fixed surface S 14-S is measured along the height axis z of the optimized TCP frame, for example, the distance between the outlet of the reference nozzle B16 and the fixed surface S. This measuring step may be automatically performed by a measuring device attached on the print head or on the surface S, for example, by a laser. Alternatively, this measurement can be performed by the operator using a measuring device independent of the robot 20, for example, using a ruler or calipers.
[0129] In sub-step 126D of step 126 following sub-step 126C, the position of the origin O of the TCP frame defined using the parameters X1 to X6 optimized in step 124 TCP is corrected such that the distance d 14-S is equal to a predetermined value d0, for example, equal to 10 mm. This leads to placing the center of the TCP frame defined using the parameters X1 to X6 optimized in step 124 at a predetermined distance d0 from the fixed surface S, in this example, 10 mm.
[0130] The applicant of the present application refers to d corr as the distance by which the position of the origin O TCP is corrected in sub-step 126D. The applicant of the present application has the following relational expressions.
[0131]
Equation
[0132] At the end of step 126, the origin O TCP The new parameters X'1, X'2, and X'3 calculated in sub-step 126D that determine the position of are defined by the following relational expressions.
[0133]
Equation
[0134] Thereafter, the parameters X'1, X'2, and X'3 are used as the new optimized parameters X1, X2, and X3.
[0135] Changing the parameters X1 to X3 to take the values X'1 to X'3 respectively is equivalent to applying a translation along the z-axis of the TCP frame, and the measured distance d 14-S becomes equal to the pre-determined value d0.
[0136] In step 128, six parameters X1 to X6, which were determined and optimized in step 124 and some of X1 to X3 may have been corrected in step 126, are used to determine the directional position of the TCG frame in the PG frame in the second transition matrix T TCP→PG In.
[0137] At the end of step 128, the position and orientation of the TCP frame in the PG frame are accurately and uniquely determined, and the multi-axis robot 20 is calibrated so as to operate in an optimized form by accurately moving the print head relative to the fixed plane S.
[0138] The present invention is not limited to the embodiments shown in the drawings and the modifications described above.
[0139] Alternatively, the vectors V k BF and W kBF The first deviation between them can be expressed for each position k of the wrist part 21 by one of the following approaches.
[0140]
Number
[0141]
Number
[0142]
Number
[0143]
Number
[0144]
Number
[0145]
Number
[0146] In Numbers 18 and 19, the objective function F is the same as that defined in Number 12. In Numbers 20 to 23, the objective function F is expressed, for example, as follows.
[0147]
Number
[0148] In that case, Steps 124, 126, and 128 are adapted.
[0149] According to another modification of the present invention, the second deviation a k is expressed as follows in sub-step 124B.
[0150]
Number
[0151] In that case, the remainder of step 124 as well as steps 126 and 128 are adapted.
[0152] According to a variant of the invention not shown, the impact applied between steps 106 and 110 is used to calculate, for each position k of the wrist 21, the defined deviation between the coordinates of the feature point P k,l BF and the intersection of I defined above k,l BF Thereafter, the objective function is defined, for example, as the sum of the squares of these deviations for all positions k between 1 and K and for all nozzles l between 1 and L, based on this deviation. Thereafter, this function is minimized using, for example, the least squares method or one of the other methods described above, whereby the optimized values of six of the parameters X1 to X6 of the passing matrix T defined above TCP→PG can be determined. In this case, the vectors V k BF and W k BF and the vectors to be compared are not used. In this example, the six parameters X1 to X6 are optimized in a common step and not, for example, in two consecutive steps such as the above sub-steps 124A and 124D. Advantageously, a correcting step such as step 126 is implemented.
[0153] According to other variations of the present invention not shown, the mass, shape, dimensions, and / or speed of the droplets are taken into account when calculating the intersections. In other words, the above-mentioned straight lines D4, D28 and equivalents can be replaced by curves taking into account the ballistic effects of the ejection of the coating product by the nozzle 14 due to the mass of the droplets, their shape, their dimensions, and their speed. Whether it is a straight line or a curve taking into account the trajectory, the line passing through the nozzle B4 and / or B28 or other nozzles is used to define each intersection I k,j BF is used.
[0154] Alternatively, at least one of the objective functions F and G is configured without using the square of the deviation. For example, these functions may be equal to the sum of the absolute values of these deviations, or may be equal to other values calculated from these deviations.
[0155] Steps 102 and 104 may be executed at any time before steps 114 and 116.
[0156] The steps of the present invention do not need to be repeated every time the robot 20 is activated. In fact, when the directional position of the TCP reference frame in the PG reference frame is known at the end of step 128, it is considered invariant.
[0157] The steps of the method of the present invention are preferably automatically executed by a control unit formed by the components 22 and 40. Also, step 126A may be manually executed by an operator.
[0158] Any feature described for one of the above embodiments or variations can be implemented for the other above embodiments and variations as long as it is technically possible.
Claims
1. A method of calibrating a multi-axis robot (20), the multi-axis robot being associated with a base frame (BF) and comprising a camera (30) and a printhead (10) comprising at least a first nozzle (B4), the camera and the printhead being mounted on a wrist (21) of the multi-axis robot, the method comprising determining an orientation position of a frame (TCP) associated with the printhead (10) in a reference frame (PG) coupled to the wrist (21), the orientation position of the frame coupled to the printhead being determined by a passage matrix (T TCP→PG ) six parameters (X 1 -X 6 ) and the method comprises at least (a) targeting (102) with said camera (30) at least one point on a surface (S) fixed in said base frame (BF); (c) bringing the print head into a first position relative to the fixed surface (S), where in the first position the print head is oriented toward the fixed surface; (d) applying (106) at least one first impact onto the fixed surface by the first nozzle (B4) when the print head is in the first position; (e) using the camera (30), a first characteristic point (P 1,4 BF ) (108); and (f) bringing the print head to at least one second position relative to the fixed surface (S), the second position being different from the first position, and in the second position, the print head is oriented toward the fixed surface; (g) applying at least one second impact (110) on the fixed surface by the first nozzle (B4) when the print head is in the second position; (h) using the camera (30), a second characteristic point (P 2,4 BF ) (112), The method comprising: The method includes at least (b) From the result of step (a), a mathematical surface (P ref BF ) (104); (i) the mathematical surface (P) representing the fixed surface (S) ref BF ) and a line (D4) passing through the first nozzle (B4) at the first position. 1,4 BF ) in the base frame (BF) and the pass matrix (T TCP→PG ) to express (114); (j) a second intersection point (I) between the mathematical surface representing the fixed surface and the line passing through the first nozzle (B4) at the second position; 2,4 BF ) in the BF base frame and the pass matrix (T TCP→PG ) (116) expressing (k) For each position and each impact of the print head, its characteristic point (P k,j BF ) and its intersection point (I k,j BF ) based on the coordinates of the deviation (ε k ) (120); (l) Step (122) of constructing an objective function (F), the variables of which are the deviations (ε k ) step (122); (m) minimizing the objective function (F) TCP→PG ) the six parameters (X 1 -X 6 ) (124); and (n) determining the six parameters (X, θ) determined in step (m) to define the directional position of the frame (TCP) coupled to the print head (10) in the frame coupled to the wrist (21); 1 -X 6 and using (128) the
2. The method is carried out using a printhead comprising at least one second nozzle (B28), During step (d), a third impact is applied by the second nozzle (B28) onto the fixed surface (S), During step (e), the person is detected at a third feature point (P 1,28 BF ) using said camera (30); During step (g), a fourth impact is applied by the second nozzle (B28) onto the fixed surface (S), During step (h), the person detects a fourth feature point (P 2,28 BF ) using said camera (30); During step (i), the mathematical surface (P) representing the fixed surface (S) is ref BF ) and a line (D28) passing through the second nozzle at the first position. 1,28 BF ) are expressed in the base frame (BF) and in the pass matrix (T TCP→PG ) is used to express In step (j), the mathematical surface (P) representing the fixed surface (S) is ref BF ) and the line (D28) passing through the second nozzle at the second position. 2,28 BF ) are expressed in the base frame (BF) and in the pass matrix (T TCP→PG 2. The method of claim 1 , wherein the first and second vertices are expressed using the same expression:
3. the axis (z) of the frame (TCP) connected to the printhead (10) is parallel to the ejection direction of the two nozzles (B4, B28) of the printhead; and 3. The method of claim 2, wherein the two nozzles are arranged on either side of a reference nozzle (B16) of the print head along the axis (z) and equidistant from the reference nozzle (B16).
4. The passage matrix (T TCP→PG ) the six parameters (X 1 -X 3 )but, Three translation parameters (X 1 -X 3 )and, Three rotation parameters (X 4 -X 6 ) and Step (m) is (m1) The three rotation parameters (X 4 -X 6 ) (124A); and (m2) For each print head position and each nozzle (B4, B28), its characteristic point (P k,j BF ) and its intersection point (I k,j BF ) based on the coordinates of k (124B) expressing a deviation (i.e., a deviation of 1 k ) that is different from that expressed in step (k); (m3) a sub-step (124C) of configuring another objective function (G), the variable of the other objective function (G) being the deviation expressed in sub-step (m2); (m4) The three translation parameters (X 1 -X 3 and the substep (124D) of determining (124I) the first and second eigenvalues.
5. The other deviation is [0010] or [0025] It is expressed in the form a k is the other deviation expressed in sub-steps (m2) for position k, I k,j BF are the coordinates of the intersection of the nozzle of rank j for position k in the base frame (BF), P k,j BF are the coordinates of the characteristic point of the impact applied with the nozzle of rank j for position k in the base frame (BF), T TCP→PG is the pass matrix from the frame (TCP) coupled to the printhead to the frame (PG) coupled to the wrist (21), [0030] is the origin of the print head frame (O TCP 5. The method according to claim 3, wherein the expression is a representation of
6. It is the origin (O) of the frame (TCP) coupled to the print head (10). TCP ), step (126) being implemented between steps (m) and (n); and (p1) The print head (10) is aligned with the origin (O) of the frame (TCP) coupled to the print head (10) so as to face the fixed surface (S) and be perpendicular to the fixed surface. TCP ) represents the fixed surface (S) ref BF (126A) placing the (p2) the distance (d) between the print head (10) and the fixed surface (S) 14-S ) (126C); and (p3) The translation parameter (X 1 -X 3 ) by applying a translation along the height axis (z) of the reference frame (TCP) coupled to the print head, the distance measured in step (p2) is adjusted to a predetermined distance (d 0 and (126D) correcting (126A) so that it is equal to (126C).
7. 7. The method according to claim 1, wherein steps (c) and (d) are performed before step (e), and steps (f) and (g) are performed before step (h).
8. 7. The method according to claim 1, wherein the first and second positions are selected arbitrarily.
9. 7. The method according to claim 1 , wherein the or each objective function (F, G) is the sum of the squares of the deviations expressed in step (k) and optionally in step (m2).
10. In step (m), the six parameters (X 1 -X 6 Determining the values of the six parameters (X 1 -X 6 7. The method according to claim 1 , wherein the objective function (F,G) is calculated by:
11. In step (i) and / or step (j), the intersection (I 1,4 BF ) and (I 2,4 BF ) is a representation of the coordinates of the mathematical surface (P) that represents the fixed surface (S). ref BF 7. The method according to claim 1, wherein the intersecting point of the nozzle (B4, B28) with the trajectory line from the corresponding nozzle (B4, B28) is obtained by expressing the intersecting point of the nozzle (B4, B28) with the trajectory line from the corresponding nozzle (B4, B28).
12. A multi-axis robot associated with a base reference frame (BF) and comprising a camera (30) and a print head (10), said print head comprising at least a first nozzle (B4), said camera and print head being mounted on a wrist (21) of said multi-axis robot, characterized in that it comprises an electronic control unit (24, 40) configured to implement a method for calibrating according to one of claims 1 to 4 and 6.
Citation Information
Patent Citations
Method for printing an object with a printed image
DE102016204123A1
AUTOMATED REGISTRATION process FOR THE MANUFACTURE OF SANDWICH PANEL FOR AEROSTRUCTURE NACELLES
FR3061076A1