A motor parameter identification method and device and a storage medium

By injecting voltage vector and friction feature compensation into the motor, the parameters of the permanent magnet synchronous motor can be quickly and accurately identified, solving the problem of high complexity in the existing technology and realizing simplified motor parameter identification.

CN115102446BActive Publication Date: 2026-04-28HUILING TECH ROBOTIC CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
HUILING TECH ROBOTIC CO LTD
Filing Date
2022-06-29
Publication Date
2026-04-28

AI Technical Summary

Technical Problem

Existing technologies have high software complexity in motor parameter identification, making it difficult to quickly and accurately identify various parameters of permanent magnet synchronous motors.

Method used

By injecting a voltage vector into the motor and utilizing the relationship between rotational speed and back electromotive force, combined with friction characteristic compensation, the number of pole pairs, phase resistance, DQ shaft inductance, sliding friction, static friction, viscous damping coefficient, and body inertia of the motor can be identified, simplifying the parameter identification process.

Benefits of technology

It enables rapid and accurate identification of various parameters of a permanent magnet synchronous motor without relying on external testing instruments, simplifying software complexity and improving identification efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115102446B_ABST
    Figure CN115102446B_ABST
Patent Text Reader

Abstract

The motor parameter identification method, device and storage medium are disclosed, wherein the method comprises: identifying the pole pair number, phase resistance and DQ axis inductance of a motor by injecting a voltage vector into the motor; calculating the back electromotive force coefficient by using the relationship between the rotation speed and the back electromotive force, and calculating the motor flux according to the back electromotive force coefficient and the pole pair number; identifying the sliding friction, static friction and viscous damping coefficient of the motor based on the known friction compensation of the friction characteristic part; and testing the motor body inertia according to the viscous damping coefficient and the electromechanical time constant. The motor parameters can be quickly and accurately identified without relying on external test instruments according to the basic principle of motor parameters, and the software complexity of motor parameter identification is simplified.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of electric motor technology, and in particular to a method, apparatus and storage medium for identifying motor parameters. Background Technology

[0002] With the development of science and technology, fields such as robotics, CNC machine tools, aerospace, and advanced manufacturing equipment have placed increasingly higher demands on modern electric servo systems. Permanent magnet synchronous motor servo drive technology has gradually become the "mainstream" of electric servo systems due to its small size, low energy consumption, and good control performance.

[0003] The parameters of a permanent magnet synchronous motor, as fundamental elements in establishing a mathematical model of the controlled object, are crucial to the robustness of control. Currently, most parameter identification for motors employs the least squares method, which results in high software complexity. Summary of the Invention

[0004] This application provides a method, device, and storage medium for identifying motor parameters.

[0005] Firstly, a method for identifying motor parameters is provided, the method comprising:

[0006] By injecting a voltage vector into the motor, the number of pole pairs, phase resistance, and DQ shaft inductance of the motor can be identified.

[0007] The back electromotive force coefficient is calculated using the relationship between rotational speed and back electromotive force, and the motor flux linkage is calculated based on the back electromotive force coefficient and the number of pole pairs.

[0008] Based on the known frictional characteristics, friction compensation is used to identify and obtain the sliding friction force, static friction force, and viscous damping coefficient of the motor.

[0009] The inertia of the motor body is obtained by testing the viscous damping coefficient and electromechanical time constant.

[0010] In one optional implementation, the step of identifying the number of pole pairs, phase resistance, and DQ shaft inductance of the motor by injecting a voltage vector into the motor includes:

[0011] In torque mode, a first voltage vector with an electrical angle of 0° is injected into the motor to align the rotor of the motor with the D-axis. After the motor stabilizes, the first value of the encoder is recorded.

[0012] A second voltage vector is injected into the motor so that the rotor of the motor is always aligned with the D-axis and rotates at a constant speed;

[0013] During rotation, the angle through which the motor rotates is determined based on the first value and the encoder value detected in real time;

[0014] If the angle through which the motor rotates does not exceed one revolution, the current pole pair number is incremented by 1 for each electrical cycle when the motor degree increment reaches one electrical cycle; if the angle through which the motor rotates exceeds one revolution, the current pole pair number is used as the total pole pair number of the motor.

[0015] In one optional implementation, the step of identifying the number of pole pairs, phase resistance, and DQ shaft inductance of the motor by injecting a voltage vector into the motor includes:

[0016] In torque mode, a first voltage vector with an electrical angle of 0° is injected into the motor to align the rotor of the motor with the D-axis. After the motor stabilizes, the D-axis current is sampled multiple times and averaged to obtain the average current value.

[0017] The phase resistance is calculated based on the first voltage vector with an electrical angle of 0° and the average current value.

[0018] In one optional implementation, the step of identifying the number of pole pairs, phase resistance, and DQ shaft inductance of the motor by injecting a voltage vector into the motor includes:

[0019] When the phase current of the motor is detected to return to 0, the voltage vector with an electrical angle of 0° is injected into the motor again, and the feedback current value is collected in real time. When the feedback current value is greater than the preset current value, the target time from the injection of the voltage vector with an electrical angle of 0° to the time when the feedback current value is greater than the preset current value, the current value corresponding to the target time, the previous time of the target time, and the current value corresponding to the previous time are obtained.

[0020] The actual rise time is calculated based on the target time, the preset current value, the current value corresponding to the target time, and the current value corresponding to the previous time.

[0021] The D-axis inductance and Q-axis inductance are calculated based on the actual rise time and the phase resistance.

[0022] In one optional implementation, the step of calculating the back electromotive force coefficient using the relationship between rotational speed and back electromotive force includes:

[0023] In torque mode, the motor is controlled to rotate to the target speed by a first torque command, and when the target speed no longer increases, multiple sets of speed data are collected to calculate the first average speed.

[0024] Get the current average bus voltage;

[0025] The back electromotive force coefficient is calculated based on the first average speed, the current average bus voltage, and the preset modulation factor.

[0026] In one optional implementation, the step of identifying the sliding friction force, static friction force, and viscous damping coefficient of the motor based on friction compensation with known frictional characteristics includes:

[0027] In the torque mode, the motor is controlled by a second torque command set according to the sliding friction model. When the motor stops rotating, the current torque is recorded as the sliding friction force of the motor. The second torque command gradually decreases from a preset torque value.

[0028] In one optional implementation, the step of identifying the sliding friction force, static friction force, and viscous damping coefficient of the motor based on friction compensation with known frictional characteristics includes:

[0029] In the torque mode, the motor is controlled by a third torque command set according to the static friction model. When the motor starts to rotate, the current torque is recorded as the static friction force of the motor. The third torque command gradually increases the torque value starting from zero.

[0030] In one optional implementation, the step of identifying the sliding friction force, static friction force, and viscous damping coefficient of the motor based on friction compensation with known frictional characteristics includes:

[0031] In the torque mode, the motor is controlled by a fourth torque command until the motor speed reaches a stable value; the above steps are repeated multiple times to obtain a second average speed.

[0032] Set a fifth torque command to control the motor. Once the motor speed reaches a stable value, the fifth torque command is less than the fourth torque command and greater than the static friction force. Repeat the above steps multiple times to obtain a third average speed.

[0033] The viscous damping coefficient of the motor is calculated based on the fourth torque command, the second average speed, the fifth torque command, and the third average speed.

[0034] In an optional implementation, the method further includes:

[0035] After the viscous damping coefficient of the motor is calculated, and the motor rotates at the third average speed, the fourth torque command is reset to control the motor and the first moment is recorded. When the motor accelerates until the motor speed reaches the comparison speed, the second moment is recorded.

[0036] The electromechanical time constant is calculated based on the first time point and the second time point.

[0037] Secondly, a motor parameter identification device is provided, comprising:

[0038] The first identification module is used to identify the number of pole pairs, phase resistance, and DQ shaft inductance of the motor by injecting a voltage vector into the motor.

[0039] The second identification module is used to calculate the back electromotive force coefficient by utilizing the relationship between rotational speed and back electromotive force, and to calculate the motor flux linkage based on the back electromotive force coefficient and the number of pole pairs.

[0040] The third identification module is used to identify and obtain the sliding friction force, static friction force and viscous damping coefficient of the motor based on the friction compensation of the known friction characteristics.

[0041] The fourth identification module is used to obtain the inertia of the motor body based on the viscous damping coefficient and electromechanical time constant.

[0042] Thirdly, a computer storage medium is provided, which stores one or more instructions adapted for loading by a processor and executing the steps of the first aspect and any possible implementation thereof.

[0043] This application provides a method for identifying motor parameters. By injecting a voltage vector into the motor, the number of pole pairs, phase resistance, and DQ shaft inductance of the motor are identified. The back electromotive force coefficient is calculated using the relationship between rotational speed and back electromotive force, and the motor flux linkage is calculated based on the back electromotive force coefficient and the number of pole pairs. Based on friction compensation with known friction characteristics, the sliding friction force, static friction force, and viscous damping coefficient of the motor are identified. The inertia of the motor body is obtained by testing the viscous damping coefficient and electromechanical time constant. Based on the basic principles of motor parameters, the method can quickly and accurately identify the parameters of various parts of the motor without relying on external testing instruments, thus simplifying the software complexity of motor parameter identification. Attached Figure Description

[0044] To more clearly illustrate the technical solutions in the embodiments of this application or the background art, the accompanying drawings used in the embodiments of this application or the background art will be described below.

