Force-controlled mechanical arm parameter compensation method and system based on static calibration and PSO optimization

Through static calibration and PSO optimization algorithms, the difficulty of accurate calibration and compensation of six-dimensional force sensors in force-controlled robotic arms is solved, high-precision force measurement and control is achieved, and the flexibility and measurement accuracy of the robotic arms are improved.

CN120170748APending Publication Date: 2025-06-20XI AN JIAOTONG UNIV

Patent Information

Application Number
CN202510531247.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-25
Publication Date
2025-06-20

AI Technical Summary

Technical Problem

In the prior art, there are difficulties in precise calibration and compensation of six-dimensional force sensors in force-controlled robotic arms, resulting in low measurement accuracy.

Method used

Using a method based on static calibration and particle swarm optimization algorithm (PSO) to calculate the zero-point drift value and load gravity component of the six-dimensional force sensor, build an actual coordinate system, and optimize the rotation matrix through the PSO algorithm to compensate for the actual force magnitude.

Benefits of technology

The measurement accuracy of the force-controlled robot arm is significantly improved, ensuring that the compensation model is effective in the entire work space of the robot arm, reducing force tracking errors caused by coordinate system deviations, and improving flexibility.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120170748A_ABST
    Figure CN120170748A_ABST
Patent Text Reader

Abstract

The invention belongs to the technical field of precision machining, and relates to a force-controlled mechanical arm parameter compensation method and system based on static calibration and PSO optimization. In the absence of external force, with a preset coordinate system of a six-dimensional force sensor as a reference, a zero drift value and a load gravity component of the six-dimensional force sensor are calculated; calibrating a six-dimensional force sensor on the mechanical arm; force and torque are applied to the mechanical arm in different angle directions, and an actual coordinate system of the six-dimensional force sensor is obtained; included angles alpha, beta and gamma in different directions between a preset coordinate system and an actual coordinate system of the six-dimensional force sensor are obtained by adopting a PSO algorithm, and a rotation matrix between the two coordinate systems is obtained, so that the actual force on the preset coordinate system of the six-dimensional force sensor is compensated. According to the method, the problem of precise calibration compensation of the six-dimensional force sensor is systematically solved by combining static calibration and an optimization algorithm, and the measurement precision of the force-controlled mechanical arm is remarkably improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the technical field of precision machining, and relates to a force control robotic arm parameter compensation method and system based on static calibration and PSO optimization. Background Art

[0002] Polishing, as the last high-precision machining process in the manufacturing of optical elements, plays an important role in the final surface accuracy of the elements. Traditional polishing methods have problems such as difficult trajectory planning, motion space interference, and complex force conditions when machining complex optical surfaces. The robotic arm can effectively solve the above problems by path planning and pose control of the polishing tool head at the end and adjusting the contact force with the element. Precise perception of the force on the end load of the robot is the basis for robot compliant control and safety guarantee. A six-axis force sensor is installed between the wrist of the industrial robot and the end load for force feedback control of the robot. How to determine the conversion relationship between the world, tool, flange, six-axis force sensor, and workpiece coordinate systems, and how to calibrate and compensate the six-axis force sensor are the keys to accurately obtaining the external force and torque data on the end load of the robot and performing precise force control. Summary of the Invention

[0003] Aiming at the problems existing in the prior art, the present invention provides a force control robotic arm parameter compensation method and system based on static calibration and PSO optimization. By calculating the zero-point drift value of the sensor, the installation inclination angle of the robot, and the gravity component of the load, and calculating the inclination angle between the ideal coordinate system and the actual coordinate system of the six-axis force sensor under the condition of no measuring equipment, the problem of accurate calibration and compensation of the six-axis force sensor is systematically solved, and the measurement accuracy of the force control robotic arm is significantly improved.

[0004] The present invention is realized through the following technical solutions:

[0005] A force control robotic arm parameter compensation method based on static calibration and PSO optimization includes the following steps:

[0006] Obtain the preset coordinate system of the six-axis force sensor according to the end flange coordinate system of the robotic arm;

[0007] Under the condition of no external force, taking the preset coordinate system of the six-axis force sensor as a reference, calculate the zero-point drift value of the six-axis force sensor and the gravity component of the load, and calibrate the six-axis force sensor on the robotic arm;

[0008] Apply force and torque to the robotic arm in different angular directions to obtain the actual coordinate system of the six-axis force sensor;

