CN114800536A - 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
CN114800536A
CN114800536A CN202210760625.2A CN202210760625A CN114800536A CN 114800536 A CN114800536 A CN 114800536A CN 202210760625 A CN202210760625 A CN 202210760625A CN 114800536 A CN114800536 A CN 114800536A
Authority
CN
China
Prior art keywords
joint
data
kinetic
motion data
identified
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.)
Granted
Application number
CN202210760625.2A
Other languages
Chinese (zh)
Other versions
CN114800536B (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 dimensionality reduction transformation on the first dynamic model, wherein the dimensionality 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 currently used for obtaining a robot dynamic model. 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 condition that the start-stop speed and the acceleration are zero, so that the start-stop impact is increased, and the identification process is influenced. 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 514386DEST_PATH_IMAGE001
wherein the content of the first and second substances,
Figure 952321DEST_PATH_IMAGE002
represents the friction torque of the joint in question,
Figure 372938DEST_PATH_IMAGE003
representing the friction parameter to be identified,
Figure 845508DEST_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 step of obtaining the 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 was constructed using the following formula:
Figure 693378DEST_PATH_IMAGE005
wherein the content of the first and second substances,
Figure 290712DEST_PATH_IMAGE006
representing an observation matrix, q representing a rotation angle vector of the joint,
Figure 515020DEST_PATH_IMAGE007
is representative of the angular velocity of the joint,
Figure 842097DEST_PATH_IMAGE008
represents the angular acceleration of the joint, τ represents the motor output torque of the joint,
Figure 126447DEST_PATH_IMAGE009
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 538974DEST_PATH_IMAGE010
wherein the content of the first and second substances,
Figure 301394DEST_PATH_IMAGE011
representing the observation matrix after dimensionality reduction, h b Representing post-dimensionality-reduction determinedThe kinetic parameter to be identified, the kinetic parameter 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 present 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 889501DEST_PATH_IMAGE012
Figure 344753DEST_PATH_IMAGE013
Figure 244576DEST_PATH_IMAGE014
wherein q represents a rotation angle vector of the joint,
Figure 810687DEST_PATH_IMAGE015
is representative of the angular velocity of the joint,
Figure 643513DEST_PATH_IMAGE016
represents the angular acceleration of the joint, t represents time,
Figure 269667DEST_PATH_IMAGE017
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 represents the robot bagThe total number of said joints involved; 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
Figure 656786DEST_PATH_IMAGE018
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 761008DEST_PATH_IMAGE019
wherein i =1 to M, M representing a total number of the joints comprised by the robot,
Figure 917183DEST_PATH_IMAGE020
represents the minimum value of the rotation angle vector of the ith joint,
Figure 714238DEST_PATH_IMAGE021
represents the ith said gateThe maximum value of the corner vector of a section,
Figure 729598DEST_PATH_IMAGE022
represents the minimum value of the angular velocity of the ith said joint,
Figure 903090DEST_PATH_IMAGE023
represents the maximum value of the angular velocity of the ith said joint,
Figure 913772DEST_PATH_IMAGE024
represents the minimum value of the angular acceleration of the ith said joint,
Figure 881728DEST_PATH_IMAGE025
represents the maximum value of the angular acceleration of the ith said joint,
Figure 977860DEST_PATH_IMAGE026
represents the angular velocity of the ith joint at t =0,
Figure 95989DEST_PATH_IMAGE027
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 226756DEST_PATH_IMAGE028
wherein the content of the first and second substances,
Figure 365613DEST_PATH_IMAGE029
represents the maximum moment in the moment data of the ith joint,
Figure 949041DEST_PATH_IMAGE030
represents the minimum moment in the moment data of the ith joint,
Figure 198757DEST_PATH_IMAGE031
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 184030DEST_PATH_IMAGE032
wherein the content of the first and second substances,
Figure 24947DEST_PATH_IMAGE033
a matrix of observations representative of the normalization is provided,
Figure 95671DEST_PATH_IMAGE034
representing the normalized motor output torque as follows:
Figure 149078DEST_PATH_IMAGE035
Figure 988858DEST_PATH_IMAGE036
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 normalizationIs observed in the observation matrix
Figure 469518DEST_PATH_IMAGE037
And a corresponding said normalized motor output torque
Figure 425274DEST_PATH_IMAGE038
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 282372DEST_PATH_IMAGE039
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 976658DEST_PATH_IMAGE040
When is coming into contact with
Figure 628219DEST_PATH_IMAGE041
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 following formula is used to calculate the corresponding parameter value
Figure 673536DEST_PATH_IMAGE042
Inner point ratio p of j
Figure 740849DEST_PATH_IMAGE043
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 according to claim 14, wherein said predetermined number of calculations R is calculated using the following formula:
Figure 289642DEST_PATH_IMAGE044
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 377684DEST_PATH_IMAGE045
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 644717DEST_PATH_IMAGE046
When is coming into contact with
Figure 578038DEST_PATH_IMAGE047
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 246916DEST_PATH_IMAGE045
The initial interior point rate p:
Figure 37018DEST_PATH_IMAGE048
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 525768DEST_PATH_IMAGE049
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; 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 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 introduced below. It is obvious that the drawings in the following description are only examples or embodiments of the application, from which the application can also be applied to other similar scenarios without inventive effort for a person skilled in the art. 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 528359DEST_PATH_IMAGE050
(1)
wherein the content of the first and second substances,
Figure 51744DEST_PATH_IMAGE051
the friction torque of the joint is represented,
Figure 216009DEST_PATH_IMAGE052
representing the friction parameter to be identified,
Figure 129739DEST_PATH_IMAGE053
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, the angular velocity of the joint can be determined according to equation (1)
Figure 670442DEST_PATH_IMAGE054
To calculate the friction torque of the joint
Figure 48333DEST_PATH_IMAGE055
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 649079DEST_PATH_IMAGE056
(2)
wherein the content of the first and second substances,
Figure 112421DEST_PATH_IMAGE057
representing an observation matrix, q representing a rotation angle vector of the joint,
Figure 987973DEST_PATH_IMAGE058
which is indicative of the angular velocity of the joint,
Figure 485951DEST_PATH_IMAGE059
represents the angular acceleration of the joint, tau represents the motor output torque of the joint,
Figure 992019DEST_PATH_IMAGE060
represents the friction torque of the joint, h represents 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 208236DEST_PATH_IMAGE061
is each identified joint in equation (1)The friction torque of (a). Observation matrix
Figure 90742DEST_PATH_IMAGE062
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. Then for a 6-joint robot, the initial kinetic parameters to be identified comprise a total of 66 parameters.
In some embodiments, the observation matrix
Figure 443226DEST_PATH_IMAGE063
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 first dynamical model is subjected to a dimension reduction transformation, and the second dynamical model after the dimension reduction is obtained as follows:
Figure 792298DEST_PATH_IMAGE064
(3)
wherein the content of the first and second substances,
Figure 230233DEST_PATH_IMAGE065
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 916429DEST_PATH_IMAGE066
(4)
Figure 123420DEST_PATH_IMAGE067
(5)
Figure 236869DEST_PATH_IMAGE068
(6)
wherein q represents a rotation angle vector of the joint,
Figure 568625DEST_PATH_IMAGE007
which is indicative of the angular velocity of the joint,
Figure 792933DEST_PATH_IMAGE008
represents the angular acceleration of the joint, t represents time,
Figure 120009DEST_PATH_IMAGE069
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 travel locus to travel in as large a range as possible, it is necessary to obtain an optimal excitation locus.
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: observing matrix after dimension reduction
Figure 404359DEST_PATH_IMAGE070
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 551307DEST_PATH_IMAGE071
wherein i =1 to M, M representing the total number of joints comprised by the robot,
Figure 579306DEST_PATH_IMAGE072
represents the minimum value of the rotation angle vector of the ith joint,
Figure 557626DEST_PATH_IMAGE073
represents the maximum value of the rotation angle vector of the i-th joint,
Figure 12878DEST_PATH_IMAGE074
represents the minimum value of the angular velocity of the ith joint,
Figure 912701DEST_PATH_IMAGE075
represents the maximum value of the angular velocity of the ith joint,
Figure 478812DEST_PATH_IMAGE076
represents the minimum value of the angular acceleration of the ith joint,
Figure 187005DEST_PATH_IMAGE077
represents the maximum value of the angular acceleration of the ith joint,
Figure 813158DEST_PATH_IMAGE078
representing the angular velocity of the ith joint at t =0,
Figure 934698DEST_PATH_IMAGE079
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 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 304499DEST_PATH_IMAGE080
(7)
wherein the content of the first and second substances,
Figure 460674DEST_PATH_IMAGE081
indicating the output torque of the motor, G T Representing the motor moment constant, I T Representing the collected motor current value.
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 257729DEST_PATH_IMAGE082
(8)
wherein the content of the first and second substances,
Figure 273089DEST_PATH_IMAGE083
represents the maximum moment in the moment data of the ith joint,
Figure 181003DEST_PATH_IMAGE084
represents the minimum moment in the moment data of the ith joint,
Figure 191684DEST_PATH_IMAGE085
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 159640DEST_PATH_IMAGE086
(9)
wherein the content of the first and second substances,
Figure 255772DEST_PATH_IMAGE087
a normalized observation matrix is represented that represents the observation matrix,
Figure 967376DEST_PATH_IMAGE088
representing normalized motor outputTorque out, as follows:
Figure 894881DEST_PATH_IMAGE089
Figure 33738DEST_PATH_IMAGE090
(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 351587DEST_PATH_IMAGE091
And a corresponding normalized motor output torque
Figure 866882DEST_PATH_IMAGE092
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 258680DEST_PATH_IMAGE093
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 568439DEST_PATH_IMAGE094
When is coming into contact with
Figure 373584DEST_PATH_IMAGE095
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 426990DEST_PATH_IMAGE096
represents the torque data in the normalized data, i.e., the normalized motor output torque in equation (10),
Figure 266770DEST_PATH_IMAGE097
representing the estimated moment calculated from the fitted second kinetic model.
Step S205: the corresponding parameter values were calculated using the following formula
Figure 747430DEST_PATH_IMAGE098
Inner point ratio p of j
Figure 505783DEST_PATH_IMAGE099
(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 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.
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 97301DEST_PATH_IMAGE100
In some embodiments, the preset number of calculations R in step S207 is calculated using the following formula:
Figure 729271DEST_PATH_IMAGE101
(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 380832DEST_PATH_IMAGE102
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 160569DEST_PATH_IMAGE103
When is coming into contact with
Figure 555779DEST_PATH_IMAGE104
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 901309DEST_PATH_IMAGE102
Initial inner point rate p:
Figure 723772DEST_PATH_IMAGE048
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 990805DEST_PATH_IMAGE105
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 189705DEST_PATH_IMAGE106
. The optimal target parameter value
Figure 858584DEST_PATH_IMAGE106
By substituting the second kinetic model, ideally, fitting data closest to the real data can be obtained.
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 verification track to excite robot, adopting target parameter value
Figure 524052DEST_PATH_IMAGE107
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 278381DEST_PATH_IMAGE108
(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:
Figure 280972DEST_PATH_IMAGE109
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 above-mentioned 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 will 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, although not explicitly 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 960842DEST_PATH_IMAGE001
wherein the content of the first and second substances,
Figure 265922DEST_PATH_IMAGE002
represents the friction torque of the joint in question,
Figure 131110DEST_PATH_IMAGE003
representing the friction parameter to be identified,
Figure 269967DEST_PATH_IMAGE004
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 853395DEST_PATH_IMAGE005
wherein the content of the first and second substances,
Figure 103111DEST_PATH_IMAGE007
representing an observation matrix, q representing a rotation angle vector of the joint,
Figure 291647DEST_PATH_IMAGE009
is representative of the angular velocity of the joint,
Figure 601405DEST_PATH_IMAGE011
represents the angular acceleration of the joint, τ represents the motor output torque of the joint,
Figure 672129DEST_PATH_IMAGE013
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 An inertia tensor representing 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 725536DEST_PATH_IMAGE014
wherein the content of the first and second substances,
Figure 565316DEST_PATH_IMAGE016
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.
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 390184DEST_PATH_IMAGE017
Figure 682625DEST_PATH_IMAGE018
Figure 539722DEST_PATH_IMAGE019
wherein q represents a rotation angle vector of the joint,
Figure 234009DEST_PATH_IMAGE020
is representative of the angular velocity of the joint,
Figure 885570DEST_PATH_IMAGE021
represents the angular acceleration of the joint, t represents time,
Figure 258783DEST_PATH_IMAGE023
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 Represents 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 653992DEST_PATH_IMAGE025
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. The kinetic parameter identification method of 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 202785DEST_PATH_IMAGE026
wherein i =1 to M, M representing a total number of the joints comprised by the robot,
Figure 290827DEST_PATH_IMAGE027
represents the minimum value of the rotation angle vector of the ith joint,
Figure 557860DEST_PATH_IMAGE028
represents the maximum value of the rotation angle vector of the ith joint,
Figure 225602DEST_PATH_IMAGE029
represents the minimum value of the angular velocity of the ith said joint,
Figure 628901DEST_PATH_IMAGE030
represents the maximum value of the angular velocity of the ith said joint,
Figure 887844DEST_PATH_IMAGE031
represents the minimum value of the angular acceleration of the ith said joint,
Figure 642174DEST_PATH_IMAGE032
represents the maximum value of the angular acceleration of the ith said joint,
Figure 379185DEST_PATH_IMAGE034
represents the angular velocity of the ith joint at t =0,
Figure 902571DEST_PATH_IMAGE036
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 411044DEST_PATH_IMAGE037
wherein the content of the first and second substances,
Figure 387090DEST_PATH_IMAGE039
represents the maximum moment in the moment data of the ith joint,
Figure 927793DEST_PATH_IMAGE041
represents the minimum moment in the moment data of the ith joint,
Figure 571263DEST_PATH_IMAGE043
is shown asThe torque ranges of the i joints;
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 906430DEST_PATH_IMAGE044
wherein the content of the first and second substances,
Figure 104193DEST_PATH_IMAGE045
a matrix of observations representative of the normalization is provided,
Figure 183007DEST_PATH_IMAGE046
representing the normalized motor output torque as follows:
Figure 680985DEST_PATH_IMAGE047
Figure 187053DEST_PATH_IMAGE048
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, from all the normalizationsRandomly selecting n groups from the motion data, each group comprising one of the normalized observation matrices
Figure 403270DEST_PATH_IMAGE049
And a corresponding said normalized motor output torque
Figure DEST_PATH_IMAGE050
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_IMAGE051
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_IMAGE052
When is coming into contact with
Figure DEST_PATH_IMAGE053
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 613672DEST_PATH_IMAGE051
Inner point ratio p of j
Figure DEST_PATH_IMAGE054
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_IMAGE055
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_IMAGE056
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_IMAGE057
When is coming into contact with
Figure DEST_PATH_IMAGE058
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 513626DEST_PATH_IMAGE056
The initial interior point rate p:
Figure DEST_PATH_IMAGE059
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_IMAGE060
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 true CN114800536A (en) 2022-07-29
CN114800536B 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 (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107498562A (en) * 2017-04-21 2017-12-22 浙江工业大学 Sixdegree-of-freedom simulation kinetic model discrimination method
CN108717492A (en) * 2018-05-18 2018-10-30 浙江工业大学 Manipulator Dynamic discrimination method based on improved artificial bee colony algorithm
CN108972558A (en) * 2018-08-16 2018-12-11 居鹤华 A kind of multi-axis robot dynamic modeling method based on axis invariant
CN109656139A (en) * 2018-12-26 2019-04-19 深圳市越疆科技有限公司 Robot controls the adaptive modeling method of integrated system
CN109773794A (en) * 2019-02-26 2019-05-21 浙江大学 A kind of 6 axis Identification of Dynamic Parameters of Amanipulator method neural network based
CN110197037A (en) * 2019-06-05 2019-09-03 上海电气集团股份有限公司 The dynamic parameters identification method and system of robot based on singular value decomposition
CN110531707A (en) * 2019-09-16 2019-12-03 无锡信捷电气股份有限公司 The friction model of SCARA robot improves and dynamic parameters identification method
CN110653817A (en) * 2019-08-20 2020-01-07 南京航空航天大学 Exoskeleton robot power-assisted control system and method based on neural network
CN111496791A (en) * 2020-04-27 2020-08-07 无锡信捷电气股份有限公司 Overall dynamics parameter identification method based on series robot
US20220134537A1 (en) * 2020-10-29 2022-05-05 Nvidia Corporation Transformation of joint space coordinates using machine learning

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107498562A (en) * 2017-04-21 2017-12-22 浙江工业大学 Sixdegree-of-freedom simulation kinetic model discrimination method
CN108717492A (en) * 2018-05-18 2018-10-30 浙江工业大学 Manipulator Dynamic discrimination method based on improved artificial bee colony algorithm
CN108972558A (en) * 2018-08-16 2018-12-11 居鹤华 A kind of multi-axis robot dynamic modeling method based on axis invariant
CN109656139A (en) * 2018-12-26 2019-04-19 深圳市越疆科技有限公司 Robot controls the adaptive modeling method of integrated system
CN109773794A (en) * 2019-02-26 2019-05-21 浙江大学 A kind of 6 axis Identification of Dynamic Parameters of Amanipulator method neural network based
CN110197037A (en) * 2019-06-05 2019-09-03 上海电气集团股份有限公司 The dynamic parameters identification method and system of robot based on singular value decomposition
CN110653817A (en) * 2019-08-20 2020-01-07 南京航空航天大学 Exoskeleton robot power-assisted control system and method based on neural network
CN110531707A (en) * 2019-09-16 2019-12-03 无锡信捷电气股份有限公司 The friction model of SCARA robot improves and dynamic parameters identification method
CN111496791A (en) * 2020-04-27 2020-08-07 无锡信捷电气股份有限公司 Overall dynamics parameter identification method based on series robot
US20220134537A1 (en) * 2020-10-29 2022-05-05 Nvidia Corporation Transformation of joint space coordinates using machine learning

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
HARDEMAN T ET AL: "Modelling and Identification of Robots with Joint and Drive Flexibilities", 《SOLID MECHANICS AND ITS APPLICATIONS》 *
付小纯: "基于动力学的可穿戴上肢外骨骼运动规划方法研究", 《中国优秀硕士学位论文全文数据库电子期刊 信息科技辑》 *
李珍珠: "面向HSR-605机器人的轨迹优化研究", 《中国优秀硕士学位论文全文数据库电子期刊 信息科技辑》 *
李辉: "基于质心动量动力学的六轮腿移动机器人"龙骧"的运动规划与控制策略", 《中国博士学位论文全文数据库电子期刊 信息科技辑》 *

Also Published As

Publication number Publication date
CN114800536B (en) 2022-09-16

Similar Documents

Publication Publication Date Title
CN108297093B (en) Step-by-step identification method for mechanical arm dynamic parameters
CN107729706B (en) Method for constructing dynamic model of nonlinear mechanical system
CN108227492B (en) Identification method for tail end load dynamic parameters of six-degree-of-freedom series robot
CN104590276B (en) Recognition method for rotational inertia around z axis and tire cornering stiffness of automobile
CN104554271B (en) A kind of road gradient and vehicle condition parametric joint method of estimation based on parameter estimating error
De Castro et al. Real-time estimation of tyre–road friction peak with optimal linear parameterisation
WO2018205490A1 (en) Method and device for controlling robot to rotate joint to perform movement, and robot
CN106125548A (en) Industrial robot kinetic parameters discrimination method
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
JP6762276B2 (en) Movement locus forming device, abnormality diagnosis system, movement locus forming method and program
De Castro et al. Optimal linear parameterization for on-line estimation of tire-road friction
Cao et al. A temperature compensation approach for dual-mass MEMS gyroscope based on PE-LCD and ANFIS
CN114800536B (en) Method and device for identifying kinetic parameters of multi-link robot
CN105303017B (en) Friction parameter identification method of linear moving platform
CN101403924A (en) Method for on-line delay detection of control loop
CN114211491A (en) Collision detection method and device, computer readable storage medium and robot
CN112462606A (en) Flexible joint dynamic parameter identification method based on self-adaptive control
CN115809510A (en) Fitting calculation method for vehicle road resistance coefficient
CN113335294B (en) Method and device for estimating longitudinal gradient of road surface, electronic device and storage medium
JP5294314B2 (en) Chassis dynamometer restraint device and vehicle stiffness characteristic identification method
CN109253884B (en) Turbine exhaust back pressure estimation method based on neural network
CN114896731B (en) Kinetic parameter identification method of mechanical transmission system and related device
JP2020204546A (en) System identification method, system identification device and program
CN115166635B (en) Robot positioning method based on risk sensitive FIR filtering

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