Zero calibration system and method for a robot based on binocular vision technology and LM algorithm

Through binocular vision technology and LM algorithm robot zero-point calibration system, combined with binocular camera and motion controller, high-precision automatic calibration of robot zero-point is realized, solving the problems of low zero-point calibration accuracy and insufficient automation in the existing technology.

CN115741720BActive Publication Date: 2025-07-08HEFEI UNIV OF TECH

Patent Information

Application Number
CN202211604577.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-12-13
Publication Date
2025-07-08
Estimated Expiration
2042-12-13

AI Technical Summary

Technical Problem

In the prior art, the robot zero-point calibration method has low accuracy and insufficient automation, and it is difficult to perform efficient and accurate calibration especially in the case of zero-point loss.

Method used

The robot zero-point calibration system based on binocular vision technology and LM algorithm is adopted, combined with a binocular camera and motion controller, and the robot zero-point calibration is realized through binocular ranging and LM algorithm optimization.

Benefits of technology

It improves the accuracy and automation of zero point calibration, reduces calibration costs, and improves calibration speed.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115741720B_ABST
    Figure CN115741720B_ABST
Patent Text Reader

Abstract

The present invention discloses a zero-point calibration system for a robot based on binocular vision technology and the LM algorithm, which includes a robot, a motion controller, a host computer, a target, and a binocular camera fixedly installed at the end of the robot; a zero-point calibration method for a robot based on binocular vision technology and the LM algorithm is also disclosed, including: S1: preliminarily calibrating the zero points of each joint according to the marks on the robot body; S2: recording the joint angle values of the robot when the end of the robot reaches several points and the spatial coordinates of the target point relative to the camera; S3: establishing a forward kinematics model and an error model of the robot to obtain the deviation of the current zero-point position of each joint relative to the actual zero-point position; S4: iteratively optimizing the parameters to be calibrated through the LM algorithm to obtain the calibrated parameters; S5: inputting the obtained calibrated parameters into the motion controller of the industrial robot for error compensation to complete the zero-point calibration of the robot.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of robots, and in particular to a zero-point calibration system and method for a robot based on binocular vision technology and the LM algorithm. Background Art

[0002] The zero point is the reference of the robot coordinate system. Without the zero point, the robot cannot determine its own position. Usually, before leaving the factory, industrial robots will calibrate their mechanical parameters and give the parameters and zero-point positions of each axis of the industrial robot. However, in some unexpected situations, problems such as zero-point loss may occur, such as sudden power failure, battery depletion, exceeding the mechanical limit position, colliding with the environment, manually moving the robot joints, etc. Currently, in most cases, manual zeroing is carried out according to the zero-point mark position on the robot body. This zeroing method is simple, but the zero-point calibration position has a low accuracy. At the same time, in some cases, it is not easy to view the zero-point mark position of the robot's installation position, or the mark position on the robot body is not clear enough, then it will be very difficult to calibrate the zero point of the robot.

[0003] Therefore, there is an urgent need to provide a new zero-point calibration system and method for a robot based on binocular vision technology and the LM algorithm to solve the above problems. Summary of the Invention

[0004] The technical problem to be solved by the present invention is to provide a zero-point calibration system and method for a robot based on binocular vision technology and the LM algorithm, which can improve the zero-point calibration accuracy. And this method combines the secondary development of the robot communication module to achieve automatic calibration of the robot, improve the calibration speed, and reduce the calibration cost.

[0005] To solve the above technical problems, a technical solution adopted by the present invention is: to provide a zero-point calibration system for a robot based on binocular vision technology and the LM algorithm, including a robot, a motion controller, a host computer, a target, and a binocular camera fixedly installed at the end of the robot;

[0006] The robot is used to execute motion planning and drive the binocular camera to move to multiple specified positions;

[0007] The target is fixedly installed, and the spatial coordinates of its center point relative to the robot base coordinate system are (x p , y p , z p ), serving as the target point for camera detection;

[0008] The motion controller is used to carry the server-side program, establish data interaction with the host computer, and control the movement of the robot body;