[0009] Use the PSO algorithm to obtain the included angles in different directions between the preset coordinate system and the actual coordinate system of the six-axis force sensor α, β, and γ to obtain the rotation matrix between the two coordinate systems, and then compensate for the actual force magnitude on the preset coordinate system of the six-axis force sensor.

[0010] Preferably, calculate the zero-point drift value and the load gravity component of the six-axis force sensor. The specific process is as follows:

[0011] By changing the attitude of the robotic arm on the non-coplanar robot N times (N ≥ 3), record the values of the six-axis force sensor on the robotic arm. Through matrix operations, taking the preset coordinate system of the six-axis force sensor as a reference, decompose the load gravity of the robotic arm to obtain the relationship expressions of the six-axis force sensor for each parameter in the no-load state, thereby obtaining the zero-point drift value of the six-axis force sensor and the load gravity component.

[0012] Preferably, the relationship expressions of the six-axis force sensor for each parameter in the no-load state are:

[0013]

[0014] Among them, (x, y, z) are the coordinates of the center of gravity of the load; (T gx , T gy , T gz ) are the moment readings in the X, Y, and Z directions in the six-axis force sensor; (G x , G y , G z ) are the load gravity components of the robotic arm in the X, Y, and Z directions; F x , F y , and F z are the forces of the robotic arm in the no-load state, (F x , F y , F z ) are the readings of the forces in the x, y, and z directions in the six-axis force sensor, (F x0 , F y0 , F z0 ) are the zero-point drift values of the forces in the x, y, and z directions in the six-axis force sensor;

[0015] Preferably, the zero-point drift value and the load gravity component of the six-axis force sensor are expressed as:

[0016]

[0017] In the formula, is the rotation matrix of the robotic arm flange coordinate system and the robot base coordinate system, U is the rotation angle of the robot base coordinate system around the X axis through the world coordinate system, V is the rotation angle around the Y axis, F x0 , F y0 , F z0 are respectively the zero-point drift values of the forces in the x, y, and z directions in the six-axis force sensor, (G x , Gy , G z ) are the load gravity components of the robotic arm in the X, Y, and Z directions.

[0018] Preferably, the PSO algorithm is used to obtain the angular differences α, β, and γ in different directions between the preset coordinate system and the actual coordinate system of the six-axis force sensor, and the rotation matrix between the two coordinate systems is obtained. Specifically:

[0019] Using the PSO-ant colony algorithm, the values of α, β, and γ for each set of data are obtained based on the conversion relationship between the preset coordinate system and the actual coordinate system of the six-axis force sensor. Then, the least squares method is used to minimize the sum of the squares of the errors S between the expected data and the actual data. The smaller the sum of the squares of the errors S, the better the compensation effect. The PSO-ant colony algorithm is continuously optimized to find the optimal solution to obtain the value of the minimum sum of the squares of the errors, and the rotation matrix R is obtained xyz , and then the actual force magnitude on the preset coordinate system of the six-axis force sensor is compensated.

[0020] Preferably, the angular differences α , β, and γ between the preset coordinate system and the actual coordinate system of the six-axis force sensor are specifically:

[0021] The readings F sx , F sy , and F sz of the six-axis force sensor are obtained by applying the weight force, and F x , F y , and F z are obtained by subtracting the parameters when the robotic arm is in the no-load attitude. The three-direction deflection angles α , β, and γ are calculated with the weight gravity numbers G fx , G fy , and G fz , and the expression is:

[0022]

[0023] In the formula, G fx , G fy , and G fz are the forces applied by the weights in the x, y, and z directions under the preset coordinate system of the six-axis force sensor, respectively.

[0024] Among them, F fx , F fy , and F fz are the forces obtained by subtracting the sensor readings under zero load from the readings of the six-axis force sensor, and the expression is:

[0025]

[0026] In the formula, Fsx , F sy and F sz Apply the weights to the six - axis force sensor respectively, and the readings in the x, y, and z directions are F x , F y and F z which are the forces on the six - axis force sensor in the x, y, and z directions when it is unloaded respectively.

[0027] Preferably, the rotation matrix R xyz is:

[0028]

[0029] wherein, are the included angles in different directions between the preset coordinate system and the actual coordinate system of the six - axis force sensor obtained by the optimal solutions optimized by the PSO algorithm respectively.

[0030] Preferably, the magnitude of the actual force on the preset coordinate system of the six - axis force sensor after compensation is:

[0031]

