Joint friction force identification method and device based on Kalman filter observer
The joint friction model is constructed through the Kalman filter observer, which solves the problem that industrial robots are difficult to accurately identify friction, and achieves fast and accurate friction recognition, improving robot performance and reliability.
Patent Information
- Application Number
- CN202411383018.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-30
- Publication Date
- 2025-09-02
- Estimated Expiration
- 2044-09-30
AI Technical Summary
The lack of fast and accurate friction recognition methods in the prior art makes it difficult to accurately identify friction in high-speed and high-precision applications of industrial robots, affecting energy loss, motion accuracy and system stability.
The joint friction recognition method based on the Kalman filter observer is used to observe the joint friction force through the state variables and observation measurements of the Kalman filter observer, a joint friction model is constructed, and the friction force is calculated using joint motion data.
It improves the accuracy and real-timeness of friction recognition, reduces the impact of noise, can adapt to different motion conditions, optimizes the robot's control strategy, and improves motion accuracy and stability.
Smart Images

Figure CN119115945B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the technical field related to industrial robots, and in particular to a joint friction force identification method and device based on a Kalman filter observer. Background Art
[0002] Industrial robots play a vital role in modern manufacturing, and their performance accuracy and reliability have a direct impact on production efficiency and product quality. However, the inherent friction characteristics of robot transmission systems are complex and difficult to accurately calculate.
[0003] Friction can lead to energy loss, reduced motion accuracy, and compromised system stability. Accurately identifying friction is crucial, especially in high-speed, high-precision applications of industrial robots.
[0004] However, the existing technology lacks technology applicable to the field of industrial robots that can quickly and accurately identify friction. Summary of the Invention
[0005] In view of this, the embodiments of the present application are directed to providing a joint friction force identification method and apparatus based on a Kalman filter observer, so as to quickly and accurately identify the friction force of an industrial robot.
[0006] This application provides a joint friction force identification method based on a Kalman filter observer, comprising:
[0007] Under different preset joint motion data, the joint friction force is observed based on the Kalman filter observer to obtain the observation results;
[0008] The state variables of the Kalman filter observer are the generalized impulse of joint friction and the joint friction force, and the observed quantity of the Kalman filter observer is the generalized impulse of joint friction;
[0009] Determine the relationship curve between the joint friction force and the joint motion data based on the observation results:
[0010] Construct a joint friction force model based on the relationship curve:
[0011] The joint friction force model is used to calculate the joint friction force based on known joint motion data.
[0012] In some embodiments, the joint motion data includes: joint angle and speed information obtained through joint motor encoder feedback.
[0013] In some embodiments, the generalized impulse of the joint friction force is the deviation between the actual generalized momentum and the generalized impulse caused by the known force.
[0014] In some embodiments, observing the joint friction force based on the Kalman filter observer includes:
[0015] First, define the state variables of the Kalman filter observer, let x1 = e, x2 = τ d , then the state equation and measurement equation of the observer are
[0016]
[0017] Where x = [x1 x2] T Represents the vector composed of state variables; Represents the vector composed of the first-order derivatives of the state variables; represents the system matrix in the state equation; W represents the dynamic noise of the system; y=[x1 0] T represents the observed quantity; represents the observation matrix; V represents the observation noise;
[0018] After discretization, the following expression is obtained:
[0019]
[0020] Where x k+1 represents the state variable at time k+1; x k represents the state variable at time k;
[0021] Represents the discretized state transfer matrix; represents the noise transfer matrix; T represents the sampling period; W k represents the system dynamic noise at time k; V k+1 represents the measurement noise at time k+1.
[0022] The process noise and measurement noise are considered as Gaussian white noise with zero expectation and are uncorrelated.
[0023] The statistical characteristics are:
[0024]
[0025] cov[W k ,V k ]=0
[0026] Where R k represents the variance of the measurement noise at time k, Q k W represents the variance of the system dynamic noise at time k. k , V k are not related to the initial state.
[0027] cov[x t0 ,Vk ]=0,cov[x t0 ,W k ]=0
[0028] From the above formula, we can get the optimal estimation equation of the Kalman filter state variable, which is expressed as follows:
[0029]
[0030] Where, represents the optimal estimate of the state variable at time k+1; represents the optimal estimate of the state variable at time k; K k+1 represents the gain matrix at time k+1; y k+1 represents the observation at time k+1;
[0031] The optimal estimate of the state variable at time k+1 is calculated by the optimal estimate of the state variable at time k, the gain matrix, and the deviation between the actual observation and the estimated observation. The optimal estimate of the state variable is a recursive process of estimating the state variable at the current moment by the estimate at the previous moment and the actual observation at the current moment.
[0032] Gain matrix K k+1 Determined by the Kalman gain equation:
[0033] K k+1 =P k+1|k C T (CP k+1|k C T +R k+1 ) -1
[0034] Where, P k+1|k represents the k+1 time forecast error variance matrix predicted by the k time error variance; R k+1 represents the variance of the measurement noise at time k+1; P k+1|k Determined by the forecast error variance equation:
[0035] P k+1|k =ΦP k Φ T +ΓQ k Γ T
[0036] Where, P k represents the error variance matrix at time k; Q k P represents the variance of the system dynamic noise at time k. k Determined by the filtering error variance equation:
[0037] P k =(IK k C)Pk|k-1
[0038] Among them, K k represents the gain matrix of the kth sampling period; P k|k-1 represents the k-time forecast error variance matrix predicted by the k-1-time error variance;
[0039] Known Then, the optimal estimate of the joint friction force at time k is obtained:
[0040]
[0041] Where, represents the optimal estimate of the state variable component x2 at time k+1; Represents the optimal estimate of the vector composed of all joint friction forces at time k.
[0042] In some embodiments, the joint friction model is a Coulomb-viscous friction model.
[0043] In some embodiments, constructing a joint friction force model based on the relationship curve includes:
[0044] Construct a Coulomb-viscous friction model:
[0045] Parameter information in the Coulomb-viscous friction model is calculated based on the relationship curve.
[0046] In some embodiments, the Coulomb-viscous friction model is expressed as:
[0047] The calculating parameter information in the Coulomb-viscous friction model based on the relationship curve includes:
[0048] The parameter information in the model are Coulomb friction τ c and the viscous friction coefficient B.
[0049] When the robot moves along the identified trajectory, it collects data at all times. and represents the optimal estimate of the vector of friction forces of all joints at time k, Represents the vector of all joint velocities at time k:
[0050] The friction force of each joint sampling point is Least squares regression on , we can get [τ c B] T =(W T W) -1 W T T
[0051] Where W is the regression matrix, the number of its rows is equal to the number of sampling points, and the row vector of the i-th row is i represents the sampling point number, and T represents the column vector composed of the friction forces at each sampling point.
[0052] The present application also provides a joint friction force identification device based on a Kalman filter observer, comprising:
[0053] Under different preset joint motion data, the joint friction force is observed based on the Kalman filter observer to obtain the observation results;
[0054] The state variables of the Kalman filter observer are the generalized impulse of joint friction and the joint friction force, and the observed quantity of the Kalman filter observer is the generalized impulse of joint friction;
[0055] Determine the relationship curve between the joint friction force and the joint motion data based on the observation results:
[0056] Construct a joint friction force model based on the relationship curve:
[0057] The joint friction force model is used to calculate the joint friction force based on known joint motion data.
[0058] The present application also provides an electronic device, comprising:
[0059] A processor, and a memory for storing a program executable by the processor;
[0060] The processor is used to implement the above-mentioned joint friction force identification method based on Kalman filter observer by running the program in the memory.
[0061] The present application also provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the processor is enabled to execute the joint friction force identification method based on the Kalman filter observer as described above.
[0062] The present application provides a joint friction force identification method based on a Kalman filter observer. First, under different preset joint motion data, joint friction is observed using a Kalman filter observer to obtain observation results. The state variables of the Kalman filter observer are the generalized impulse of the joint friction force and the joint friction force, and the observed quantity of the Kalman filter observer is the generalized impulse of the joint friction force. Based on the observation results, a relationship curve between the joint friction force and the joint motion data is determined. A joint friction force model is constructed based on the relationship curve. Using the joint friction force model, joint friction is calculated based on the known joint motion data. With this arrangement, the present application provides a method for online identification of friction during an industrial robot's operation by setting the state variables of the Kalman filter observer to the generalized impulse of the joint friction force and the joint friction force, thereby improving identification accuracy. Furthermore, the Kalman filter observer has excellent noise suppression capabilities, effectively reducing the impact of dynamic noise and measurement noise on the identification results, making the observation results more reliable. Accurately Reflecting Joint Characteristics: Observing based on preset joint motion data allows for a comprehensive understanding of the friction characteristics of joints under various motion conditions, enabling a more accurate determination of the relationship curve between joint friction and joint motion data. Constructing a Precise Model: The joint friction model constructed based on this relationship curve more accurately describes the relationship between joint friction and joint motion, providing a reliable foundation for subsequent calculations and analysis. Achieving Accurate Calculation: With this precise joint friction model, joint friction can be accurately calculated based on known joint motion data, providing an important basis for the control and optimization of industrial robots. Improving Robot Performance: Accurate joint friction identification and calculation helps optimize robot control strategies, improving motion accuracy, stability, and efficiency, and thus enhancing overall robot performance. Strong Adaptability: This method is adaptable to different joint motion conditions, exhibiting strong adaptability and versatility, and can be applied to various industrial robot systems. In summary, the joint friction identification method based on the Kalman filter observer has significant benefits in improving the performance and reliability of industrial robots. BRIEF DESCRIPTION OF THE DRAWINGS
[0063] The above and other purposes, features, and advantages of the present application will become more apparent through a more detailed description of the embodiments of the present application in conjunction with the accompanying drawings. The accompanying drawings are intended to provide a further understanding of the embodiments of the present application and constitute a part of the specification. Together with the embodiments of the present application, they are used to explain the present application and do not constitute a limitation of the present application. In the drawings, the same reference numerals generally represent the same components or steps.
[0064] Figure 1 This is a flow chart of a joint friction force identification method based on a Kalman filter observer provided in one embodiment of the present application.
[0065] Figure 2 This is a partial flow chart provided by an embodiment of the present application.
[0066] Figure 3 This is a recursive algorithm block diagram of the Kalman filter of the method provided in one embodiment of the present application.
[0067] Figure 4 This is a structural diagram of a joint friction force identification device based on a Kalman filter observer provided by an embodiment of the present application.
[0068] Figure 5 This is a schematic diagram of the structure of an electronic device provided by an embodiment of the present application. DETAILED DESCRIPTION
[0069] The following will clearly and completely describe the technical solutions in the embodiments of the present invention in conjunction with the accompanying drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. All other embodiments obtained by ordinary technicians in this field based on the embodiments of the present invention without making any creative efforts shall fall within the scope of protection of the present invention.
[0070] Application Overview
[0071] Friction is an inherently complex characteristic of robot transmission systems. Understanding and quantitatively expressing the friction characteristics of robot joints is the basis for establishing accurate robot dynamic models and is also the key to improving the accuracy of single joint position control.
[0072] Robot joint friction modeling and parameter identification are the main means to obtain robot joint friction characteristics.
[0073] Current research on the modeling and identification of friction torque generated by transmission mechanisms such as reducers / screws focuses on single-joint identification methods, which use servo motor drive torque feedback or external torque sensors to obtain friction information, while simultaneously collecting variables such as joint velocity and acceleration to obtain the relationship curve between joint friction and joint variables for identification.
[0074] The method of obtaining friction force through drive torque feedback eliminates the need for additional sensors and, when combined with single-joint identification, is widely used in the industrial robotics industry. However, this identification process has two drawbacks: The servo motor's torque feedback contains high-frequency noise, which, along with the low-pass filtering process, significantly distorts the friction force information; and deriving friction force information from a single joint alone cannot accurately reflect the relationship between joint friction and joint variables across the robot's entire workspace or trajectory.
[0075] The advantages of the present invention are twofold: a joint friction force observer is designed based on a Kalman filter, and real-time recursive calculation is performed according to the state optimal estimation equation, effectively reducing the influence of dynamic noise and measurement noise; the state variables of the observer are the generalized impulse of joint friction force and joint friction force, and the observation quantity of the observer is the generalized impulse of joint friction force, which can realize online collection of joint friction force and joint variables in the robot workspace or working trajectory, so that the identified model results are more suitable for the actual working conditions of the robot.
[0076] After introducing the basic principles of the present application, various non-limiting embodiments of the present application will be described in detail with reference to the accompanying drawings.
[0077] Exemplary Methods
[0078] Figure 1 FIG. 1 is a flow chart of a joint friction force identification method based on a Kalman filter observer provided by an embodiment of the present application. Figure 1 As shown, the method includes the following contents.
[0079] Step S110, observing the joint friction force based on the Kalman filter observer under different preset joint motion data to obtain an observation result;
[0080] The state variables of the Kalman filter observer are the generalized impulse of joint friction and the joint friction force, and the observed quantity of the Kalman filter observer is the generalized impulse of joint friction;
[0081] In this step, we preset different joint motion data and then used a Kalman filter observer to observe joint friction. The state variables of the Kalman filter observer include the generalized impulse of joint friction and the joint friction force, while the observed variable is the generalized impulse of joint friction. This setup allows the observer to effectively capture the dynamic characteristics of joint friction and provide accurate observations.
[0082] Step S120: Determine a relationship curve between the joint friction force and the joint motion data based on the observation results:
[0083] Based on the observations obtained in step S110, we can analyze the relationship between joint friction and joint motion data. By processing and analyzing this data, we can determine a curve representing the relationship between joint friction and joint motion data. This curve reflects how friction changes with motion data under different joint motion conditions.
[0084] Step S130: constructing a joint friction force model based on the relationship curve:
[0085] Using the relationship curve determined in step S120, we can construct a joint friction model. This model expresses the relationship between joint friction and joint motion data using a mathematical formula or function. By constructing this model, we can gain a deeper understanding of the characteristics of joint friction and provide a foundation for subsequent calculations and analysis.
[0086] Step S140 , calculating the joint friction force based on the known joint motion data using the joint friction force model.
[0087] After constructing the joint friction model, we can use known joint motion data to calculate joint friction. By substituting the joint motion data into the model, we can obtain the corresponding joint friction prediction value. This is very important for the control and optimization of industrial robots, because accurate friction calculation can help us better plan the robot's motion trajectory and improve its performance and stability.
[0088] So set up, the above steps provided in this application can calculate joint friction. Furthermore, the solution provided in this application also has the following advantages: Improved accuracy: The use of the Kalman filter improves the accuracy of joint friction observation and reduces the impact of noise. Real-time: The observation and model building process can be carried out in real time, which is suitable for dynamically changing working environments. Adaptability: The model can automatically adjust according to actual observation data to adapt to different motion conditions and robot characteristics. Reduced hardware requirements: No additional sensors are required, which reduces system costs. Optimized control: An accurate joint friction model helps to improve the robot's control strategy and improve motion accuracy and efficiency. Through these steps, the friction of industrial robot joints can be effectively identified and predicted, providing important technical support for the precise control and performance optimization of the robot.
[0089] Further, refer to Figure 2 In the solution provided by this application, the joint motion data includes: joint angle and speed information obtained through joint motor encoder feedback. Specifically, obtaining joint data in actual application refers to: joint servo motor position, speed, and torque feedback data collection.
[0090] In this application, joint motion data plays a vital role. The joint angle and velocity information obtained through the joint motor encoder feedback provide basic data for subsequent joint friction observation and analysis. The joint angle information reflects the position change of the joint during the movement, while the velocity information indicates the speed of the joint movement. The accuracy and real-time performance of these data are crucial for accurately identifying joint friction. The Kalman filter observer utilizes these joint motion data, combined with the setting of its state variables and observation quantities, to effectively observe and estimate joint friction. By analyzing the angle and velocity information under different joint motion situations, the characteristics of joint friction and its relationship with joint motion can be more fully understood. In short, the joint angle and velocity information obtained through the joint motor encoder feedback is an indispensable part of this solution, providing important support for realizing accurate joint friction identification and calculation.
[0091] Specifically, the process of identifying joint friction force is mainly divided into two steps: establishing a joint friction force model; identifying the joint friction force model parameters; the joint friction force model refers to the functional relationship between joint friction force and variables such as joint speed and acceleration. Its characteristic is that the joint friction force can be calculated when variables such as joint speed and acceleration are known. The Coulomb-viscous friction force model is selected in the present invention; identifying the joint friction force model parameters refers to determining the model parameters other than the variables in the friction force model.
[0092] In order to better determine the model, a joint friction observer based on Kalman filtering is needed, which can quickly obtain the relationship between all joint friction and joint velocity under any trajectory in the robot workspace, and is used to identify all joint friction model parameters. The state variables of the observer are the generalized impulse of joint friction and joint friction, and the observed quantity of the observer is the generalized impulse of joint friction. The joint friction is calculated in real time by recursion using the Kalman filter state optimal estimation equation. All joint friction model parameters are identified using the least squares method. For the specific process, please refer to Figure 3 .
[0093] First of all, it should be noted that the definition of the generalized impulse caused by friction is
[0094] Considering the friction force of the robot joint as an external disturbance, the dynamic model of the n-DOF robot can be expressed as
[0095]
[0096] Where q∈R n×1 Represents the vector formed by the robot joint angles; M(q)∈R n×n represents the robot inertia matrix; represents the centrifugal force and Coriolis force matrix; G(q)∈R n×1 represents the gravity vector; τq ∈R n×1 represents the joint driving force; τ f ∈R n×1 Represents joint friction.
[0097] According to the momentum theorem, the actual generalized momentum of the robot can be expressed as
[0098]
[0099] Taking the partial derivative of formula (2) with respect to time, we can get
[0100]
[0101] Assuming that there is no friction in the transmission mechanism of the robot joint, the combined equation (1) can be obtained as
[0102]
[0103] The time integral of formula (4) is the generalized impulse expression caused by the known force:
[0104]
[0105] Where I represents the generalized impulse caused by the known force. Therefore, for an actual robot system with friction, the generalized impulse caused by joint friction can be obtained from the deviation between the actual generalized momentum and the generalized impulse caused by the known force, that is,
[0106] e=pi=∫τ f dt (6)
[0107] Design of joint friction force observer based on Kalman filter Firstly, the definition of observer state variables is given, let x1 = e, x2 = τ d , then the state equation and measurement equation of the observer are
[0108]
[0109] Where x = [x1 x2] T Represents the vector composed of state variables; Represents the vector composed of the first-order derivatives of the state variables; represents the system matrix in the state equation; W represents the dynamic noise of the system; y=[x1 0] T represents the observed quantity; represents the observation matrix; V represents the observation noise.
[0110] The state equation and measurement equation are applied to the robot system in a discretized form. After discretizing equation (7), the following expression can be obtained:
[0111]
[0112] Where x k+1 represents the state variable at time k+1; x k represents the state variable at time k;
[0113] Represents the discretized state transfer matrix; represents the noise transfer matrix; T represents the sampling period; W k represents the system dynamic noise at time k; V k+1 represents the measurement noise at time k+1.
[0114] The present invention regards process noise and measurement noise as Gaussian white noise with zero expectation, and the two are uncorrelated. Therefore, their statistical characteristics can be described as
[0115]
[0116] cov[W k ,V k ]=0
[0117] Where R k represents the variance of the measurement noise at time k, Q k W represents the variance of the system dynamic noise at time k. k , V k are not related to the initial state.
[0118] cov[x t0 ,V k ]=0,cov[x t0 ,W k ]=0
[0119] Based on the discretized state equation and measurement equation given by equation (8), the optimal estimation equation of the Kalman filter state variable can be obtained, which is expressed as follows:
[0120]
[0121] Where, represents the optimal estimate of the state variable at time k+1; represents the optimal estimate of the state variable at time k; K k+1 represents the gain matrix at time k+1; y k+1 represents the observation at time k+1. As can be seen from the formula, the optimal estimate of the state variable at time k+1 is calculated from the optimal estimate of the state variable at time k, the gain matrix, and the deviation between the actual observation and the estimated observation. The optimal estimate of the state variable is a recursive process that estimates the current state variable using the estimate at the previous time and the actual observation at the current time.
[0122] The gain matrix K in formula (9) k+1 It can be determined by the Kalman gain equation,
[0123] K k+1 =P k+1|k C T (CP k+1|k C T +R k+1 ) -1 (10)
[0124] Where, P k+1|k represents the k+1 time forecast error variance matrix predicted by the k time error variance; R k+1 P represents the variance of the measurement noise at time k+1. k+1|k Determined by the forecast error variance equation,
[0125] P k+1|k =ΦP k Φ T +ΓQ k Γ T (11)
[0126] Where, P k represents the error variance matrix at time k; Q k P represents the variance of the system dynamic noise at time k. k Determined by the filter error variance equation,
[0127] P k =(IK k C)P k|k-1 (12)
[0128] Among them, K k represents the gain matrix of the kth sampling period; P k|k-1 represents the k-hour forecast error variance matrix predicted by the k-1-hour error variance.
[0129] Formulas (9), (10), (11), and (12) together constitute the optimal estimation recursive process of state variables. After that, we can further obtain the optimal estimate of the joint friction force at time k,
[0130]
[0131] Where, represents the optimal estimate of the state variable component x2 at time k+1; Represents the optimal estimate of the vector composed of all joint friction forces at time k.
[0132] Furthermore, the joint friction force model refers to the functional relationship between joint friction force and variables such as joint velocity and acceleration. Its characteristic is that the joint friction force can be calculated when the variables such as joint velocity and acceleration are known. Specifically, during the robot startup phase, considering that the maximum static friction force of the joint is not significant relative to the inertial force, the model selected for friction force identification in the present invention is the Coulomb-viscous friction model, which can be described by the following expression:
[0133]
[0134] When the robot moves along the identified trajectory, it collects data at all times. and represents the optimal estimate of the vector of friction forces of all joints at time k, represents the vector of all joint velocities at time k. Therefore, when the trajectory is completed, the relationship curve between all joint friction forces and joint velocities can be obtained.
[0135] The friction force of each joint sampling point is Least squares regression on , we can get [τ c B]=(W T W) -1 W T T
[0136] Where W is the regression matrix, the number of its rows is equal to the number of sampling points, and the row vector of the i-th row is i represents the sampling point number, and T represents the column vector composed of the friction forces at each sampling point.
[0137] For each joint, the friction model parameters are obtained by the above least squares identification method.
[0138] With this setting, the corresponding model parameters of each joint of the robot can be obtained.
[0139] To sum up, in the solution provided in the present application, the relationship between all joint friction forces and joint velocities under any trajectory in the robot workspace can be quickly obtained to identify all joint friction force model parameters; the key point of the joint friction force observer based on Kalman filter is that the state variables of the observer are the generalized impulse of joint friction force and joint friction force, and the observation quantity of the observer is the generalized impulse of joint friction force; the key point of obtaining all joint friction forces is to use the Kalman filter state optimal estimation equation to calculate the joint friction force in real time during the movement of the robot; the key point of obtaining the relationship between all joint friction forces and joint velocities is to record the joint friction forces and joint velocities calculated at all times during the movement of the robot, so as to obtain the relationship curve between all joint friction forces and joint velocities; the key point of identifying all joint friction force model parameters is to identify all joint friction force model parameters by the least squares method.
[0140] Exemplary devices
[0141] The device embodiments of this application can be used to execute the method embodiments of this application. For details not disclosed in the device embodiments of this application, please refer to the method embodiments of this application.
[0142] Figure 4 FIG. 1 is a block diagram of a joint friction force identification device based on a Kalman filter observer provided by an embodiment of the present application. Figure 4 As shown, the device includes:
[0143] An observation module 41 is used to observe the joint friction force based on a Kalman filter observer under different preset joint motion data to obtain observation results;
[0144] The state variables of the Kalman filter observer are the generalized impulse of joint friction and the joint friction force, and the observed quantity of the Kalman filter observer is the generalized impulse of joint friction;
[0145] The determination module 42 is configured to determine a relationship curve between the joint friction force and the joint motion data based on the observation result:
[0146] A construction module 43 is used to construct a joint friction force model based on the relationship curve:
[0147] The calculation module 44 is configured to calculate the joint friction force based on the known joint motion data using the joint friction force model.
[0148] Exemplary electronic devices
[0149] Below, reference Figure 5 To describe the electronic device according to the embodiment of the present application. Figure 5 The figure shows a block diagram of an electronic device according to an embodiment of the present application.
[0150] like Figure 5 As shown, electronic device 500 includes one or more processors 510 and memory 520 .
[0151] The processor 510 may be a central processing unit (CPU) or other forms of processing units having data processing capabilities and / or instruction execution capabilities, and may control other components in the electronic device 500 to perform desired functions.
[0152] The memory 520 may include one or more computer program products, which may include various forms of computer-readable storage media, such as volatile memory and / or non-volatile memory. The volatile memory may, for example, include random access memory (RAM) and / or cache memory (cache), etc. The non-volatile memory may, for example, include read-only memory (ROM), hard disk, flash memory, etc. One or more computer program instructions may be stored on the computer-readable storage medium, and the processor 510 may run the program instructions to implement the joint friction force identification method based on the Kalman filter observer of the various embodiments of the present application described above and / or other desired functions. Various contents such as category correspondences may also be stored in the computer-readable storage medium.
[0153] In one example, the electronic device 500 may further include an input device 530 and an output device 540 , and these components are interconnected via a bus system and / or other forms of connection mechanisms (not shown).
[0154] In addition, the input device 530 may also include, for example, a keyboard, a mouse, an interface, etc. The output device 540 may output various information to the outside, including analysis results, etc. The output device 540 may include, for example, a display, a speaker, a printer, a communication network and its connected remote output device, etc.
[0155] Of course, to simplify, Figure 5 Only some of the components in the electronic device related to the present application are shown, and components such as a bus, an input / output interface, etc. are omitted. In addition, the electronic device may further include any other appropriate components according to specific application scenarios.
[0156] Exemplary computer program products and computer-readable storage media
[0157] In addition to the above-mentioned methods and devices, an embodiment of the present application may also be a computer program product, which includes computer program instructions, which, when executed by a processor, enable the processor to execute the steps of the joint friction force identification method based on the Kalman filter observer according to various embodiments of the present application described in the above-mentioned "Exemplary Method" section of this specification.
[0158] The computer program product may be written in any combination of one or more programming languages to implement the program code for performing the operations of the embodiments of the present application, including object-oriented programming languages such as Java, C++, and conventional procedural programming languages such as "C" or similar programming languages. The program code may be executed entirely on the user's computing device, partially on the user's computing device, as a standalone software package, partially on the user's computing device and partially on a remote computing device, or entirely on a remote computing device or server.
[0159] In addition, an embodiment of the present application may also be a computer-readable storage medium having computer program instructions stored thereon, which, when executed by a processor, enables the processor to execute the steps of the joint friction force identification method based on the Kalman filter observer according to various embodiments of the present application described in the above "Exemplary Method" section of this specification.
[0160] The computer-readable storage medium can adopt any combination of one or more readable media. The readable medium can be a readable signal medium or a readable storage medium. The readable storage medium can, for example, include but is not limited to a system, device or component of electricity, magnetism, light, electromagnetic, infrared, or semiconductor, or any combination thereof. More specific examples (non-exhaustive list) of readable storage media include: an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof.
[0161] The above description has been provided for the purpose of illustration and description. Furthermore, this description is not intended to limit the embodiments of the present application to the forms disclosed herein. Although a number of example aspects and embodiments have been discussed above, those skilled in the art will recognize certain variations, modifications, alterations, additions, and sub-combinations thereof.
Claims
1. A joint friction force identification method based on Kalman filter observer, characterized in that: include: Under different preset joint motion data, the joint friction force is observed based on the Kalman filter observer to obtain the observation results; The state variables of the Kalman filter observer are the generalized impulse of joint friction and the joint friction force, and the observed quantity of the Kalman filter observer is the generalized impulse of joint friction; Determine the relationship curve between the joint friction force and the joint motion data based on the observation results: Construct a joint friction force model based on the relationship curve: The joint friction force model is used to calculate the joint friction force based on known joint motion data.
2. The joint friction force identification method based on Kalman filter observer according to claim 1 is characterized in that: The joint motion data includes: joint angle and speed information obtained through joint motor encoder feedback.
3. The joint friction force identification method based on Kalman filter observer according to claim 1 or 2, characterized in that: The generalized impulse of joint friction force is the deviation between the actual generalized momentum and the generalized impulse caused by the known force.
4. The joint friction force identification method based on Kalman filter observer according to claim 3 is characterized in that: The observation of joint friction force based on Kalman filter observer includes: First, define the state variables of the Kalman filter observer, let x1 = e, x2 = τ d , then the state equation and measurement equation of the observer are Where x = [x1 x2] T Represents the vector composed of state variables; Represents the vector composed of the first-order derivatives of the state variables; represents the system matrix in the state equation; W represents the dynamic noise of the system; y=[x1 0] T represents the observed quantity; represents the observation matrix; V represents the observation noise; After discretization, the following expression is obtained: Where x k+1 represents the state variable at time k+1; x k represents the state variable at time k; Represents the discretized state transfer matrix; represents the noise transfer matrix; T represents the sampling period; W k represents the system dynamic noise at time k; V k+1 represents the measurement noise at time k+1; The process noise and measurement noise are considered as Gaussian white noise with zero expectation and are uncorrelated. The statistical characteristics are: E[W k ]=0, E[V k ]=0, the[W k ,V k ]=0 Where R k represents the variance of the measurement noise at time k, Q k represents the variance of the system dynamic noise at time k; W k , V k They are all unrelated to the initial state; those[x t0 ,V k ]=0, cov[x t0 ,W k ]=0 From the above formula, we can get the optimal estimation equation of the Kalman filter state variable, which is expressed as follows: Where, represents the optimal estimate of the state variable at time k+1; represents the optimal estimate of the state variable at time k; K k+1 represents the gain matrix at time k+1; y k+1 represents the observation at time k+1; The optimal estimate of the state variable at time k+1 is calculated by the optimal estimate of the state variable at time k, the gain matrix, and the deviation between the actual observation and the estimated observation. The optimal estimate of the state variable is a recursive process of estimating the state variable at the current moment by the estimate at the previous moment and the actual observation at the current moment. Gain matrix K k+1 Determined by the Kalman gain equation: K k+1 =P k+1|k C T (CP k+1|k C T +R k+1 ) -1 Where, P k+1|k represents the k+1 time prediction error variance matrix predicted by the k time error variance; R k+1 represents the variance of the measurement noise at time k+1; P k+1|k Determined by the forecast error variance equation: P k+1|k =ΦP k F T +GQ k C T Where, P k represents the error variance matrix at time k; Q k represents the variance of the system dynamic noise at time k; P k Determined by the filtering error variance equation: P k =(I-K k C)P k|k-1 Among them, K k represents the gain matrix of the kth sampling period; P k|k-1 represents the k-time forecast error variance matrix predicted by the k-1-time error variance; Known Then, the optimal estimate of the joint friction force at time k is obtained: Where, represents the optimal estimate of the state variable component x2 at time k+1; Represents the optimal estimate of the vector composed of all joint friction forces at time k.
5. The joint friction force identification method based on Kalman filter observer according to claim 4 is characterized in that: The joint friction force model is a Coulomb-viscous friction model.
6. The joint friction force identification method based on Kalman filter observer according to claim 5 is characterized in that: The constructing of the joint friction force model based on the relationship curve includes: Construct a Coulomb-viscous friction model: Parameter information in the Coulomb-viscous friction model is calculated based on the relationship curve.
7. The joint friction force identification method based on Kalman filter observer according to claim 6 is characterized in that: The expression of the Coulomb-viscous friction model is: The calculating parameter information in the Coulomb-viscous friction model based on the relationship curve includes: The parameter information in the model are Coulomb friction τ c and the viscous friction coefficient B; When the robot moves along the identified trajectory, it collects data at all times. and represents the optimal estimate of the vector of friction forces of all joints at time k, Represents the vector of all joint velocities at time k: The friction force of each joint sampling point is The least squares regression on the joint friction model can be used to obtain the parameters [τ c B] T =(W T W) -1 W T T Where W is the regression matrix, the number of its rows is equal to the number of sampling points, and the row vector of the i-th row is i represents the sampling point number, and T represents the column vector composed of the friction forces at each sampling point.
8. A joint friction force identification device based on Kalman filter observer, characterized in that: include: An observation module is used to observe the joint friction force based on the Kalman filter observer under different preset joint motion data to obtain observation results; The state variables of the Kalman filter observer are the generalized impulse of joint friction and the joint friction force, and the observed quantity of the Kalman filter observer is the generalized impulse of joint friction; A determination module is used to determine a relationship curve between the joint friction force and the joint motion data based on the observation result: A construction module is used to construct a joint friction force model based on the relationship curve: The calculation module is used to calculate the joint friction force based on the known joint motion data through the joint friction force model.
9. An electronic device, characterized in that: include: A processor, and a memory for storing a program executable by the processor; The processor is configured to implement the joint friction force identification method based on the Kalman filter observer according to any one of claims 1 to 7 by running the program in the memory.
10. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, which, when executed by a processor, enables the processor to execute the joint friction force identification method based on a Kalman filter observer according to any one of claims 1 to 7.
Citation Information
Patent Citations
Robot contact force detecting method based on torque observation and friction identification
CN106426174A
Calculation method and device for joint external force moment and robot
CN106994686A