A high-precision limited rotation angle brushless DC torque motor control method
By employing a three-loop control method, combined with differential feedforward and positional PID calculation, the problems of high difficulty and strong nonlinearity in motor control of gas turbines were solved, achieving high-precision and wide-bandwidth motor control.
Patent Information
- Application Number
- CN202211518038.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-11-30
- Publication Date
- 2025-11-07
- Estimated Expiration
- 2042-11-30
AI Technical Summary
In existing gas turbines, hydraulic servo systems are complex in structure, heavy in mass, and inefficient. Traditional motors are large in size and mass, making them difficult to use as actuators. Furthermore, medium-power DC torque motors with limited rotation angles are difficult to control and exhibit strong nonlinearity.
A three-loop control method is adopted, with the outer loop being the position loop, the middle loop being the speed loop, and the inner loop being the current loop. It combines differential feedforward and position PID calculations, including inertial filtering, differential feedforward, position PID, and speed loop anti-integral saturation steps, to achieve high-precision control.
It achieves high steady-state control accuracy, wide dynamic control bandwidth, high motor control accuracy, fast dynamic response speed, and strong anti-pollution capability, which is superior to similar foreign products.
Smart Images

Figure CN115955150B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of motor control technology, in particular to a high-precision limited-angle brushless DC torque motor control method. BACKGROUND
[0002] For decades, most gas turbines have used hydraulic servo elements as actuators in the control system, because electro-hydraulic servo elements have the characteristics of small size and high power. However, the hydraulic servo system has a complex structure, high machining precision, large system mass, poor pollution resistance, and the traditional motor has large size, large mass and low efficiency, which is difficult to be used as an actuator for gas turbines. In recent years, with the continuous emergence of new technologies and new materials, the field of small and medium power motors has developed rapidly, and limited-angle DC torque motors are one of them.
[0003] The limited-angle brushless DC torque motor is a kind of servo motor that can directly drive the load to move quickly and position accurately within a certain angle range. The servo control system composed of this motor has the characteristics of simple structure, wide frequency band, high positioning accuracy and strong pollution resistance. At present, it has been widely used in heavy gas turbine fuel metering devices abroad, and the fuel metering device driven by this type of motor has the characteristics of high control accuracy, fast response speed and strong pollution resistance. However, the current medium power level motor has strong nonlinearity and difficult control. SUMMARY
[0004] The purpose of the present application is to provide a high-precision limited-angle brushless DC torque motor control method that can achieve stable control accuracy and sufficient stability margin, while taking into account the high dynamic control bandwidth.
[0005] The technical scheme of the present application is a high-precision limited-angle brushless DC torque motor control method, which adopts three-loop control, the outer loop is a position loop, the middle loop is a speed loop, and the inner loop is a current loop; characterized in that: the position loop has a differential feedforward, the position loop performs a position PID calculation to obtain an angular velocity given value, the angular velocity loop performs a position PI calculation to obtain a current given value, and the current loop performs a position PI calculation to obtain a motor control voltage; the speed loop and the current loop include position anti-integral saturation calculation, and specifically includes the following steps:
[0006] Step 1: angular position preprocessing, performing inertia filtering on the angular position given value to obtain a filtered angular position given value;
[0007] Step 2: differential feedforward calculation, differentiating the filtered angular position given value to obtain the change rate of the filtered angular position given value, and multiplying the feedforward control coefficient K to obtain the feedforward amount of the speed given value;
[0008] Step 3: Calculate the angular position closed-loop PID, filter the given value and subtract the current angular position feedback to get the position deviation value, and then calculate the closed-loop control proportional term, integral term and differential term by the position formula PID algorithm to get the angular velocity given value, and limit the maximum and minimum amplitude of the angular velocity given value, wherein the differential term adopts an incomplete differential structure, and when it is not a main control channel, the integral value is cleared to 0;
[0009] Step 4: Calculate the angular velocity loop proportional term and limit the amplitude, use the angular velocity given value to subtract the angular velocity feedback value to get the speed deviation, and limit the amplitude of the speed deviation, and then multiply the amplitude of the speed deviation by the proportional coefficient to get the speed loop proportional term, and limit the amplitude of the proportional term;
[0010] Step 5: Calculate the angular velocity loop integral term, the speed loop has a position formula anti-integral saturation processing, the speed loop integral value is equal to the current period speed loop output current given value minus the current period speed loop proportional term, and the speed loop integral term is equal to the integral value plus the speed deviation multiplied by the integral coefficient;
[0011] Step 6: Calculate the angular velocity loop output current given value, the speed loop output current given value is equal to the speed loop proportional term plus the integral term, and limit the maximum current and minimum current of the output current;
[0012] Step 7: Calculate the current loop proportional term and limit the amplitude, use the speed loop output current given value to subtract the current collected current value to get the current deviation, use the current deviation to multiply the current loop proportional coefficient to get the current loop proportional term, and limit the amplitude, the maximum does not exceed the maximum voltage, and the minimum does not lower than the minimum voltage value;
[0013] Step 8: Calculate the current loop integral term, the current loop integral value is equal to the current period output voltage value minus the current period proportional term, and the integral value plus the current deviation and the current loop integral coefficient get the current loop integral term;
[0014] Step 9: Calculate the current loop output and limit the amplitude, the current loop proportional term plus the current loop integral term gets the motor control voltage, and limits the amplitude of the voltage, the maximum does not exceed the maximum voltage value, and the minimum does not lower than the minimum voltage value.
[0015] Beneficial effects: compared with the prior art, the application has the following remarkable advantages: 1. The current loop in motor control can not only reduce the interference of induced counter electromotive force on current in a dynamic process, maintain constant motor current and provide constant torque, but also prevent current overcurrent and protect the motor; 2. The speed loop provides a certain phase advance and reduces position overshoot in a dynamic adjustment process; 3. The speed feedforward is added on the basis of the position loop, so that the dynamic response speed of the position loop is improved without affecting the stability margin of the position loop; 4. The position type anti-integral saturation structure in each loop circuit can prevent integral saturation and the integral coefficient adjustment range is wider; 5. The domestic motor controlled by the control structure has high control precision and wide dynamic response frequency band. BRIEF DESCRIPTION OF DRAWINGS
[0016] Figure 1 The control principle diagram of the application is shown in the figure;
[0017] Figure 2 The step response data of the motor product controlled by the control structure of the application is shown in the figure;
[0018] Figure 3 The step response data of the foreign similar product is shown in the figure;
[0019] Figure 4 The frequency index comparison diagram of the product controlled by the control structure of the application and the foreign similar product is shown in the figure. DETAILED DESCRIPTION
[0020] The technical scheme of the application is further described below with reference to the drawings.
[0021] As shown in the figure, a high-precision limited rotation angle brushless DC torque motor control method adopts three-loop control, the outer loop is a position loop, the middle loop is a speed loop and the inner loop is a current loop. The specific control method is as follows: Figure 1 1. Position loop:
[0022] (1) The position given is filtered: the weighting coefficient a1 is equal to the control period divided by the sum of the control period and the filtering time constant, the weighting coefficient a2 is equal to the filtering time constant divided by the sum of the control period and the filtering time constant, and the processed angular position given value DemFilter is equal to the product of the current cycle input angular velocity multiplied by a1 and the last cycle DemFilter multiplied by a2, and the specific calculation formula is:
[0023] DemFilter = Dem * Ts / (T + Ts) + DemPre * T / (T + Ts)
[0024]
[0025] In the formula, T represents a filter time constant, Ts represents a control period, DemPre is Dem of the last period, and DemFilterPre is DemFilter of the last period.
[0026] A difference between the filtered position given value DemFilter and DemFilter of the last period is divided by the control period and multiplied by a correction coefficient K to obtain a speed feedforward value DemFeed:
[0027] DemFeed = K * (DemFilter - DemFilterPre) / Ts
[0028] In the formula, Ts represents a control period, and DemFilterPre is DemFilter of the last period.
[0029] (2) A position deviation LGtErr is obtained by subtracting a position acquisition feedback LGt from a given value DemFilter:
[0030] LGtEr = DemFilter - LGt
[0031] In the formula, LGt is a position acquisition feedback value.
[0032] (3) up_LGt = LGtErr * KpLGt is calculated by a proportional controller, wherein KpLGt is a proportional coefficient.
[0033] (4) ui_LGt = LGtErr * KiLGt is calculated by an integral controller, wherein KiLGt is an integrator coefficient.
[0034] (5) Temp1 = (LGtErr - LGtErrPre) * Kd,
[0035] Temp2 = Temp1 + ud_LGtPre * Td,
[0036] ud_LGt = Temp2 / (Td + Ts) is calculated by a differential controller,
[0037] In the formula, LGtErrPre is a position deviation of the last period, ud_LGtPre is an output value of a differential term of the last period, Kd is a differentiator coefficient, Td is an incomplete differential time constant, and Ts is a discrete period of a digital controller.
[0038] (6) A final position loop output is DotDem = up_LGt + ui_LGt + ud_LGt + DemFeed.
[0039] 2. Speed loop:
[0040] (1) The velocity given DotDem calculated according to the position loop is subtracted from the velocity feedback Dot to obtain the deviation ErrDot;
[0041] (2) up_Dot = ErrDot*KpDot is calculated by the proportional controller, where KpDot is the proportional controller coefficient, and up_Dot is limited, the maximum being no more than the maximum current Imax and the minimum being no less than the minimum current Imin. If up_Dot exceeds the maximum current Imax, the proportional controller outputs up_Dot = Imax. If up_Dot is lower than the minimum current Imin, the proportional controller outputs up_Dot = Imin. Otherwise, up_Dot is equal to the calculated value;
[0042] (3) The integrator upper cycle value ui_DotPre = IDemPre-up_DotPre is calculated,
[0043] where IDemPre represents the upper cycle velocity loop output value and up_DotPre represents the upper cycle proportional term output value;
[0044] (4) ui_Dot = ui_DotPre + ErrDot*KiDot is calculated by the integral controller, where KiDot is the integrator coefficient;
[0045] (5) The velocity loop output current given Idem = up_Dot + ui_Dot, and IDem is limited, the maximum being no more than Imax and the minimum being no less than Imin. If IDem exceeds Imax, the velocity loop outputs IDem = Imax. If IDem is lower than Imin, the velocity loop outputs IDem = Imin. Otherwise, the velocity loop outputs IDem equal to the calculated value.
[0046] 3. Current loop:
[0047] (1) The current deviation IErr is calculated from IDem and the current feedback;
[0048] (2) The limited proportional term upbefLmt = IErr*Kp is obtained after the proportional controller, where Kp is the proportional controller coefficient. If upbefLmt exceeds the maximum duty cycle limit UMax, the proportional controller outputs up equal to UMax. If upfefLmt is lower than the minimum duty cycle limit UMin, the proportional controller outputs up equal to UMin. Otherwise, up is equal to upbefLmt;
[0049] (3) The integral value uiPre = PwmPre-upPre is calculated, where PwmPre represents the actual output of the upper cycle and upPre represents the proportional term output of the upper cycle;
[0050] (4) The output ui is calculated by the integral controller as uiPre + IErr * Ki, where Ki is the integrator coefficient;
[0051] (5) Calculate the output PwmBefLmt = up + ui before the current loop is limited. If PwmBefLmt >= UMax, then the current loop output duty cycle Pwm equals UMax. If PwmBefLmt <= UMin, then the current loop output duty cycle Pwm equals UMin. Otherwise, Pwm equals PwmBefLmt.
[0052] like Figures 2-4 As shown, Figure 2 These are the step response data of motor products using the control structure of this invention. Figure 3 This is step response data from similar foreign products. Figure 4 This is a comparison chart of the frequency domain results of products using the control structure of this invention and similar foreign products. The comparison shows that the domestically produced motor position control using the control structure of this invention achieves error-free control, comparable to the control accuracy of similar foreign motors. Furthermore, the product using the control algorithm of this invention achieves a dynamic response bandwidth of 8.9Hz. Figure 4 As shown in the curve, the domestically produced component has a bandwidth superior to similar foreign products with a 7Hz bandwidth. Figure 4 The sample curve is shown.
Claims
1. A high-precision limited rotation brushless DC torque motor control method, adopting three-loop control, the outer loop being a position loop, the middle loop being a speed loop, and the inner loop being a current loop; characterized in that: The position loop with differential feedforward carries out position PID calculation to obtain angular velocity given value, the angular velocity loop carries out position PI calculation to obtain current given value, the current loop carries out position PI calculation to obtain motor control voltage, the speed loop and the current loop include position anti-integral saturation calculation, the control method specifically includes the following steps: Step 1: angle position preprocessing; Step 2: calculating differential feedforward; Step 3: calculating angular position closed loop output; Step 4: calculating angular velocity loop proportional term and carrying out amplitude limiting; Step 5: calculating angular velocity loop integral term; Step 6: calculating angular velocity loop output current given value; Step 7: calculating current loop proportional term and carrying out amplitude limiting; Step 8: calculating current loop integral term; Step 9: calculating current loop output and carrying out amplitude limiting; The step 1 includes: Filtering processing is carried out on the angular position given value: the weighted coefficient a1 is equal to the control period divided by the sum of the control period and the filtering time constant, the weighted coefficient a2 is equal to the filtering time constant divided by the sum of the control period and the filtering time constant, the processed angular position given value DemFilter is equal to the product of the current cycle input angular velocity multiplied by a1 and the last cycle DemFilter multiplied by a2, and the specific calculation formula is: DemFilter=Dem*Ts / (T+Ts)+DemPre*T / (T+Ts) In the formula, T represents the filtering time constant, Ts represents the control period, DemPre is the last cycle Dem, and DemFilterPre is the last cycle DemFilter.
2. The high-precision limited rotation angle brushless DC torque motor control method according to claim 1, characterized in that, The step 2 includes: First-order backward difference is carried out on the preprocessed position given value DemFilter and multiplied by a correction coefficient K to obtain a speed feedforward value DemFeed, and the specific calculation formula is: DemFeed=K*(DemFilter-DemFilterPre) / Ts In the formula, Ts represents the control period, and DemFilterPre is the last cycle DemFilter. The step 3 includes: (1) calculating position deviation LGtErr: LGtEr=DemFilter-LGt In the formula, LGt is a position acquisition feedback value; (2) calculating position loop proportional term: up_LGt=LGtErr*KpLGt is calculated by a proportional controller, wherein KpLGt is a proportional coefficient; (3) calculating position loop integral term: ui_LGt=LGtErr*KiLGt is calculated by an integral controller, wherein KiLGt is an integral coefficient, and if the current channel is not the master control, the integral term ui_LGt is cleared to 0; (4) calculating position loop differential term: Temp1=(LGtErr-LGtErrPre)*Kd, Temp2=Temp1+ud_LGtPre*Td, ud_LGt=Temp2 / (Td+Ts) is calculated by a differential controller, In the formula, LGtErrPre is the last cycle position deviation, ud_LGtPre is the last cycle differential term output value, Kd is a differential coefficient, Td is an incomplete differential time constant, and Ts is a digital controller discrete period; (5) Calculate the position loop output DotDem: DotDem = up_LGt + ui_LGt + ud_LGt + DemFeed.
3. The high-precision limited rotation angle brushless DC torque motor control method according to claim 2, characterized in that, The step 4 includes: (1) Calculate the angular velocity deviation ErrDot: ErDot = DotDem - Dot, wherein, DotDem is the velocity given value of the position loop output, and Dot is the collected velocity feedback value; (2) Obtain up_Dot = ErrDot*KpDot by the proportional controller, wherein KpDot is the proportional coefficient; (3) Limit up_Dot, if up_Dot exceeds the maximum current Imax, then the proportional controller outputs up_Dot = Imax, if up_Dot is lower than the minimum current Imin, then the proportional controller outputs up_Dot = Imin, otherwise up_Dot is equal to the calculated value.
4. The high-precision limited rotation angle brushless DC torque motor control method according to claim 3, characterized in that, The step 5 specifically includes: (1) Calculate the integrator upper cycle value ui_DotPre: ui_DotPre = IDemPre - up_DotPre, wherein, IDemPre represents the upper cycle velocity loop output value, and up_DotPre represents the upper cycle proportional term output value; (2) Obtain ui_Dot = ui_DotPre + ErrDot*KiDot by the integral controller, wherein KiDot is the integrator coefficient.
5. The high-precision limited rotation angle brushless DC torque motor control method according to claim 4, characterized in that, The step 6 includes: (1) Calculate the velocity loop output current given IDem: IDem = up_Dot + ui_Dot; (2) Limit the current of IDem, if IDem exceeds Imax, then the velocity loop outputs IDem = Imax, if IDem is lower than Imin, then the velocity loop outputs IDem = Imin, otherwise the velocity loop outputs IDem is equal to the calculated value.
6. The high-precision limited rotation angle brushless DC torque motor control method according to claim 5, characterized in that, The step 7 includes: (1) Obtain the current deviation IErr from IDem and the current feedback value; (2) Obtain the limited proportional term upbefLmt = IErr*Kp by the proportional controller, wherein Kp is the proportional coefficient; (3) If upbefLmt exceeds the maximum duty cycle limit UMax, then the proportional controller outputs up = UMax, if upfefLmt is lower than the minimum duty cycle limit UMin, then the proportional controller outputs up = UMin, otherwise up = upbefLmT.
7. The high-precision limited rotation angle brushless DC torque motor control method according to claim 6, characterized in that, The step 8 includes: (1) Calculate the pre-integration value uiPre: uiPre = PwmPre - upPre, wherein, PwmPre represents the actual output of the upper cycle, and upPre represents the proportional term output of the upper cycle; (2) Obtain ui = uiPre + IErr*Ki by the integral controller, wherein Ki is the integrator coefficient.
8. The high-precision limited rotation angle brushless DC torque motor control method according to claim 7, characterized in that, The step 9 includes: (1) Calculate the current loop limited output PwmBefLmt = up + ui; (2) If PwmBefLmt >= UMax, then the current loop outputs the duty cycle Pwm = UMax, if PwmBefLmt <= UMin, then the current loop outputs the duty cycle Pwm = UMin, otherwise Pwm = PwmBefLmt.
Citation Information
Patent Citations
High-precision grating positioning device directly driven by a limited angle motor
CN106352980A
Thin type large-reduction-ratio micro-miniature electric steering engine system
CN113212736A