CN114800536B - Method and device for identifying kinetic parameters of multi-link robot - Google Patents

Method and device for identifying kinetic parameters of multi-link robot Download PDF

Info

Publication number
CN114800536B
CN114800536B CN202210760625.2A CN202210760625A CN114800536B CN 114800536 B CN114800536 B CN 114800536B CN 202210760625 A CN202210760625 A CN 202210760625A CN 114800536 B CN114800536 B CN 114800536B
Authority
CN
China
Prior art keywords
joint
data
kinetic
motion data
parameter
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210760625.2A
Other languages
Chinese (zh)
Other versions
CN114800536A (en
Inventor
陈凯文
贺岩
冯赟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Jiebote Robot Co ltd
Original Assignee
Shanghai Jiebote Robot Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Jiebote Robot Co ltd filed Critical Shanghai Jiebote Robot Co ltd
Priority to CN202210760625.2A priority Critical patent/CN114800536B/en
Publication of CN114800536A publication Critical patent/CN114800536A/en
Application granted granted Critical
Publication of CN114800536B publication Critical patent/CN114800536B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Numerical Control (AREA)

Abstract

The invention provides a method and a device for identifying dynamic parameters of a multi-link robot and a computer readable medium. The method comprises the following steps: constructing a friction model; constructing a first dynamic model by combining a friction model; carrying out dimension reduction transformation on the first dynamic model, wherein the dimension reduced second dynamic model has dynamic parameters to be identified; establishing a first excitation track, and carrying out optimization processing on the first excitation track to obtain a second excitation track, wherein the angular velocity and the angular acceleration of each joint at the starting time and the stopping time are zero; the robot is excited to move according to the second excitation track, and motion data of the robot are obtained; carrying out normalization processing on the motion data; fitting the second kinetic model according to the normalized motion data to obtain parameter values of kinetic parameters to be identified, and dividing the motion data into interior point data and noise point data; and identifying the kinetic parameters to be identified of the second kinetic model according to the interior point data to obtain target parameter values.

Description

Method and device for identifying kinetic parameters of multi-link robot
Technical Field
The invention mainly relates to the technical field of robots, in particular to a method and a device for identifying kinetic parameters of a multi-link robot and a computer readable medium.
Background
In recent years, with the rapid development of science and technology, the accumulated installation amount of industrial robots in China reaches the first world and continues to develop at a high speed. Industrial robots are widely used in the fields of electronics, metals, light industry, medicine, and the like. However, the high-end market of industrial robots is still mainly occupied by foreign manufacturers, and the performance of the domestic robots, especially the repeated positioning accuracy, the running speed and the like, needs to be continuously improved. The establishment of an accurate and complete dynamic model is the key for improving the dynamic performance of the robot and improving the control quality of the robot. However, for a general multi-link tandem robot, both the dynamic derivation process and the dynamic parameter acquisition are difficult, and the cost for acquiring an accurate theoretical dynamic model is high.
The dynamic identification method is one of the mainstream methods for obtaining a robot dynamic model at present. In the dynamic identification process, there is a method of identifying the dynamic parameters of each link joint by joint, i.e. identifying the joint from the end joint to the base mark. Although the process is simple, the method is time-consuming and requires multiple identifications. More importantly, errors in the method are easy to accumulate, the single joint identification precision is low, and the overall identification precision is affected. In addition, the concept of multi-joint overall identification is to separate the overall dynamic parameters of each joint and identify the dynamic parameters by exciting the motion of each joint and then collecting the motion information and moment information of each joint. However, when the excitation trajectory is obtained, it is difficult to directly obtain the excitation trajectory satisfying the zero start-stop speed and acceleration, which causes the increase of start-stop impact and affects the identification process. In the identification process, a regression identification mode is often adopted, but because the acquired information such as the position, the speed, the acceleration, the moment and the like of the robot has errors, the moment often has large sudden change particularly in the reversing process of the robot; meanwhile, the torque ranges of the shafts are inconsistent, so that the collected error influence is inconsistent, and therefore all joint data are adopted to identify the same set of identification parameters in the identification process, and the identification result is inevitably unbalanced due to the inconsistent errors. These factors combine to reduce the accuracy of parameter identification.
Disclosure of Invention
The invention aims to provide a kinetic parameter identification method, a kinetic parameter identification device and a computer readable medium of a multi-link robot, which can accurately identify kinetic parameters of the robot.
In order to solve the above technical problem, the present invention provides a method for identifying kinetic parameters of a multi-link robot, where the multi-link robot includes at least one joint, and the method includes: constructing a friction model, and performing friction identification on each joint of the robot; constructing a first dynamic model by combining the friction model, and determining an initial kinetic parameter to be identified according to the first dynamic model; performing dimension reduction transformation on the first dynamic model to obtain a second dynamic model after dimension reduction, wherein the second dynamic model has dynamic parameters to be identified, and the number of the dynamic parameters to be identified is smaller than that of the initial dynamic parameters to be identified; establishing a first excitation track, carrying out optimization processing on the first excitation track to obtain a second excitation track, and when the robot moves according to the second excitation track, enabling the angular velocity and the angular acceleration of each joint at the starting time and the stopping time to be zero; exciting the robot to move according to the second excitation track, and acquiring motion data of each joint of the robot, wherein the motion data comprises moment data; carrying out normalization processing on the motion data to obtain normalized motion data; fitting the second dynamic model according to the normalized motion data to obtain parameter values of the dynamic parameters to be identified, calculating an estimated moment of each normalized motion data according to the fitted second dynamic model, obtaining an error between the moment data in each normalized motion data and the corresponding estimated moment, taking the normalized motion data with the error smaller than a threshold value as interior point data, and taking the normalized motion data with the error larger than the threshold value as noise point data; and identifying the kinetic parameters to be identified of the second kinetic model according to the interior point data to obtain target parameter values.
In an embodiment of the application, the step of constructing a friction model and performing friction identification on each joint of the robot includes: establishing the friction model, wherein the friction model comprises friction parameters to be identified; operating the robot and collecting friction data for each of the joints; and identifying the friction parameters to be identified according to the friction data to obtain a target friction parameter value of each joint.
In an embodiment of the application, the friction data comprises angular velocity and friction torque of the joint, and the friction model is established using the following formula:
Figure DEST_PATH_IMAGE001
wherein, the first and the second end of the pipe are connected with each other,
Figure 100002_DEST_PATH_IMAGE002
represents the friction torque of the joint in question,
Figure DEST_PATH_IMAGE003
(i =1 to 5) represents the friction parameter to be recognized,
Figure 100002_DEST_PATH_IMAGE004
representing the angular velocity of the joint.
In an embodiment of the application, the identifying the friction parameter to be identified according to the friction data, and the obtaining a target friction parameter value of each joint includes: and performing parameter fitting on the friction parameter to be identified in the friction model by adopting a least square method to obtain the target friction parameter value.
In an embodiment of the application, the step of constructing a first dynamic model in combination with the friction model comprises: the first kinetic model is constructed using the following formula:
Figure DEST_PATH_IMAGE005
wherein the content of the first and second substances,
Figure 100002_DEST_PATH_IMAGE006
representing an observation matrix, q representing a rotation angle vector of the joint,
Figure 729412DEST_PATH_IMAGE004
is representative of the angular velocity of the joint,
Figure DEST_PATH_IMAGE007
represents the angular acceleration of the joint, τ represents the motor output torque of the joint,
Figure 584236DEST_PATH_IMAGE002
representing the friction torque of the joint, h representing the initial kinetic parameter to be identified, h = h i ,h i =[I xxi I xyi I xzi I yyi I yzi I zzi m xi m yi m zi m I mi ](ii) a Wherein I =1 to M, M representing the total number of joints comprised by the robot, I xxi 、I xyi 、I xzi 、I yyi 、I yzi 、I zzi Representing the inertia tensor of the joint, m xi 、m yi 、m zi Representing the position of the center of mass of the joint, m representing the joint mass of the joint, I mi Representing the motor inertia of the joint.
In an embodiment of the present application, a dimension reduction transformation is performed on the first dynamical model, and a dimension-reduced second dynamical model is obtained as follows:
Figure 100002_DEST_PATH_IMAGE008
wherein the content of the first and second substances,
Figure DEST_PATH_IMAGE009
representing the observation matrix after dimensionality reduction, h b Representing the kinetic parameters to be identified determined after dimensionality reduction, and the kinetic parameters h to be identified b Is less than the number of the initial kinetic parameters h to be identified.
In an embodiment of the present application, the dimension reduction transformation includes performing QR decomposition on the initial kinetic parameter to be identified, obtaining a minimum parameter set of the initial kinetic parameter to be identified, and using the minimum parameter set as the kinetic parameter to be identified.
In an embodiment of the application, the first excitation trajectory has excitation trajectory parameters, and the step of establishing the first excitation trajectory includes:
the periodic trajectory function is established in the form of a sum of finite fourier stages as follows:
Figure 100002_DEST_PATH_IMAGE010
Figure DEST_PATH_IMAGE011
Figure 100002_DEST_PATH_IMAGE012
wherein q represents a rotation angle vector of the joint,
Figure 144399DEST_PATH_IMAGE004
is representative of the angular velocity of the joint,
Figure 8450DEST_PATH_IMAGE007
represents the angular acceleration of the joint, t represents time,
Figure DEST_PATH_IMAGE013
representing the fundamental frequency of each of said joints, N representing the number of harmonics, the excitation trajectory parameters including a ik 、b ik 、q i0 Wherein a is ik And b ik Representing the amplitude, q i0 Represents a constant term, i =1 to M, M representing the total number of joints comprised by the robot; and determining target excitation track parameters of each joint by adopting a condition number method.
In an embodiment of the present application, the step of determining the excitation trajectory parameter of each joint by using a condition number method includes: the observation matrix after dimensionality reduction is carried out
Figure 747123DEST_PATH_IMAGE009
Is used as a condition number, and an excitation trajectory parameter that minimizes the condition number is used as the target excitation trajectory parameter.
In an embodiment of the present application, the step of performing optimization processing on the first excitation trajectory to obtain a second excitation trajectory includes: optimizing the first excitation track by adopting a first optimization algorithm to obtain a first optimized excitation track, wherein the first optimized excitation track has first optimized excitation track parameters; and optimizing the first optimized excitation track by adopting a second optimization algorithm by taking the first optimized excitation track parameter as an initial value to obtain a second optimized excitation track, wherein the second optimized excitation track has a second optimized excitation track parameter, and the constraint condition of the second optimization algorithm comprises that the angular velocity and the angular acceleration of the joint at the initial moment are both zero.
In an embodiment of the present application, the first optimization algorithm comprises an unconstrained heuristic algorithm; the second optimization algorithm comprises a trust domain algorithm, and the constraint condition is expressed by the following formula:
Figure DEST_PATH_IMAGE014
wherein i =1 to M, M representing a total number of the joints comprised by the robot,
Figure 100002_DEST_PATH_IMAGE015
represents the minimum value of the rotation angle vector of the ith joint,
Figure DEST_PATH_IMAGE016
represents the maximum value of the rotation angle vector of the ith joint,
Figure 100002_DEST_PATH_IMAGE017
represents the minimum value of the angular velocity of the ith said joint,
Figure DEST_PATH_IMAGE018
represents the maximum value of the angular velocity of the ith said joint,
Figure 100002_DEST_PATH_IMAGE019
represents the minimum value of the angular acceleration of the ith said joint,
Figure DEST_PATH_IMAGE020
represents the maximum value of the angular acceleration of the ith said joint,
Figure 100002_DEST_PATH_IMAGE021
represents the angular velocity of the ith joint at t =0,
Figure DEST_PATH_IMAGE022
represents the angular acceleration of the i-th joint at t = 0.
In an embodiment of the present application, the motion data includes moment data, and the step of normalizing the motion data includes:
calculating the range of moments for each of the joints using the following formula:
Figure 100002_DEST_PATH_IMAGE023
wherein the content of the first and second substances,
Figure DEST_PATH_IMAGE024
represents the maximum moment in the moment data of the ith joint,
Figure 100002_DEST_PATH_IMAGE025
represents the minimum moment in the moment data of the ith joint,
Figure DEST_PATH_IMAGE026
representing the moment range of the ith joint;
and carrying out normalization processing on the motion data according to the torque range, wherein the normalized data comprises a normalized observation matrix and a normalized motor output torque, and the normalization processing comprises the following steps:
Figure 100002_DEST_PATH_IMAGE027
wherein the content of the first and second substances,
Figure DEST_PATH_IMAGE028
a matrix of observations representative of the normalization is provided,
Figure 100002_DEST_PATH_IMAGE029
representing the normalized motor output torque as follows:
Figure DEST_PATH_IMAGE030
Figure 100002_DEST_PATH_IMAGE031
in an embodiment of the application, the step of fitting the second kinetic model according to the motion data to obtain parameter values of the kinetic parameters to be identified, calculating an estimated moment of each normalized motion data according to the fitted second kinetic model, obtaining an error between the moment data in each normalized motion data and the corresponding estimated moment, taking the normalized motion data with the error smaller than a threshold as interior point data, and taking the normalized motion data with the error larger than the threshold as noise point data includes:
step S201: let j =1, set threshold Δ T;
step S202: defining n as the number of the kinetic parameters to be identified, randomly selecting n groups from all normalized motion data, wherein each group comprises one normalized observation matrix
Figure 851477DEST_PATH_IMAGE028
And a corresponding said normalized motor output torque
Figure 587351DEST_PATH_IMAGE029
Step S203: fitting the second kinetic model according to the n groups of normalized motion data to obtain parameter values of the kinetic parameters to be identified
Figure DEST_PATH_IMAGE032
Step S204: respectively calculating the error between the torque data in each normalized motion data and the corresponding estimated torque according to the n groups of normalized motion data
Figure 100002_DEST_PATH_IMAGE033
When is coming into contact with
Figure DEST_PATH_IMAGE034
If so, marking the group of normalized motion data as interior point data, otherwise marking the group of normalized motion data as noise point data;
step S205: the corresponding parameter values were calculated using the following formula
Figure 379727DEST_PATH_IMAGE032
Inner point ratio p of j
Figure 100002_DEST_PATH_IMAGE035
Where m1 denotes the number of sets of normalized motion data labeled as inlier data, m2 denotes the number of sets of normalized motion data labeled as noisier data;
step S206: increasing j by 1;
step S207: repeating the steps S202 to S206 until j = R, which is a preset number of calculations;
step S208: from R interior point rates p j The maximum point rate p in the target is selected as the target interior point rate max And marking the interior point data corresponding to the target interior point rate as target interior point data.
A method for identifying kinetic parameters of claim 14 wherein said predetermined number of calculations R is calculated using the following formula:
Figure DEST_PATH_IMAGE036
wherein p represents an initial interior point rate, n is the number of the kinetic parameters to be identified, and the initial interior point rate is obtained by adopting the following steps:
step S209: fitting the second kinetic model by adopting all the normalized motion data to obtain initial parameter values of the kinetic parameters to be identified
Figure 100002_DEST_PATH_IMAGE037
All the normalized motion data comprise a plurality of groups, and the normalized motion data are respectively calculated according to the plurality of groups
Figure DEST_PATH_IMAGE038
When it comes to
Figure 100002_DEST_PATH_IMAGE039
If so, marking the group of normalized motion data as interior point data, otherwise marking the group of normalized motion data as noise point data;
step S210: the following formula is used to calculate the corresponding parameter value
Figure DEST_PATH_IMAGE040
The initial interior point rate p:
Figure 100002_DEST_PATH_IMAGE041
where m3 denotes the number of sets of normalized motion data labeled as inlier data, and m4 denotes the number of sets of normalized motion data labeled as noisier data.
In an embodiment of the present application, the identifying the kinetic parameter to be identified of the second kinetic model according to the interior point data, and the step of obtaining the target parameter value includes: fitting the second kinetic model according to the target interior point data to obtain the target parameter value of the kinetic parameter to be identified
Figure DEST_PATH_IMAGE042
The present invention further provides a dynamic parameter identification device for a multi-link robot, which comprises: a memory for storing instructions executable by the processor; a processor for executing the instructions to implement the method as described above.
The present invention also provides a computer readable medium storing computer program code, which when executed by a processor implements the method as described above.
According to the kinetic parameter identification method, the first excitation track is optimized to obtain the optimized second excitation track, so that the angular velocity and the angular acceleration of each joint at the starting time and the stopping time are zero, and errors caused by overlarge impact of the speed when the robot is started or stopped are reduced or even avoided; by carrying out normalization processing on the motion data, the influence of inconsistent error disturbance caused by inconsistent torque ranges of all joints is eliminated; in addition, target interior point data with the maximum interior point rate are obtained through a random sampling consistency algorithm, and identified target parameter values are obtained according to the target interior point data, so that an optimal dynamic model is obtained; in general, the accuracy of the identification method is improved, the dynamic performance and the control precision of the robot are improved, and the robot is favorably applied to the high-precision technical field.
Drawings
The accompanying drawings, which are included to provide a further understanding of the application and are incorporated in and constitute a part of this application, illustrate embodiment(s) of the application and together with the description serve to explain the principle of the invention. In the drawings:
fig. 1 is an exemplary flowchart of a method for identifying kinetic parameters of a multi-link robot according to an embodiment of the present disclosure;
fig. 2A-2F are schematic diagrams illustrating verification results of 6 joints obtained by a method for identifying dynamic parameters of a multi-link robot according to an embodiment of the present disclosure;
fig. 3 is a system block diagram of a kinetic parameter identification apparatus of a multi-link robot according to an embodiment of the present application.
Detailed Description
In order to more clearly illustrate the technical solutions of the embodiments of the present application, the drawings used in the description of the embodiments will be briefly described below. It is obvious that the drawings in the following description are only examples or embodiments of the application, and that for a person skilled in the art the application can also be applied to other similar contexts on the basis of these drawings without inventive effort. Unless otherwise apparent from the context, or otherwise indicated, like reference numbers in the figures refer to the same structure or operation.
As used in this application and the appended claims, the terms "a," "an," "the," and/or "the" are not intended to be inclusive in the singular, but rather are intended to be inclusive in the plural unless the context clearly dictates otherwise. In general, the terms "comprises" and "comprising" merely indicate that steps and elements are included which are explicitly identified, that the steps and elements do not form an exclusive list, and that a method or apparatus may include other steps or elements.
The relative arrangement of the components and steps, the numerical expressions, and numerical values set forth in these embodiments do not limit the scope of the present application unless specifically stated otherwise. Meanwhile, it should be understood that the sizes of the respective portions shown in the drawings are not drawn in an actual proportional relationship for the convenience of description. Techniques, methods, and apparatus known to those of ordinary skill in the relevant art may not be discussed in detail but are intended to be part of the specification where appropriate. In all examples shown and discussed herein, any particular value should be construed as merely illustrative, and not limiting. Thus, other examples of the exemplary embodiments may have different values. It should be noted that: like reference numbers and letters refer to like items in the following figures, and thus, once an item is defined in one figure, further discussion thereof is not required in subsequent figures.
It should be noted that the terms "first", "second", and the like are used to define the components, and are only used for convenience of distinguishing the corresponding components, and the terms have no special meanings unless otherwise stated, and therefore, the scope of protection of the present application is not to be construed as being limited. Further, although the terms used in the present application are selected from publicly known and used terms, some of the terms mentioned in the specification of the present application may be selected by the applicant at his or her discretion, the detailed meanings of which are described in relevant parts of the description herein. Further, it is required that the present application is understood not only by the actual terms used but also by the meaning of each term lying within.
Flow charts are used herein to illustrate operations performed by systems according to embodiments of the present application. It should be understood that the preceding or following operations are not necessarily performed in the exact order in which they are performed. Rather, various steps may be processed in reverse order or simultaneously. Meanwhile, other operations are added to or removed from these processes.
The dynamic parameter identification method of the multi-link robot can be used for identifying the dynamic parameters of the multi-link robot. The multi-link robot includes at least one joint, for example 6 joints. The present specification will describe the 6 joints as an example, and is not intended to limit the number of joints.
Fig. 1 is an exemplary flowchart of a method for identifying kinetic parameters of a multi-link robot according to an embodiment of the present disclosure. Referring to fig. 1, the kinetic parameter identification method of the embodiment includes the following steps:
step S110: constructing a friction model, and performing friction identification on each joint of the robot;
step S120: constructing a first dynamic model by combining a friction model, and determining an initial kinetic parameter to be identified according to the first dynamic model;
step S130: performing dimension reduction transformation on the first dynamic model to obtain a second dynamic model after dimension reduction, wherein the second dynamic model has dynamic parameters to be identified, and the number of the dynamic parameters to be identified is smaller than that of the initial dynamic parameters to be identified;
step S140: establishing a first excitation track, carrying out optimization processing on the first excitation track to obtain a second excitation track, and when the robot moves according to the second excitation track, enabling the angular velocity and the angular acceleration of each joint at the starting time and the stopping time to be zero;
step S150: stimulating the robot to move according to the second excitation track, and acquiring motion data of each joint of the robot, wherein the motion data comprises moment data;
step S160: carrying out normalization processing on the motion data to obtain normalized motion data;
step S170: fitting the second dynamic model according to the normalized motion data to obtain parameter values of the dynamic parameters to be identified, calculating the estimated moment of each normalized motion data according to the fitted second dynamic model, obtaining the error between the moment data in each normalized motion data and the corresponding estimated moment, taking the normalized motion data with the error smaller than the threshold value as interior point data, and taking the normalized motion data with the error larger than the threshold value as noise point data; and
step S180: and identifying the kinetic parameters to be identified of the second kinetic model according to the interior point data to obtain target parameter values.
The following explains the above steps S110 to S180.
In step S110, the present application does not limit how the friction model is constructed. And performing friction identification on each joint of the robot through a friction model. The friction model may be constructed separately for each joint.
In some embodiments, the same friction model is used for each joint of the same robot.
In some embodiments, step S110 specifically includes the following steps:
step S111: establishing a friction model, wherein the friction model comprises friction parameters to be identified;
step S112: running the robot and collecting friction data of each joint;
step S113: and identifying the friction parameter to be identified according to the friction data to obtain a target friction parameter value of each joint.
In some embodiments, the non-linear continuous friction model used in step S111 is as follows:
Figure 476035DEST_PATH_IMAGE001
(1)
wherein, the first and the second end of the pipe are connected with each other,
Figure 938240DEST_PATH_IMAGE002
the friction torque of the joint is represented,
Figure 895832DEST_PATH_IMAGE003
(i =1 to 5) represents a friction parameter to be recognized,
Figure 350953DEST_PATH_IMAGE004
representing the angular velocity of the joint.
The nonlinear continuous friction model shown in the formula (1) can fully simulate the stribeck effect and the coulomb viscosity of the friction force under the condition of low speed.
Equation (1) is an example and is not intended to limit the specific form of the friction model. According to equation (1), there are 5 friction parameters to be identified, i.e. γ 1 ,γ 2 ,γ 3 ,γ 4 ,γ 5 . In other embodiments, the number of friction parameters to be identified may be any number.
In step S112, the robot is operated to collect friction data of each joint at different speeds. According to the friction model, the friction force of the robot joint is only related to the running angular velocity of each joint.
Each joint may be run individually and friction data for that joint may be obtained. The angular velocity of the joint can be obtained by collecting the motor encoder value and then using a difference method. And the friction torque of the joint can be converted by collecting current feedback and then by a torque constant. According to the embodiments, the friction data of each joint can be directly acquired by using the motor in each joint, and additional speed sensors and torque sensors are not required to be mounted, so that additional disassembly and assembly are avoided, and the cost is increased.
In some embodiments, in order to avoid the influence of gravity on the friction force, when performing friction identification on each joint, the rotation axis of the joint to be identified is adjusted to be perpendicular to the ground, and then the friction data acquisition of step S112 is performed.
In step S113, the friction torque and the angular velocity acquired in step S112 are substituted into the above formula (1) for each joint, and a parameter fitting is performed on the friction model.
In some embodiments, the target friction parameter value of each joint, namely, γ, can be obtained by performing parameter fitting on the friction parameter to be identified in the friction model by using a least square method 1 ,γ 2 ,γ 3 ,γ 4 ,γ 5 The specific numerical value of (1).
For a robot with 6 joints, the 6 joints are respectively subjected to friction identification by adopting the steps S111-S113, so that 6 sets of target friction parameter values can be obtained. By substituting these target friction parameter values into the above formula (1), the identified friction model can be obtained. During the subsequent calculation, γ 1 ,γ 2 ,γ 3 ,γ 4 ,γ 5 As a known quantity, it is possible to follow the formula (1), depending on the angular velocity of the joint
Figure 343180DEST_PATH_IMAGE004
To calculate the friction torque of the joint
Figure 976286DEST_PATH_IMAGE002
Referring to fig. 1, in step S120, a first kinetic model is constructed in conjunction with the friction model of step S110.
In some embodiments, the kinetic model of the robot is derived by the Newton-Euler equation and then rewritten to the equation in linear form for the robot parameter, i.e. the first kinetic model as follows:
Figure 938951DEST_PATH_IMAGE005
(2)
wherein the content of the first and second substances,
Figure 417336DEST_PATH_IMAGE006
representing an observation matrix, q representing a rotation angle vector of the joint,
Figure 529649DEST_PATH_IMAGE004
which is indicative of the angular velocity of the joint,
Figure 333657DEST_PATH_IMAGE007
represents the angular acceleration of the joint, tau represents the motor output torque of the joint,
Figure 515108DEST_PATH_IMAGE002
representing the friction torque of the joint, h representing the initial kinetic parameter to be identified, h = h i ,h i =[I xxi I xyi I xzi I yyi I yzi I zzi m xi m yi m zi m I mi ](ii) a Wherein I =1 to M, M representing the total number of joints comprised by the robot, I xxi 、I xyi 、I xzi 、I yyi 、I yzi 、I zzi Representing the inertia tensor, m, of the joint xi 、m yi 、m zi Representing the position of the center of mass of the joint, m representing the joint mass of the joint, I mi Representing the motor inertia of the joint.
In the formula (2), the first and second groups,
Figure 797185DEST_PATH_IMAGE002
is the identified friction torque for each joint in equation (1). Observation matrix
Figure 764004DEST_PATH_IMAGE006
Some motion data of the robot that can be observed is included, and for each joint, the motion data includes a rotation angle vector, an angular velocity, and an angular acceleration.
The initial kinetic parameter h to be identified in the formula (2) can be identified by collecting motion data of the robot, including the rotation angle vector, the angular velocity, the angular acceleration and the motor output torque of each joint.
For each joint, the initial kinetic parameters h to be identified include 11 parameters, which are 6 inertia tensors, 3 centroid positions, 1 joint mass and 1 motor inertia respectively. The initial kinetic parameters to be identified include a total of 66 parameters for a 6-joint robot.
In some embodiments, the observation matrix
Figure 988181DEST_PATH_IMAGE006
Therefore, in step S130, the dimension reduction transformation is performed on the first dynamical model to obtain a dimension-reduced second dynamical model, so as to reduce the number of the dynamical parameters to be identified and improve the calculation efficiency.
In some embodiments, the dimension reduction transformation is performed on the first dynamical model, and the dimension-reduced second dynamical model is obtained as follows:
Figure 407661DEST_PATH_IMAGE008
(3)
wherein the content of the first and second substances,
Figure 759008DEST_PATH_IMAGE009
representing the observation matrix after dimensionality reduction, h b Representing the kinetic parameters to be identified determined after dimensionality reduction, wherein the kinetic parameters h to be identified b The number of the initial kinetic parameters h to be identified is less than the number of the initial kinetic parameters h to be identified.
In some embodiments, the dimension reduction transformation includes performing QR decomposition on the initial kinetic parameter to be identified, obtaining a minimum parameter set of the initial kinetic parameter to be identified, and using the minimum parameter set as the kinetic parameter to be identified.
Referring to FIG. 1, in step S140, in some embodiments, the step of establishing a first excitation trajectory includes:
step S141: the periodic trajectory function is established in the form of a sum of finite fourier stages as follows:
Figure 100002_DEST_PATH_IMAGE043
(4)
Figure DEST_PATH_IMAGE044
(5)
Figure 100002_DEST_PATH_IMAGE045
(6)
wherein q represents a rotation angle vector of the joint,
Figure 957164DEST_PATH_IMAGE004
which is indicative of the angular velocity of the joint,
Figure 102975DEST_PATH_IMAGE007
represents the angular acceleration of the joint, t represents time,
Figure 9751DEST_PATH_IMAGE013
representing the fundamental frequency of each joint, N representing the number of harmonics, and the excitation trajectory parameters including a ik 、b ik 、q i0 Wherein a is ik And b ik Representing the amplitude, q i0 Represents a constant term, i =1 to M, M representing the total number of joints comprised by the robot;
step S142: and determining target excitation track parameters of each joint by adopting a condition number method.
In order to sufficiently excite the robot and to allow the trajectory to travel in as large a range as possible, it is necessary to obtain an optimal excitation trajectory.
In step S142, a condition number method is adopted as an optimization method, the optimization target is a condition number of the regression matrix, and the smaller the condition number is, the less the recognition result is susceptible to interference of measurement noise.
In some embodiments, step S142 includes: the observation matrix after dimensionality reduction
Figure 899210DEST_PATH_IMAGE009
Is used as a condition number, and the excitation trajectory parameter that minimizes the condition number is used as a target excitation trajectory parameter.
As shown in fig. 1, in step S140, the first excitation trajectory is optimized to obtain a second excitation trajectory, and when the robot moves according to the second excitation trajectory, the angular velocity and the angular acceleration of each joint at the start time and the stop time are both zero.
When the periodic locus function (4-6) described above is adopted as the first excitation locus, since it is a periodic locus, the position of each joint at the start time and the stop time is the same.
In some embodiments, the step of optimizing the first excitation trajectory to obtain the second excitation trajectory comprises:
step S143: optimizing the first excitation track by adopting a first optimization algorithm to obtain a first optimized excitation track, wherein the first optimized excitation track has first optimized excitation track parameters;
step S144: and optimizing the first optimized excitation track by adopting a second optimization algorithm by taking the first optimized excitation track parameter as an initial value to obtain a second optimized excitation track, wherein the second optimized excitation track has a second optimized excitation track parameter, and the constraint condition of the second optimization algorithm comprises that the angular velocity and the angular acceleration of the joint at the starting moment are both zero.
In some embodiments, the first optimization algorithm in step S143 comprises an unconstrained heuristic algorithm, such as a genetic algorithm, a particle algorithm, or the like.
In some embodiments, the second optimization algorithm in step S144 includes a trust domain algorithm, and the constraint is represented by the following formula:
Figure 89889DEST_PATH_IMAGE014
wherein i =1 to M, M representing the total number of joints comprised by the robot,
Figure 406600DEST_PATH_IMAGE015
represents the minimum value of the rotation angle vector of the ith joint,
Figure 800673DEST_PATH_IMAGE016
represents the maximum value of the rotation angle vector of the i-th joint,
Figure 743090DEST_PATH_IMAGE017
maximum angular velocity of i-th jointThe small value of the amount of the first,
Figure 273428DEST_PATH_IMAGE018
represents the maximum value of the angular velocity of the ith joint,
Figure 761041DEST_PATH_IMAGE019
represents the minimum value of the angular acceleration of the ith joint,
Figure 642410DEST_PATH_IMAGE020
represents the maximum value of the angular acceleration of the ith joint,
Figure 388518DEST_PATH_IMAGE021
representing the angular velocity of the ith joint at t =0,
Figure 773363DEST_PATH_IMAGE022
represents the angular acceleration of the i-th joint at t = 0.
According to the embodiment, the confidence domain algorithm is adopted for secondary local optimization, and the constraint condition that the angular velocity and the angular acceleration of each joint at the initial position are zero is added. Since the positions of the start time and the stop time are the same, when this constraint condition is satisfied, the angular velocity and the angular acceleration of each joint of the robot at the stop position are also zero.
By combining the first optimization algorithm and the second optimization algorithm, the optimized second excitation track can be obtained, and errors caused by the impact of the overlarge speed of the robot when the robot is started and stopped in the identification process are avoided.
As shown in fig. 1, in step S150, the robot is controlled to move according to the determined second excitation trajectory, and meanwhile, the movement data of each joint of the robot is recorded, wherein the movement data includes, but is not limited to, moment data.
In some embodiments, the robot may be powered on for a warm-up time before the collection of the motion data of each joint of the robot is started. The warm-up time is not limited in the present application, and is, for example, 10 minutes.
In some embodiments, the collected objects are the motion angle of each joint and the feedback current value of the motor. The angular velocity and the angular acceleration of each joint can be obtained by differentiating the angle of each joint. The output torque of the motor can be calculated from the current value of the motor using the following equation (7):
Figure DEST_PATH_IMAGE046
(7)
wherein, the first and the second end of the pipe are connected with each other,
Figure 100002_DEST_PATH_IMAGE047
indicating the output torque of the motor, G T Representing the motor moment constant, I T Representing the collected motor current values.
In some embodiments, in step S150, when motion data is acquired, data is acquired at a specified constant sampling frequency. Meanwhile, in order to filter the influence of noise, the acquired motion data can be subjected to averaging processing and Butterworth low-pass filtering processing.
When data acquisition is performed on the robot, torque and displacement parameters of each connecting rod are generally acquired. The torque ranges of the connecting rods are inconsistent, and the error disturbance is inconsistent. Because the identification process satisfies all the collected data by using a set of kinetic parameters, the identification result of the kinetic parameters is seriously influenced by the inconsistency of errors in the data collection process of each connecting rod. Therefore, the present application performs normalization processing on the collected motion data at step S160.
In some embodiments, in step S160, the step of normalizing the motion data includes:
step S161: the torque range for each joint was calculated using the following formula:
Figure 356178DEST_PATH_IMAGE023
(8)
wherein the content of the first and second substances,
Figure 724843DEST_PATH_IMAGE024
represents the maximum moment in the moment data of the ith joint,
Figure 759795DEST_PATH_IMAGE025
represents the minimum moment in the moment data of the ith joint,
Figure 779572DEST_PATH_IMAGE026
representing the moment range of the ith joint;
step S162: the motion data are normalized according to the torque range, the normalized data comprise a normalized observation matrix and normalized motor output torque, and the method comprises the following steps:
Figure 343409DEST_PATH_IMAGE027
(9)
wherein the content of the first and second substances,
Figure 199369DEST_PATH_IMAGE028
a normalized observation matrix is represented that represents the observation matrix,
Figure 21701DEST_PATH_IMAGE029
the normalized motor output torque is expressed as follows:
Figure DEST_PATH_IMAGE048
Figure 849979DEST_PATH_IMAGE031
(10)
according to the steps S161 to S162, it is equivalent to performing normalization processing on the motion data substituted into the second dynamic model, so that the errors of the joints are normalized within a uniform range, thereby reducing the influence on the identification result due to the inconsistency of the errors.
In some embodiments, the step S170 of fitting the second kinetic model according to the motion data to obtain parameter values of the kinetic parameters to be identified, calculating an estimated moment of each normalized motion data according to the fitted second kinetic model, obtaining an error between the moment data in each normalized motion data and the corresponding estimated moment, using the normalized motion data with the error smaller than the threshold as the interior point data, and using the normalized motion data with the error larger than the threshold as the noise point data includes:
step S201: let j =1, set threshold Δ T;
step S202: defining n as the number of kinetic parameters to be identified, randomly selecting n groups from all normalized motion data, wherein each group comprises a normalized observation matrix
Figure 99564DEST_PATH_IMAGE028
And a corresponding normalized motor output torque
Figure 177241DEST_PATH_IMAGE029
Step S203: fitting the second kinetic model according to the n groups of normalized motion data to obtain parameter values of kinetic parameters to be identified
Figure 819575DEST_PATH_IMAGE032
Step S204: respectively calculating the error between the torque data in each normalized motion data and the corresponding estimated torque according to the n groups of normalized motion data
Figure 299098DEST_PATH_IMAGE033
When is coming into contact with
Figure 546733DEST_PATH_IMAGE034
If so, marking the group of normalized motion data as interior point data, otherwise marking the group of normalized motion data as noise point data; wherein the content of the first and second substances,
Figure 100002_DEST_PATH_IMAGE049
represents the torque data in the normalized data, i.e., the normalized motor output torque in equation (10),
Figure DEST_PATH_IMAGE050
representing the estimated moment calculated from the fitted second kinetic model.
Step S205: the corresponding parameter values were calculated using the following formula
Figure 49389DEST_PATH_IMAGE032
Inner point ratio p of j
Figure 479102DEST_PATH_IMAGE035
(11)
Where m1 denotes the number of sets of normalized motion data labeled as inlier data, m2 denotes the number of sets of normalized motion data labeled as noisier data;
step S206: increasing j by 1;
step S207: repeatedly executing the steps S202-S206 until j = R, wherein R is a preset number of times of calculation;
step S208: from R interior point rates p j The maximum is selected as the target inner point rate p max And marking the interior point data corresponding to the target interior point rate as target interior point data.
In the above step S201, the threshold Δ T may range from 0.01 to 0.1 m.
Step S170 is a specific implementation of a random sampling consensus algorithm (ranac). In each cycle, n sets of motion data are randomly selected from all the motion data in step S202.
In step S203, a least square method may be adopted for fitting to obtain a parameter value of the kinetic parameter to be identified
Figure 547553DEST_PATH_IMAGE032
In some embodiments, the preset number of calculations R in step S207 is calculated using the following formula:
Figure 155251DEST_PATH_IMAGE036
(12)
wherein p represents an initial interior point rate, n is the number of kinetic parameters to be identified, and the initial interior point rate p is obtained by adopting the following steps:
step S209: fitting the second kinetic model by adopting all the normalized motion data to obtain the initial parameter value of the kinetic parameter to be identified
Figure 394472DEST_PATH_IMAGE037
All the normalized motion data include a plurality of sets, and are calculated respectively based on the plurality of sets of normalized motion data
Figure 113029DEST_PATH_IMAGE038
When is coming into contact with
Figure 816412DEST_PATH_IMAGE039
If so, marking the group of normalized motion data as interior point data, otherwise marking the group of normalized motion data as noise point data; it is understood that the number of sets of the plurality of sets of normalized motion data is larger than n in step S202.
Step S210: the corresponding parameter values were calculated using the following formula
Figure 329433DEST_PATH_IMAGE037
Initial inner point rate p:
Figure 868998DEST_PATH_IMAGE041
where m3 denotes the number of sets of motion data labeled as inlier data, and m4 denotes the number of sets of motion data labeled as noisier data.
According to the above-described steps S201 to S208, target inlier data having the maximum inlier rate can be obtained.
The application does not limit the fitting method in step S209, and in some embodiments, a least square method may be used to fit the second dynamic model according to all the motion data in step S209.
As shown in fig. 1, in step S180, the step of identifying the kinetic parameter to be identified of the second kinetic model according to the interior point data to obtain the target parameter value includes:
step S181: fitting a second kinetic model according to the target interior point data to obtain the target parameter value of the kinetic parameter to be identified
Figure 391247DEST_PATH_IMAGE042
Because the target interior point data corresponds to the maximum interior point rate, the optimal target parameter value can be obtained by fitting the target interior point data to the second dynamic model by adopting the least square method
Figure 686486DEST_PATH_IMAGE042
. The optimal target parameter value
Figure 635988DEST_PATH_IMAGE042
And substituting the second kinetic model into the second kinetic model to obtain fitting data closest to the real data under an ideal condition.
In some embodiments, after steps S110-S180, the following steps may be further included:
step S190: and verifying the identification parameters, verifying the target parameter values obtained in the previous steps S110-S180, and checking the accuracy of the kinetic parameter identification method.
Specifically, the verifying step may include: selecting a verification track to excite the robot, and adopting the verification track with target parameter values
Figure 100002_DEST_PATH_IMAGE051
The second dynamic model controls the motion of the robot, collects the motion data of the robot, and can obtain the first fitting data. The verification trajectory is an arbitrary trajectory different from the first excitation trajectory in step S140.
The inventor of the application adopts the identification method of the application to obtain a target parameter value, and adopts a second dynamic model to fit the motor output torque of each joint of the robot to obtain first fitting data. In order to verify the effect of the identification method, a comparison identification method is additionally adopted, other comparison dynamic models are adopted in the comparison identification method, the motion data of the robot are collected, the comparison dynamic models are fitted by adopting a least square method, comparison parameter values are obtained, and second fitting data can be obtained. The comparison kinetic model may be the first kinetic model or the second kinetic model in step S120, or may be any other kinetic model. And comparing the first fitting data with the second fitting data to obtain a verification result.
Fig. 2A to 2F are schematic diagrams of the verification results of 6 joints, respectively. Fig. 2A to 2F correspond to the first joint to the sixth joint, respectively. Taking fig. 2A as an example, where the horizontal axis is time (in units of s) and the vertical axis is the motor output torque (torque, in units of Nm) of the first joint. The measured data 211, the first fitting data 212 and the second fitting data 213 are shown. As is apparent from fig. 2D, 2E, and 2F, the first fitting data 212 is closer to the measured data 211 than the second fitting data 213.
Further, the inventor of the present application uses the residual root mean square error RMS of the predicted moment to determine the recognition accuracy of the recognition method of the present application. The residual root mean square error is calculated using the following equation:
Figure DEST_PATH_IMAGE052
(13)
the following table lists the residual root mean square error of the predicted moments of 6 joints obtained by the identification method and the comparative identification method of the present application. The predicted moment is the fitting data calculated by using a dynamic model.
Table one:
1 axle 2 axle 3 shaft 4-shaft 5 axle 6 shaft
Contrast identification method 6.38 17.73 18.33 18.53 18.47 18.66
Identification method of the application 4.93 16.61 17.35 17.53 17.52 17.61
According to the data shown in table one, the accuracy of the identification method of the present application can be improved by 5-10% compared to the comparative identification method.
According to the kinetic parameter identification method, the first excitation track is optimized to obtain the optimized second excitation track, so that the angular velocity and the angular acceleration of each joint at the starting time and the stopping time are zero, and errors caused by overlarge impact of the speed when the robot is started or stopped are reduced or even avoided; through the normalization processing of the motion data, the influence of inconsistent error disturbance caused by inconsistent torque ranges of all joints is eliminated; in addition, target interior point data with the maximum interior point rate are obtained through a random sampling consistency algorithm, and identified target parameter values are obtained according to the target interior hall data, so that an optimal dynamic model is obtained; in general, the accuracy of the identification method is improved, the dynamic performance and the control precision of the robot are improved, and the robot is favorably applied to the high-precision technical field.
The invention also comprises a dynamic parameter identification device of the multi-link robot, which comprises a memory and a processor. Wherein the memory is to store instructions executable by the processor; the processor is used for executing the instructions to realize the dynamic parameter identification method of the multi-link robot.
Fig. 3 is a system block diagram of a kinetic parameter identification apparatus of a multi-link robot according to an embodiment of the present invention. Referring to FIG. 3, the kinetic parameter identification device 300 may include an internal communication bus 301, a processor 302, a Read Only Memory (ROM) 303, a Random Access Memory (RAM) 304, and a communication port 305. When applied to a personal computer, the kinetic parameter identification device 300 may further include a hard disk 306. An internal communication bus 301 may enable data communication between components of the kinetic parameter identification device 300. Processor 302 may make the determination and issue a prompt. In some embodiments, processor 302 may be comprised of one or more processors. The communication port 305 may enable data communication between the kinetic parameter identification device 300 and the outside. In some embodiments, the kinetic parameter identification device 300 may send and receive information and data from a network via the communication port 305. The kinetic parameter identification device 300 may also include various forms of program storage units and data storage units, such as a hard disk 306, Read Only Memory (ROM) 303 and Random Access Memory (RAM) 304, capable of storing various data files for computer processing and/or communication, and possibly program instructions for execution by the processor 302. The processor executes these instructions to implement the main parts of the method. The results processed by the processor are communicated to the user device through the communication port and displayed on the user interface.
The kinetic parameter identification method can be implemented as a computer program, stored in the hard disk 306, and loaded into the processor 302 for execution, so as to implement the kinetic parameter identification method of the present application.
The invention also comprises a computer-readable medium having stored thereon a computer program code which, when executed by a processor, implements the kinetic parameter identification method as described above.
When the method for identifying the kinetic parameters of the multi-link robot is implemented as a computer program, the computer program may be stored in a computer-readable storage medium as a product. For example, computer-readable storage media can include but are not limited to magnetic storage devices (e.g., hard disk, floppy disk, magnetic strips), optical disks (e.g., Compact Disk (CD), Digital Versatile Disk (DVD)), smart cards, and flash memory devices (e.g., electrically Erasable Programmable Read Only Memory (EPROM), card, stick, key drive). In addition, various storage media described herein can represent one or more devices and/or other machine-readable media for storing information. The term "machine-readable medium" can include, without being limited to, wireless channels and various other media (and/or storage media) capable of storing, containing, and/or carrying code and/or instructions and/or data.
It should be understood that the above-described embodiments are illustrative only. The embodiments described herein may be implemented in hardware, software, firmware, middleware, microcode, or any combination thereof. For a hardware implementation, the processor may be implemented within one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), processors, controllers, micro-controllers, microprocessors, and/or other electronic units designed to perform the functions described herein, or a combination thereof.
Aspects of the present application may be embodied entirely in hardware, entirely in software (including firmware, resident software, micro-code, etc.) or in a combination of hardware and software. The above hardware or software may be referred to as "data block," module, "" engine, "" unit, "" component, "or" system. The processor may be one or more Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), digital signal processing devices (DAPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), processors, controllers, microcontrollers, microprocessors, or a combination thereof. Furthermore, aspects of the present application may be represented as a computer product, including computer readable program code, embodied in one or more computer readable media. For example, computer-readable media can include but are not limited to magnetic storage devices (e.g., hard disk, floppy disk, magnetic strips … …), optical disks (e.g., Compact Disk (CD), Digital Versatile Disk (DVD) … …), smart cards, and flash memory devices (e.g., card, stick, key drive … …).
The computer readable medium may comprise a propagated data signal with the computer program code embodied therein, for example, on a baseband or as part of a carrier wave. The propagated signal may take any of a variety of forms, including electromagnetic, optical, and the like, or any suitable combination. The computer readable medium can be any computer readable medium that can communicate, propagate, or transport the program for use by or in connection with an instruction execution system, apparatus, or device. Program code on a computer readable medium may be propagated over any suitable medium, including radio, electrical cable, fiber optic cable, radio frequency signals, or the like, or any combination of the preceding.
Having thus described the basic concept, it should be apparent to those skilled in the art that the foregoing disclosure is by way of example only, and is not intended to limit the present application. Various modifications, improvements and adaptations to the present application may occur to those skilled in the art, though not expressly described herein. Such modifications, improvements and adaptations are proposed in the present application and thus fall within the spirit and scope of the exemplary embodiments of the present application.
Also, this application uses specific language to describe embodiments of the application. Reference throughout this specification to "one embodiment," "an embodiment," and/or "some embodiments" means that a particular feature, structure, or characteristic described in connection with at least one embodiment of the present application is included in at least one embodiment of the present application. Therefore, it is emphasized and should be appreciated that two or more references to "an embodiment" or "one embodiment" or "an alternative embodiment" in various places throughout this specification are not necessarily all referring to the same embodiment. Furthermore, some features, structures, or characteristics of one or more embodiments of the present application may be combined as appropriate.
Numerals describing the number of components, attributes, etc. are used in some embodiments, it being understood that such numerals used in the description of the embodiments are modified in some instances by the use of the modifier "about", "approximately" or "substantially". Unless otherwise indicated, "about", "approximately" or "substantially" indicates that the number allows a variation of ± 20%. Accordingly, in some embodiments, the numerical parameters used in the specification and claims are approximations that may vary depending upon the desired properties of the individual embodiments. In some embodiments, the numerical parameter should take into account the specified significant digits and employ a general digit-preserving approach. Notwithstanding that the numerical ranges and parameters setting forth the broad scope of the range are approximations, in the specific examples, such numerical values are set forth as precisely as possible within the scope of the application.