[0045] Figure 1 A flowchart illustrating a motor parameter identification method provided in an embodiment of this application;

[0046] Figure 2 A schematic diagram of a motor friction model provided in an embodiment of this application;

[0047] Figure 3 This is a schematic diagram of the structure of a motor parameter identification device provided in an embodiment of this application. Detailed Implementation

[0048] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of the present application.

[0049] The terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish different objects, not to describe a specific order. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or apparatus that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to these processes, methods, products, or apparatuses.

[0050] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of this application. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.

[0051] The electric motor mentioned in this application refers to an electromagnetic device that converts or transmits electrical energy based on the law of electromagnetic induction. Its main function is to generate driving torque, serving as a power source for electrical appliances or various machines.

[0052] The motor in this embodiment can specifically be a permanent magnet synchronous motor. Permanent magnet synchronous motors use permanent magnets for excitation, simplifying the motor structure, reducing processing and assembly costs, and eliminating the prone-to-problem slip rings and brushes, thus improving the reliability of motor operation. Furthermore, because no excitation current is required, there are no excitation losses, improving the motor's efficiency and power density. A permanent magnet synchronous motor mainly consists of a stator, rotor, and end covers. The stator is made of laminated laminations to reduce iron losses during motor operation and contains three-phase AC windings, called the armature. The rotor can be made solid or laminated, and is fitted with permanent magnet material.

[0053] The embodiments of this application are described below with reference to the accompanying drawings.

[0054] Please see Figure 1 , Figure 1This is a flowchart illustrating a motor parameter identification method provided in an embodiment of this application. Figure 1 As shown, the method includes:

[0055] 101. By injecting a voltage vector into the motor, the number of pole pairs, phase resistance, and DQ shaft inductance of the motor can be identified.

[0056] 102. The back electromotive force coefficient is calculated using the relationship between rotational speed and back electromotive force. The motor flux linkage is then calculated based on the back electromotive force coefficient and the number of pole pairs.

[0057] 103. Based on the known friction characteristics of friction compensation, the sliding friction force, static friction force and viscous damping coefficient of the motor are identified and obtained;

[0058] 104. The moment of inertia of the motor body is obtained based on the above viscous damping coefficient and electromechanical time constant test.

[0059] The motor parameter identification method in this application embodiment is mainly based on the basic principles of motor parameters, and can quickly and accurately identify the parameters of various parts of the motor without relying on external testing instruments. The identified parameters may include the number of pole pairs, DQ shaft inductance, DQ shaft flux linkage, back electromotive force coefficient, motor body inertia, sliding friction coefficient, static friction coefficient, viscous damping coefficient, etc., and the required identification parameters can be selected or added as needed.

[0060] The identification parameters involved in the embodiments of this application can be independently identified based on the corresponding test methods, or multiple parameters can be identified by selecting test methods, adjusting or controlling the identification order of different parameters as needed. The embodiments of this application do not limit this.

[0061] The identification process of each identification parameter involved in the embodiments of this application will be described in detail below.

[0062] In this embodiment, a voltage vector can be injected into the motor to control the rotor rotation. The phase angle of the voltage vector can be selected as needed. Through the corresponding test steps of the injected voltage vector, the number of pole pairs, phase resistance, and DQ shaft inductance of the motor can be identified.

[0063] In an optional implementation, step 101 above, the pole-logarithm test procedure may include:

[0064] 011. In torque mode, a voltage vector with an electrical angle of 0° is injected into the motor to align the rotor of the motor with the D-axis. After the motor stabilizes, the first value of the encoder is recorded.

[0065] 012. Inject a first current vector into the motor to keep the rotor of the motor always aligned with the D-axis and rotate at a constant speed.

[0066] 013. During the rotation process, the angle through which the motor rotates is determined based on the first value mentioned above and the encoder value detected in real time;

[0067] 014. If the angle through which the above motor rotates does not exceed one revolution, the current pole pair number is incremented by 1 for each electrical cycle when the motor degree increment reaches one electrical cycle; if the angle through which the above motor rotates exceeds one revolution, the current pole pair number is taken as the total pole pair number of the above motor.

[0068] Specifically, given the number of lines in the photoelectric encoder, the motor can be set to run in torque mode. First, a voltage vector with an electrical angle of 0° is injected into the motor to align the rotor magnets with the D-axis. After stabilization, the current encoder value (first value) is recorded as θ0. Then, a certain D-axis current vector (second voltage vector) is applied, and a certain electrical angle ramp increment can be set. The DQ coordinate system then rotates at a constant speed. The D-axis flux linkage interacts with the rotor magnet flux linkage, ensuring the rotor remains aligned with the D-axis and rotates at a constant speed.

