Motor speed fluctuation compensation method

By performing speed filtering operations and torque compensation in electric vehicle motors, the problem of difficulty in suppressing motor speed fluctuations in the prior art is solved, and effective compensation for speed fluctuations and improved stability of motor output are achieved.

CN117254730BActive Publication Date: 2025-03-25DONGFENG COMML VEHICLE CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202311269454.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-09-28
Publication Date
2025-03-25
Estimated Expiration
2043-09-28

AI Technical Summary

Technical Problem

When the prior art suppresses fluctuations in the speed of electric vehicle motors, it is difficult to establish an accurate system model, and the suppression effect is not obvious.

Method used

By performing speed filtering operations, high-frequency interference signals are obtained and torque is compensated by using high-frequency signals to compensate for speed fluctuations.

Benefits of technology

Effectively retain the fluctuation component, realize compensation for motor speed fluctuations, reduce jitter, and improve the stability of motor output.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN117254730B_ABST
    Figure CN117254730B_ABST
Patent Text Reader

Abstract

The present invention relates to a motor speed fluctuation compensation method, comprising the following steps: performing speed filtering operation to obtain a high-frequency interference signal; adding a reserved array; the reserved array comprises a first reserved array and a second reserved array; performing shift processing on the first reserved array; assigning a value to the input of a high-pass filter; performing shift processing on the second reserved array; calculating the first reserved array and the second reserved array to obtain an updated second reserved array; assigning a value to the output of the high-pass filter; and compensating the torque using a high-frequency signal. The present invention retains the effect of the fluctuation component and realizes compensation for speed fluctuation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of new energy vehicles, and in particular to a method for compensating motor speed fluctuations. Background Art

[0002] When accelerating from the start, the sudden increase in the motor output torque will cause the electric vehicle transmission shaft system to impact, causing the vehicle to shake when starting. The traditional speed loop PID control cannot suppress this shaking. At present, many methods are designed based on the traditional PID speed loop. Fuzzy self-tuning PID controllers are used to suppress speed fluctuations.

[0003] Typical prior art includes the Chinese invention patent application with application number CN202110341678.6 and invention name “motor and speed fluctuation suppression method, device, storage medium and processor thereof”, which discloses the following technical features:

[0004] 1. Determine the fluctuation angle of the q-axis current compensation amount of the motor and the torque compensation amplitude of the q-axis current compensation amount of the motor, and determine the torque compensation angle of the motor; and obtain the observed value of the load torque of the motor observed by the state observer of the load torque of the motor and the observed value of the mechanical angular velocity of the motor, and obtain the observed value of the position estimation angle of the motor observed by the state observer; determine the q-axis current compensation amount of the motor according to the fluctuation angle, the torque compensation amplitude, the torque compensation angle, the observed value of the load torque, the observed value of the mechanical angular velocity, and the observed value of the position estimation angle; perform torque compensation on the motor according to the q-axis current compensation amount.

[0005] 2. Determine the fluctuation angle of the q-axis current compensation amount of the motor and the torque compensation amplitude of the q-axis current compensation amount of the motor, including: determining the initial value of the position estimation angle of the motor; performing sine and cosine processing and fluctuating speed iterative operation on the initial value of the position estimation angle of the motor to obtain the fluctuation angle of the load torque of the motor and the fluctuation speed amplitude of the load fundamental wave of the motor; and, based on the corresponding relationship between the set frequency and the compensation coefficient of the set compensation amount, determine the current compensation coefficient of the q-axis current compensation amount of the motor at the current frequency of the motor, and determine the product of the fluctuation speed amplitude of the load fundamental wave of the motor and the current compensation coefficient as the torque compensation amplitude of the motor.

[0006] 3. Determine the torque compensation angle of the motor, including: determining the current frequency of the motor; based on the correspondence between the set frequency and the set compensation angle, determine the set compensation angle corresponding to the set frequency that is the same as the current frequency in the correspondence as the current compensation angle corresponding to the current frequency, as the torque compensation angle of the motor at the current frequency.

