Brushed dc motor parameter identification method based on fuzzy adaptive control
By combining fuzzy adaptive control and recursive least squares method, reliable, accurate and universal identification of brushed DC motor parameters under stationary conditions is achieved, solving the problem of difficult identification in existing technologies and possessing high safety and consistency.
Patent Information
- Application Number
- CN202210655212.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-06-10
- Publication Date
- 2026-02-24
- Estimated Expiration
- 2042-06-10
AI Technical Summary
Existing technologies are insufficient for reliably and accurately identifying brushed DC motor parameters when the motor is stationary, and they lack versatility.
A fuzzy adaptive control-based method is adopted, in which the current loop PI is tuned by a fuzzy adaptive PI controller, and the closed-loop offline identification of motor parameters is achieved by combining the difference method and the recursive least squares method with forgetting factor.
It achieves safe and reliable parameter identification when the motor is stationary, is versatile, applicable to different occasions, has good consistency in identification results, adapts to an extremely wide current range, and the identification process is simple and reliable.
Smart Images

Figure CN114928293B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of brushed DC motor control technology, and in particular to a method for identifying brushed DC motor parameters based on fuzzy adaptive control. Background Technology
[0002] Brushed DC motors (BDC) remain widely used in high-precision servo control systems due to their simple control method and ability to achieve smooth and economical speed regulation. Current loop control plays a crucial role in stable and efficient servo control systems. However, current loop self-tuning requires prior knowledge of the motor's intrinsic parameters, and various compensation algorithms, such as feedforward compensation, also rely on accurate intrinsic parameters. Therefore, parameter identification of brushed DC motors is of paramount importance.
[0003] Due to the unique structure of brushed DC motors, they can rotate as soon as voltage is applied, making offline parameter identification a persistent challenge. Currently, there are few brushed DC motor parameter identification technologies, and these are difficult to perform while the motor is stationary. Therefore, a safe, reliable, and universal strategy for offline parameter identification of brushed DC motors is urgently needed. Summary of the Invention
[0004] The technical problem to be solved by the present invention is to address the shortcomings of the prior art by providing a brushed DC motor parameter identification method based on fuzzy adaptive control, which can reliably and accurately identify brushed DC motor parameters when the motor is stationary, and has universality.
[0005] To achieve the above objectives, the present invention adopts the following technical solution:
[0006] A method for parameter identification of a brushed DC motor based on fuzzy adaptive control is characterized by including: based on fuzzy adaptive PI control, inputting a current command with frequency value f0 and amplitude value A0, performing current loop PI tuning, and obtaining the current loop K. p K i Where A0 is a current value that can be set manually.
[0007] Preferably, the fuzzy adaptive PI control employs a two-dimensional fuzzy controller, and the specific steps include the following:
[0008] 1) Fuzzy processing to extract armature current error e and error change rate As two inputs to the controller, e, and K p K i The fuzzy set of linguistic values is defined as follows: e, K p K i={NB, NM, NS, ZO, PS, PM, PB}, denoted by B0 to B6, with corresponding universe of discourse values of: {-3, -2, -1, 0, 1, 2, 3}; Let the variables e, To unify the actual scope with the domain of discourse, the transformation formula is:
[0009]
[0010] In the formula: x is the actual input precise quantity, ranging from [a,b], and y is the continuous quantity in the universe of discourse, ranging from [-3,3].
[0011] 2) Perform fuzzy inference based on fuzzy rules
[0012] Triangular membership functions are used to describe fuzzy sets, and e and are calculated respectively. Membership degree of fuzzy variables;
[0013] Based on the principles of PI control, K is formulated. p K i In different e, The control rule table below;
[0014] Take the smaller value of the membership degree of the input variable in the control rule table as the membership degree of the output variable, and obtain K respectively. p K i Membership degree u of each fuzzy variable kp (B i ), u ki (B i );
[0015] 3) Deblurring yields K p K i value
[0016] The centroid method is used for defuzzification, and K is determined by the following formula. p K i value:
[0017]
[0018]
[0019] Preferably, using the obtained K p K i Inject I respectively a1 =A1·sgn[sin(2πf1t)]、I a2 The current closed-loop control is performed using a square wave current command of A2·sgn[sin(2πf1t)]; where A1 and A2 are different configurable current values, and f1 is 0.01 to 0.05 times the switching frequency.
[0020] Preferably, the flat-top armature current of the injected square wave is collected twice, and the steady-state flat-top armature current is obtained after mean filtering. Based on the bus voltage U s With PWM duty cycle δ d The effective armature voltage under the corresponding steady-state current is calculated. As shown in the formula below:
[0021]
[0022]
[0023]
[0024]
[0025] Preferably, the armature resistance R of the motor is determined by the differential method. a As shown in the formula below:
[0026]
[0027] Preferably, using the obtained K p K i , to perform I a =A0·sin(2π·f0·t) Current command is used for current closed-loop control, where f0 is 0.01 to 0.03 times the switching frequency;
[0028] Based on the collected armature current i a and the calculated effective armature voltage u a Combined with the identified resistance value R a The inductance parameter L is determined using the recursive least squares method with a forgetting factor, according to the following formula. a :
[0029]
[0030] in, The inductance value calculated for the current interrupt cycle. The inductance value calculated in the previous interrupt cycle. The gain coefficient is calculated for the current period.
[0031] Preferably, using the obtained K p K i , to perform I a =A0 current command for closed-loop current control; after torque balance, speed stabilizes; under steady state, based on the collected armature current i a and the calculated effective armature voltage u a Rotational speed n, combined with the identified resistance value Ra The back potential constant K is determined using the recursive least squares method with a forgetting factor, according to the following formula. e :
[0032]
[0033] in, The value of the back EMF constant is calculated for the current interruption cycle. The value of the back EMF constant calculated in the previous interruption cycle. The gain coefficient is calculated for the current period.
[0034] Preferably, the amplitudes A0, A1, and A2 of the current signals can be set manually and are less than the rated current of the brushed DC motor.
[0035] A method for parameter identification of a brushed DC motor based on fuzzy adaptive control specifically includes the following steps:
[0036] Step 1: Establish a mathematical model for the armature voltage of a brushed DC motor:
[0037]
[0038] Step 2: Establish a two-dimensional fuzzy adaptive PI controller, input I a The armature current command, =A0·sin(2π·f0·t), is used for PI tuning of the current loop. The armature current error e and the rate of change of error are taken. As two inputs to the controller, fuzzification, fuzzy rule establishment, fuzzy inference, and defuzzification are performed sequentially to obtain the current loop K. p K i .
[0039] Step 3: Fix the current loop parameters and input I respectively. a1 =A1·sgn[sin(2πf1t)]、I a2 The current closed-loop control is performed using a square wave current command of A2·sgn[sin(2πf1t)]. Here, A1 and A2 are different configurable current amplitudes, and f1 is a medium-to-high frequency current, typically 0.01 to 0.05 times the switching frequency.
[0040] Step 4: Acquire the flat-top armature current of the injected square wave twice, and obtain the steady-state flat-top armature current after mean filtering. Based on the bus voltage U s With PWM duty cycle δ d The effective armature voltage under the corresponding steady-state current is calculated. As shown in the formula below:
[0041]
[0042]
[0043]
[0044]
[0045] The differential method can effectively reduce the effects of inverter nonlinearity and current noise, and the motor armature resistance R can be calculated. a As shown in the formula below:
[0046]
[0047] Step 5: Establish the least squares mathematical model with forgetting factor as follows:
[0048]
[0049] in, Let K(k) be the observable input matrix, θ(k) be the matrix of parameters to be identified, where K(k) and P(k) are the gain matrices of the recursive formula, and λ is the forgetting factor with a value range of (0, 1).
[0050] Step Six: Given I a =A0·sin(2πvf0·t) current command, where f0 is a medium-to-high frequency signal, typically 0.01 to 0.03 times the switching frequency. With the motor stationary, the armature voltage equation can be simplified to:
[0051]
[0052] Based on the collected armature current i a and the calculated effective armature voltage u a Combined with the identified resistance value R a The inductance L is calculated using the recursive least squares method with a forgetting factor. a The formula is as follows:
[0053]
[0054] in, The inductance value calculated for the current interrupt cycle. The inductance value calculated in the previous interrupt cycle. The gain coefficient is calculated for the current period.
[0055] Step 7: Perform I a =A0 current command is used for closed-loop current control. After torque balance, the speed stabilizes. Under steady state, the armature current i is collected. a and the calculated effective armature voltage u aRotational speed n, combined with the identified resistance value R a The back potential constant K is determined using the recursive least squares method with a forgetting factor, according to the following formula. e :
[0056]
[0057] in, The value of the back EMF constant is calculated for the current interruption cycle. The value of the back EMF constant calculated in the previous interruption cycle. The gain coefficient is calculated for the current period.
[0058] The technical solution of this invention is: a brushed DC motor parameter identification method based on fuzzy adaptive control. By providing a high-frequency sinusoidal armature current command to the brushed DC motor, and through fuzzy adaptive PI control, the current loop parameters Kp and Ki are obtained, which are then used for closed-loop control of motor parameter identification. Two high-frequency square wave armature current commands with different amplitudes are given, and the method is based on the collected steady-state flat-top armature current... and the corresponding effective armature voltage under steady-state current The identification resistor R is obtained using the differential method. a Given a sinusoidal armature current command, based on the acquired armature current i a and the calculated effective armature voltage u a and identification resistor R a The identification inductor is obtained using the least squares method with a forgetting factor. Given a step armature current command, the identification inductor is determined based on the armature current i. a Armature voltage u a Motor speed n, identification resistor R a The back potential constant K is obtained using the least squares method with a forgetting factor. e .
[0059] Compared with the prior art, the beneficial effects of the present invention are as follows:
[0060] (1) The present invention adopts a brushed DC motor parameter identification method based on fuzzy adaptive PI control. The identification process is simple, reliable and universal.
[0061] (2) This invention is a closed-loop offline parameter identification, with controllable current and high safety. Except for identifying the back EMF constant, the motor will not rotate, making it suitable for different occasions.
[0062] (3) The present invention can perform adaptive PI tuning and parameter identification in an extremely wide current range (10% to 100% of rated current), the identification intensity is adjustable, and the identification results are consistent. Attached Figure Description
[0063] Figure 1 This is a parameter identification structure block diagram;
[0064] Figure 2 This is a vector control block diagram of a fuzzy adaptive PI controller;
[0065] Figure 3 It is a triangular membership function that describes a fuzzy set;
[0066] Figure 4 It is the fuzzy control current loop Kp control rule table;
[0067] Figure 5 It is the Ki control rule table for fuzzy control current loop;
[0068] Figure 6 This is the control flowchart of a fuzzy adaptive PI controller;
[0069] Figure 7 This is a block diagram of the resistor identification control.
[0070] Figure 8 This is an example of resistance identification: square wave armature current;
[0071] Figure 9 This is the block diagram for inductor identification and control;
[0072] Figure 10 This is an example of inductance identification: sinusoidal armature current;
[0073] Figure 11 This is the block diagram for controlling the back electromotive force constant. Detailed Implementation
[0074] The technical solution of the present invention will now be described in detail with reference to the accompanying drawings.
[0075] A method for parameter identification of a brushed DC motor based on fuzzy adaptive control, the structure of which is as follows: Figure 1 As shown, the specific steps include:
[0076] (1) Establish a mathematical model of the armature voltage of a brushed DC motor:
[0077]
[0078] In the above formula: u a Let ε be the armature voltage, ε be the armature back electromotive force, and i be the armature voltage. a L is the armature current. a R is the armature inductance. a C is the armature resistance. e Let Φ be the electromotive force constant of the DC motor, Φ be the magnetic flux per pole, n be the rotational speed, and K be the electric potential constant. e is the back potential constant.
[0079] (2) Establish a fuzzy adaptive PI controller for brushed DC motors, such as Figure 2 As shown, the armature current error e and the rate of change of error are taken. The two inputs to the controller are fuzzified. Define e, and K p K i The fuzzy sets of linguistic values are as follows: e. K p K i ={NB, NM, NS, ZO, PS, PM, PB}, denoted by B0 to B6, with corresponding universes of discourse values of {-3, -2, -1, 0, 1, 2, 3}. Let the variables e, To unify the actual scope with the domain of discourse, the transformation formula is:
[0080]
[0081] In the above formula: x is the actual input precise quantity, with a range of [a,b], and y is a continuous quantity in the universe of discourse, with a range of [-3,3].
[0082] (3) Use membership functions to characterize fuzzy sets, such as triangular membership functions, for example... Figure 3 As shown, the degree of correlation between the input quantity and the elements in the fuzzy set is called the membership degree. Calculate e and... Membership degree of fuzzy variables.
[0083] (4) Based on the control law of the PI controller, formulate K... p K i In different e, The control rule table below, such as Figure 4 and Figure 5 As shown.
[0084] (5) Each element in the control rule table corresponds to e and For a fuzzy variable with two membership degrees, the smaller value of the membership degree of the input variable in the rule table is taken as the membership degree of the output variable, thus obtaining K. p K i Membership degree u of each fuzzy variable kp (B i ), u ki (B i ).
[0085] (6) Convert the fuzzy variable values into actual output values and use the centroid method for defuzzification. K is obtained using the following formula. p K i :
[0086]
[0087]
[0088] (7) Input I a =A0·sin(2π·f0·t) current command, perform current loop PI tuning, fuzzy adaptive PI tuning control flowchart as follows Figure 6 As shown in the figure. Here, A0 is a current value that can be set manually.
[0089] (8) Identify the resistance parameters of the brushed DC motor. Due to the control characteristics of the brushed DC motor, the motor will rotate when a voltage in the same direction is applied. At the same time, when identifying the resistance, it is necessary to avoid the inductive voltage drop caused by current changes. Using square wave current control, the armature current changes positive and negative at a higher frequency, and the motor will not rotate. At the flat top of the square wave, the current hardly changes, which can avoid the influence of inductance.
[0090] (9) Enter I respectively a1 =A1·sgn[sin(2πf1t)]、I a2 =A2·sgn[sin(2πf1t)] square wave current command is used for current closed-loop control, such as Figure 7 As shown in the figure. Among them, A1 and A2 are different current amplitudes that can be set manually, and f1 is a medium to high frequency, which is generally 0.01 to 0.05 times the switching frequency. Taking a 10000Hz switching frequency as an example, it is usually 200-300Hz in actual use. Figure 8 To identify an example of resistance, a feedback current is injected using two square waves.
[0091] (10) The flat-top armature current of the injected square wave was collected twice and then filtered by mean to obtain the steady-state flat-top armature current. Based on the bus voltage U s With PWM duty cycle δ d The effective armature voltage under the corresponding steady-state current is calculated. As shown in the formula below:
[0092]
[0093]
[0094]
[0095]
[0096] Where, δ d1 δ d2 The duty cycle of the square wave current injection at the flat top is obtained, and Z0 is the number of data collected by mean filtering.
[0097] (11) Differential processing of the armature voltage and armature current obtained from two square wave injections can effectively reduce the adverse effects of inverter nonlinearity and current noise. The identification resistance value R is calculated. a As shown in the formula below:
[0098]
[0099] (12) Since the controller is a discrete system, it is impossible to sample all feedback current values. Furthermore, due to noise and other interference, the sampled values will fluctuate and contain errors. The least squares method can be used to easily obtain the unknown data, minimizing the sum of squared errors between the obtained data and the actual values. Based on fuzzy adaptive PI control, the least squares method can be combined to calculate the inductor L... a Back potential constant K e Identification.
[0100] (13) Establish a least squares method with a forgetting factor. The forgetting factor can speed up the convergence of the calculation. The mathematical model is shown in the following formula:
[0101]
[0102] in, Let K(k) be the observable input matrix, θ(k) be the matrix of parameters to be identified, where K(k) and P(k) are the gain matrices of the recursive formula, and λ is the forgetting factor with a value range of (0, 1).
[0103] (14) Identify the inductance parameters of the brushed DC motor, and the control process is as follows: Figure 9 As shown. Given I a =A0·sin(2π·f0·t) current command, where f0 is a medium-to-high frequency signal, typically 0.01 to 0.03 times the switching frequency. Taking a 10000Hz switching frequency as an example, in actual use it is usually 200-300Hz. The motor is stationary, and K is obtained using fuzzy adaptive PI control. p K i Closed-loop control of the current loop is then performed. The armature voltage equation can be simplified to:
[0104]
[0105] (15) Based on the collected armature current i a and the calculated effective armature voltage u a Combined with the identified resistance value R a The inductance is obtained by repeatedly calculating the weighted convergence of the recursive least squares method with a forgetting factor.
[0106] L a The formula is as follows:
[0107]
[0108] in, The inductance value calculated for the current interrupt cycle. The inductance value calculated in the previous interrupt cycle. The gain coefficient is calculated for the current period. Figure 10 An example of inductor identification.
[0109] (16) Identify the back EMF constant parameter of the brushed DC motor, and the control process is as follows: Figure 11 As shown. Given I a =A0 current command, K obtained using fuzzy adaptive PI control p K i ,conduct
[0110] Current loop closed-loop control. The armature current is a fixed value. The motor will start rotating, and after torque balance, the speed will stabilize. The speed is related to the given current value A0, which can be manually set. The armature voltage equation can be simplified to:
[0111]
[0112] (17) Under steady state, based on the collected armature current i a and the calculated effective armature voltage u a Rotational speed n, combined with the identified resistance value R a The back potential constant K is determined using the recursive least squares method with a forgetting factor, according to the following formula. e :
[0113]
[0114] in, The value of the back EMF constant is calculated for the current interruption cycle. The value of the back EMF constant calculated in the previous interruption cycle. The gain coefficient is calculated for the current period.
Claims
1. A method for parameter identification of a brushed DC motor based on fuzzy adaptive control, characterized in that, include: Based on fuzzy adaptive PI control, a current command with frequency value f0 and amplitude value A0 is input, and the current loop PI tuning is performed to obtain the current loop K. p K i ; The fuzzy adaptive PI control employs a two-dimensional fuzzy controller, and the specific steps include the following: 1) Blurring process Take the armature current error e and the rate of change of error. As two inputs to the controller, e, and K p K i The fuzzy set of linguistic values is defined as follows: Let B0~B6 represent the values of the universe of discourse: {-3, -2, -1, 0, 1, 2, 3}; let the variables e, To unify the actual scope with the domain of discourse, the transformation formula is: In the formula: x is the actual input precise quantity, ranging from [a,b], and y is the continuous quantity in the universe of discourse, ranging from [-3,3]. 2) Perform fuzzy inference based on fuzzy rules Triangular membership functions are used to describe fuzzy sets, and e and are calculated respectively. Membership degree of fuzzy variables; Based on the principles of PI control, K is formulated. p K i In different e, The control rule table is as follows; the smaller value of the membership degree of the input variable in the control rule table is taken as the membership degree of the output variable, and K is obtained respectively. p K i Membership degree u of each fuzzy variable kp (B i ), u ki (B i ); 3) Deblurring yields K p K i value The centroid method is used for defuzzification, and K is determined by the following formula. p K i value: Using the obtained K p K i Inject I respectively a1 =A1·sgn[sin(2πf1t)]、I a2 The current closed-loop control is performed using a square wave current command of A2·sgn[sin(2πf1t)]; where A1 and A2 are different configurable current values. The flat-top armature current was collected twice by injecting square waves, and the steady-state flat-top armature current was obtained after mean filtering. Based on the bus voltage U s With PWM duty cycle δ d The effective armature voltage under the corresponding steady-state current is calculated. As shown in the formula below: Determining the armature resistance R of the motor using the differential method a As shown in the formula below: Using the obtained K p K i , to perform I a =A0·sin(2π·f0·t) current command for current closed-loop control; Based on the collected armature current i a and the calculated effective armature voltage u a Combined with the identified resistance value R of the motor armature resistor a Using the recursive least squares method with a forgetting factor, the inductance parameter L is determined by the following formula. a : in, The inductance value calculated for the current interrupt cycle. The inductance value calculated in the previous interrupt cycle. The gain coefficient calculated for the current cycle; Using the obtained K p K i , to perform I a =A0 current command for closed-loop current control; after torque balance, speed stabilizes; under steady state, based on the collected armature current i a and the calculated effective armature voltage u a The rotational speed n, combined with the identified resistance value R of the motor armature resistor. a The back potential constant K is determined using the recursive least squares method with a forgetting factor, through the following formula. e : in, The value of the back EMF constant is calculated for the current interruption cycle. The value of the back EMF constant calculated in the previous interruption cycle. The gain coefficient is calculated for the current period.
2. The brushed DC motor parameter identification method based on fuzzy adaptive control according to claim 1, characterized in that, The amplitudes of the current signals A0, A1, and A2 are less than the rated current of the brushed DC motor.
3. The brushed DC motor parameter identification method based on fuzzy adaptive control according to claim 1, characterized in that, The least squares mathematical model with a forgetting factor is established as follows: in, Let K(k) be the observable input matrix, θ(k) be the matrix of parameters to be identified, where K(k) and P(k) are the gain matrices of the recursive formula, and λ is the forgetting factor with a value range of (0, 1).
4. The brushed DC motor parameter identification method based on fuzzy adaptive control according to claim 1, characterized in that, Specifically, the following steps are included: Step 1: Establish a mathematical model for the armature voltage of a brushed DC motor: Step 2: Establish a two-dimensional fuzzy adaptive PI controller, input I a The armature current command = A0·sin(2π·f0·t) is used to perform current loop PI tuning; Take the armature current error e and the rate of change of error. As two inputs to the controller, fuzzification, fuzzy rule establishment, fuzzy inference, and defuzzification are performed sequentially to obtain the current loop K. p K i ; Step 3: Fix the current loop parameters and input I respectively. a1 =A1·sgn[sin(2πf1t)]、I a2 The current closed-loop control is performed using a square wave current command of A2·sgn[sin(2πf1t)]; where A1 and A2 are different configurable current amplitudes. Step 4: Acquire the flat-top armature current of the injected square wave twice, and obtain the steady-state flat-top armature current after mean filtering. Based on the bus voltage U s With PWM duty cycle δ d The effective armature voltage under the corresponding steady-state current is calculated. As shown in the formula below: The armature resistance R of the motor is calculated using the finite difference method. a As shown in the formula below: Step 5: Establish the least squares mathematical model with forgetting factor as follows: in, Let K(k) be the observable input matrix, θ(k) be the matrix of parameters to be identified, where K(k) and P(k) are the gain matrices of the recursive formula, and λ is the forgetting factor with a value range of (0, 1). Step Six: Given I a =A0·sin(2π·f0·t) current command, the motor is stationary, the armature voltage equation can be simplified to: Based on the collected armature current i a and the calculated effective armature voltage u a Combined with the identified resistance value R a The inductance L is calculated using the recursive least squares method with a forgetting factor. a The formula is as follows: in, The inductance value calculated for the current interrupt cycle. The inductance value calculated in the previous interrupt cycle. The gain coefficient calculated for the current cycle; Step 7: For I a =A0 current command for current closed-loop control; after torque balance, speed stabilizes, and in steady state, based on the collected armature current i a and the calculated effective armature voltage u a Rotational speed n, combined with the identified resistance value R a The back potential constant K is determined using the recursive least squares method with a forgetting factor, according to the following formula. e : in, The value of the back EMF constant is calculated for the current interruption cycle. The value of the back EMF constant calculated in the previous interruption cycle. The gain coefficient is calculated for the current period.
Citation Information
Patent Citations
Speed and current double-closed-loop fuzzy control-based PMSM sensorless control method
CN113346810A
Robot joint motor parameter identification and control parameter self-tuning method
CN113852309A