[0069] During rotation, the angle the motor has rotated through can be detected and judged in real time. If the motor has not exceeded one revolution, the pole pair count is incremented by 1 for each electrical cycle (360°) of the motor degree increment. If the motor has rotated more than one revolution, the currently recorded pole pair count is taken as the total number of pole pairs. After the pole pair count test is completed, the next step of testing the DQ axis inductance can be performed.

[0070] In this embodiment of the application, the basic principle of phase resistance testing can be: R = U / I.

[0071] In an optional implementation, step 101 above may include the phase resistance test process as follows:

[0072] 021. In torque mode, the above motor is injected with a first voltage vector with an electrical angle of 0° to align the rotor of the motor with the D-axis. After the motor stabilizes, the D-axis current is collected multiple times and averaged to obtain the average current value.

[0073] 022. The phase resistance is calculated based on the first voltage vector with an electrical angle of 0° and the average current value.

[0074] Similar to step 011 above, a first voltage vector Uref with an electrical angle of 0° is injected into the motor to align the rotor magnets with the D-axis. After stabilization, the D-axis current is collected. This current can be continuously collected and averaged to obtain the average current value Idfb. When the 0° D-axis voltage vector is injected (i.e., the beta-axis voltage is applied), the current flows from the V end to the W end in the VW line. There is no current in the U phase, meaning that the collected current is the bus current flowing through the VW line resistance. Specifically, the phase resistance value can be calculated using the formula R = Uref / Idfb / 2.

[0075] The basic principle of DQ axis inductance testing in this application embodiment can be measured using the electrical time constant of the RL circuit.

[0076] In an optional implementation, step 101 above, the DQ axis inductance test process may include:

[0077] 031. When the phase current of the motor is detected to return to 0, the voltage vector with an electrical angle of 0° is injected into the motor again, and the feedback current value is collected in real time. When the feedback current value is greater than the preset current value, the target time from the injection of the voltage vector with an electrical angle of 0° to the time when the feedback current value is greater than the preset current value, the current value corresponding to the target time, the previous time of the target time, and the current value corresponding to the previous time are obtained.

[0078] 032. The actual rise time is calculated based on the target time, the preset current value, the current value corresponding to the target time, and the current value corresponding to the previous time.

[0079] 033. Based on the actual rise time and phase resistance mentioned above, the D-axis inductance and Q-axis inductance are calculated.

[0080] Specifically, t = L / R is the time constant of the RL series circuit; I = e / R, where I is the current value at steady state. In steps 021-022, a 0° voltage vector Uref is injected, and the average current value Idfb collected is the current value at steady state. After step 022, when the phase current of the motor is detected to return to 0, a 0° voltage vector Uref can be injected again, and the feedback current value can be collected in real time until the feedback current value is greater than a preset current value. This moment is the target time t(n); the preset current value can be 0.632Idfb. The target time t(n) and the corresponding sampled current value Idfb(n) can be obtained by recording the time elapsed from the injection of the 0° voltage vector Uref to the feedback current value exceeding the preset current value. Furthermore, the previous moment of the target time t(n) can be recorded as t(n-1), and the sampled current value corresponding to the previous moment t(n-1) is Idfb(n-1). Optionally, in this embodiment of the application, considering the influence of the discrete system on the sampling current, a sampling frequency as high as possible can be used, and forward interpolation processing can be performed on the sampling time to improve the time accuracy.

[0081] Based on the above data, the actual rise time can be calculated:

[0082] tcomp=t(n)-(Idfb(n)-0.632Idfb) / (Idfb(n)-Idfb(n-1));

[0083] Furthermore, the D-axis inductance can be calculated using the formula Ld = R * tcomp; where R is the resistance value of the phase resistor mentioned above, and tcomp is the actual rise time mentioned above.

[0084] Similarly, the Q-axis inductance can be obtained, which will not be elaborated here. However, optionally, to ensure that the injected voltage vector motor does not rotate, the injected voltage vector needs to be selected to be smaller than the mechanical time constant.

[0085] The electromechanical time constant of the motor involved in the embodiments of this application is also called the mechanical time constant, which is the time taken for the motor to go from starting to reaching 63.2% of the no-load speed.

[0086] In an optional implementation, step 102 above, the back electromotive force coefficient (back electromotive force time constant) test procedure may include:

[0087] 041. In torque mode, the motor is controlled to rotate to the target speed by the first torque command, and when the target speed no longer increases, multiple sets of speed data are collected to calculate the first average speed.

[0088] 042. Obtain the current average bus voltage;

[0089] 043. The back electromotive force coefficient is calculated based on the first average speed, the current average bus voltage, and the preset modulation factor.