[0009] The host computer is used to run the calibration algorithm program, send motion control instructions, process the images of the target points collected by the binocular camera, and perform data interaction with the motion controller.

[0010] In a preferred embodiment of the present invention, the robot motion controller establishes a communication connection with the host computer using a socket communication protocol based on the TCP / IP protocol. The robot motion controller serves as the server side of the socket communication, and the host computer serves as the client.

[0011] To solve the above technical problems, another technical solution adopted by the present invention is: to provide a zero-point calibration method for a robot based on binocular vision technology and the LM algorithm. Using the zero-point calibration system for a robot based on binocular vision technology and the LM algorithm as described above, the method includes the following steps:

[0012] S1: Preliminarily calibrate the zero points of each joint according to the marks on the robot body;

[0013] S2: Uniformly select several points in the working space of the industrial robot, make the robot end reach these points, and use the binocular camera to collect the image information of the target. According to the image, use binocular ranging technology to calculate the spatial coordinates of the target center relative to the camera, and record the joint angle values of the robot at each point and the spatial coordinates of the target point relative to the camera.

[0014] S3: Establish a forward kinematics model and an error model of the robot, and obtain the parameters to be calibrated, that is, the deviations (Δθ1, Δθ2, Δθ3, Δθ4, Δθ5, Δθ6) of the current zero positions of each joint relative to the actual zero positions;

[0015] S4: According to the data recorded and collected in step S2 and the forward kinematics model and error model of the robot in step S3, use the LM algorithm to iteratively optimize the parameters to be calibrated and obtain the calibrated parameters;

[0016] S5: Input the calibrated parameters obtained in step S4 into the industrial robot motion controller for error compensation to complete the zero-point calibration of the robot.

[0017] In a preferred embodiment of the present invention, in step S2, the specific steps for obtaining the spatial coordinates of the target center according to the target image collected by the binocular camera are as follows:

[0018] S201: Calibrate the binocular camera using a checkerboard based on binocular ranging theory to obtain the internal parameter matrices M L 、M R of the left and right cameras and the distortion parameters k, p, and perform binocular calibration on the left and right cameras to obtain the rotation matrix R and translation vector T of the left camera relative to the right camera;

[0019] S202: According to the monocular internal parameter data obtained after camera calibration and the binocular relative position relationship, perform distortion elimination and row alignment on the left and right views respectively, so that the imaging origin coordinates of the left and right views are the same, the optical axes of the two cameras are parallel, the left and right imaging planes are coplanar, and the epipolar lines are row-aligned, and obtain the corrected cameras;

[0020] S203: Use the semi-global stereo matching algorithm to perform stereo matching on the stereorectified faulty arc image to obtain the disparity map of the target image;

[0021] S204: Obtain the pixel coordinates of the center point of the circular target in the image through image processing technology;

[0022] S205: According to the pixel coordinates in S204, find the disparity of the corresponding pixel points in S203. According to the camera internal parameter matrix and the translation vector in S201, obtain the camera focal length f and the baseline B, and obtain the spatial coordinates (x m , y m , z m ) of the center point of the target relative to the camera.

[0023] In a preferred embodiment of the present invention, the specific steps of step S3 include:

[0024] S301: Establish a robot DH kinematic model according to the robot link coordinate system. The link length a i is the distance that z i-1 moves along the x i axis to z i ; the link twist angle α i is the distance that z i-1 rotates around the x i axis to z i ; the joint offset d i is the distance that x i-1 moves along the z i-1 axis to x i ; the joint rotation angle θ i is the angle that x i-1 rotates around the z i-1 axis to x i ; the homogeneous transformation matrix of adjacent joints:

[0025]

[0026] Among them, cθ i = cosθ i , sθ i = sinθ i ; for a six-degree-of-freedom joint robot, the forward kinematic model of the robot is:

[0027]

[0028] S302: The central position of the camera is obtained by right-multiplying a translation transformation matrix to the robot kinematic equation, i.e.:

[0029]