[0007] 4. Obtain the observed value of the load torque of the motor observed by the state observer of the load torque of the motor and the observed value of the mechanical angular velocity of the motor, and obtain the observed value of the position estimation angle of the motor observed by the state observer, including: constructing a state observer of the load torque of the motor; configuring the desired poles of the state observer, and determining the state feedback matrix of the state observer according to the desired poles, so that the state observer can follow the state of the control system of the motor within a set time; obtaining the observed value of the load torque of the motor output by the state observer, and the observed value of the mechanical angular velocity of the motor, and obtaining the observed value of the position estimation angle of the motor output by the state observer.

[0008] 5. Construct a state observer for the load torque of the motor, including: initializing the state variables of the motor; the state variables include: the initial value of the motor's position estimation angle, the initial value of the motor's mechanical angular velocity and the initial value of the motor's load torque; using the initial value of the motor's electromagnetic torque as input and the initial value of the motor's mechanical angular velocity as output to construct a state observer for the motor's load torque.

[0009] 6. Configure the expected poles of the state observer and determine the state feedback matrix of the state observer based on the expected poles, including: determining the expected poles of the state observer based on the pole equation of the state observer; when the expected poles of the state observer are determined, determining the state feedback matrix of the state observer based on the characteristic equation of the state observer and the pole equation of the state observer.

[0010] 7. Determine the q-axis current compensation amount of the motor according to the fluctuation angle, torque compensation amplitude, torque compensation angle, observed value of the load torque, observed value of the mechanical angular velocity, and observed value of the position estimation angle, including: determining the sum of the fluctuation angle of the load torque and the observed value of the position estimation angle of the motor as the relative offset angle of the load torque of the motor, as the phase offset angle of the q-axis current compensation amount of the motor; and determining the q-axis current compensation amount of the motor according to the phase offset angle of the q-axis current compensation amount, torque compensation amplitude, torque compensation angle, load torque and mechanical angular velocity according to the following formula:

[0011]

[0012] Among them, iq_comp is the q-axis current compensation, i*q_Amp is the torque compensation amplitude, is the load torque, is the mechanical angular velocity, t is the current time during the motor operation, θ0 is the phase offset angle of the q-axis current compensation, and θr is the torque compensation angle.

[0013] 8. A determination unit configured to determine the fluctuation angle of the q-axis current compensation amount of the motor and the torque compensation amplitude of the q-axis current compensation amount of the motor, and determine the torque compensation angle of the motor; and the determination unit is also configured to obtain the observed value of the load torque of the motor observed by a state observer of the load torque of the motor and the observed value of the mechanical angular velocity of the motor, and obtain the observed value of the position estimation angle of the motor observed by the state observer; the determination unit is also configured to determine the q-axis current compensation amount of the motor based on the fluctuation angle, the torque compensation amplitude, the torque compensation angle, the observed value of the load torque, the observed value of the mechanical angular velocity, and the observed value of the position estimation angle; the control unit is configured to perform torque compensation on the motor based on the q-axis current compensation amount.

[0014] 9. A determination unit for determining a fluctuation angle of a q-axis current compensation amount of a motor and a torque compensation amplitude of the q-axis current compensation amount of the motor, including: determining an initial value of a position estimation angle of the motor; performing sine and cosine processing and fluctuating speed iterative operation on the initial value of the position estimation angle of the motor to obtain a fluctuation angle of the load torque of the motor and a fluctuation speed amplitude of a load fundamental wave of the motor; and, based on a corresponding relationship between a set frequency and a compensation coefficient of a set compensation amount, determining a current compensation coefficient of the q-axis current compensation amount of the motor at a current frequency of the motor, and determining the product of the fluctuation speed amplitude of the load fundamental wave of the motor and the current compensation coefficient as the torque compensation amplitude of the motor.