[0032] In the formula, F X , F Y , F Z are the actual forces in the x, y, and z directions on the preset coordinate system of the six - axis force sensor after compensation, and F x , F y and F z are the forces on the six - axis force sensor in the x, y, and z directions when it is unloaded before compensation respectively, and R xyz is the rotation matrix.

[0033] Preferably, calibrate the six - axis force sensor on the robotic arm, specifically:

[0034] During the calibration work, the lower platform of the six - axis force sensor is connected to the flange of the robotic arm, the upper platform of the six - axis force sensor is fixedly connected to the loading cap, the weights are connected to the loading cap through the guiding pulleys and thin ropes, apply weights to apply forces or torques in the preset directions to the six - axis force sensor, the strain values of the 6 link rods on the six - axis force sensor are linearly reflected by the measuring bridges on each link rod, the voltage signals are changed into large - range voltage values that can be sampled and utilized through the amplifier circuit, and after AD sampling, they are input into the computer, and the calibration data is obtained after processing, so as to realize the calibration of the six - axis force sensor on the robotic arm.

[0035] A force - control robotic arm parameter compensation system based on static calibration and PSO optimization includes,

[0036] A preset coordinate system acquisition module, which is used to obtain the preset coordinate system of the six - axis force sensor according to the end - flange coordinate system of the robotic arm;

[0037] A calculation module, which is used to calculate the zero drift value and the load gravity component of the six-axis force sensor with reference to the preset coordinate system of the six-axis force sensor without external force, and calibrate the six-axis force sensor on the robotic arm.

[0038] An actual coordinate system acquisition module, which is used to apply forces and torques to the robotic arm in different angular directions to obtain the actual coordinate system of the six-axis force sensor.

[0039] A compensation module, which is used to use the PSO algorithm to obtain the included angles α, β, and γ in different directions between the preset coordinate system and the actual coordinate system of the six-axis force sensor, obtain the rotation matrix between the two coordinate systems, and further compensate the actual force magnitude on the preset coordinate system of the six-axis force sensor. α and obtain the rotation matrix between the two coordinate systems, and further compensate the actual force magnitude on the preset coordinate system of the six-axis force sensor.

[0040] Compared with the prior art, the present invention has the following beneficial technical effects:

[0041] The present invention provides a force control robotic arm parameter compensation method and system based on static calibration and PSO optimization. Through zero drift calibration and load gravity component compensation under the condition of no external force, the inherent bias of the sensor and the interference of the self-weight of the robotic arm on the measurement are eliminated, providing a benchmark accuracy for force control. By applying forces and torques at different angles to construct the actual coordinate system, it is ensured that the compensation model is effective within the entire working space of the robotic arm, avoiding errors introduced by attitude changes. By optimizing the rotation matrix between the preset coordinate system and the actual coordinate system through the PSO algorithm, the direction deviation caused by installation errors or robotic arm deformation is compensated, making the measured value closer to the true force state. By applying forces and torques at different angles to construct the actual coordinate system, it is ensured that the compensation model is effective within the entire working space of the robotic arm, avoiding errors introduced by attitude changes. The compensated sensor data can be directly used for closed-loop control, reducing the force tracking error caused by coordinate system deviation and improving the compliance of contact tasks such as assembly and grinding. This method systematically solves the problem of accurate calibration and compensation of six-axis force sensors by combining static calibration and optimization algorithms, significantly improving the measurement accuracy of force control robotic arms.

[0042] Furthermore, it does not rely on high-precision sensor hardware, realizes high-performance force control at low cost through software compensation, and reduces the system complexity and deployment cost. The initial calibration can be completed without dynamic movement, avoiding potential damage to the equipment caused by high-speed movement or impact.

[0043] Furthermore, the PSO algorithm replaces manual trial and error, shortens the calibration period, has low dependence on the operator's experience, and improves the engineering practicability. Description of the Drawings

[0044] Figure 1 It is a schematic diagram of the action of the load gravity in the coordinate system of the six-axis force sensor.

[0045] Figure 2 It is a schematic diagram of each coordinate system of a six-degree-of-freedom robotic arm;

[0046] Figure 3 It is a schematic diagram of the calibration loading method of a six-axis force sensor;

[0047] Figure 4 It is a calibration compensation flowchart of a six-axis force sensor;

[0048] In the attached drawings, 1 is the robotic arm; 2 is the sensor; 3 is the thin rope; 4 is the guiding pulley; 5 is the weight. Specific embodiments