[0090] The basic principle involved in this embodiment is that, given the real-time value of the bus voltage and the configured maximum voltage modulation factor, a certain torque command is given in torque mode to control the motor to rotate to high speed. The back electromotive force time constant is calculated by using the relationship between the rotational speed and the back electromotive force, thereby calculating the motor flux linkage.

[0091] Specifically, once the motor reaches high speed and the speed no longer increases, multiple sets of data can be collected to calculate the first average speed Vmax; the current average bus voltage Ubus can also be collected.

[0092] The back electromotive force coefficient can be calculated using the formula Kemf = Ubus * Umod / Vmax;

[0093] Umod is the modulation factor, which depends on the specific settings of the driver;

[0094] Magnetic flux can be derived from formula calculate;

[0095] Where P is the number of pole pairs of the permanent magnet synchronous motor.

[0096] To more clearly illustrate the motor friction model test in the embodiments of this application, a commonly used motor friction model is first introduced here.

[0097] Figure 2 A schematic diagram of a motor friction model provided in an embodiment of this application is shown below. Figure 2 As shown, these include Figure a - Coulomb (sliding) friction model, Figure b - static friction model, Figure c - viscous damping model, Figure d - total friction model, and Figure e - Stribeck effect model.

[0098] As shown in Figure a, the motor friction model is a Coulomb model, and its form is as follows:

[0099] Fc(v)=-Fc*sgn(v);

[0100] Where F represents the frictional force, v is the relative velocity between the two contact surfaces, and the magnitude of the frictional force is Fc.

[0101] As shown in Figure b, static friction is the frictional force generated between two contact surfaces when there is a tendency for relative motion but no relative motion. When the applied external force is less than the maximum static friction force, the static friction cancels out the applied external force, thus keeping the object stationary. Therefore, the static friction of a motor can be modeled as a function of the applied force:

[0102]

[0103] Where Fe is the applied force; Fs is the maximum static friction force, which is the limit value from static friction to Coulomb friction.

[0104] As shown in Figure c, viscous damping can be represented by the formula Fc(v)=-β*v, where β is the viscous friction coefficient (viscous damping coefficient).

[0105] As shown in Figure d, the total friction can be regarded as a "static friction + Coulomb + viscous damping model", also known as the Kinetic friction model.

[0106] As shown in Figure e, the transition from static friction to kinetic friction is not discontinuous as shown in Figure d. In fact, the change in frictional force from maximum static friction to Coulomb friction is a continuous process. The corresponding model is called the Stribeck friction model or the GKF friction model, which is a more general description of friction than the Kinetic friction model.

[0107]

[0108] Here, F(v) is an arbitrary function, and its curve should have the shape shown in Figure e. Based on this consideration, various continuous function forms that can explain the Stribeck effect have been proposed, such as the GKF friction model, the Dahl model, and the Lugre friction model. The Stribeck effect refers to the phenomenon that friction decreases with increasing speed in the low-speed region. These friction models are all quite complex.

[0109] Friction compensation methods are generally categorized into model-free friction compensation methods and model-based friction compensation methods based on whether a friction model is used. However, in this application, friction compensation methods are classified into several types based on the different control strategies adopted, including model-free friction compensation, fixed friction compensation, and friction compensation based on known friction characteristics.

[0110] Model-free friction compensation treats friction as an external disturbance and improves the system's ability to suppress disturbances by changing the control structure or parameters, thereby reducing friction. Clearly, model-free compensation methods compensate for not only friction but also all other disturbances acting on the system. These methods include PD / PID control, high-frequency vibration control, pulse control, torque feedback control, robust control, and variable structure control.

[0111] Fixed friction compensation involves incorporating a fixed friction compensation term into a standard control algorithm. This term is based on a specified friction model and is obtained by offline identification of friction parameters through a special process. Satisfactory results can only be achieved using this method when friction variations due to time, temperature, etc., are negligible and the friction parameters are estimated very accurately offline. Clearly, the friction model used to define the compensation term must be sufficiently accurate.

[0112] The friction compensation method based on partially known friction characteristics involved in this application is similar to fixed friction compensation. It adds a friction compensation term to the standard control algorithm, but it does not require knowledge of the exact friction model; only some key friction characteristics, such as the maximum static friction force, are known. The required friction characteristic parameters are also estimated offline.

[0113] The method in this application embodiment aims to perform friction compensation simply and efficiently, that is, to use the above-mentioned friction compensation based on the known friction characteristics to efficiently test various friction forces.

[0114] In one optional implementation, step 103 above, the process for testing sliding friction may include:

[0115] 051. In the above torque mode, the above motor is controlled by a second torque command set according to the sliding friction model. When the above motor stops rotating, the current torque is recorded as the sliding friction force of the above motor. The second torque command gradually decreases from the preset torque value.