[0030] where, represents the transformation matrix of the camera center coordinate system relative to the robot base coordinate system, represents the transformation matrix of the camera center coordinate system relative to the 6th joint coordinate system of the robot, p cx , p cy , p cz represents the position coordinates of the main camera relative to the 6th joint coordinate system of the robot;

[0031] The spatial coordinates of the camera center relative to the robot base coordinate system can be obtained through calculation:

[0032] x nc = p cx n x + p cy o x + p cz a x + p x

[0033] y nc = p cx n y + p cy o y + p cz a y + p y

[0034] z nc = p cx n z + p cy o z + p cz a z + p z

[0035] The nominal position P n = (x nc , y nc , z nc ) T ;

[0036] S303: According to the spatial coordinates (x m , y m , z m ) of the target point relative to the camera obtained in step S2 and the spatial coordinates (x p , y p, z p ), obtain the actual spatial coordinates of the camera relative to the robot's polar coordinate system:

[0037] x cc = x p - x m

[0038] y cc = y p - y m

[0039] z cc = z p - z m

[0040] Obtain the actual position P of the camera center c = (x cc , y cc , z cc ) T ;

[0041] S304: Obtain the camera position error:

[0042]

[0043] where ΔP = (ΔP x , ΔP y , ΔP z ) T ;

[0044] Perform total differential processing on the kinematic equation, and the camera position error can be approximately expressed as:

[0045] ΔP = J δ Δδ

[0046] where, J δ is a 3×6 matrix, called the error coefficient matrix, that is

[0047]

[0048] Δδ is a 1×6 vector composed of geometric parameter errors to be identified, that is:

[0049] Δδ = (Δθ1, Δθ2, Δθ3, Δθ4, Δθ5, Δθ6) T ;

[0050] S305: According to the L groups of data obtained in step S2 and the above calculation process, obtain the sum of the camera position errors as the objective function:

[0051]

[0052] where Pn (θ i , Δδ) represents the nominal position of the camera calculated from the i-th group of data when Δθ = Δδ.

[0053] In a preferred embodiment of the present invention, the specific steps of step S4 include:

[0054] Continuously iteratively update Δδ using the LM algorithm to minimize the objective function S. Calculate S after each iteration until the calibration parameter Δδ that satisfies the requirement S < e is obtained, where e is the judgment condition threshold. The iterative formula of the LM algorithm is:

[0055]

[0056] where k is the number of iterations, λ is the damping coefficient, λ > 0; I is the identity matrix;

[0057] During the iteration process, the LM algorithm adjusts the value of λ by introducing the parameter μ to control the calculation accuracy and make the parameter error continuously approach the accurate value, where μ > 1.

[0058] The beneficial effects of the present invention are: The zero-point calibration method of the robot based on binocular vision technology and the LM algorithm uses the binocular ranging method to replace the commonly used laser ranging method, reducing the cost of robot zero-point calibration. Combining with the LM algorithm, the calibration accuracy is relatively high; at the same time, combined with network communication technology, a robot zero-point calibration software is designed to achieve automated zero-point calibration. BRIEF DESCRIPTION OF THE DRAWINGS

[0059] Figure 1 is a schematic diagram of the system structure of a preferred embodiment of the zero-point calibration system of the robot based on binocular vision technology and the LM algorithm of the present invention;

[0060] Figure 2 is a schematic diagram of the FANUC robot link coordinate system;

[0061] Figure 3 is a flow chart of parameter identification based on the LM algorithm;

[0062] Figure 4 is a schematic diagram of the communication mechanism between the upper computer and the robot motion controller;

[0063] Figure 5 is a schematic diagram of the zero-point calibration interface of the FANUC robot of the present invention;

[0064] Figure 6 is a schematic diagram of the change curve of the error with the number of iterations;

[0065] Figure 7 is a schematic diagram of the error comparison before and after error calibration.

[0066] The markings of each component in the drawings are as follows: 1. Robot, 2. Binocular camera, 3. Target, 4. Motion controller, 5. Host computer. Detailed implementation mode