[0049] The following further elaborates on the present invention in detail with specific embodiments, which is an explanation rather than a limitation of the present invention.

[0050] To enable those skilled in the art of the present technology to better understand the present invention solution, the technical solutions in the embodiments of the present invention will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only a part of the embodiments of the present invention, rather than all the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the scope of protection of the present invention.

[0051] To achieve the above object, the present invention adopts the following technical solutions:

[0052] A force control robotic arm parameter compensation model based on static calibration and PSO optimization, comprising the following steps:

[0053] Step 1), obtaining the preset coordinate system of the six-axis force sensor according to the end flange coordinate system of the robotic arm;

[0054] Under the zero-load state, through the attitude control of the robotic arm, with the preset coordinate system of the six-axis force sensor as a reference, calculate the zero-drift value, load gravity component, and robotic arm installation inclination angle of the six-axis force sensor, and calibrate the six-axis force sensor on the robotic arm;

[0055] Specifically: after installing the six-axis force sensor, first preset the six-axis force sensor coordinate system according to the flange coordinate system. Since the robotic arm polishing process is a slow movement and the influence of inertial force can be ignored, only static calibration is performed. Under the zero-load state, change the attitude of the non-coplanar robot N times (N≥3) without external force, record the six-axis force sensor values, and through matrix operation, decompose the load gravity with the six-axis force sensor coordinate system as a reference, obtain the relational expressions of the six-axis force sensor for each parameter in the no-load state, calculate the zero-drift value and load gravity component of the six-axis force sensor, and calibrate the six-axis force sensor on the robotic arm;

[0056] When performing the calibration work, the lower platform of sensor 2 is connected to the flange of the robotic arm 1, the upper platform of sensor 2 is fixedly connected to the loading cap, and the weight 5 is connected to the loading cap through the guiding pulley 4 and the thin rope 3, so as to apply a force or torque in a certain direction to the six-axis force sensor by adding weights. The strain values of the 6 linkages on the six-axis force sensor are linearly reflected by the measuring bridges on each linkage. These weak voltage signals are converted into large-range voltage values that can be sampled and utilized through an amplification circuit, and are input into a computer after AD sampling, and are filtered and processed by calibration software and saved for use in obtaining the calibration matrix.

[0057] Step 2): By applying weights, perform weight-based force and torque application in the x, y, and z directions of the robotic arm and the workpiece clamping tool table, record the values, and obtain the actual coordinate system of the six-axis force sensor.

[0058] During the process of recording the zero-load data and the weight force data, the posture of the non-coplanar robot needs to be changed N times (N≥3). That is, record the sensor values without external force, and apply forces and torques in different angular directions to the robotic arm and record the data simultaneously.

[0059] Step 3): Finally, since there will be a certain deviation between the actual coordinate system and the theoretically preset coordinate system of the six-axis force sensor during the measurement process, the deflection angles α, β, and γ in the x, y, and z directions are calculated through at least 50 groups of data measured in step 2, and the particle swarm optimization algorithm (PSO) is used to continuously evolve the error square to reach the global optimal solution. The steps of the PSO algorithm are as follows:

[0060] (1) Initialize all individuals (particles), initialize their velocities and positions, and set the historical best p of the individual to the current position, and the best individual in the group as the current g.

[0061] (2) In each generation of evolution, calculate the fitness function values of each particle.

[0062] (3) If the current fitness function value of this particle is better than its historical best value, then the historical best will be replaced by the current position.

[0063] (4) If the historical best of this particle is better than the global best, then the global best will be replaced by the historical best of this particle.

[0064] (5) Update the velocity and position of the d-th dimension of each particle i according to the following formulas respectively.

[0065]

[0066] Among them, i = 1, 2,..., N, and N is the total number of particles in this group; v iis the velocity of the particle; rand is a random number between (0, 1); x i is the current position of the particle; c1 and c2 are learning factors.

[0067] By applying the weight force, subtracting the parameters at no-load from the six-axis force sensor parameters and the weight gravity number of the weight, the deflection angles in three directions are calculated, and then the magnitudes of the actual forces in the X, Y, and Z directions on the preset coordinate system after compensation are obtained (F X , F Y , F Z ).

[0068] The specific implementation process is as follows:

[0069] As Figures 1 to 4 shown, before polishing the optical element using the six-degree-of-freedom robotic arm equipped with a six-axis force sensor, to ensure the measurement accuracy of the six-axis force sensor, the following processing is required: Calculate the gravity component of the actuator load and the zero drift value installed on the six-axis force sensor. Then, by applying an external load and using an algorithm to calculate the deflection angle of the six-axis force sensor relative to the end flange of the robotic arm, a mapping relationship between the sensor measurement value and the actual load is established, thereby realizing real-time compensation for measurement errors and providing an accurate mechanical reference for subsequent high-precision polishing operations.

[0070] The specific six-axis force sensor calibration and compensation method based on robotic arm polishing includes the following steps:

[0071] Step 1), The robotic system consists of a robotic body, a six-axis force sensor, and a load. As Figure 2 shown, set the world coordinate system as O w -X w Y w Z w , the robotic base coordinate system as O b -X b Y b Z b , the robotic end flange coordinate system as O e -X e Y e Z e , the six-axis force sensor coordinate system as O s -X s Y s Z s , the rotation matrix can be represented by R, and it is assumed that the Z w direction of the world coordinate system is parallel and opposite to the gravity direction.

[0072] Step 2), As Figure 1As shown, without external force, by changing the posture of the non-coplanar robot N times (N≥3) and taking the six-dimensional force sensor coordinate system as the reference, the sensor readings can be decomposed into the load gravity component and the zero drift value, and the relationships of the six-dimensional force sensor for each parameter in the no-load state can be obtained:

[0073]

[0074] Among them, (x, y, z) are the coordinates of the center of gravity of the load; (T gx , T gy , T gz ) are the moment readings in the X, Y, and Z directions in the six-dimensional force sensor; (G x , G y , G z ) are the load gravity components of the robotic arm in the X, Y, and Z directions; F x , F y , and F z are the forces of the robotic arm in the no-load state, (F x , F y , F z ) are the readings of the forces in the x, y, and z directions in the six-dimensional force sensor, (F x0 , F y0 , F z0 ) are the zero drift values of the forces in the x, y, and z directions in the six-dimensional force sensor;

[0075] Substituting (x, y, z) into Equation (3) and arranging it, Equation (5) can be obtained:

[0076]

[0077] As Figure 3 shown, by applying forces and torques in different angular directions to the robotic arm with weights and recording the values for Step 4, the values in the no-load state can be summarized as follows:

[0078]

[0079] (F xN , F yN , F zN ) are the forces applied in the X, Y, and Z directions in different postures, which can be abbreviated as:

[0080] T = F·K (7)

[0081] The specific parameters of matrix K can be calculated through matrix operations, and then the coordinates (x, y, z) of the load in the six-dimensional force sensor can be known. The matrix operation is:

[0082] K = (F T F) -1 F TT (8)

[0083] Step 3): The direction of gravity in the world coordinate system points to -z. By analyzing the conversion relationships of each coordinate system in the robotic arm system and the sensor parameters obtained under no-load conditions, the gravity components of the load, the zero-drift value of the sensor, and the installation inclination angle of the robotic arm can be obtained. The schematic diagrams of the definitions of each coordinate system in this article are as shown in Figure 2 shown. Denote the world coordinate system as O w -X w Y w Z w , and let the direction of its Z w axis be vertically upward, which is the opposite direction of gravity. The world coordinate system can be arbitrarily rotated and defined around the direction of gravity; denote the robot base coordinate system as O b -X b Y b Z b . Assume that O b -X b Y b Z b can be obtained by first rotating the angle U around the X-axis and then rotating the angle V around the Y w -X w Y w Z w axis. Then, the attitude transformation matrix from O b -X b -X b Y b Z b to O w -X w Y w Z w is:

[0084]

[0085] The end flange coordinate system of the robot is O s -X s Y s Z s , which can be obtained by rotating the angle A around the Z b -X b Y b Z b axis of the base coordinate system O b axis, then rotating the angle B around the Y e axis, and finally rotating the angle C around the X e axis. Then, the attitude transformation matrix from O s -X s Y s Z s to O b -X b Y b Z b is:

[0086]

[0087] Among them, is the rotation matrix between the flange coordinate system of the robotic arm and the robot base coordinate system;

[0088] The direction vector of gravity in the world coordinate system O w -X w Y w Z w is:

[0089]

[0090] Finally, through coordinate transformation, the vector of gravity in the preset coordinate system of the sensor can be obtained as:

[0091]

[0092] Denote the magnitude of the load gravity as G. From Equation (3), we have:

[0093]