[0116] Specifically, according to the sliding friction model, the sliding friction of the motor is a fixed value. The motor operates in torque mode. After setting a certain torque (preset torque value) via a second torque command, the motor rotates at low speed, gradually reducing the torque. When the motor stops rotating, the current torque is recorded, which is the sliding friction force. The preset torque value can be set as needed.

[0117] In an optional implementation, step 103 above, the static friction test procedure may include:

[0118] 052. In the above torque mode, the above motor is controlled by a third torque command set according to the static friction force model. When the above motor starts to rotate, the current torque is recorded as the static friction force of the above motor. The above third torque command gradually increases the torque value from zero.

[0119] Specifically, based on the static friction model, the driver is set to run in torque mode, and a third torque command is set to gradually increase the torque from zero; when the motor rotates, the current torque is recorded, and this torque is the static friction force of the motor.

[0120] Further optionally, the test procedure for the viscous damping coefficient in step 103 above may include:

[0121] 053. In the above torque mode, the above motor is controlled by a fourth torque command. After the speed of the above motor reaches a stable value, the above steps are executed multiple times to obtain the second average speed.

[0122] 054. Set the fifth torque command to control the above motor. When the speed of the above motor reaches a stable value, the fifth torque command is less than the fourth torque command and greater than the static friction force. Repeat the above steps multiple times to obtain the third average speed.

[0123] 055. Based on the fourth torque command, the second average speed, the fifth torque command, and the third average speed, the viscous damping coefficient of the motor is calculated.

[0124] Specifically, based on the viscous damping model, the motor is set to run in torque mode, and a certain torque command (fourth torque command) Iq1 is set. The motor speed is recorded after it reaches a stable value, and the second average speed v1 is obtained by repeating this process multiple times. Another torque command (fifth torque command) Iq2 is set, where Iq2 is less than Iq1 and greater than the static friction force. The motor speed is recorded after it reaches a stable value, and the third average speed v2 is obtained by repeating this process multiple times.

[0125] The viscous damping coefficient Kb of the motor can be obtained according to the formula Kb=(Iq1-Iq2) / (v1-v2) / 2Π.

[0126] Furthermore, after obtaining the viscous damping coefficient of the motor, the motor's inertia can be obtained by testing the viscous damping coefficient and the electromechanical time constant. That is, in this embodiment, the basic principle for testing the motor's inertia is to test the motor's electromechanical time constant. The motor's electromechanical time constant, also called the mechanical time constant, is the time it takes for the motor to reach 63.2% of its no-load speed from startup.

[0127] In one alternative implementation, the method further includes:

[0128] 061. After calculating and obtaining the viscous damping coefficient of the motor, when the motor rotates at the third average speed, the fourth torque command is reset to control the motor and the first moment is recorded. When the motor accelerates until the motor speed reaches the comparison speed, the second moment is recorded.

[0129] 062. The electromechanical time constant is calculated based on the first and second time points mentioned above.

[0130] Specifically, in the viscous damping coefficient test, the comparison speed was set to ω3 = 63.2% (v1-v2).

[0131] After testing the viscous damping coefficient, the motor rotates at the third average speed v2, and the torque command is reset to the fourth torque command Iq1. The time at this moment (first moment) t1 is recorded. The motor accelerates and rotates until the speed reaches the target speed v3. The time at this moment (second moment) t2 is recorded. The rise time is recorded as Δt = t2 - t1, which is the electromechanical time constant.

[0132] The target speed v3 can be equal to the comparison speed ω3; while in the viscous damping coefficient test, the comparison speed is set to ω3 = 63.2% (v1-v2).

[0133] In this embodiment, the inertia J of the motor body can be calculated by the formula J = Kb * Δt, where Kb is the viscous damping coefficient obtained from the aforementioned test, and Δt is the electromechanical time constant mentioned above.

[0134] The motor parameter identification method in this application embodiment is based on the basic principles of motor parameters and can quickly and accurately identify the parameters of various parts of the motor without relying on external testing instruments. The identified parameters may include the number of pole pairs, DQ shaft inductance, DQ shaft flux linkage, back electromotive force coefficient, motor body inertia, sliding friction coefficient, static friction coefficient, viscous damping coefficient, etc. Compared with the traditional solution which uses more complex principles and methods, it is simple to operate and can simplify the software complexity of motor parameter identification.

[0135] Based on the description of the foregoing method embodiments, this application also provides a motor parameter identification device.

[0136] Please see Figure 3 , Figure 3 This is a schematic diagram of the structure of a motor parameter identification device provided in an embodiment of this application. Figure 3 As shown, the motor parameter identification device 300 includes:

[0137] The first identification module 310 is used to identify the number of pole pairs, phase resistance and DQ shaft inductance of the motor by injecting a voltage vector into the motor.