[0067] The following elaborates on the preferred embodiments of the present invention in conjunction with the drawings, so that the advantages and features of the present invention can be more easily understood by those skilled in the art, thereby making the protection scope of the present invention more clearly defined.

[0068] Please refer to Figure 1 , the embodiments of the present invention include:

[0069] A zero-point calibration system for a robot based on binocular vision technology and the LM algorithm, including a robot 1, a motion controller 4, a host computer 5, a target 3, and a binocular camera 2 fixedly installed at the end of the robot 1. The robot 1 is used to execute motion planning and drive the binocular camera 2 to move to multiple specified positions. In this example, the robot 1 is a 6R type FANUC industrial robot. The target 3 is fixedly installed, and the spatial coordinates of its center point relative to the robot base coordinate system are (x p , y p , z p ), serving as the target point for camera detection; the binocular camera 2 is fixedly installed at the end of the robot 1 and is used to collect image information of the target point. The homogeneous transformation matrix of the camera coordinate system relative to the robot end coordinate system is The motion controller 4 is used to carry the server-side program, establish data interaction with the host computer 5, and control the movement of the robot 1 body; the host computer 5 is used to run the calibration algorithm program, send motion control instructions, process the images of the target points collected by the binocular camera 2, and perform data interaction with the motion controller 4.

[0070] Among them, the robot motion controller 4 establishes a communication connection with the host computer 5 using the socket communication protocol based on the TCP / IP protocol. The robot motion controller 4 serves as the server side of the socket communication, and the host computer 5 serves as the client.

[0071] The binocular vision system is adopted in this calibration system. The binocular vision system is used to measure the three-dimensional coordinate information of the target point and adopts the Eye-in-Hand installation method, where the left camera is the main camera, and the spatial coordinates of the target point relative to the camera, that is, the spatial coordinates of the target point relative to the optical center of the main camera.

[0072] Using this zero-point calibration system, in this example of the present invention, a zero-point calibration method for a robot based on binocular vision technology and the LM algorithm is also provided, including the following steps:

[0073] S1: Complete the preliminary calibration of the zero points of each joint according to the marks on the robot body;

[0074] S2: Uniformly select several points in the working space of the industrial robot, make the robot end reach these points, use the binocular camera to collect the image information of the target, and calculate the spatial coordinates of the target center relative to the camera using the binocular ranging technology according to the image. Record the joint angle values of the robot at each point and the spatial coordinates of the target point relative to the camera. The specific steps for obtaining the spatial coordinates of the target center according to the target image collected by the binocular camera are as follows:

[0075] S201: Calibrate the binocular camera using a checkerboard based on the binocular ranging theory to obtain the internal parameter matrices M L 、M R of the left and right cameras and the distortion parameters k, p, and perform binocular calibration on the left and right cameras to obtain the rotation matrix R and translation vector T of the left camera relative to the right camera;

[0076] S202: According to the monocular internal parameter data and binocular relative position relationship obtained after camera calibration, perform distortion removal and row alignment on the left and right views respectively, so that the imaging origin coordinates of the left and right views are the same, the optical axes of the two cameras are parallel, the left and right imaging planes are coplanar, and the epipolar lines are row-aligned, to obtain the corrected camera target image;

[0077] S203: Use the semi-global stereo matching algorithm to perform stereo matching on the stereo-corrected camera target image to obtain the disparity map of the target image;

[0078] S204: Obtain the pixel coordinates of the center point of the circular target in the image through image processing technology;

[0079] S205: According to the pixel coordinates in S204, find the disparity of the corresponding pixel points in S203. According to the camera internal parameter matrix and translation vector in S201, obtain the camera focal length f and baseline B, and obtain the spatial coordinates (x m , y m , z m ) of the target center point relative to the camera.

[0080] S3: Establish the forward kinematics model and error model of the robot, and obtain the parameters to be calibrated, that is, the deviations (Δθ1, Δθ2, Δθ3, Δθ4, Δθ5, Δθ6) of the current zero point positions of each joint relative to the actual zero point positions;

[0081] S4: According to the data recorded and collected in step S2 and the forward kinematics model and error model of the robot in step three, use the LM algorithm to iteratively optimize the parameters to be calibrated to obtain the calibrated parameters;

[0082] S5: Input the calibrated parameters obtained in step S4 into the industrial robot motion controller for error compensation to complete the robot zero point calibration.

[0083] Step S3 specifically includes the following process: establishing a robot DH kinematic model according to the robot link coordinate system as shown in FIG. 2 , and the DH parameter table is shown in Table 1.

[0084] Table 1 FANUC M-20iA six-degree-of-freedom industrial robot DH parameter table

[0085]

[0086] Among them, the connecting rod length a i Yes i-1 Along x i Axis direction moves to z i Distance; connecting rod torsion angle α i Yes i-1 Around x i Axis rotation to z i Distance; joint offset d i is x i-1 Along the z i-1 Move the axis direction to x i The distance of the joint angle θ i is x i-1 Around Z i-1 Axis rotation to x i angle.

[0087] According to the principle of spatial coordinate transformation, the coordinate transformation equations of two adjacent coordinate systems i-1 and i can be described by the product of homogeneous transformation matrices:

[0088]

[0089] In the formula, is the coordinate transformation relationship; Rot is the rotation transformation matrix; Trans is the translation transformation matrix.

[0090] Expand to get the homogeneous transformation matrix of adjacent joints:

[0091]

[0092] Where cθ i = cosθ i , sθ i = sinθ i , and so on for the rest of the cases.

[0093] For a six-degree-of-freedom joint robot, the robot forward kinematics model is:

[0094]

[0095] During the measurement process, the center position of the main camera does not coincide with the origin position of the robot's sixth-axis coordinate system. The center position of the camera can be regarded as the center position of the tool coordinate system, that is, the center position of the camera is obtained by right-multiplying the robot's kinematic equation by a translation transformation matrix, namely:

[0096]

[0097] Among them, represents the transformation matrix of the camera center coordinate system relative to the robot base coordinate system, represents the transformation matrix of the camera center coordinate system relative to the robot's 6th joint coordinate system, p cx 、p cy 、p cz represent the position coordinates of the main camera relative to the robot's sixth joint coordinate system.

[0098] The spatial coordinates of the camera center relative to the robot base coordinate system can be obtained through calculation:

[0099] x nc =p cx n x +p cy o x +p cz a x +p x

[0100] y nc =p cx n y +p cy o y +p cz a y +p y

[0101] z nc =p cx n z +p cy o z +p cz a z +p z

[0102] The nominal position P n =(x nc ,y nc ,z nc ) T 。

[0103] According to the spatial coordinates (x m ,ym , z m ), and the spatial coordinates (x p , y p , z p ) of the target center point relative to the robot base coordinate system, the actual spatial coordinates of the camera relative to the robot polar coordinate system can be obtained:

[0104] x cc = x p - x m

[0105] y cc = y p - y m

[0106] z cc = z p - z m

[0107] The actual position P of the camera center is obtained: c = (x cc , y cc , z cc ) T .

[0108] Furthermore, the camera position error can be obtained:

[0109]

[0110] where ΔP = (ΔP x , ΔP y , ΔP z ) T .

[0111] The Δθ i error after preliminary calibration is relatively small, and the differential kinematic model can be used to approximately replace the error equation, that is, the kinematic equation is fully differentiated. The camera position error can be approximately expressed as:

[0112] ΔP = J δ Δδ

[0113] where J δ is a 3×6 matrix, called the error coefficient matrix, that is

[0114]

[0115] Δδ is a 1×6 vector composed of geometric parameter errors to be identified, that is:

[0116] Δδ = (Δθ1, Δθ2, Δθ3, Δθ4, Δθ5, Δθ6) T

[0117] According to the L groups of data obtained in step S2 and the above calculation process, obtain the sum of the camera position errors as the objective function:

[0118]

[0119] where P n (θ i , Δδ) represents the nominal camera position calculated from the i-th group of data when Δθ = Δδ.