[0094] It can also be written as: The end flange coordinate system of the robot is O s -X s Y s Z s , which can be obtained by rotating the base coordinate system O b -X b Y b Z b by an angle A around the Z b axis. The rotation matrix between the flange coordinate system and the base coordinate system;

[0095]

[0096] Among them, I is a 3×3 identity matrix. For N different robot postures, the values of A, B, and C at these N postures can be obtained, and then the transformation matrices at these N postures can all be obtained. We can get:

[0097]

[0098] It can be abbreviated as:

[0099] F = R·C (16)

[0100] Through matrix operations, the specific parameters of matrix F can be calculated, and the zero-drift values F x0 , F y0 , F z0 of the three force components of the six-axis force sensor and the constants L x , L y , Lz The matrix operation is as follows:

[0101] C = (R T R) -1 R T F(17)

[0102] From Equation (3), we have:

[0103]

[0104] From Equation (12), the magnitude of the load gravity G is:

[0105]

[0106] The values of the angles U and V are:

[0107]

[0108] So far, the sensor zero drift value, the robot installation inclination angle, and the load gravity component data have all been obtained.

[0109] Step 4): As Figure 3 shown, during the measurement, there will be a certain deviation between the actual coordinate system and the theoretical preset coordinate system of the six-axis force sensor. Therefore, it is necessary to measure and calculate the deflection angles α, β, and γ in the x, y, and z directions. The rotation matrix between the six-axis force sensor coordinate system and the preset coordinate system established by human observation can be obtained. During the processing of no less than 50 groups of data, the deflection angles can be obtained without using precision instruments, and then the normal contact force can be calculated.

[0110] By applying the weight force, the readings F sx 、F sy and F sz of the six-axis force sensor are obtained. Subtracting the parameters in the zero-load state of the manipulator posture gives F x 、F y and F z . By calculating with the weight gravity numbers G fx 、G fy and G fz , the deflection angles in three directions are obtained, that is:

[0111]

[0112] In the formula, G fx 、G fy and G fz are the forces exerted by the weights in the x, y, and z directions under the preset coordinate system respectively, and F fx 、F fy and F fz are the forces obtained by subtracting the sensor readings under zero load from the six-axis force sensor readings;

[0113]

[0114] Wherein, F x , F y and F z are respectively the readings of the six - dimensional force sensor under zero load in the x, y, and z directions in this posture, and F sx , F sy and F sz are respectively the readings of the six - dimensional force sensor in the x, y, and z directions, which are related to the weight of the weight and the force application angle;

[0115] Through at least 50 groups of measured data, based on the least - squares method, the sum of the squares of the errors between the expected data and the actual data is minimized. Therefore, the sum of the squares of the errors is an index for judging whether the expected data is closer to the actual data. When applying weights (G fx , G fy , G fz ), for the i - th (1 ≤ i ≤ N) measurement posture, the errors (δ xi , δ yi , δ zi ) in the X, Y, and Z directions are:

[0116]

[0117] The closer α, β, and γ are to the actual angles, the smaller the sum of the squares of the errors S, and the better the compensation effect. Therefore, the method of finding the optimal solution can be used to obtain the values of α, β, and γ of the sum of the squares of the errors, and the sum of the squares of the errors is defined as follows:

[0118]

[0119] Through no less than 50 groups of measured data, calculate α, β, and γ in each group of data, and use the particle swarm optimization algorithm (PSO) to continuously evolve to reach the global optimal solution to obtain the angle values Finally, the rotation matrix R xyz is:

[0120]

[0121] Since the preset coordinate system is used as the standard during the processing, the magnitude of the actual force on the preset coordinate system after compensation is:

[0122]

[0123] Using the PSO ant colony algorithm, the α, β, and γ values of each group of data are obtained by using the conversion relationship between the preset coordinate system and the actual sensor coordinate system. Then, the least squares method is used to minimize the sum of squares of errors S between the expected data and the actual data. The sum of squares of errors is an index for judging whether the expected data is closer to the actual data. The smaller the sum of squares of errors S, the better the compensation effect. Therefore, continuous optimization is carried out to find the optimal solution to obtain the value, and the magnitude of the actual force in the actual measurement process can be obtained.

[0124] It should be understood that when used in this specification and the appended claims, the terms "comprising" and "including" indicate the presence of the described features, wholes, steps, operations, elements, and / or components, but do not exclude the presence or addition of one or more other features, wholes, steps, operations, elements, components, and / or their combinations.