[0138] The second identification module 320 is used to calculate the back electromotive force coefficient by utilizing the relationship between rotational speed and back electromotive force, and to calculate the motor flux linkage based on the back electromotive force coefficient and the number of pole pairs.

[0139] The third identification module 330 is used to identify and obtain the sliding friction force, static friction force and viscous damping coefficient of the motor based on friction compensation with known friction characteristics.

[0140] The fourth identification module 340 is used to obtain the inertia of the motor body based on the above-mentioned viscous damping coefficient and electromechanical time constant test.

[0141] In one embodiment, the aforementioned motor parameter identification device 300 can be specifically used to perform, for example... Figure 1 Any steps in the illustrated embodiments will not be repeated here.

[0142] This application also provides a computer storage medium (memory), which is a memory device in an electronic device used to store programs and data. It is understood that the computer storage medium here can include both built-in storage media in the electronic device and extended storage media supported by the electronic device. The computer storage medium provides storage space that stores the operating system of the electronic device. Furthermore, this storage space also stores one or more instructions suitable for loading and execution by a processor. These instructions can be one or more computer programs (including program code). It should be noted that the computer storage medium here can be high-speed RAM or non-volatile memory, such as at least one disk storage device; optionally, it can also be at least one computer storage medium located remotely from the aforementioned processor.

[0143] In one embodiment, a processor may load and execute one or more instructions stored in a computer storage medium to implement the corresponding steps in the above embodiments; specifically, one or more instructions in the computer storage medium may be loaded and executed by a processor. Figure 1 Any steps of the method are not described here.

[0144] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working process of the above-described device and module can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.

[0145] In the embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the division of modules is merely a logical functional division, and in actual implementation, there may be other division methods. For instance, multiple modules or components may be combined or integrated into another system, or some features may be ignored or not executed. The coupling, direct coupling, or communication connection shown or discussed may be indirect coupling or communication connection through some interfaces, apparatuses, or modules, and may be electrical, mechanical, or other forms.

[0146] The modules described as separate components may or may not be physically separate. Similarly, the components shown as modules may or may not be physical modules; they may be located in one place or distributed across multiple network modules. Some or all of the modules can be selected to achieve the purpose of this embodiment, depending on actual needs.

[0147] In the above embodiments, implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented, in whole or in part, as a computer program product. This computer program product includes one or more computer instructions. When these computer program instructions are loaded and executed on a computer, all or part of the flow or function according to the embodiments of this application is generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in or transmitted through a computer-readable storage medium. The computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium accessible to a computer or a data storage device such as a server or data center that integrates one or more available media. The available media can be read-only memory (ROM), random access memory (RAM), or magnetic media, such as floppy disks, hard disks, magnetic tapes, magnetic disks, or optical media, such as digital versatile discs (DVDs), or semiconductor media, such as solid state disks (SSDs).

Claims

1. A method for identifying motor parameters, characterized in that, The method includes: By injecting a voltage vector into the motor, the number of pole pairs, phase resistance, and DQ shaft inductance of the motor can be identified. The back electromotive force coefficient is calculated using the relationship between rotational speed and back electromotive force, and the motor flux linkage is calculated based on the back electromotive force coefficient and the number of pole pairs. Based on the known frictional characteristics, friction compensation is used to identify and obtain the sliding friction force, static friction force, and viscous damping coefficient of the motor. The inertia of the motor body is obtained by testing the viscous damping coefficient and electromechanical time constant. The step of identifying the number of pole pairs, phase resistance, and DQ shaft inductance of the motor by injecting a voltage vector into the motor includes: In torque mode, a first voltage vector with an electrical angle of 0° is injected into the motor to align the rotor of the motor with the D-axis. After the motor stabilizes, the first value of the encoder is recorded. A second voltage vector is injected into the motor so that the rotor of the motor is always aligned with the D-axis and rotates at a constant speed; During rotation, the angle through which the motor rotates is determined based on the first value and the encoder value detected in real time; If the angle through which the motor rotates does not exceed one revolution, the current pole pair number is incremented by 1 for each electrical angle increment of the second voltage vector reaching one electrical cycle; if the angle through which the motor rotates exceeds one revolution, the current pole pair number is used as the total pole pair number of the motor.

2. The motor parameter identification method according to claim 1, characterized in that, The step of identifying the number of pole pairs, phase resistance, and DQ shaft inductance of the motor by injecting a voltage vector into the motor includes: In torque mode, a first voltage vector with an electrical angle of 0° is injected into the motor to align the rotor of the motor with the D-axis. After the motor stabilizes, the D-axis current is sampled multiple times and averaged to obtain the average current value. The phase resistance is calculated based on the first voltage vector with an electrical angle of 0° and the average current value.