[0120] In step S4, parameter calibration is performed according to the LM algorithm, which specifically includes the following process: continuously iteratively update Δδ using the LM algorithm to minimize the objective function S. Calculate S after each iteration until the calibration parameter Δδ that satisfies the requirement S < e is obtained, where e is the judgment condition threshold. The iteration formula of the LM algorithm is:

[0121]

[0122] where k is the number of iterations, μ is the damping coefficient, μ > 0; I is the identity matrix.

[0123] During the iteration process, the LM algorithm adjusts the magnitude of the λ value by introducing the parameter μ to control the calculation accuracy, so that the parameter error continuously approaches the accurate value, where μ > 1. When S after the (k + 1)-th iteration k+1 is less than S after the k-th iteration k , λ = λ / μ, reducing the damping coefficient λ; otherwise, λ = λμ, increasing the damping coefficient λ. When λ is large, the algorithm approaches the gradient descent method, exerting the global characteristic to ensure global convergence; when λ is small, the algorithm approaches the Gauss-Newton method, exerting local convergence. The specific parameter identification flowchart is as Figure 3 shown.

[0124] As Figure 4As shown in the figure, it shows the communication mechanism between the host computer and the robot motion controller. After being equipped with a communication module, the FANUC robot supports the socket communication protocol based on the TCP / IP protocol. The connection between the FANUC robot motion controller and the host computer is established using the socket communication protocol based on the TCP / IP protocol. The data transmission speed is fast, safe and not easy to lose packets. The robot motion controller acts as the server side of the socket communication, and the host computer acts as the client side. Communication process: The server creates a socket and uses this socket to complete the listening of the communication; binds a port number and an IP address; the server calls the listening function to make this port and IP of the server in the listening state, waiting for the connection of the client; the client creates a socket, sets the remote IP and port; the client calls the connection function to connect to the specified port of the remote server; the server uses the accept function to accept the connection of the remote client and establish the communication with the client; after establishing the connection, the client and the server can use the read and write functions to read the data sent by the other party in the socket or write data into the socket; after completing the communication, use the close function to close the socket connection.

[0125] Among them, the client program is developed based on the Qt software platform and written in the computer basic language C++. The program runs fast and has high data transmission efficiency; the server program must first be written and compiled in the host computer based on the ROBOGUIDE software using the FANUC basic language KAREL, and then the compiled file is imported into the robot motion controller for use. The steps of the server program from creation to operation are as follows:

[0126] S01: Use the RONBOGUIDE software to create the source code file of the program. The uncompiled source code program is a file in the.kl form.

[0127] S02: Compile the source code file. The compiled source code program is a file in the.pc form.

[0128] S03: Store the compiled.pc program in the USB storage device and then import it into the robot controller.

[0129] S04: Use the teach pendant to call and run the.pc program.

[0130] Such as Figure 5As shown, a schematic diagram of the robot zero-point calibration program interface is presented. Based on this program interface, the remote communication IP and port number can be set. The connect and disconnect buttons are used to control the connection and disconnection of the communication between the host computer and the robot. When the connection is successful, the text prompt box will print the prompt message "Successfully connected to the server...". When the connection is disconnected, the text prompt box will print the prompt message "Disconnected from the server...". After successfully establishing the communication, import the collected data file into the program, click the start calibration button. After the data processing is completed, the text prompt box will print the prompt message "Data processing has been completed", and the calculation results will be printed in sequence. Then, according to the calculation results, control instructions will be automatically sent to the robot motion controller. After the robot completes the control instructions, the text prompt box will print the prompt message "Zero-point calibration has been completed...". Based on this software platform and the above-mentioned network communication setup, the automation degree of robot zero-point calibration can be improved.

[0131] To verify the feasibility of the present invention, a simulation verification was carried out on a FANUC six-degree-of-freedom serial industrial robot. All the measurement points were divided into two parts. One part was used as the identification points to identify the geometric parameter errors, and the other part was used as the verification points, which were only used to verify the identification effect. Among the 500 measurement points, the first 300 were selected as the identification points for parameter error identification, and the remaining 200 measurement points were used as the verification points. The robot joint angle values corresponding to the 300 points and the actual position Pc data were brought into the LM algorithm, and the identification results were calculated iteratively by the algorithm program as shown in Table 2. The zero-point error obtained according to the LM algorithm was used to correct the theoretical model. The curve of the error variation with the number of iterations during the calibration process is as Figure 6 shown.

[0132] Table 2 Zero-point calibration results

[0133]

[0134] The difference between the theoretical positions of the 200 verification points calculated by the corrected model and the measured actual positions was used to verify the geometric parameter calibration effect. The errors of the verification points before and after calibration by the LM algorithm are as Figure 7 shown. After the geometric parameter error identification, the average absolute positioning accuracy of the robot was improved from 85.9 mm before calibration to 0.427 mm, showing a very significant improvement.

[0135] The above are only the embodiments of the present invention, and do not limit the patent scope of the present invention accordingly. Any equivalent structural or equivalent process transformation made by using the content of the specification and drawings of the present invention, or directly or indirectly applied in other related technical fields, shall be equally included in the patent protection scope of the present invention.

Claims

1. A zero-point calibration method for a robot based on binocular vision technology and the LM algorithm, characterized in that, A zero-point calibration system for a robot based on binocular vision technology and the LM algorithm, including a robot, a motion controller, a host computer, a target, and a binocular camera fixedly installed at the end of the robot; The robot is used to execute motion planning and drive the binocular camera to move to multiple specified positions; The target is fixedly installed, and its center point has spatial coordinates (x p , y p , z p ) relative to the robot base coordinate system, serving as the target point for camera detection; The motion controller is used to carry the server-side program, establish data interaction with the host computer, and control the movement of the robot body; The host computer is used to run the calibration algorithm program, send motion control instructions, process the images of the target points collected by the binocular camera, and perform data interaction with the motion controller; The method includes the following steps: S1: Complete the preliminary calibration of the zero points of each joint according to the marks on the robot body; S2: Uniformly select several points in the working space of the industrial robot, make the end of the robot reach these points, and use the binocular camera to collect the image information of the target. According to the image, use binocular ranging technology to calculate the spatial coordinates of the target center relative to the camera, and record the joint angle values of the robot and the spatial coordinates of the target point relative to the camera at each point; S3: Establish the forward kinematics model and error model of the robot, obtain the parameters to be calibrated, that is, the deviations (Δθ1, Δθ2, Δθ3, Δθ4, Δθ5, Δθ6) of the current zero positions of each joint relative to the actual zero positions; S4: According to the data recorded and collected in step S2 and the forward kinematics model and error model of the robot in step S3, use the LM algorithm to iteratively optimize the parameters to be calibrated and obtain the calibrated parameters; S5: Input the calibrated parameters obtained in step S4 into the motion controller of the industrial robot for error compensation to complete the zero-point calibration of the robot.

2. The zero-point calibration method of the robot based on binocular vision technology and LM algorithm according to claim 1, characterized in that, In step S2, the specific method for obtaining the spatial coordinates of the target center according to the target image collected by the binocular camera includes the following steps: S201: Calibrate the binocular cameras using a checkerboard based on the binocular ranging theory to obtain the internal parameter matrices M L and M R of the left and right cameras, as well as the distortion parameters k and p. Perform binocular calibration on the left and right cameras to obtain the rotation matrix R and translation vector T of the left camera relative to the right camera; S202: According to the monocular internal parameter data obtained after camera calibration and the relative position relationship between the two eyes, perform distortion removal and row alignment on the left and right views respectively, so that the imaging origin coordinates of the left and right views are the same, the optical axes of the two cameras are parallel, the left and right imaging planes are coplanar, and the epipolar lines are row-aligned, and obtain the corrected camera target image; S203: Use the semi-global stereo matching algorithm to perform stereo matching on the stereo-corrected camera target image to obtain the disparity map of the target image; S204: Obtain the pixel coordinates of the center point of the circular target in the image through image processing technology; S205: Find the disparity of the corresponding pixel point in S203 based on the pixel coordinates in S204, obtain the camera focal length f and the baseline B according to the camera intrinsic matrix and the translation vector in S201, and obtain the spatial coordinates (x m , y m , z m ) of the center point of the target relative to the camera.

