Method for calibrating multi-axis robot and multi-axis robot
By measuring and adjusting the coordinates of the characteristic points and intersection points of the multi-axis robot printhead at different positions, the position of the printhead is solved, and the problem of complex and unoptimized calibration in the prior art is achieved, and the accurate relative positioning of the printhead and a simplified calibration process is achieved.
Patent Information
- Application Number
- CN202411782489.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-12-05
- Filing Date
- 2024-12-05
- Publication Date
- 2025-06-06
AI Technical Summary
The prior art is complex and unoptimized when calibrating a multi-axis robot equipped with a printhead, making it difficult to achieve easy and accurate printhead setup.
By determining the orientation position of the frame linked to the printhead in the wrist frame, the camera measures the coordinates of the feature points and intersections of the printhead at different positions, the objective function is constructed to minimize deviation, and the six parameters of the transfer matrix are adjusted to calibrate the position of the printhead.
The correct positioning of the printhead in the space is achieved, ensuring the precise relative positioning between the printhead and the surface to be coated, simplifying the calibration process.
Smart Images

Figure CN120095803A_ABST
Abstract
Description
Technical Field
[0001] The invention relates to a method for calibrating a multi-axis robot which is associated with a base frame and is equipped with a camera and a print head. Background Art
[0002] In the field of coating product applications using a multi-axis robot equipped with a print head, it is important to be able to precisely control the operation of this print head, in particular by taking into account the positioning of this print head relative to the surface to be coated. For this purpose, the multi-axis robot is equipped with a camera that can recognize the robot's environment, in particular the surface to be coated, against which the print head will be positioned.
[0003] Until now, the operation of a multi-axis robot equipped with a print head has been based on the assumption that the position and orientation of an orthogonal frame linked to the print head is known relative to a frame linked to the robot wrist and to a fixed base frame at the location where the multi-axis robot is located. The exact position at which this frame is linked to the print head depends in particular on the way and precision in which the print head is mounted on the robot wrist.
[0004] From FR3061076 A1 it is known to calibrate the position of a print head mounted on a robot by performing an automatic verification of the actual position of the print point relative to a reference point of the print head before each operating cycle of the print head and then correcting the deviation between the print point and the reference point of the print head as required. This method is relatively complex to implement and the teachings therein do not optimize the calibration.
[0005] On the other hand, DE 10 2016 204 123 A1 discloses a marking method using a label, wherein precise positioning of a print head is used without explaining how such precise positioning is 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 allow the print head to be easily and accurately set without excessive complexity or the need for the use of labels. Summary of the invention
[0007] To this end, the invention relates to a method for calibrating a multi-axis robot associated with a base frame and equipped with a camera and a print head, said print head comprising at least a first nozzle, said camera and said print head being mounted on the wrist of said multi-axis robot. According to the invention, said method comprises determining the orientation position of a frame linked to the print head in a frame linked to the wrist, said orientation position of the frame linked to the print head being defined by six parameters of a matrix transferred between the frame linked to the print head and the frame linked to the wrist. said method comprises at least the following steps:
[0008] a) aiming a camera at at least one point on a fixed surface in a fixed frame;
[0009] b) determining a mathematical surface representing the fixed surface based on the result of step a);
[0010] c) moving the print head into a first position relative to the fixed surface, wherein the print head is oriented toward the fixed surface;
[0011] d) printing on the fixed surface with at least a first impact through the first nozzle when the print head is in the first position;
[0012] e) measuring the coordinates of a first feature point of the first impact in the base frame using a camera;
[0013] f) moving the print head into at least one second position relative to the fixed surface, the second position being different from the first position, the print head being oriented toward the fixed surface in the second position;
[0014] g) printing with at least a second impact on the fixed surface through the first nozzle when the print head is in the second position;
[0015] h) measuring the coordinates of the second characteristic point of the second impact in the base frame using a camera;
[0016] i) expressing, in the BF base frame and using a transfer matrix, the coordinates of a first intersection point between a mathematical surface representing the fixed surface and a line passing through the first nozzle at the first position;
[0017] j) expressing, in the BF base frame and using the transfer matrix, the coordinates of a second intersection point between the mathematical surface representing the fixed surface and the line passing through the first nozzle at the second position;
[0018] k) for each print head position and each impact, expressing the deviation based on the coordinates of its characteristic points and the coordinates of its intersection points;
[0019] l) constructing an objective function, wherein the variable of the objective function is the deviation represented in step k);
[0020] m) determining values of six parameters of the transfer matrix to minimize the objective function;
[0021] n) Using the six parameters determined in step m) , define the orientation position of the frame linked to the print head in the frame linked to the wrist.
[0022] The steps of the method of the invention make it possible to define the oriented position of the frame linked to the print head in the frame linked to the wrist, which makes it possible to correctly position the print head in space. In other words, the invention makes it possible to know the position and orientation of the print head in the reference frame linked to the wrist of the robot, while the robot model makes it possible to know the position of the wrist in the reference base frame linked to the room in which the robot is installed. The method of the invention thus makes it possible to achieve a precise relative positioning between the print head and the fixed surface to be coated by this print head.
[0023] According to an advantageous but non-mandatory aspect of the present invention, this method may be combined with one or more of the following features in any technically feasible combination:
[0024] - in step d), printing a third impact on the fixed surface by means of a second nozzle;
[0025] - In step e), using a camera to measure the coordinates of a third characteristic point of the third impact in the base frame;
[0026] - in step g), printing a fourth impact on the fixed surface by means of a second nozzle;
[0027] - In step h), using a camera to measure the coordinates of a fourth characteristic point of the fourth impact in the base frame;
[0028] - in step i), expressing, in the base frame, 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, using a transfer matrix;
[0029] - In step j), the coordinates of a fourth intersection point between the mathematical surface representing the fixed surface and the line passing through the second nozzle at the second position are represented in the base frame using a transfer matrix.
[0030] - The axis of the frame linked to the print head is parallel to the ejection direction of the two nozzles of the print head, while the two nozzles are arranged on either side of and equidistant from a reference nozzle of the print head, through which the axis of the frame linked to the print head passes.
[0031] - The six parameters of the transfer matrix can be decomposed into three translation parameters and three rotation parameters. Step m) includes the following sub-steps:
[0032] m1) Determine the three rotation parameters by minimizing the objective function constructed in step l)
[0033] m2) for each print head position and nozzle, representing another deviation based on the coordinates of its characteristic point and the coordinates of its intersection point, the other deviation being different from the deviation represented in step k);
[0034] m3) constructing another objective function, the variable of which is the deviation expressed in sub-step m2);
[0035] m4) Determine three translation parameters to minimize the objective function constructed in step m3)
[0036] -Other differences are expressed as follows:
[0037]
[0038] Or expressed as follows
[0039]
[0040] in
[0041] is another deviation represented in sub-step m2) for position k.
[0042] is the coordinate of the intersection point of the nozzle of position k and sort j in the base frame
[0043] is the coordinates of the feature point of the impact printed by the nozzle at position k and sort j in the base frame
[0044] -T TCP→PG is the transfer matrix from the frame linked to the print head to the frame linked to the wrist;
[0045] is an expression for the origin of the print head relative frame in the print head relative frame.
[0046] - the method comprises a step of correcting the origin of the frame linked to the print head, carried out between steps m) and n), and comprises:
[0047] p1) placing the print head at a position opposite to and perpendicular to the fixed surface, at which position the origin of the frame linked to the print head is in a mathematical surface representing the fixed surface (S);
[0048] p2) measuring the distance between the print head and the fixed surface;
[0049] p3) Correcting the translation parameters by applying a translation along the height axis of the frame linked to the print head so that the distance measured in step p2) is equal to the predetermined distance.
[0050] - Steps c) and d) are carried out before step e), and steps f) and g) are carried out before step h).
[0051] - Arbitrary selection of first and second positions.
[0052] - The or each objective function is the sum of the squares of the deviations expressed in step k) and optionally step m2).
[0053] -The values of the six parameters in step m) are obtained by solving a system of nonlinear equations using partial derivatives starting from nearby positions, according to the least squares method, Newton's method, gradient method, Levenberg-Marquardt method, Newton-Raphson method, secant method, bisection method, and iterative method; or by discretizing the domain of the six parameters around the nearby positions from the nearby positions and evaluating the objective function.
[0054] - During steps i) and / or j), expressions for the coordinates of the points of intersection are obtained by expressing the intersections between a mathematical surface representing the fixed surface and the ballistic line coming from the corresponding nozzle.
[0055] According to another aspect, the invention relates to a multi-axis robot associated with a base frame and equipped with a camera and a print head, the print head comprising at least a first nozzle, the camera and the print head being mounted on the wrist of the multi-axis robot. According to the invention, such a robot comprises an electronic control unit configured to implement a calibration method as described above.
[0056] Such a robot provides the same advantages as the method described in the present invention. BRIEF DESCRIPTION OF THE DRAWINGS
[0057] The invention will be better understood and other advantages of the invention will become more apparent in view of the following description of embodiments of a calibration method and a multi-axis robot according to the principles of the invention, given by way of example only and with reference to the accompanying drawings, in which:
[0058] Figure 1 is a schematic diagram of the principle of a multi-axis robot consistent with the present invention being used together with the method of the present invention;
[0059] Figure 2 yes Figure 1 A schematic diagram of a print head of the robot and geometric reference points associated with the operation of the robot is shown;
[0060] Figure 3 is a schematic diagram of a fixture plate used in the method of the present invention during one stage of the method;
[0061] Figure 4 is a schematic diagram of the same plate in another stage of the invention; and
[0062] Figure 5 is a block diagram of the method of the present invention. DETAILED DESCRIPTION
[0063] Figure 1 The multi-axis robot 20 shown includes a robot body 20 arranged around six axes A. 1 To A 6 The parts articulated together form an arm and a wrist 21 forming the distal end of the arm. According to a variant of the invention not shown, the wrist may be articulated about a seventh axis relative to the end of the arm of the multi-axis robot 20.
[0064] The print head 10 comprises a rigid body 12 equipped with nozzles 14. The print head 10 is mounted on a wrist 21. It is designed to apply a coating product, such as paint or varnish, to an object not shown, such as a motor vehicle body.
[0065] The camera 30 is mounted on the wrist 21 and is secured to the wrist 21 by suitable mechanical means (eg screws or clips). The camera 30 is attached to the wrist 21 in a manner that is strong enough to withstand the accelerations to which the camera is subjected when the robot moves.
[0066] Advantageously, the camera is a CCD or laser camera with one or two cameras (binocular and / or profilometer).
[0067] Consider a fixed BF base frame, which is linked to the room LO where the multi-axis robot 20 is located.
[0068] Consider a PG frame linked to the wrist 21. A model of the robot can be used to switch from a PG frame to a BF frame and vice versa. The model is well known. As a non-limiting example, this can be a "Denavit-Hartenberg" model or a "modified Denavit-Hartenberg" model, also known as a "Khalil Kleinfinger" model or a PoE (Product of Exponents) model.
[0069] We consider a TCP frame linked to the print head 10, which is arranged opposite to the reference nozzle in the longitudinal direction LD of the body 12. Such an oriented frame is sometimes referred to as a "tool center point". The x-axis of the TCP frame is parallel to the longitudinal direction LD, and its origin OTCP is noted, which is the center of the TCP frame.
[0070] In this example, the print head 10 has 32 nozzles distributed on either side of a midplane P12 of the body 12, the midplane P12 containing the y-axis and z-axis of the TCP frame and the x-axis of the frame being perpendicular to the y-axis and z-axis. The midplane P12 is located midway between the longitudinal ends 122 and 124 of the body 12 along the abscissa axis and the longitudinal direction LD.
[0071] j is the rank of the nozzle 14 in a row of nozzles 14, wherein j is a natural number between 1 and 32. Bj is the nozzle of rank j.
[0072] The x-axis of the TCP frame is oriented from nozzle B32 to nozzle B1.
[0073] In the example shown, the reference nozzle is B16. Therefore, the origin O TCP Located opposite nozzle B16.
[0074] The height axis z of the TCP passes through the reference nozzle B16 and is oriented away from the body 12 .
[0075] Alternatively, the reference nozzle is another nozzle in the row of nozzles 14, origin O TCP It is then situated opposite the further nozzle and the height axis z then passes through the further nozzle and is oriented away from the further nozzle.
[0076] Origin O TCP At a height h measured parallel to the z-axis from the outlet of the nearest nozzle 14 O Height h O Set to a value between 2 and 30 mm, preferably 10 mm.
[0077] By convention, the z-height axis of the TCP frame is parallel to and oriented in the spray direction of nozzle 14. The z-height axis is aligned with the spray direction of the reference nozzle (in this case, nozzle B16).
[0078] The y-axis of the TCP frame is perpendicular to the x- and z-axes.
[0079] The calibration method of the present invention consists in determining the oriented position of the TCP reference linked to the print head in the PG reference linked to the wrist 21 .
[0080] This method is implemented in a computer 40, which is Figure 1 The computer 40 is shown in the form of a computer and communicates with a controller 24 arranged in 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 of the multi-axis robot 20.
[0081] Alternatively, the components 24 and 40 of the control unit are formed by a single physical entity, which may be integrated into the base 22 .
[0082] Consider a physical surface S supported by a plate 50, which is fixedly positioned in the room LO near the robot 20, in an area accessible to the print head 10. The robot 20 is able to project coating droplets onto the surface S. The fixed surface S is the surface of the plate 50, which serves as a support for the droplets of the printed coating product.
[0083] The method of the present invention begins at a startup step 100 during which the controller 24 and computer 40 are initialized.
[0084] In a second step 102 of the invention, the robot 20 uses its camera 30 to scan the surface S fixed in the base frame BF. This operation of locating the surface S is performed with the aid of several readings, which are obtained by Figure 3 The aiming point PV continuously adopted by the print head 10 carried by the robot arm 20 1 PV 2 PV N Indicates.
[0085] Using at least one aiming point enables aiming at at least one cloud of points on the fixed surface S. In practice, several aiming points are used, in particular if the fixed surface S is left-handed.
[0086] From each viewpoint PV 1 PV 2 The camera 30 is able to locate one or more point clouds belonging to the fixed surface S as long as they are included in its field of view. Figure 3 It is represented by a tetrahedron.
[0087] Based on the one or more point clouds identified by the camera 30 during this step 102, the computer 40 determines during a step 104 a mean plane, on the surface S as Figure 3 In the case of a flat surface such as the one in Figure 1, the average plane passes through all these point clouds as much as possible. This can be determined, for example, using the method of least squares. The determination makes it possible to construct a geometric reference plane representing the fixed surface S It is fixed in the BF base frame. From the origin and normal At the end of step 104, the plane is a mathematical reference surface representing the fixed surface S and is known to the computer 40 .
[0088] In the example shown, the fixing surface S is flat and the reference plane coincides with the surface S.
[0089] Alternatively, the surface S may be cylindrical, pyramidal, spherical or any other shape. In this case, step 104 comprises determining an average shape associated with the cylindrical, pyramidal, spherical or any other surface S.
[0090] At the end of step 104 , a mathematical reference surface representing the surface S is obtained.
[0091] To implement the method of the 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 equipped with the print head 10. They are used by printing drops on the surface S, by bringing the print head 10 into different positions (in Figure 4 Used during the step of obtaining a point (represented by three positions in the figure).
[0092] K is the number of printing positions for dot acquisition, where K is a natural number greater than 1. k is a sequence number of positions for acquiring dots, where k is a natural number between 1 and K. Each position of the print head 10 corresponds to a position of the wrist 21, and vice versa. Therefore, hereinafter, the position k is referred to as the position of the print head 10 or the position of the wrist 21 or both. At each of these positions, the print head faces the fixed surface S of the plate 50.
[0093] According to the calibration method of the robot 20 , the print head is brought into a first position relative to the fixed surface S, where k is equal to 1. In step 106 , the robot activates certain nozzles 14 on the print head to print a stroke on the fixed surface S with each nozzle activated.
[0094] L is the number of activated nozzles 14 in each position of the print head 10, ie the number of droplets printed on the surface S in each position.
[0095] In the version of the invention explained in detail below with reference to the accompanying drawings, L is 2, which corresponds to the selection of a pair of nozzles. Advantageously, the selected nozzles are equidistant from the reference nozzle along the x-axis of the TCP frame. In the example, these are the nozzles B4 and B28 mounted on the body 12, equidistant from the reference nozzle B16.
[0096] Alternatively, another pair of nozzles 14 may be used, preferably equidistant from the reference nozzle.
[0097] During step 106 , nozzle B4 prints a strike on fixed surface S, and nozzle B28 prints another strike on fixed surface S.
[0098] In general, we note that when the wrist is in position k, the characteristic point corresponding to the geometric center of the impact of the droplet deposited on the surface S by the nozzle of order j in the BF base frame is Therefore, we pay attention to the characteristic points of the impact applied by nozzle B4 and the characteristic points of the impact printed by nozzle B28 respectively when the wrist is in position k.
[0099] For each position k of the print head 10, define Extend to feature point Vector
[0100] We have the following relationship:
[0101]
[0102] Each vector The computer 40 can be based on the feature points and is determined and recognized by the camera 30 .
[0103] Alternatively, the number L is strictly greater than 2, for example equal to 5 or 7, which makes it possible to define the vector A number of vectors of type .
[0104] In step 108 of the method, the feature points are measured by the camera 30 The camera 30 locates the impact of the droplet deposited on the surface S, and the vector is then calculated by the computer 40.
[0105] The multi-axis robot 20 then moves the print head to at least one second position relative to the fixed surface S, which second position is different from the first position and the print head 10 is also oriented toward the fixed surface. In the second position of the wrist 21 and the print head 10, k is 2.
[0106] In step 110 , the robot activates the same nozzles B4 and B28 of the print head as in step 106 to print on the fixed surface S a second stroke with nozzle B4 and another stroke with nozzle B28 .
[0107] Other strokes printed using nozzle B28 when the print head 10 is in the first position and the second position, respectively, may be considered as the third and fourth strokes.
[0108] In step 112, the camera 30 measures the feature points and The camera 30 detects the impact of the droplet deposited on the surface S, and the computer 40 then calculates the vector
[0109] If K is strictly greater than 2, steps 106 and 108 are repeated as many times as necessary using positions different from the first two positions and from each other, where k is between 3 and K.
[0110] The position of wrist 21, which determines the position of print head 10, is chosen arbitrarily, and for k between 1 and K, is pairwise different.
[0111] We note that when the print head 10 is at position k, the positions of nozzle B4 and nozzle B28 in the BF base frame are and
[0112] In the TCP frame on the print head 10, due to the definition and construction of the print head 10, these two positions and is considered known.
[0113] These positions can also be expressed in the BF basis framework by the following two equations:
[0114]
[0115] in
[0116] is the transformation matrix from the wrist PG frame to the BF base frame when the print head 10 is in position k, and
[0117] -T TCP→PG is the transfer matrix from the TCP frame to the PG wrist frame.
[0118] The first transfer matrix is an orthogonal matrix defined for each position k, whereas the second transfer matrix is independent of the position k of the print head 10 .
[0119] The second transfer matrix can be expressed as
[0120]
[0121] Therein, the sixteen coefficients of the second transfer matrix are expressed as functions of six parameters X1 to X6.
[0122] Parameter X 1 , X 2 and X 3 corresponds to the translation of the center of the TCP frame linked to the print head relative to the center of the PG frame linked to the wrist 21, and the parameter X 4 , X 5 and X 6 corresponds to the rotation angles of the axes of the two reference frames relative to each other. In the case of the matrix presented in Equation 4, these are angles in the Roll-Pitch-Yaw convention.
[0123] Alternatively, another representation of these angles may be used.
[0124] Knowing the second matrix T TCP→PG It enables the TCP frame to be positioned in the PG frame linked to the wrist and thus calibrates the print head, which forms the tool of the robot 20. The method of the invention enables the parameters X1 to X6 and thus this second matrix to be determined.
[0125] We also note that in the BF framework, the mathematical reference surface Coordinates of the intersection point with line D4 or D28 and The straight lines D4 and D28 pass through the nozzle B4 or nozzle B28 respectively and are parallel to the direction in which the coating product is ejected from the nozzle in question. More generally, Specifies the mathematical reference surface in the BF base frame The coordinates of the intersection point with the straight line passing through the nozzle of sort j.
[0126] Regardless of the position k, by constructing 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 the frame. In step 114, each position or The straight line D4 or D28 calculated by the computer 40 as corresponding to the nozzle B4 or B28 at the position k of the print head and the plane The intersection points of the representative mathematical surfaces formed.
[0127] At each position k, each intersection or The coordinates of are represented by the computer 40 as the position of the corresponding nozzle B4 or B28 or And the transfer matrix and T TCP→PG In particular, each intersection point or The coordinates of depend on the second transfer matrix T TCP→PG , and therefore depends on its parameters X1 to X6.
[0128] In practice, in step 114, each intersection is represented by or The coordinates at the first position, where k is equal to 1, and in step 116 represent each intersection point or The coordinates at the second position, where k is equal to 2.
[0129] The order of steps 114 and 116 is not limiting. They can also be performed simultaneously.
[0130] For each position k of the print head 10 or wrist 21, define Extend to intersection We have the following relationship:
[0131]
[0132] Each vector can be calculated by the computer 40 and also depends on the second transfer matrix T TCP→PG and its parameters X1 to X6, since this is the intersection point and situation.
[0133] In theory, the location and Should be the same as position and Same. Vector and Therefore, they should be superimposed. However, this is not the case in practice, e.g. Figure 4 Vector in and and / or vector and shown.
[0134] In step 120, for each position k of the wrist 21, i.e., each position of the print head, in the vector and First deviation And the computer 40 represents as follows:
[0135] in
[0136] is the first transfer matrix mentioned above;
[0137] and is the position of the intersection of position k represented in the PG frame of the wrist 21, and
[0138] and It is the position of the droplet impact center at position k represented in the PG frame of the wrist 21.
[0139] This can be expressed as follows:
[0140]
[0141] Since the matrix are orthogonal, so the vector and The difference between can also be expressed as:
[0142]
[0143] Equation 6 is the bias in the BF base framework , while Equation 8 is the expression for the same deviation in the wrist PG frame. The deviation vector The length of is the same in both cases.
[0144] Similar to intersection or The coordinates of the deviation depend on the second transfer matrix T TCP→PG , and therefore depends on its parameters X1 to X6.
[0145] Each deviation This can be considered as an error due to inaccurate positioning of the TCP frame in the PG frame, which must be minimized so that the measurement in the TCP frame of the print head 10 is as accurate as possible in the BF base frame by adjusting parameters X1 to X6 (as they are involved in defining this deviation).
[0146] In a subsequent step 122, the target function F is constructed by the computer 40 as the sum of the squares of the deviations determined in step 120 for all positions k in the form of:
[0147]
[0148] In a step 124 following step 122, also implemented by computer 40, the objective function F is minimized so that the values of the parameters X1 to X6 can be determined which reduce the overall deviation of the individual positions.
[0149] Step 124 comprises a first sub-step 124A in which the objective function F is minimized by adjusting only the rotation parameters X4 to X6. This makes it possible to determine the optimal values of these three parameters.
[0150] The minimization of the objective function F in sub-step 124A is advantageously performed by solving the system of nonlinear equations using partial derivatives starting from a nearby position using the method of least squares.
[0151] Alternatively, the nonlinear system of equations may be solved by Newton's method, gradient method, Levenberg-Marquardt method, Newton-Raphson method, secant method, bisection method, or iterative method.
[0152] According to yet another variant, the nonlinear system of equations can be solved starting from the nearby position by discretizing the domain of six parameters X1-X6 around the nearby position and evaluating the objective function F according to these parameters.
[0153] Then, in a second sub-step 124B, the computer 40 expresses another deviation Also called second deviation.
[0154] The second deviation Different from the first deviation And it represents the OTCP center and midpoint of the TCP frame The offset between It is located at the feature point in the BF basic framework and A point at a mid-distance between .
[0155] In sub-step 124B of step 124, for each wrist position k, the deviation It is represented by the computer 40 as:
[0156]
[0157] in, It is the origin O of the TCP frame in the PG frame TCP expression.
[0158] In a subsequent sub-step 124C of step 124, the target function G is constructed by the computer 40 as the sum of the squares of the second deviations determined in sub-step 124B for all positions k, in the form of:
[0159]
[0160] Step 124 comprises a sub-step 124D in which the objective function G is minimized by adjusting only the translation parameters X1 to X3. This makes it possible to determine the optimal values of these three parameters.
[0161] Advantageously, the objective function G is minimized by solving the nonlinear system of equations using a second method, which can be the same as or a different method from the method for minimizing the objective function F. The method of least squares is particularly suitable here. The method used is preferably selected from the methods listed above for minimizing the objective function F.
[0162] The result of the two sub-steps 124A and 124D is that the parameters X1 to X6 are optimized so that the orientation of the reference TCP frame and its origin position OTCP are known with good accuracy in the reference PG wrist frame.
[0163] This can be satisfied and the process proceeds directly to step 128 where the computer 40 constructs a second transfer matrix T using the six parameters X1-X6 determined in step 124. TCP→PG And define the directional position of the TCP frame in the PG frame.
[0164] In this case, the position of the origin OTCP along the z-height axis of the TCP frame is not explicitly known.
[0165] To find this position, the method of the invention comprises an optional step 126 of correcting the position of the origin OTCP along the z height axis of the TCP frame. This step 126 is implemented between steps 124 and 128.
[0166] During this step 126 , the coordinates of the reference theoretical TCP frame in the reference PG wrist frame are used, which are known to the robot 20 , as described above.
[0167] During sub-step 126A of step 126, the robot 20 places the print head 10 facing the fixed surface S, arranging the x-axis and y-axis of the TCP frame, which are defined by the parameters X1 to X6 optimized in step 124, 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 sub-step 126A, the robot moves the print head toward the fixed surface until the origin OTCP of the TCP frame is located within the fixed surface S.
[0168] In sub-step 126B of step 126 , the computer 40 projects the position of the origin OTCP of the theoretical frame onto a straight line of the height of the TCP frame defined by the parameters X1 to X6 optimized in step 124 .
[0169] In a sub-step of step 126C, the distance d14-S between one of the nozzles 14 and the fixed surface S is then 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. The measuring step can be performed automatically using a measuring device (such as a laser) mounted on the print head or the surface S. Alternatively, the measurement can be performed by an operator using a measuring device (e.g., a ruler or caliper) independent of the robot 20.
[0170] In a sub-step 126D following the sub-step 126C of step 126, the position of the origin OTCP of the TCP frame, defined by the parameters X1 to X6 optimized in step 124, is corrected so that the distance d14-S is equal to a predetermined value d0, for example 10 mm. This is equivalent to placing the center of the TCP frame, defined by the parameters X1 to X6 optimized in step 124, at a predetermined distance d0 (in this case 10 mm) from the fixed surface S.
[0171] We note the distance dcorr, by which the position of the origin OTCP is corrected in substep 126D. We have the following relationship:
[0172] d corr =d 14-S -d 0 (Equation 12)
[0173] New parameter X' 1 , X' 2 and X' 3 , which ends in step 126 to define the origin O TCPThe position of and calculated in sub-step 126D is defined by the following relationship:
[0174]
[0175] Then, the parameter X' 1 , X' 2 and X' 3 Used as new optimization parameters X1, X2 and X3.
[0176] Changing the parameters X1 to X3 to take values X'1 to X'3, respectively, is equivalent to applying a translation along the z-axis of the TCP frame so that the measured distance d14-S becomes equal to the predetermined value d0.
[0177] In step 128, in the second transfer matrix T TCP→PG The six parameters X1 to X6 determined and optimized in step 124 are used, some of which parameters X1 to X3 may have been corrected in step 126, to define the directional position of the TCP frame in the PG frame.
[0178] At the end of step 128 , the position and orientation of the TCP frame in the PG frame is accurately and uniquely determined, and the multi-axis robot 20 is calibrated to operate the print head in an optimized manner by accurately moving the print head relative to the fixed surface S.
[0179] The invention is not limited to the embodiments shown in the figures and the variants described above.
[0180] Alternatively, for each position k of the wrist 21, the vector may be expressed according to one of the following methods: and The first deviation between:
[0181]
[0182] In equations 14 and 15, the objective function F is the same as defined in equation 9. In equations 16 to 19, the objective function F is expressed, for example, as:
[0183]
[0184] Then, steps 124, 126 and 128 are adjusted.
[0185] According to another variation of the present invention, the second deviation is expressed in sub-step 124B as:
[0186]
[0187] Then, step 124 and the remainder of steps 126 and 128 are adjusted.
[0188] According to a variant of the invention not represented, the impacts printed during steps 106 and 110 are used to calculate, for each position k of wrist 21, a defined deviation which is defined at the characteristic point The coordinates of the intersection point defined above The objective function is then defined based on this deviation, for example, as the sum of the squares of these deviations for all positions k (k between 1 and K) and all nozzles l (l between 1 and L). This function is then minimized, for example using the least squares method or another method described above, so that the transfer matrix T defined above can be determined TCP→PG In this case, the vector and In this case, the six parameters X1 to X6 are optimized in a common step, rather than in two consecutive steps, such as the above-mentioned sub-steps 124A and 124D. A correction step, such as step 126, is advantageously implemented.
[0189] According to another variant of the invention (not shown), the mass, shape, size and / or velocity of the droplets are taken into account when calculating the intersection points. In other words, the straight lines D4, D28 and equivalent can be replaced by curves that take into account the ballistic effect of the coating product sprayed by the nozzle 14, which ballistic effect is caused by the mass of the droplets, the shape of the droplets, the size of the droplets and the velocity of the droplets. Whether straight or curved, a line passing through the nozzles B4 and / or B28 or another nozzle is used to define each intersection point, taking into account the ballistics.
[0190] Alternatively, at least one of the objective functions F and G is constructed without using the squares of the deviations. These functions may be equal to, for example, the sum of the absolute values of the deviations or another value calculated from the deviations.
[0191] Steps 102 and 104 may be performed at any time before steps 114 and 116 .
[0192] The steps of the invention do not have to be repeated each time the robot 20 is put into use. In fact, when the orientation position of the TCP reference frame is known in the PG reference frame, at the end of step 128, it is considered to be constant.
[0193] The steps of the method of the present invention are preferably performed automatically by a control unit formed by components 22 and 40. Step 126A may also be performed manually by an operator.
[0194] Any features described above for one embodiment or variation may be implemented for the other embodiments and variations described above to the extent technically feasible.
Claims
1. A method for calibrating a multi-axis robot (20) associated with a base frame (BF) and equipped with a camera (30) and a print head (10), the print head comprising at least a first nozzle (B4), the camera and the print head being mounted on a wrist (21) of the multi-axis robot, the method comprising determining the orientation position of a frame (TCP) associated with the print head (10) in a reference frame linked to the wrist (21), the orientation position of the frame linked to the print head being determined by a transfer matrix (T) between the frame (TCP) linked to the print head and the frame (PG) linked to the wrist TCP→PG ), the method at least comprising the following steps: a) aiming (102) the camera (30) at a first point on a fixed surface (S) in the base frame (BF); c) bringing the print head into a first position relative to the fixed surface (S), the print head being oriented towards the fixed surface in the first position; d) printing (106) on the fixed surface with at least one first impact through the first nozzle (B4) when the print head is in the first position; e) using the camera (30), measuring (108) a first characteristic point of the first impact coordinates in said base frame; f) bringing the print head into at least one second position relative to the fixed surface (S), the second position being different from the first position, the print head being oriented towards the fixed surface in the second position; g) printing (110) with at least one second impact on the fixed surface through the first nozzle (B4) when the print head is in the second position; h) using the camera, measuring (112) a second characteristic point of the second impact coordinates in said base frame; Characterized in that the method further comprises at least the following steps: b) determining (104) a mathematical surface representing the fixed surface according to the result of step a) i) Using the transfer matrix (T) in the base framework (BF) TCP→PG ), indicating that (114) represents the mathematical surface of the fixed surface (S) A first intersection point with a line (D4) passing through the first nozzle (B4) at the first position The coordinates of j) using the transfer matrix (T) in the base frame (BF) TCP→PG ), representing a second intersection point between a mathematical surface representing the fixed surface and a line passing through the first nozzle (B4) at the second position The coordinates of k) For each position and each impact of the print head, based on its characteristic point The coordinates of and their intersection points The coordinates are used to represent the (120) deviation l) constructing (122) an objective function (F), the variable of which is the deviation represented in step k) m) determine (124) the transfer matrix (T TCP→PG ) to minimize the objective function (F); n) using (128) the six parameters (X1-X6) determined in step m) to define the orientation position of the frame (TCP) linked to the print head (10) in the frame linked to the wrist (21).
2. The method according to claim 1, performed using a print head comprising at least one second nozzle (B28), characterized in that: - In step d), the second nozzle (B28) is used to spray a liquid on the fixed surface (S) Print the third impact on top; - In step e), using the camera (30) to measure the third characteristic point of the third impact coordinates in the base frame (BF); - in step g), printing on the fixed surface by means of the second nozzle (B28) Fourth Impact; - In step h), using the camera to measure the fourth characteristic point of the fourth impact coordinates in said base frame; - In step i), in the base frame (BF) using the transfer matrix (T TCP→PG ), representing a mathematical surface representing the fixed surface (S) A third intersection point between the line (D28) passing through the second nozzle at the first position The coordinates of - In step j), in the base frame (BF) using the transfer matrix (T TCP→PG ), representing the mathematical surface representing the fixed surface (S) and the surface passing through the fixed surface at the second position The fourth intersection point between the line (D28) of the second nozzle The coordinates of .
3. The method according to claim 1, characterized in that The axis (z) of the frame (TCP) linked to the print head (10) is parallel to the ejection direction of the two nozzles (B4, B28) of the print head, and The two nozzles are arranged on either side of a reference nozzle (B16) of the print head and are equidistant from the reference nozzle of the print head.
4. The method according to claim 1, characterized in that: The transfer matrix (T TCP→PG ) can be decomposed into: three translation parameters (X1-X3); and Three rotation parameters (X4-X6), Step m) comprises the following sub-steps: m1) is determined (124A) by minimizing the objective function (F) constructed in step 1). The three rotation parameters (X4-X6) m2) For each print head position and each nozzle (B4, B28), based on its feature point The coordinates of and their intersection points The coordinates of another deviation The further deviation is different from the deviation indicated in step k); m3) constructing (124C) another objective function (G), the variables of which are the deviations expressed in sub-step m2); m4) determining (124D) the three translation parameters (X1-X3) by minimizing the objective function (G) constructed in step m3).
5. The method according to claim 4, characterized in that The other deviation is expressed in the following form: Or expressed as follows in - is another deviation expressed in substep m2) for position k, - are the coordinates of the intersection point of the nozzle of order j for position k in the base frame (BF), - are the coordinates of the characteristic point of the impact printed by the nozzle of position k, order j in the base frame (BF), -T TCP→PG is the transfer matrix from the frame (TCP) linked to the print head (10) to the frame (PG) linked to the wrist (21), - is the origin (O) of the print head frame in the print head frame TCP ) expression.
6. The method according to claim 4, characterized in that The method comprises the correction of the origin (O) of the frame (TCP) linked to the print head (10) carried out between steps m) and n). TCP ) steps, and comprising: p1) placing (126A) the print head (10) facing the fixed surface (S) and perpendicular to the fixed surface at a position at which an origin (O TCP ) in a mathematical surface representing the fixed surface (S) middle; p2) measuring (126C) the distance (d) between the print head (10) and the fixed surface (S) 14-S ); p3) correcting said translation parameters (X1-X3) by applying a translation along the height axis (z) of a frame (TCP) linked to said print head so that the distance measured in step p2) is equal to a predetermined distance (d0).
7. The method according to any one of claims 1 to 6, characterized in that Steps c) and d) are performed before step e), Steps f) and g) are performed before step h).
8. The method according to any one of claims 1 to 6, characterized in that The first position and the second position are arbitrarily selected.
9. The method according to any one of claims 1 to 6, characterized in that 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. The method according to any one of claims 1 to 6, characterized in that The values of the six parameters (X1-X6) in step m) are: By solving a system of nonlinear equations by using partial derivatives starting from a nearby position, according to the method of least squares, Newton's method, gradient method, Levenberg-Marquardt method, Newton-Raphson method, secant method, bisection method, iterative method; or It is determined by discretizing a domain of six parameters (X1-X6) around a nearby location and evaluating the objective function.
11. The method according to any one of claims 1 to 6, characterized in that During steps i) and / or j), the fixed surface (S) is represented by a mathematical surface The intersection point ( and ) to obtain the expression of the coordinates of the intersection point.
12. A multi-axis robot associated with a reference base frame (BF) and equipped with a camera (30) and a print head (10), the print head comprising at least a first nozzle (B4), the camera and the print head being mounted on a wrist (21) of the multi-axis robot, characterized in that The robot comprises an electronic control unit (24, 40) configured to implement the method according to one of claims 1 to 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