[0015] 10. A determination unit determines the torque compensation angle of the motor, including: determining the current frequency of the motor; based on the correspondence between the set frequency and the set compensation angle, determining the set compensation angle corresponding to the set frequency that is the same as the current frequency in the correspondence as the current compensation angle corresponding to the current frequency, as the torque compensation angle of the motor at the current frequency.

[0016] 11. A determination unit, which obtains the observed value of the load torque of the motor observed by the state observer of the load torque of the motor and the observed value of the mechanical angular velocity of the motor, and obtains the observed value of the position estimation angle of the motor observed by the state observer, including: constructing a state observer of the load torque of the motor; configuring the desired poles of the state observer, and determining the state feedback matrix of the state observer according to the desired poles, so that the state observer can follow the state of the control system of the motor within a set time; obtaining the observed value of the load torque of the motor output by the state observer, and the observed value of the mechanical angular velocity of the motor, and obtaining the observed value of the position estimation angle of the motor output by the state observer.

[0017] 12. A determination unit is provided to construct a state observer of the load torque of the motor, including: initializing the state variables of the motor; the state variables include: an initial value of the position estimation angle of the motor, an initial value of the mechanical angular velocity of the motor and an initial value of the load torque of the motor; a state observer of the load torque of the motor is constructed with the initial value of the electromagnetic torque of the motor as input and the initial value of the mechanical angular velocity of the motor as output.

[0018] 13. A determination unit is configured to configure the desired poles of the state observer, and a state feedback matrix of the state observer is determined according to the desired poles, including: determining the desired poles of the state observer according to the pole equation of the state observer; and determining the state feedback matrix of the state observer according to the characteristic equation of the state observer and the pole equation of the state observer when the desired poles of the state observer are determined.

[0019] 14. A determination unit, according to the fluctuation angle, the torque compensation amplitude, the torque compensation angle, the observed value of the load torque, the observed value of the mechanical angular velocity, and the observed value of the position estimation angle, determines the q-axis current compensation amount of the motor, including: determining the sum of the fluctuation angle of the load torque and the observed value of the position estimation angle of the motor as the relative offset angle of the load torque of the motor, as the phase offset angle of the q-axis current compensation amount of the motor; according to the phase offset angle of the q-axis current compensation amount, the torque compensation amplitude, the torque compensation angle, the load torque and the mechanical angular velocity, the q-axis current compensation amount of the motor is determined according to the following formula:

[0020]

[0021] Among them, iq_comp is the q-axis current compensation, i*q_Amp is the torque compensation amplitude, is the load torque, is the mechanical angular velocity, t is the current time during the motor operation, θ0 is the phase offset angle of the q-axis current compensation, and θr is the torque compensation angle.

[0022] The defects of the prior art are:

[0023] Since the existing technology uses fuzzy PID algorithm to suppress speed fluctuations, it is necessary to accurately establish a system model and establish corresponding fuzzy rules based on the model; however, the parameters of the motor (magnetic flux, inductance, resistance, etc.) are constantly changing during operation, so it is difficult to establish an accurate model through the motor parameters; further, the effect of suppressing speed fluctuations through the existing technology methods is not very obvious. Summary of the invention

[0024] In view of the above problems, the present invention provides a method for compensating motor speed fluctuations, the purpose of which is to retain the effect of the fluctuation component and realize compensation for speed fluctuations.

[0025] To solve the above problems, the technical solution provided by the present invention is:

[0026] A method for compensating motor speed fluctuations comprises the following steps:

[0027] S100. Execute speed filtering operation to obtain high-frequency interference signals;

[0028] S200. Compensate the torque using a high-frequency signal.

[0029] Preferably, S100 specifically includes the following steps:

[0030] S110. Add a reserved array; the reserved array includes a first reserved array and a second reserved array;

[0031] S120. Shifting the first reserved array;

[0032] S130. Assign a value to the input of the high-pass filter;

[0033] S140. Shift the second reserved array;

[0034] S150. Calculate the first reserved array and the second reserved array to obtain an updated second reserved array;