[0125] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by those of ordinary skill in the technical field to which this invention belongs. The terms used in the specification of this invention are only for the purpose of describing specific embodiments and are not intended to limit the invention. The term "and / or" used herein includes any and all combinations of one or more of the related listed items.

[0126] As described above, it is only the preferred embodiment of the present invention and does not impose any formal limitation on the present invention; any ordinary technician in the industry can smoothly implement the present invention according to the illustrations in the specification and the above description; however, any equivalent changes made by those familiar with the technology in the technical field of this invention within the scope of the technical solution of the present invention by using the technical content disclosed above, such as slight modifications, decorations, and evolutions, are all equivalent embodiments of the present invention; at the same time, any equivalent changes, modifications, and evolutions made to the above embodiments based on the essence of the present invention still fall within the protection scope of the technical solution of the present invention.

Claims

1. A force-controlled manipulator parameter compensation method based on static calibration and PSO optimization, characterized in that: The following steps are involved: Obtain a preset coordinate system of the six-dimensional force sensor according to the end flange coordinate system of the robot arm; In the absence of external force, the zero drift value and load gravity component of the six-axis force sensor are calculated with the preset coordinate system of the six-axis force sensor as a reference, and the six-axis force sensor on the robotic arm is calibrated; Apply forces and torques to the robot arm at different angles and directions to obtain the actual coordinate system of the six-dimensional force sensor; The PSO algorithm is used to obtain the angles in different directions between the preset coordinate system and the actual coordinate system of the six-dimensional force sensor. α , β and γ, and obtain the rotation matrix between the two coordinate systems, thereby compensating the actual force size on the preset coordinate system of the six-dimensional force sensor.

2. A force control manipulator parameter compensation method based on static calibration and PSO optimization according to claim 1, characterized in that: Calculate the zero drift value and load gravity component of the six-axis force sensor. The specific process is as follows: By changing the posture of the robotic arm on the non-coplanar robot N times, recording the value of the six-dimensional force sensor on the robotic arm, and through matrix operation, with the preset coordinate system of the six-dimensional force sensor as a reference, the load gravity of the robotic arm is decomposed, and the relationship between the six-dimensional force sensor and each parameter in the no-load state is obtained, thereby obtaining the zero drift value of the six-dimensional force sensor and the load gravity component.

3. The method for compensating force control manipulator parameters based on static calibration and PSO optimization according to claim 2, characterized in that: The relationship between the six-axis force sensor and the parameters under no-load condition is: Where, (x, y, z) is the coordinate of the center of gravity of the load; (T gx , T gy , T gz ) is the torque reading in the X, Y, and Z directions of the six-dimensional force sensor; (G x , G y , G z ) is the load gravity component of the robot in the X, Y, and Z directions; F x 、F y and F z is the force of the robot arm when it is unloaded, (F x , F y , F z ) is the indication of the force in the x, y, and z directions of the six-dimensional force sensor, (F x0 , F y0 , F z0 ) is the zero drift value of the force in the x, y, and z directions in the six-dimensional force sensor.

4. The method for compensating force control manipulator parameters based on static calibration and PSO optimization according to claim 2, characterized in that: The zero drift value of the six-axis force sensor and the load gravity component are expressed as: In the formula, is the rotation matrix of the robot flange coordinate system and the robot base coordinate system, U is the rotation angle of the robot base coordinate system around the X axis through the world coordinate system, V is the rotation angle around the Y axis, and F x0 , F y0 , F z0 are the zero drift values ​​of the x, y, and z directions of the six-dimensional force sensor, (G x ,G y ,G z ) is the load gravity component of the robot in the X, Y, and Z directions.

5. The method for compensating force control manipulator parameters based on static calibration and PSO optimization according to claim 1, characterized in that: The PSO algorithm is used to obtain the angles α, β and γ in different directions between the preset coordinate system and the actual coordinate system of the six-dimensional force sensor, and the rotation matrix between the two coordinate systems is obtained, which is specifically: The PSO ant colony algorithm is used to obtain the α, β, and γ values ​​of each set of data using the conversion relationship between the preset coordinate system and the actual coordinate system of the six-dimensional force sensor. The least squares method is then used to minimize the sum of squared errors S between the expected data and the actual data. The sum of squared errors is used to determine whether the expected data is closer to the actual data. The smaller the sum of squared errors S, the better the compensation effect. The PSO ant colony algorithm is continuously optimized to find the optimal solution to obtain the minimum sum of squared errors. Value, get the rotation matrix R xyz , thereby compensating the actual force size on the preset coordinate system of the six-dimensional force sensor.

6. A method for compensating force-controlled manipulator parameters based on static calibration and PSO optimization according to claim 5, characterized in that: The angles in different directions between the preset coordinate system and the actual coordinate system of the six-dimensional force sensor α , β and γ, specifically: The six-dimensional force sensor reading F is obtained by applying the weight force sx 、F sy and F sz , minus the parameters of the robot arm when it is unloaded, to get F x 、F y and F z , and the weight G fx , G fy and G fz Calculate the deflection angles in three directions α , β and γ, the expression is: In the formula, G fx , G fy and G fz The force applied by the weight in the x, y and z directions in the preset coordinate system of the six-dimensional force sensor, Among them, F fx 、F fy and F fz They are the six-dimensional force sensor reading minus the force of the sensor reading under zero load, and the expression is: In the formula, F sx 、F sy and F sz The readings of the six-dimensional force sensor in the x, y and z directions with the weight force applied respectively, F x 、F y and F z They are the forces in the x, y and z directions on the six-dimensional force sensor when unloaded.

7. The method for compensating force control manipulator parameters based on static calibration and PSO optimization according to claim 5, characterized in that: The rotation matrix R xyz for: in, They are the angles in different directions between the preset coordinate system and the actual coordinate system of the six-dimensional force sensor obtained by the optimal solution optimized by the PSO algorithm.

8. The method for compensating force control manipulator parameters based on static calibration and PSO optimization according to claim 7, characterized in that: The actual force after compensation in the preset coordinate system of the six-dimensional force sensor is: In the formula, F X , F Y , F Z The actual force in the x, y and z directions of the preset coordinate system of the compensated six-axis force sensor, F x 、F y and F z They are respectively the force in the x, y and z directions of the six-axis force sensor before compensation and when unloaded, R xyz is the rotation matrix.

9. The method for compensating force control manipulator parameters based on static calibration and PSO optimization according to claim 1, characterized in that: Calibrate the six-dimensional force sensor on the robotic arm, specifically: During calibration, the lower platform of the six-dimensional force sensor is connected to the flange of the robotic arm, the upper platform of the six-dimensional force sensor is fixedly connected to the loading cap, and the weight is connected to the loading cap through a guide pulley and a thin rope. The weight is applied to apply force or torque in a preset direction to the six-dimensional force sensor. The strain values ​​of the six connecting rods on the six-dimensional force sensor are linearly reflected through the measuring bridge on each connecting rod. The voltage signal is converted into a large-range voltage value that can be sampled and utilized through the amplification circuit. After AD sampling, it is input into the computer. After processing, the calibration data is obtained to realize the calibration of the six-dimensional force sensor on the robotic arm.

10. A force-controlled manipulator parameter compensation system based on static calibration and PSO optimization, based on a force-controlled manipulator parameter compensation method based on static calibration and PSO optimization according to any one of claims 1 to 9, characterized in that: include, A preset coordinate system acquisition module is used to obtain the preset coordinate system of the six-dimensional force sensor according to the end flange coordinate system of the robot arm; A calculation module is used to calculate the zero drift value and load gravity component of the six-dimensional force sensor with reference to the preset coordinate system of the six-dimensional force sensor in the absence of external force, and calibrate the six-dimensional force sensor on the robotic arm; The actual coordinate system acquisition module is used to apply forces and torques to the robot arm at different angles and directions to obtain the actual coordinate system of the six-dimensional force sensor; The compensation module is used to obtain the angles in different directions between the preset coordinate system and the actual coordinate system of the six-dimensional force sensor using the PSO algorithm. α , β and γ, and obtain the rotation matrix between the two coordinate systems, thereby compensating the actual force size on the preset coordinate system of the six-dimensional force sensor.

Citation Information

Patent Citations

  • Three-dimensional force loading calibration device and method for three-dimensional force sensor

    CN114279632A

  • Gravity and inertia force compensation method for six-dimensional force sensor at tail end of mechanical arm

    CN115157260A

  • Dynamic zero correction and gravity compensation method for six-dimensional force sensor

    CN116147831A

  • Load gravity compensation method and device for hot-line work robot and storage medium

    CN117984323A

  • Six-dimensional force compensation method and device for far-end central movement mechanism

    CN118977234A

Cited By

  • External force compensation correction method and system for six-dimensional force of healthy maintenance mechanical arm

    CN120941419A