Claims (17)

1. A method for identifying kinetic parameters of a multi-link robot, the multi-link robot including at least one joint, the method comprising:
constructing a friction model, and performing friction identification on each joint of the robot;
constructing a first dynamic model by combining the friction model, and determining an initial kinetic parameter to be identified according to the first dynamic model;
performing dimension reduction transformation on the first dynamic model to obtain a second dynamic model after dimension reduction, wherein the second dynamic model has dynamic parameters to be identified, and the number of the dynamic parameters to be identified is smaller than that of the initial dynamic parameters to be identified;
establishing a first excitation track, carrying out optimization processing on the first excitation track to obtain a second excitation track, and when the robot moves according to the second excitation track, enabling the angular velocity and the angular acceleration of each joint at the starting time and the stopping time to be zero;
exciting the robot to move according to the second excitation track, and acquiring motion data of each joint of the robot, wherein the motion data comprises moment data;
carrying out normalization processing on the motion data to obtain normalized motion data;
fitting the second dynamic model according to the normalized motion data to obtain parameter values of the dynamic parameters to be identified, calculating an estimated moment of each normalized motion data according to the fitted second dynamic model, obtaining an error between the moment data in each normalized motion data and the corresponding estimated moment, taking the normalized motion data with the error smaller than a threshold value as interior point data, and taking the normalized motion data with the error larger than the threshold value as noise point data; and identifying the kinetic parameters to be identified of the second kinetic model according to the interior point data to obtain target parameter values.
2. The kinetic parameter identification method of claim 1, wherein the step of constructing a friction model and performing friction identification on each of the joints of the robot comprises:
establishing the friction model, wherein the friction model comprises friction parameters to be identified;
operating the robot and collecting friction data for each of the joints;
and identifying the friction parameters to be identified according to the friction data to obtain a target friction parameter value of each joint.
3. A kinetic parameter identification method as claimed in claim 2, wherein said friction data includes angular velocity and friction torque of said joint, said friction model being established using the following formula:
Figure DEST_PATH_IMAGE002
wherein the content of the first and second substances,
Figure DEST_PATH_IMAGE004
represents the friction torque of the joint in question,
Figure DEST_PATH_IMAGE006
represents the friction parameter to be identified, i =1 to 5,
Figure DEST_PATH_IMAGE008
representing the angular velocity of the joint.
4. The kinetic parameter identification method of claim 3, wherein the step of identifying the friction parameter to be identified according to the friction data to obtain the target friction parameter value of each joint comprises: and performing parameter fitting on the friction parameter to be identified in the friction model by adopting a least square method to obtain the target friction parameter value.
5. The method of claim 3, wherein the step of constructing a first kinetic model in combination with the friction model comprises: the first kinetic model was constructed using the following formula:
Figure DEST_PATH_IMAGE010
wherein the content of the first and second substances,
Figure DEST_PATH_IMAGE012
representing an observation matrix, q representing a rotation angle vector of the joint,
Figure DEST_PATH_IMAGE008A
is representative of the angular velocity of the joint,
Figure DEST_PATH_IMAGE015
represents the angular acceleration of the joint, τ represents the motor output torque of the joint,
Figure DEST_PATH_IMAGE004A
representing the friction torque of the joint, h representing the initial kinetic parameter to be identified, h = h i ,h i =[I xxi I xyi I xzi I yyi I yzi I zzi m xi m yi m zi m I mi ](ii) a Wherein I =1 to M, M representing the total number of joints comprised by the robot, I xxi 、I xyi 、I xzi 、I yyi 、I yzi 、I zzi Representing the inertia tensor of the joint, m xi 、m yi 、m zi Representing the position of the center of mass of the joint, m representing the joint mass of the joint, I mi Representing the motor inertia of the joint.
6. The kinetic parameter identification method of claim 5, wherein the first kinetic model is subjected to dimension reduction transformation to obtain a dimension-reduced second kinetic model as follows:
Figure DEST_PATH_IMAGE017
wherein the content of the first and second substances,
Figure DEST_PATH_IMAGE019
representing the observation matrix after dimensionality reduction, h b Representing the kinetic parameters to be identified determined after dimensionality reduction, the parameters to be identifiedIdentifying a kinetic parameter h b Is less than the number of the initial kinetic parameters h to be identified.
7. The method according to claim 6, wherein the dimension-reduction transformation includes performing QR decomposition on the initial kinetic parameter to be identified, obtaining a minimum parameter set of the initial kinetic parameter to be identified, and using the minimum parameter set as the kinetic parameter to be identified.
8. The kinetic parameter identification method of claim 6, wherein the first excitation trajectory has excitation trajectory parameters, and the step of establishing the first excitation trajectory comprises:
the periodic trajectory function is established in the form of a sum of finite fourier stages as follows:
Figure DEST_PATH_IMAGE021
Figure DEST_PATH_IMAGE023
Figure DEST_PATH_IMAGE025
wherein q represents a rotation angle vector of the joint,
Figure DEST_PATH_IMAGE008AA
is representative of the angular velocity of the joint,
Figure DEST_PATH_IMAGE015A
represents the angular acceleration of the joint, t represents time,
Figure DEST_PATH_IMAGE027
representing the fundamental frequency of each of said joints, N representing the number of harmonics,the excitation trajectory parameters include a ik 、b ik 、q i0 Wherein a is ik And b ik Representing the amplitude, q i0 Represents a constant term, i =1 to M, M representing the total number of joints comprised by the robot;
and determining target excitation track parameters of each joint by adopting a condition number method.
9. The kinetic parameter identification method of claim 8, wherein the step of determining the excitation trajectory parameters of each of the joints using a condition number method comprises: the observation matrix after dimensionality reduction
Figure DEST_PATH_IMAGE019A
Is used as a condition number, and an excitation trajectory parameter that minimizes the condition number is used as the target excitation trajectory parameter.
10. A method for kinetic parameter identification as claimed in claim 8, wherein the step of optimizing the first excitation trajectory to obtain the second excitation trajectory comprises:
optimizing the first excitation track by adopting a first optimization algorithm to obtain a first optimized excitation track, wherein the first optimized excitation track has first optimized excitation track parameters;
and optimizing the first optimized excitation track by adopting a second optimization algorithm by taking the first optimized excitation track parameter as an initial value to obtain a second optimized excitation track, wherein the second optimized excitation track has a second optimized excitation track parameter, and the constraint condition of the second optimization algorithm comprises that the angular velocity and the angular acceleration of the joint at the initial moment are both zero.
11. The method of claim 10, wherein the first optimization algorithm comprises an unconstrained heuristic algorithm; the second optimization algorithm comprises a trust domain algorithm, and the constraint condition is expressed by the following formula:
Figure DEST_PATH_IMAGE029
wherein i =1 to M, M representing a total number of the joints comprised by the robot,
Figure DEST_PATH_IMAGE031
represents the minimum value of the rotation angle vector of the ith said joint,
Figure DEST_PATH_IMAGE033
represents the maximum value of the rotation angle vector of the ith joint,
Figure DEST_PATH_IMAGE035
represents the minimum value of the angular velocity of the ith said joint,
Figure DEST_PATH_IMAGE037
represents the maximum value of the angular velocity of the ith said joint,
Figure DEST_PATH_IMAGE039
represents the minimum value of the angular acceleration of the ith said joint,
Figure DEST_PATH_IMAGE041
represents the maximum value of the angular acceleration of the ith said joint,
Figure DEST_PATH_IMAGE043
represents the angular velocity of the ith joint at t =0,
Figure DEST_PATH_IMAGE045
represents the angular acceleration of the i-th joint at t = 0.
12. The kinetic parameter identification method of claim 6, wherein the step of normalizing the motion data comprises:
calculating the range of moments for each of the joints using the following formula:
Figure DEST_PATH_IMAGE047
wherein the content of the first and second substances,
Figure DEST_PATH_IMAGE049
represents the maximum moment in the moment data of the ith joint,
Figure DEST_PATH_IMAGE051
represents the minimum moment in the moment data of the ith joint,
Figure DEST_PATH_IMAGE053
representing the moment range of the ith joint;
and normalizing the motion data according to the torque range, wherein the normalized data comprises a normalized observation matrix and normalized motor output torque, and the normalized data comprises the following steps:
Figure DEST_PATH_IMAGE055
wherein, the first and the second end of the pipe are connected with each other,
Figure DEST_PATH_IMAGE057
a matrix of observations representative of the normalization is provided,
Figure DEST_PATH_IMAGE059
representing the normalized motor output torque as follows:
Figure DEST_PATH_IMAGE061
Figure DEST_PATH_IMAGE063
13. a method for identifying kinetic parameters according to claim 12, wherein the step of fitting the second kinetic model according to the motion data to obtain the parameter values of the kinetic parameters to be identified, calculating the estimated moment of each normalized motion data according to the fitted second kinetic model, obtaining the error between the moment data in each normalized motion data and the corresponding estimated moment, using the normalized motion data having the error smaller than a threshold as interior point data, and using the normalized motion data having the error larger than the threshold as noise point data comprises:
step S201: let j =1, set threshold Δ T;
step S202: defining n as the number of the kinetic parameters to be identified, randomly selecting n groups from all normalized motion data, wherein each group comprises one normalized observation matrix
Figure DEST_PATH_IMAGE064
And a corresponding said normalized motor output torque
Figure DEST_PATH_IMAGE059A
Step S203: fitting the second kinetic model according to the n groups of normalized motion data to obtain parameter values of the kinetic parameters to be identified
Figure DEST_PATH_IMAGE066
Step S204: respectively calculating the error between the torque data in each normalized motion data and the corresponding estimated torque according to the n groups of normalized motion data
Figure DEST_PATH_IMAGE068
When is coming into contact with
Figure DEST_PATH_IMAGE070
When it is used, theMarking the group of normalized motion data as interior point data, otherwise marking the group of normalized motion data as noise point data;
step S205: the corresponding parameter values were calculated using the following formula
Figure DEST_PATH_IMAGE066A
Inner point ratio p of j
Figure DEST_PATH_IMAGE073
Where m1 denotes the number of sets of normalized motion data labeled as inlier data, m2 denotes the number of sets of normalized motion data labeled as noisier data;
step S206: increasing j by 1;
step S207: repeating the steps S202 to S206 until j = R, which is a preset number of calculations;
step S208: from R interior point rates p j The maximum point rate p in the target is selected as the target interior point rate max And marking the interior point data corresponding to the target interior point rate as target interior point data.
14. A method for identifying kinetic parameters according to claim 13, wherein said predetermined number of calculations R is calculated using the following formula:
Figure DEST_PATH_IMAGE075
wherein p represents an initial interior point rate, n is the number of the kinetic parameters to be identified, and the initial interior point rate is obtained by adopting the following steps:
step S209: fitting the second kinetic model by adopting all the normalized motion data to obtain initial parameter values of the kinetic parameters to be identified
Figure DEST_PATH_IMAGE077
All the normalized motion data includes a plurality of setsSeparately calculating from the plurality of sets of normalized motion data
Figure DEST_PATH_IMAGE079
When is coming into contact with
Figure DEST_PATH_IMAGE081
If so, marking the group of normalized motion data as interior point data, otherwise marking the group of normalized motion data as noise point data;
step S210: the corresponding parameter values were calculated using the following formula
Figure DEST_PATH_IMAGE077A
The initial interior point rate p:
Figure DEST_PATH_IMAGE084
where m3 denotes the number of sets of normalized motion data labeled as inlier data, and m4 denotes the number of sets of normalized motion data labeled as noisier data.
15. The kinetic parameter identification method of claim 13, wherein the step of identifying the kinetic parameter to be identified of the second kinetic model according to the interior point data to obtain the target parameter value comprises:
fitting the second kinetic model according to the target interior point data to obtain the target parameter value of the kinetic parameter to be identified
Figure DEST_PATH_IMAGE086
16. A kinetic parameter identification device of a multi-link robot comprises:
a memory for storing instructions executable by the processor;
a processor for executing the instructions to implement the method of any of claims 1-15.
17. A computer-readable medium having stored thereon computer program code which, when executed by a processor, implements the method of any of claims 1-15.
CN202210760625.2A 2022-06-30 2022-06-30 Method and device for identifying kinetic parameters of multi-link robot Active CN114800536B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210760625.2A CN114800536B (en) 2022-06-30 2022-06-30 Method and device for identifying kinetic parameters of multi-link robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210760625.2A CN114800536B (en) 2022-06-30 2022-06-30 Method and device for identifying kinetic parameters of multi-link robot