[0035] S160. Assign a value to the output of the high-pass filter.

[0036] Preferably, S200 specifically includes the following steps:

[0037] S210. Assigning a value to the adjustment torque of the P adjustment module;

[0038] S220. Limiting the amplitude of the adjustment torque;

[0039] S230. Superimpose the adjustment torque and the motor given torque.

[0040] Preferably, S120 specifically includes the following steps:

[0041] S121. Obtain the first reserved array of the current cycle; the first reserved array has 5 elements;

[0042] S122. Shift the elements in the first reserved array obtained in each cycle right by one position, as expressed by the following formula:

[0043]

[0044] Among them: tmp1[] is the first reserved array.

[0045] Preferably, S130 specifically includes the following steps:

[0046] S131. Obtaining the input value of the high-pass filter;

[0047] S132. Write the input value of the high-pass filter obtained in S131 into the first bit of the element in the first reserved array obtained after processing in S122, expressed as follows:

[0048] tmp1[0]=HighpassIn

[0049] Wherein: HighpassIn is the input value of the high-pass filter.

[0050] Preferably, S140 specifically includes the following steps:

[0051] S141. Obtain the second reserved array of the current cycle; the second reserved array has 5 elements;

[0052] S142. Shift the elements in the second reserved array obtained in each cycle right by one position, as expressed by the following formula:

[0053]

[0054] Among them: tmp2[] is the second reserved array.

[0055] Preferably, S150 specifically includes the following steps:

[0056] S151. Subtract the element input into the first reserved array 4 cycles ago from the element input into the first reserved array most recently;

[0057] S152. Write the difference obtained in S151 into the first bit in the second reserved array, expressed as follows:

[0058] tmp2[0]=tmp1[0]-tmp1[4]

[0059] Among them: tmp2[0] represents the first bit in the second reserved array; tmp1[0] represents the element in the first reserved array that was input most recently; tmp1[4] represents the element that was input into the first reserved array 4 cycles ago.

[0060] Preferably, S160 specifically includes the following steps:

[0061] S161. Subtract the element input into the second reserved array 4 cycles ago from the element input into the second reserved array most recently;

[0062] S162. The difference value obtained in S161 is used as the output value of the high-pass filter and is expressed as follows:

[0063] HighpassOut = tmp2[0] - tmp2[4]

[0064] Wherein: HighpassOut is the output value of the high-pass filter; tmp2[0] represents the element in the second reserved array that was input most recently; and tmp2[4] represents the element that was input into the second reserved array 4 cycles ago.

[0065] Preferably, S210 specifically includes the following steps:

[0066] S211. The filtered speed signal is used as the input of the P adjustment module to obtain the adjustment torque, which is expressed as follows:

[0067] T delt =y(n)*K P

[0068] Where: T delt is the adjustment torque; y(n) is the filtered speed signal; K P is the gain coefficient;

[0069] The filtered speed signal is the fluctuating speed;

[0070] S220 limits the amplitude of the adjustment torque, which specifically includes the following steps:

[0071] S221. Obtain the range of the fluctuation speed of the motor currently in use;

[0072] S222. According to the range of the fluctuating speed of the motor currently in use obtained in S221, the adjustment torque amplitude of the P adjustment module of the adjustment torque of the motor currently in use is calculated; the adjustment torque amplitude of the P adjustment module is not greater than 30Nm.

[0073] Preferably, S230 specifically includes the following steps:

[0074] S231. Using the adjustment torque obtained in S222 as part of the output torque of the motor currently in use, and superimposing it on the given torque of the motor;

[0075] S232. Use the motor given torque obtained after superposition as current loop input.

[0076] Compared with the prior art, the present invention has the following advantages:

[0077] 1. Since the present invention uses a high-pass filter to extract the rotation speed jitter component, the actual rotation speed component is filtered out by adjusting the cutoff frequency of the filter, thereby achieving the effect of retaining the fluctuation component;

[0078] 2. The present invention passes the rotation speed jitter component through a P regulator to output a compensation torque, thereby achieving compensation for speed fluctuations. BRIEF DESCRIPTION OF THE DRAWINGS

[0079] Figure 1 is an overall schematic diagram of a high-pass filtering system according to a specific embodiment of the present invention;

[0080] Figure 2 A schematic diagram showing the comparison of filtering effects of a specific embodiment of the present invention;

[0081] Figure 3 It is a schematic diagram of the compensation effect of a specific embodiment of the present invention. DETAILED DESCRIPTION

[0082] The present invention is further explained below in conjunction with specific embodiments. It should be understood that these embodiments are only used to illustrate the present invention and are not used to limit the scope of the present invention. After reading the present invention, various equivalent forms of modifications to the present invention by those skilled in the art all fall within the scope defined by the claims attached to this application.

[0083] It should be noted that the basic principles of the present invention are as follows:

[0084] like Figure 1 As shown, the present invention is based on a first-order RC filter algorithm and a P regulator to establish a motor speed fluctuation compensation control strategy for closed-loop motor output speed by adjusting the motor output torque.

[0085] Figure 1 The algorithm adopted by the present invention is contained in the red box, and its principle is as follows: by performing a first-order high-pass filtering on the actual speed, the jitter component of the speed is obtained, and the jitter component is input into a P regulator; the output of the P regulator is a compensation torque, which is used to compensate for the motor given torque of the motor; thereby finally realizing speed fluctuation compensation.

[0086] It should be further explained in advance that, in order to implement the speed filtering operation of S100 described below, the current motor speed must first be filtered using a first-order high-pass filtering algorithm.

[0087] The current motor speed is filtered through a first-order high-pass filtering algorithm to obtain the fluctuating speed that needs to be closed-loop for active damping control.

[0088] The significance of the first-order high-pass filtering algorithm is that when the actual speed of the motor remains within the expected range of change, the motor speed needs to quickly respond to changes in the actual speed of the motor; and when the actual speed of the motor has unexpected speed fluctuations, the high-pass filter can filter out the basic speed signal, retain the fluctuation signal, and compensate for the fluctuation signal to reduce speed jitter.

[0089] Then, according to the first-order high-pass filtering algorithm of the motor, a motor speed filtering simulation model was built in MATLAB / Simulink, and it was simulated to verify the feasibility of the established filtering algorithm, and the filter cutoff frequency was preliminarily calibrated; specifically:

[0090] The transfer function of the first-order high-pass filter algorithm is expressed as follows:

[0091] y / x=s / (s+ω H ) (1)

[0092] Then discretize it, let s = (1-z -1 ) / t s , so the result can be expressed as formula (2):

[0093]

[0094] Where: y(n) is the speed after filtering; y(n-1) is the speed after the last filtering; x(n) is the speed before filtering; x(n-1) is the speed before the last filtering; t s is the sampling time; ω H is the cut-off frequency.

[0095] At this time, the problems of the existing technology are reflected, specifically:

[0096] Since the high-pass filter will bring about a corresponding phase delay, this will cause the extracted speed jitter component to also have a phase delay. If this jitter component is compensated directly, it may not be able to suppress the jitter well, and in severe cases it may even aggravate the jitter.

[0097] In summary, the high-pass filter must be modified at this step, which is the core invention of the present invention.

[0098] A method for compensating motor speed fluctuations comprises the following steps:

[0099] S100. Execute a speed filtering operation to obtain a high-frequency interference signal.

[0100] In this specific embodiment, S100 specifically includes the following steps:

[0101] S110. Add a reserved array; the reserved array includes a first reserved array and a second reserved array.

[0102] S120. Perform shift processing on the first reserved array.

[0103] In this specific embodiment, S120 specifically includes the following steps:

[0104] S121. Obtain the first reserved array of the current cycle; the first reserved array has 5 elements.

[0105] S122. Shift the elements in the first reserved array obtained in each cycle right by one position, expressed as follows:

[0106]

[0107] Among them: tmp1[] is the first reserved array.

[0108] S130. Assign a value to the input of the high-pass filter.

[0109] In this specific embodiment, S130 specifically includes the following steps: S130 specifically includes the following steps:

[0110] S131. Obtain the input value of the high-pass filter.

[0111] S132. Write the input value of the high-pass filter obtained in S131 into the first bit of the element in the first reserved array obtained after processing in S122, expressed as follows:

[0112] tmp1[0]=HighpassIn (4)

[0113] Where: HighpassIn is the input value of the high-pass filter.

[0114] S140. Perform shift processing on the second reserved array.

[0115] In this specific embodiment, S140 specifically includes the following steps:

[0116] S141. Obtain the second reserved array of the current cycle; the second reserved array has 5 elements.

[0117] S142. Shift the elements in the second reserved array obtained in each cycle rightward by one position, expressed as follows:

[0118]

[0119] Among them: tmp2[] is the second reserved array.

[0120] S150. Calculate the first reserved array and the second reserved array to obtain an updated second reserved array.

[0121] In this specific embodiment, S150 specifically includes the following steps:

[0122] S151. Subtract the element input into the first reserved array 4 cycles ago from the element input into the first reserved array most recently.

[0123] S152. Write the difference obtained in S151 into the first position in the second reserved array, expressed as follows:

[0124] tmp2[0]=tmp1[0]-tmp1[4] (6)

[0125] Among them: tmp2[0] represents the first bit in the second reserved array; tmp1[0] represents the element in the first reserved array that was input most recently; tmp1[4] represents the element that was input into the first reserved array 4 cycles ago.

[0126] S160. Assign a value to the output of the high-pass filter.

[0127] In this specific embodiment, S160 specifically includes the following steps:

[0128] S161. Subtract the element input into the second reserved array 4 cycles ago from the element input into the second reserved array most recently.

[0129] S162. The difference obtained in S161 is used as the output value of the high-pass filter and expressed according to formula (7):

[0130] HighpassOut=tmp2[0]-tmp2[4] (7)

[0131] Wherein: HighpassOut is the output value of the high-pass filter; tmp2[0] represents the element in the second reserved array that was input most recently; tmp2[4] represents the element that was input into the second reserved array 4 cycles ago.

[0132] It should be noted that the waveform obtained by the above-mentioned first-order high-pass filtering algorithm has no phase delay and can more truly reflect the actual fluctuation of the motor speed, with the maximum error not exceeding 150rpm.

[0133] like Figure 2 As shown in the figure, it is a comparison chart of filtering effects, where: the upper figure is the speed before filtering, and the lower figure is the speed fluctuation component after filtering.

[0134] S200. Compensate the torque using a high-frequency signal.

[0135] In this specific embodiment, S200 specifically includes the following steps:

[0136] S210. Assign a value to the regulating torque of the P regulating module.

[0137] In this specific embodiment, S210 specifically includes the following steps:

[0138] S211. The filtered speed signal is used as the input of the P adjustment module to obtain the adjustment torque, which is expressed as follows:

[0139] T delt =y(n)*K P (8)

[0140] Where: T delt is the regulating torque; y(n) is the filtered speed signal; K P is the gain factor.

[0141] The speed signal after filtering is the fluctuating speed.

[0142] S220. Limit the amplitude of the adjustment torque.

[0143] In this specific embodiment, limiting the amplitude of the adjustment torque in S220 specifically includes the following steps:

[0144] S221. Obtain the range of the fluctuation speed of the motor currently in use.

[0145] S222. According to the range of the fluctuating speed of the motor currently in use obtained in S221, the adjustment torque amplitude of the P adjustment module of the adjustment torque of the motor currently in use is calculated.

[0146] In this specific embodiment, the adjustment torque amplitude of the P adjustment module is not greater than 30Nm

[0147] In this specific embodiment, the output of the motor torque P adjustment module is used as a part of the motor output torque adjustment, superimposed on the motor given torque, and used as the current loop input. In view of the general range of motor speed fluctuation does not exceed 250rpm, the adjustment torque amplitude of the motor output torque P adjustment module does not need to exceed 30Nm.

[0148] S230. Superimpose the adjustment torque and the motor given torque.

[0149] In this specific embodiment, S230 specifically includes the following steps:

[0150] S231. Use the adjustment torque obtained in S222 as a part of the output torque of the motor currently in use, and add it to the given torque of the motor.

[0151] S232. Use the motor given torque obtained after superposition as the current loop input.

[0152] In order to demonstrate the technical effect of the present invention, the applicant also conducted an experiment, and in this specific embodiment, the experimental process, results, and data are presented as follows:

[0153] The model is built according to the control principle, and the input signals are the required speed of the vehicle, the actual speed of the motor, the operating cycle and the simulated noise; among them:

[0154] The required speed of the vehicle is set to 500rpm. The actual speed of the motor and the simulated noise, the sine wave amplitude is 10rpm, the frequency is 100Hz, the difference is added with the required speed of the vehicle 500rpm and input into the speed loop PI regulator to get the output torque of the speed loop.

[0155] Then, the motor speed after adding noise is subjected to first-order filtering to obtain the fluctuating speed, where the cutoff frequency in the first-order filtering model is set to 50 Hz; the fluctuating speed is input into the P regulator of the damping control to obtain the regulating torque, and the regulating torque is compensated to the output torque of the speed loop to complete the speed fluctuation compensation.

[0156] like Figure 3 As shown, it is a schematic diagram of compensation effect; specifically:

[0157] Figure 3 The figure below shows the output speed before compensation. It can be seen that the speed is 500rpm and the speed fluctuation is 10rpm.

[0158] Figure 3 The above figure shows the output speed after compensation, the speed is 500rpm, and the speed fluctuation is within 1rpm.

[0159] In the above detailed description, various features are grouped together in a single embodiment to simplify the disclosure. This method of disclosure should not be interpreted as reflecting an intention that the embodiments of the claimed subject matter require more features than are clearly stated in each claim. On the contrary, as reflected in the appended claims, the invention is in a state of having less than all the features of the disclosed individual embodiments. Therefore, the appended claims are hereby expressly incorporated into the detailed description, with each claim standing on its own as a separate preferred embodiment of the invention.

[0160] The disclosed embodiments are described above to enable any person skilled in the art to implement or use the present invention. Various modifications of these embodiments are obvious to those skilled in the art, and the general principles defined herein may also be applied to other embodiments without departing from the spirit and scope of the present disclosure. Therefore, the present disclosure is not limited to the embodiments given herein, but is consistent with the broadest scope of the principles and novel features disclosed in this application.

[0161] The above description includes examples of one or more embodiments. Of course, it is not possible to describe all possible combinations of components or methods for the purpose of describing the above embodiments, but it should be recognized by those skilled in the art that the various embodiments may be further combined and arranged. Therefore, the embodiments described herein are intended to cover all such changes, modifications and variations that fall within the scope of protection of the appended claims. In addition, with respect to the term "comprising" used in the specification or claims, the word is covered in a manner similar to the term "including", just as "including," is explained as a transitional word in the claims. In addition, any term "or" used in the specification of the claims is intended to mean "non-exclusive or".

[0162] The specific implementation methods described above further illustrate the objectives, technical solutions and beneficial effects of the present invention in detail. It should be understood that the above description is only a specific implementation method of the present invention and is not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present invention should be included in the scope of protection of the present invention.

Claims

1. A method for compensating motor speed fluctuation, characterized in that: The following steps are involved: S100. Execute speed filtering operation to obtain high-frequency interference signals; S200. Compensating the torque using a high frequency signal; S100 specifically includes the following steps: S110. Add a reserved array; the reserved array includes a first reserved array and a second reserved array; S120. Shifting the first reserved array; S130. Assign a value to the input of the high-pass filter; S140. Shift the second reserved array; S150. Calculate the first reserved array and the second reserved array to obtain an updated second reserved array; S150 specifically includes the following steps: S151. Subtract the element input into the first reserved array 4 cycles ago from the element input into the first reserved array most recently; S152. Write the difference obtained in S151 into the first bit in the second reserved array, expressed as follows: tmp2[0]=tmp1[0]-tmp1[4] Wherein: tmp2[0] represents the first bit in the second reserved array; tmp1[0] represents the element in the first reserved array that was input most recently; tmp1[4] represents the element that was input into the first reserved array 4 cycles ago S160. Assign a value to the output of the high-pass filter; S160 specifically includes the following steps: S161. Subtract the element input into the second reserved array 4 cycles ago from the element input into the second reserved array most recently; S162. The difference value obtained in S161 is used as the output value of the high-pass filter and is expressed as follows: HighpassOut = tmp2[0] - tmp2[4] Wherein: HighpassOut is the output value of the high-pass filter; tmp2[0] represents the element in the second reserved array that was input most recently; and tmp2[4] represents the element that was input into the second reserved array 4 cycles ago.

2. The motor speed fluctuation compensation method according to claim 1, characterized in that: S200 specifically includes the following steps: S210. Assigning a value to the adjustment torque of the P adjustment module; S220. Limiting the amplitude of the adjustment torque; S230. Superimpose the adjustment torque and the motor given torque.

3. The motor speed fluctuation compensation method according to claim 2, characterized in that: S120 specifically includes the following steps: S121. Obtain the first reserved array of the current cycle; the first reserved array has 5 elements; S122. Shift the elements in the first reserved array obtained in each cycle right by one position, as expressed by the following formula: Among them: tmp1[ ] is the first reserved array.

4. The motor speed fluctuation compensation method according to claim 3 is characterized in that: S130 specifically includes the following steps: S131. Obtaining the input value of the high-pass filter; S132. Write the input value of the high-pass filter obtained in S131 into the first bit of the element in the first reserved array obtained after processing in S122, expressed as follows: tmp1[0]=HighpassIn Wherein: HighpassIn is the input value of the high-pass filter.

5. The motor speed fluctuation compensation method according to claim 4, characterized in that: S140 specifically includes the following steps: S141. Obtain the second reserved array of the current cycle; the second reserved array has 5 elements; S142. Shift the elements in the second reserved array obtained in each cycle right by one position, as expressed by the following formula: Among them: tmp2[ ] is the second reserved array.

6. The motor speed fluctuation compensation method according to claim 5, characterized in that: S210 specifically includes the following steps: S211. The filtered speed signal is used as the input of the P adjustment module to obtain the adjustment torque, which is expressed as follows: T delt =y(n)*K P Where: T delt is the adjustment torque; y(n) is the filtered speed signal; K P is the gain coefficient; The filtered speed signal is the fluctuating speed; S220 limits the amplitude of the adjustment torque, which specifically includes the following steps: S221. Obtain the range of the fluctuation speed of the motor currently in use; S222. According to the range of the fluctuating speed of the motor currently in use obtained in S221, the adjustment torque amplitude of the P adjustment module of the adjustment torque of the motor currently in use is calculated; the adjustment torque amplitude of the P adjustment module is not greater than 30Nm.

7. The motor speed fluctuation compensation method according to claim 6, characterized in that: S230 specifically includes the following steps: S231. Using the adjustment torque obtained in S222 as part of the output torque of the motor currently in use, and superimposing it on the given torque of the motor; S232. Use the motor given torque obtained after superposition as current loop input.

Citation Information

Patent Citations

  • Motor and rotating speed fluctuation suppression method and device thereof, storage medium and processor

    CN113162499A

  • Vehicle active anti-shake method, anti-shake system, storage medium and vehicle

    CN116278804A

  • High-order filter circuit

    CN1949666A