3. The motor parameter identification method according to claim 2, characterized in that, The step of identifying the number of pole pairs, phase resistance, and DQ shaft inductance of the motor by injecting a voltage vector into the motor includes: When the phase current of the motor is detected to return to 0, the voltage vector with an electrical angle of 0° is injected into the motor again, and the feedback current value is collected in real time. When the feedback current value is greater than the preset current value, the target time from the injection of the voltage vector with an electrical angle of 0° to the time when the feedback current value is greater than the preset current value, the current value corresponding to the target time, the previous time of the target time, and the current value corresponding to the previous time are obtained. The actual rise time is calculated based on the target time, the preset current value, the current value corresponding to the target time, and the current value corresponding to the previous time. The D-axis inductance and Q-axis inductance are calculated based on the actual rise time and the phase resistance.

4. The motor parameter identification method according to claim 1, characterized in that, The calculation of the back electromotive force coefficient using the relationship between rotational speed and back electromotive force includes: In torque mode, the motor is controlled to rotate to the target speed by a first torque command, and when the target speed no longer increases, multiple sets of speed data are collected to calculate the first average speed. Get the current average bus voltage; The back electromotive force coefficient is calculated based on the first average speed, the current average bus voltage, and the preset modulation factor.

5. The motor parameter identification method according to claim 1, characterized in that, The friction compensation based on known friction characteristics identifies and obtains the sliding friction force, static friction force, and viscous damping coefficient of the motor, including: In torque mode, the motor is controlled by a second torque command set according to the sliding friction model. When the motor stops rotating, the current torque is recorded as the sliding friction force of the motor. The second torque command gradually decreases from a preset torque value.

6. The motor parameter identification method according to claim 1, characterized in that, The friction compensation based on known friction characteristics identifies and obtains the sliding friction force, static friction force, and viscous damping coefficient of the motor, including: In torque mode, the motor is controlled by a third torque command set according to the static friction model. When the motor starts to rotate, the current torque is recorded as the static friction force of the motor. The third torque command gradually increases the torque value starting from zero.

7. The motor parameter identification method according to claim 1, characterized in that, The friction compensation based on known friction characteristics identifies and obtains the sliding friction force, static friction force, and viscous damping coefficient of the motor, including: Step 1: In the torque mode, the motor is controlled by a fourth torque command until the motor speed reaches a stable value; Step 1 is executed multiple times to obtain a second average speed. Step 2: Set the fifth torque command to control the motor. When the motor speed reaches a stable value, the fifth torque command is less than the fourth torque command and greater than the static friction force. Repeat Step 2 multiple times to obtain the third average speed. Step 3: Calculate the viscous damping coefficient of the motor based on the fourth torque command, the second average speed, the fifth torque command, and the third average speed.

8. The motor parameter identification method according to claim 7, characterized in that, The method further includes: After the viscous damping coefficient of the motor is calculated, and the motor rotates at the third average speed, the fourth torque command is reset to control the motor and the first moment is recorded. When the motor accelerates until the motor speed reaches the comparison speed, the second moment is recorded. The electromechanical time constant is calculated based on the first time point and the second time point.

9. A motor parameter identification device, characterized in that, include: The first identification module is used to identify the number of pole pairs, phase resistance, and DQ shaft inductance of the motor by injecting a voltage vector into the motor. The second identification module is used to calculate the back electromotive force coefficient by utilizing the relationship between rotational speed and back electromotive force, and to calculate the motor flux linkage based on the back electromotive force coefficient and the number of pole pairs. The third identification module is used to identify and obtain the sliding friction force, static friction force and viscous damping coefficient of the motor based on the friction compensation of the known friction characteristics. The fourth identification module is used to obtain the inertia of the motor body based on the viscous damping coefficient and electromechanical time constant. The first identification module is specifically used for: In torque mode, a first voltage vector with an electrical angle of 0° is injected into the motor to align the rotor of the motor with the D-axis. After the motor stabilizes, the first value of the encoder is recorded. A second voltage vector is injected into the motor so that the rotor of the motor is always aligned with the D-axis and rotates at a constant speed; During rotation, the angle through which the motor rotates is determined based on the first value and the encoder value detected in real time; If the angle through which the motor rotates does not exceed one revolution, the number of the current pole pairs is incremented by 1 every time the electrical angle increment of the second voltage vector reaches one electrical cycle; If the motor rotates more than one revolution, the current number of pole pairs is taken as the total number of pole pairs of the motor.

10. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, the processor performs the steps of the method as described in any one of claims 1-8.

Citation Information

Patent Citations

  • Method of recognizing moment of inertia of permanent magnet synchronous machine based on reduced-order current ring

    CN106788061A

  • Motor torque correction method and device, motor and vehicle

    CN107508503A

  • Motor control method, controller, storage medium and motor driving system

    CN110112974A