3. The zero-point calibration method of the robot based on binocular vision technology and LM algorithm according to claim 1, characterized in that, The specific steps of step S3 include: S301: Establish a robot DH kinematic model according to the robot link coordinate system, and the link length a i is the distance that z i-1 moves along the x i axis to z i ; the link twist angle α i is the distance that z i-1 rotates around the x i axis to z i ; the joint offset d i is the distance that x i-1 moves along the z i-1 axis to x i ; the joint rotation angle θ i is the angle that x i-1 rotates around the z i-1 axis to x i ; the homogeneous transformation matrix of adjacent joints: where cθ i = cosθ i , sθ i = sinθ i ; For a six-degree-of-freedom articulated robot, the forward kinematic model of the robot is: S302: The center position of the camera is right-multiplied by a translation transformation matrix in the robot kinematics equation, that is: Among them, represents the transformation matrix of the camera center coordinate system relative to the robot base coordinate system, represents the transformation matrix of the camera center coordinate system relative to the robot's 6th joint coordinate system, p cx , p cy , p cz represent the position coordinates of the main camera relative to the robot's 6th joint coordinate system; The spatial coordinates of the camera center relative to the robot base coordinate system can be obtained through calculation: x nc = p cx n x + p cy o x + p cz a x + p x y nc = p cx n y + p cy o y + p cz a y + p y z nc = p cx n z + p cy o z + p cz a z + p z Obtain the nominal position P of the camera center n =(x nc , y nc , z nc ) T ; S303: Based on the spatial coordinates (x m , y m , z m ) of the target point relative to the camera obtained in step S2 and the spatial coordinates (x p , y p , z p ) of the center point of the target relative to the robot base coordinate system, the actual spatial coordinates of the camera relative to the robot polar coordinate system are obtained: x cc = x p -x m y cc = y p -y m z cc = z p -z m Obtain the actual position P of the camera center c =(x cc , y cc , z cc ) T ; S304: Obtain the camera position error: where ΔP = (ΔP x , ΔP y , ΔP z ); T ; Perform total differential processing on the kinematics equation, and the camera position error can be approximately expressed as: ΔP = J δ Δδ Among them, J δ is a 3×6 matrix, called the error coefficient matrix, that is Δδ is a 6×1 vector composed of geometric parameter errors to be identified, that is: Δδ = (Δθ1, Δθ2, Δθ3, Δθ4, Δθ5, Δθ6) T ; S305: According to the L groups of data obtained in step S2 and the above calculation process, obtain the sum of the camera position errors as the objective function; where P n (θ i , Δδ) represents the nominal position of the camera calculated from the i-th group of data when Δθ = Δδ.

4. The zero-point calibration method of the robot based on binocular vision technology and LM algorithm according to claim 3, characterized in that, The specific steps of step S4 include: Continuously update Δδ iteratively using the LM algorithm to minimize the objective function S. Calculate S after each iteration until the calibration parameter Δδ that meets the requirement S < e is obtained, where e is the judgment condition threshold. The iterative formula of the LM algorithm is as follows: where k is the number of iterations, λ is the damping coefficient, λ > 0; I is the identity matrix; During the iterative process, the LM algorithm adjusts the value of λ by introducing the parameter μ to control the calculation accuracy and make the parameter error continuously approach the accurate value, where μ > 1.

5. The zero-point calibration method of the robot based on binocular vision technology and LM algorithm according to claim 1, characterized in that The robot motion controller establishes a communication connection with the upper computer using the socket communication protocol based on the TCP / IP protocol. The robot motion controller serves as the server side of the socket communication, and the upper computer serves as the client.

Citation Information

Patent Citations

  • Gap measuring system and measuring method

    WO2021208231A1

Cited By

  • Pose coordinate calibration method for combined machining of laser / ultrasonic double industrial robots

    CN120901929A