Publications (2)

Publication Number Publication Date
CN114800536A CN114800536A (en) 2022-07-29
CN114800536B true CN114800536B (en) 2022-09-16

Family

ID=82522476

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210760625.2A Active CN114800536B (en) 2022-06-30 2022-06-30 Method and device for identifying kinetic parameters of multi-link robot

Country Status (1)

Country Link
CN (1) CN114800536B (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108972558A (en) * 2018-08-16 2018-12-11 居鹤华 A kind of multi-axis robot dynamic modeling method based on axis invariant

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107498562A (en) * 2017-04-21 2017-12-22 浙江工业大学 Six-degree-of-freedom mechanical arm dynamics model identification method
CN108717492A (en) * 2018-05-18 2018-10-30 浙江工业大学 Manipulator Dynamic discrimination method based on improved artificial bee colony algorithm
CN109656139B (en) * 2018-12-26 2021-09-03 深圳市越疆科技有限公司 Self-adaptive modeling method of robot driving and controlling integrated system
CN109773794B (en) * 2019-02-26 2022-01-25 浙江大学 6-axis robot dynamics parameter identification method based on neural network
CN110197037B (en) * 2019-06-05 2023-06-02 上海电气集团股份有限公司 Singular value decomposition-based dynamic parameter identification method and system for robot
CN110653817B (en) * 2019-08-20 2022-04-15 南京航空航天大学 Exoskeleton robot power-assisted control system and method based on neural network
CN110531707B (en) * 2019-09-16 2022-03-18 无锡信捷电气股份有限公司 Friction model improvement and dynamic parameter identification method of SCARA robot
CN111496791B (en) * 2020-04-27 2023-05-02 无锡信捷电气股份有限公司 Integral dynamic parameter identification method based on serial robots
US12017352B2 (en) * 2020-10-29 2024-06-25 Nvidia Corporation Transformation of joint space coordinates using machine learning

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108972558A (en) * 2018-08-16 2018-12-11 居鹤华 A kind of multi-axis robot dynamic modeling method based on axis invariant

Also Published As

Publication number Publication date
CN114800536A (en) 2022-07-29

Similar Documents

Publication Publication Date Title
CN107729706B (en) Method for constructing dynamic model of nonlinear mechanical system
CN104590276B (en) Recognition method for rotational inertia around z axis and tire cornering stiffness of automobile
De Castro et al. Real-time estimation of tyre–road friction peak with optimal linear parameterisation
Pavlenko et al. Ensuring vibration reliability of turbopump units using artificial neural networks
CN112686096A (en) Rolling bearing fault diagnosis method based on multi-scale diffusion entropy and VPMCD
CN112798280A (en) Rolling bearing fault diagnosis method and system
CN108304594B (en) Method for judging driving stability of automobile based on speed and gyroscope data
CN113021331B (en) Seven-degree-of-freedom cooperative robot dynamics modeling and identification method
CN112577516B (en) Method and system for identifying and compensating wheel speed error of vehicle
CN111024214B (en) Method for acquiring natural frequency of acoustic resonance mixer in real time in operation process
CN107843428A (en) The online acquisition methods of bearing load and device, bearing life appraisal procedure and device
CN110941183A (en) Industrial robot dynamics identification method based on neural network
CN114800536B (en) Method and device for identifying kinetic parameters of multi-link robot
Cao et al. A temperature compensation approach for dual-mass MEMS gyroscope based on PE-LCD and ANFIS
de Castro et al. A new linear parametrization for peak friction coefficient estimation in real time
CN114547963A (en) Tire modeling method and medium based on data driving
CN109597346A (en) A kind of novel commercial vehicle remained capacity and ramp estimation method
CN113269221A (en) Rolling bearing fault diagnosis method based on multi-scale convolution neural network
CN112462606A (en) Flexible joint dynamic parameter identification method based on self-adaptive control
CN115809510A (en) Fitting calculation method for vehicle road resistance coefficient
CN109101759B (en) Parameter identification method based on forward and reverse response surface method
CN113486523B (en) Global identification method for linear variable parameter vibration system
CN109253884B (en) Turbine exhaust back pressure estimation method based on neural network
CN113335294A (en) Method and device for estimating longitudinal gradient of road surface, electronic device and storage medium
Liang et al. Indirect Prediction of Spindle Rotation Error Through Vibration Signal Based on Supervised Local Mean Decomposition Filter Fusion and Bi-LSTM Classification Network

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant