Commutation control method and system for electric motor, and readable medium
By obtaining the historical sector time of the brushless motor for data processing, determining the estimated commutation time and performing forced commutation, the problem of commutation chaos in brushless motors under working conditions is solved, and the stable operation of the motor and user experience is improved.
Patent Information
- Application Number
- PCT/CN2025/072391
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-02-04
- Filing Date
- 2025-01-15
- Publication Date
- 2025-08-07
AI Technical Summary
Brushless motors without position sensors are prone to commutation chaos in some operating conditions, resulting in unstable motor operation and affecting user experience.
By acquiring multiple historical sector times of the motor, data processing is performed to determine the estimated commutation time, and forced commutation is performed when a position acquisition failure is detected to correct commutation chaos.
It improves the stability of the system, ensures that the motor can continue to operate normally under chaotic commutation conditions, and improves the user experience.
Smart Images

Figure CN2025072391_07082025_PF_FP_ABST
Abstract
Description
[Corrected 06.03.2025 according to Rule 91] Commutation control method, system and readable medium for motor Technical Field
[0001] [Corrected 06.03.2025 according to Rule 91] The present invention belongs to the field of brushless DC motor control, and in particular to a commutation control method, system and readable medium for a brushless motor. Background Art
[0002] Currently, many power tools and garden tools are controlled by brushless motors without position sensors. The lack of position sensors makes the whole machine more compact, saves costs and simplifies the assembly process.
[0003] [Corrected 06.03.2025 according to Rule 91] However, in certain working conditions, when the torque is insufficient, the load torque is too large, or the load torque increases suddenly, the motor may easily experience commutation confusion. At this time, the motor's back electromotive force becomes abnormal. If commutation control is performed based on the back electromotive force crossing zero, it will cause a huge error in the controller's position judgment. The control error will further cause confusion in the motor operation, thus forming a vicious cycle.
[0004] The confusion in positioning inevitably leads to increased current fluctuations, which, when excessive, trigger overcurrent protection. Therefore, from a macroscopic perspective, the machine is prone to shutting down for protection when encountering heavy loads, causing confusion and inconvenience for the user, resulting in a poor user experience.
[0005] [Corrected 06.03.2025 according to Rule 91] Therefore, it is necessary to design a commutation control method, system and readable medium for a brushless motor to solve the above problems. Summary of the Invention
[0006] [Corrected 06.03.2025 according to Rule 91] In view of the deficiencies in the prior art, the present invention aims to provide a commutation control method, system and readable medium for a motor, so as to solve the problem that when a brushless motor without a position sensor has commutation confusion under some working conditions, a certain error correction mechanism is adopted to correct the failed detection and control, so that the motor operation control can be normal, thereby allowing the system to continue to operate, increasing the stability of the system and improving the user experience.
[0007] [Corrected 06.03.2025 according to Rule 91] The technical solution adopted by the present invention to solve the problems of the prior art is: a motor commutation control method, the control method comprising:
[0008] If it is detected that the motor rotor position acquisition fails, a plurality of historical sector times of the motor are acquired;
[0009] performing data processing according to a plurality of historical sector times of the motor to obtain processing information;
[0010] [Corrected 06.03.2025 in accordance with Rule 91] Determine an estimated commutation time of the motor based on the processed information;
[0011] [Corrected 06.03.2025 according to Rule 91] Control the motor to perform commutation operation based on the estimated commutation time of the motor.
[0012] [Corrected 06.03.2025 according to Rule 91] A further improvement is that the determination of the estimated commutation time includes:
[0013] Step 1: Get n consecutive historical sector times ΔT x , 2≤n≤60, 0≤x≤n, n and x are integers;
[0014] Step 2: Perform data fitting on the historical sector time to obtain a slope K;
[0015] Step 3: Calculate the intercept b based on the slope K;
[0016] Step 4: Obtain the sector time function based on the slope K and intercept b. The function formula is: ΔT KC '=7*k+b;
[0017] [Corrected 06.03.2025 according to Rule 91] Step 5: Determine the estimated commutation time based on the sector time function and commutate.
[0018] A further improvement is that the calculation formula of the slope K is: K=(E(nΔT)-E(n)ΔT*E(ΔT) / [E(n 2 )-(E(n)) 2 ], where E(nΔT) is the mathematical expectation of the product of the sector number and the sector time ΔT, E(n) is the mathematical expectation of the sector number, E(ΔT) is the mathematical expectation of the sector time ΔT, and E(n 2 ) is the mathematical expectation of the square of the sector number, (E(n)) 2 is the square of the mathematical expectation of the sector number; the calculation formula of the intercept b is: b=E(ΔT)-K*E(n), where E(ΔT) is the mathematical expectation of the sector time ΔT, E(n) is the mathematical expectation of the sector number, and K is the slope of the sector time.
[0019] [Corrected 06.03.2025 according to Rule 91] A further improvement is that the determination of the estimated commutation time includes:
[0020] Step 1: Get n consecutive historical sector times;
[0021] Step 2: Calculate the average of the n consecutive historical sector times to obtain the estimated sector time. The calculation formula for the estimated sector time is: where Δzt k Zero-crossing detection time interval;
[0022] [Corrected 06.03.2025 according to Rule 91] Step 3: Obtain the estimated commutation time based on the estimated sector time. The formula for calculating the estimated commutation time is: ΔT KC '=1.5*(ΔT KZ '), where ΔT KZ ' is the estimated sector time.
[0023] A further improvement scheme is: the data processing includes:
[0024] Step 1: Get n non-consecutive historical sector times;
[0025] Step 2: averaging the n non-continuous historical sector times to obtain an estimated sector time. The formula for calculating the estimated sector time is: where Δzt k Zero-crossing detection time interval;
[0026] [Corrected 06.03.2025 according to Rule 91] Step 3: Obtain the estimated commutation time based on the estimated sector time. The formula for calculating the estimated commutation time is: ΔT KC '=1.5*(ΔT KZ '), where ΔT KZ ' is the estimated sector time.
[0027] [Corrected 06.03.2025 according to Rule 91] A further improvement is that the determination of the estimated commutation time includes:
[0028] Step 1: Get the last historical sector time;
[0029] Step 2: Estimating the estimated sector time based on the previous historical sector time;
[0030] [Corrected 06.03.2025 according to Rule 91] Step 3: Obtain an estimated commutation time based on the estimated sector time.
[0031] [Corrected 06.03.2025 according to Rule 91] A further improvement is that before controlling the motor to perform the commutation operation, the method further includes:
[0032] Step 1: Obtain multiple bus current values;
[0033] Step 2: Processing the multiple bus current values to obtain a current slope;
[0034] Step 3: Determine whether the busbar slope meets the preset rules;
[0035] [Corrected 06.03.2025 according to Rule 91] When it is determined that both the bus slope preset rule and the estimated commutation time conditions are met, the motor is controlled to commutate.
[0036] [Corrected 06.03.2025 according to Rule 91] A further improvement is: if it is determined that both the busbar slope preset rule and the estimated commutation time condition are satisfied, the motor commutation is controlled, including:
[0037] [Corrected 06.03.2025 according to Rule 91] After the bus current slope value is obtained by processing the obtained multiple bus current values, it is determined whether the bus current slope value satisfies a preset condition, and when the preset condition is satisfied, that is, when the bus current slope value satisfies a first preset condition and reaches an estimated commutation time, forced commutation is controlled;
[0038] The first preset condition is to determine that the bus current slope value changes in the order of being greater than zero, approximately equal to zero, and less than zero.
[0039] Further improvement plans are:
[0040] [Corrected 06.03.2025 according to Rule 91] If it is determined that both the busbar slope preset rule and the estimated commutation time condition are satisfied, the motor commutation is controlled, including:
[0041] [Corrected 06.03.2025 according to Rule 91] When the bus current slope value meets the second preset condition and reaches the estimated commutation time, forced commutation is controlled; the second preset condition is to judge whether the bus current slope value changes in the order of greater than zero, approximately equal to zero, less than zero and greater than zero.
[0042] [Corrected 06.03.2025 according to Rule 91] A further improvement is that before determining the estimated commutation time, the following steps are also included:
[0043] Step 1: Obtain multiple bus current values;
[0044] Step 2: Processing the multiple bus current values to obtain a current difference;
[0045] Step 3: Determine whether the busbar difference satisfies a preset rule;
[0046] [Corrected 06.03.2025 according to Rule 91] When it is determined that both the busbar difference preset rule and the estimated commutation time conditions are met, the motor is controlled to commutate.
[0047] Further improvement plans are:
[0048] [Corrected 06.03.2025 according to Rule 91] If it is determined that both the busbar difference preset rule and the estimated commutation time condition are satisfied, the motor commutation is controlled, including:
[0049] [Corrected 06.03.2025 according to Rule 91] After processing the multiple bus current values obtained to obtain the bus current difference, it is determined whether the bus current difference meets the preset conditions. When the preset conditions are met, that is, when the bus current slope value meets the third preset condition and reaches the estimated commutation time, forced commutation is controlled, wherein the third preset condition is to determine whether the bus current difference changes in a pattern of being greater than zero, approximately equal to zero, and less than zero in sequence.
[0050] [Corrected 06.03.2025 according to Rule 91] A further improvement is: if it is determined that both the busbar difference preset rule and the estimated commutation time condition are satisfied, the motor commutation is controlled, including:
[0051] [Corrected 06.03.2025 according to Rule 91] When the bus current slope value meets the fourth preset condition and reaches the estimated commutation time, forced commutation is controlled, wherein the fourth preset condition is to judge that the bus current difference changes in the order of greater than zero, approximately equal to zero, less than zero and greater than zero.
[0052] [Corrected 06.03.2025 according to Rule 91] A further improved solution is: A commutation control system for a motor, comprising a memory and a processor, wherein the memory stores a computer program executable on the processor, and the processor implements the above method when executing the computer program, wherein the processor is configured to:
[0053] When it is detected that the motor rotor position acquisition fails, multiple historical sector times are acquired;
[0054] [Corrected 06.03.2025 in accordance with Rule 91] determining an estimated commutation time based on the plurality of historical sector times;
[0055] [Corrected 06.03.2025 as per Rule 91] The motor commutation operation is performed according to the estimated commutation time.
[0056] [Corrected 06.03.2025 according to Rule 91] A further improvement is that the processor in the commutation control system of the motor is further used to:
[0057] Get n consecutive historical sector times ΔT_x, 2≤n≤60, 0≤x≤n, where n and x are integers;
[0058] Performing data fitting on the historical sector time to obtain a slope K;
[0059] Calculate the intercept b based on the slope K;
[0060] The sector time function is obtained according to the slope K and the intercept b, and the function formula is ΔT KC '=7*k+b;
[0061] [Corrected 06.03.2025 according to Rule 91] The estimated commutation time is determined according to the sector time function, so as to control the commutation of the motor according to the estimated commutation time.
[0062] [Corrected 06.03.2025 according to Rule 91] A further improvement is that the processor in the commutation control system of the motor is further used to:
[0063] Get n non-continuous historical sector times;
[0064] The n non-continuous historical sector times are averaged to obtain an estimated sector time, and the calculation formula for the estimated sector time is: where Δzt k Zero-crossing detection time interval;
[0065] [Corrected 06.03.2025 according to Rule 91] The estimated commutation time is obtained based on the estimated sector time. The estimated commutation time is calculated as follows: ΔT KC '=1.5*(ΔT KZ '), where ΔT KZ ' is the estimated sector time.
[0066] [Corrected 06.03.2025 according to Rule 91] A further improvement is that the processor in the commutation control system of the motor is further used to:
[0067] Get n consecutive historical sector times;
[0068] The estimated sector time is obtained by averaging the n consecutive historical sector times. The calculation formula for the estimated sector time is: where Δzt k Zero-crossing detection time interval;
[0069] [Corrected 06.03.2025 according to Rule 91] The estimated commutation time is obtained based on the estimated sector time. The estimated commutation time is calculated as follows: ΔT KC '=1.5*(ΔT KZ '), where ΔT KZ ' is the estimated sector time.
[0070] [Corrected 06.03.2025 according to Rule 91] A further improvement is that the processor in the commutation control system of the motor is further used to:
[0071] Get the last historical sector time;
[0072] Estimating the estimated sector time based on the previous historical sector time;
[0073] [Corrected 06.03.2025 as per Rule 91] The estimated commutation time is obtained based on the estimated sector time.
[0074] [Corrected 06.03.2025 according to Rule 91] A further improvement is that the processor in the commutation control system of the motor is further used to:
[0075] Get multiple bus current values;
[0076] Processing the multiple bus current values to obtain a current slope;
[0077] Determining whether the busbar slope satisfies a preset rule;
[0078] When it is determined that both the bus slope preset rule and the estimated commutation time conditions are met, the motor is controlled to commutate.
[0079] A further improvement is that the processor in the commutation control system of the motor is further used to:
[0080] Get multiple bus current values;
[0081] Processing the multiple bus current values to obtain a current difference;
[0082] Determine whether the bus difference satisfies a preset rule;
[0083] [Corrected 06.03.2025 according to Rule 91] When it is determined that both the busbar difference preset rule and the estimated commutation time condition are satisfied, the motor is controlled to commutate. A further improvement is: a readable medium having a non-volatile program code executable by a processor, the program code causing the processor to execute the above method.
[0084] [Corrected 06.03.2025 according to Rule 91] Compared with the prior art, the present invention has the following beneficial effects: through the above-mentioned motor commutation control method, that is, when the motor rotor position acquisition fails, multiple historical sector times are obtained, and processing information is obtained by processing the historical sector times. The estimated commutation time is determined according to the processing information, and the motor is controlled to perform forced commutation according to the estimated commutation time, so that the system can continue to run, the stability of the system is increased, and the user experience is improved. BRIEF DESCRIPTION OF THE DRAWINGS
[0085] The specific embodiments of the present invention are further described in detail below with reference to the accompanying drawings:
[0086] [Corrected 06.03.2025 according to Rule 91] FIG1 is a flowchart showing the steps of a motor commutation control method according to an embodiment of the present application;
[0087] [Corrected 06.03.2025 according to Rule 91] FIG2 is a flowchart showing the steps of a motor commutation control method according to the first embodiment of the present application;
[0088] [Corrected 06.03.2025 according to Rule 91] FIG3 is a flowchart showing the steps of a motor commutation control method according to the second embodiment of the present application;
[0089] [Corrected 06.03.2025 according to Rule 91] FIG4 is a flowchart showing the steps of a motor commutation control method according to the third embodiment of the present application;
[0090] [Corrected 06.03.2025 according to Rule 91] FIG5 is a flowchart showing the steps of a motor commutation control method according to a fourth embodiment of the present application;
[0091] [Corrected 06.03.2025 according to Rule 91] FIG6 is a flowchart showing the steps of a motor commutation control method according to the fifth embodiment of the present application;
[0092] [Corrected 06.03.2025 according to Rule 91] FIG7 is a flowchart showing the steps of a motor commutation control method according to a sixth embodiment of the present application; DETAILED DESCRIPTION
[0093] In order to make the technical problems, technical solutions and advantages to be solved by the present invention clearer, a detailed description will be given below with reference to the accompanying drawings and specific embodiments.
[0094] The square wave triggered network distribution method provided in the embodiment of the present application is described in detail below with reference to the accompanying drawings through specific embodiments and their application scenarios.
[0095] [Corrected 06.03.2025 according to Rule 91] Referring to FIG1 , which is a flowchart of a brushless motor commutation control method according to an embodiment of the present application, the steps include:
[0096] S1: When the motor rotor position acquisition fails, obtain multiple historical sector times;
[0097] S2: Processing the multiple historical sector times to obtain processing information;
[0098] [Corrected 06.03.2025 according to Rule 91] S3: Determine an estimated commutation time based on the processed information;
[0099] [Corrected 06.03.2025 according to Rule 91] S4: Perform motor commutation operation according to the estimated commutation time.
[0100] [Corrected 06.03.2025 according to Rule 91] Referring to FIG2 , there is shown a flowchart of a motor commutation control method according to the first embodiment of the present application, the steps comprising:
[0101] When the motor rotor position acquisition fails:
[0102] Step 1: Get n consecutive historical sector times ΔT x , 2≤n≤60, 0≤x≤n, n and x are integers;
[0103] Step 2: Perform data fitting on the historical sector time to obtain a slope K;
[0104] Step 3: Calculate the intercept b based on the slope K;
[0105] Step 4: Obtain the sector time function based on the slope K and intercept b. The function formula is: ΔT KC '=7*k+b;
[0106] [Corrected 06.03.2025 according to Rule 91] Step 5: Determine the estimated commutation time according to the sector time function, and control the motor commutation according to the estimated commutation time.
[0107] [Corrected 06.03.2025 according to Rule 91] Get n consecutive historical sector times ΔT x , 2≤n≤60, 0≤x≤n, n and x are integers. When n is 6, six consecutive historical sector times ΔT0, ΔT1, ΔT2, ΔT3, ΔT4, ΔT5, and ΔT6 are obtained. The sector times obtained by the first six measurements, under the time microscopic state, are almost close to the first six sector times because the response time of the mechanical characteristics of the motor is normally much greater than the response time characteristics of the electrical parameters. In theory, the first six sector measurement times can be used to estimate the approximate commutation moment of the seventh. For this purpose, a linear fitting estimation method can be used.
[0108] Obtain the first six 60° sector times ΔT0, ΔT1, ΔT2, ΔT3, ΔT4, ΔT5, and ΔT6 for linear fitting to obtain the corresponding slope K. The calculation formula for the slope K is: K = (E(nΔT)-E(n)ΔT*E(ΔT) / [E(n 2 )-(E(n)) 2], where E(nΔT) is the mathematical expectation of the product of the sector number and the sector time ΔT, E(n) is the mathematical expectation of the sector number, E(ΔT) is the mathematical expectation of the sector time ΔT, and E(n 2 ) is the mathematical expectation of the square of the sector number, (E(n)) 2 It is the square of the mathematical expectation of the sector number.
[0109] The calculation formula for the intercept b is: b=E(ΔT)-K*E(n), where E(ΔT) is the mathematical expectation of the sector time ΔT, E(n) is the mathematical expectation of the sector number, and K is the slope of the sector time.
[0110] According to the calculation formula of the slope K and intercept b, the function ΔT of the sector time can be obtained: Kc '=1.5*ΔT Kz '=7*K+b.
[0111] [Corrected 06.03.2025 according to Rule 91] The theoretical seventh commutation time period can be calculated from the above formula. If no zero crossing is detected within this time period, or if the zero crossing is detected incorrectly, forced commutation will be performed at the estimated commutation time.
[0112] [Corrected 06.03.2025 according to Rule 91] To solve the commutation confusion of brushless motors without position sensors under certain working conditions, a certain error correction mechanism is used to correct the failed detection and control, so that the motor operation and control are normal, so that the system can continue to operate, increase the system stability, and improve the user experience.
[0113] [Corrected 06.03.2025 according to Rule 91] Referring to FIG3 , there is a flowchart showing the steps of a motor commutation control method according to the second embodiment of the present application, the steps comprising:
[0114] When the motor rotor position acquisition fails:
[0115] Step 1: Get n consecutive historical sector times;
[0116] Step 2: Calculate the average of the n consecutive historical sector times to obtain the estimated sector time. The calculation formula for the estimated sector time is: where Δzt k Zero-crossing detection time interval;
[0117] [Corrected 06.03.2025 according to Rule 91] Step 3: Obtain the estimated commutation time based on the estimated sector time. The formula for calculating the estimated commutation time is: ΔT KC '=1.5*(ΔT KZ '), where ΔT KZ ' is the estimated sector time;
[0118] [Corrected 06.03.2025 according to Rule 91] Step 4: Control the motor commutation according to the estimated commutation time.
[0119] [Corrected 06.03.2025 according to Rule 91] The theoretical commutation time period can be calculated from the above formula. If the zero crossing point is not detected within this time period, or the zero crossing point detection is incorrect, forced commutation will be performed at the estimated commutation time.
[0120] [Corrected 06.03.2025 according to Rule 91] To solve the commutation confusion of brushless motors without position sensors under certain working conditions, a certain error correction mechanism is used to correct the failed detection and control, so that the motor operation and control are normal, so that the system can continue to operate, increase the system stability, and improve the user experience.
[0121] [Corrected 06.03.2025 according to Rule 91] Referring to FIG4 , there is a flowchart showing the steps of a motor commutation control method according to the third embodiment of the present application, the steps comprising:
[0122] When the motor rotor position acquisition fails:
[0123] Step 1: Get n non-consecutive historical sector times;
[0124] Step 2: averaging the n non-continuous historical sector times to obtain an estimated sector time. The formula for calculating the estimated sector time is: where Δzt k Zero-crossing detection time interval;
[0125] [Corrected 06.03.2025 according to Rule 91] Step 3: Obtain the estimated commutation time based on the estimated sector time. The formula for calculating the estimated commutation time is: ΔT KC '=1.5*(ΔT KZ '), where ΔT KZ ' is the estimated sector time;
[0126] [Corrected 06.03.2025 according to Rule 91] Step 4: Control the motor commutation according to the estimated commutation time.
[0127] For example, when n is 4, the first four discontinuous sectors in history are randomly selected, namely Δzt8, Δzt7, Δzt5, and Δzt3. The reason is that Δzt8 is the sector closest to the current estimated sector, and Δzt7, Δzt5, and Δzt3 correspond to the first three odd-numbered sectors. These three sectors and Δzt9, that is, the current estimated sector, all correspond to the upslope or downslope of the back electromotive force, which is consistent with the motor characteristics. When the three-phase parameters of the motor are unbalanced, the motor characteristics corresponding to the sector time at each upslope or downslope can be considered consistent, which indirectly eliminates the impact of the three-phase imbalance of the motor.
[0128] [Corrected 06.03.2025 according to Article 91] The estimated sector time above, i.e. the estimated time of Δzt9 is: The estimated commutation time is: ΔT KC '=1.5*(ΔT KZ '), where ΔT KZ ' is the estimated sector time.
[0129] [Corrected 06.03.2025 according to Rule 91] The theoretical commutation time period can be calculated from the above formula. If the zero crossing point is not detected within this time period, or the zero crossing point detection is incorrect, forced commutation will be performed at the estimated commutation time.
[0130] [Corrected 06.03.2025 according to Rule 91] To solve the commutation confusion of brushless motors without position sensors under certain working conditions, a certain error correction mechanism is used to correct the failed detection and control, so that the motor operation and control are normal, so that the system can continue to operate, increase the system stability, and improve the user experience.
[0131] [Corrected 06.03.2025 according to Rule 91] Referring to FIG5 , there is a flowchart showing the steps of a motor commutation control method according to a fourth embodiment of the present application, the steps comprising:
[0132] When the motor rotor position acquisition fails:
[0133] Step 1: Get the last historical sector time;
[0134] Step 2: Estimating the estimated sector time based on the previous historical sector time;
[0135] [Corrected 06.03.2025 according to Rule 91] Step 3: obtaining an estimated commutation time based on the estimated sector time;
[0136] [Corrected 06.03.2025 according to Rule 91] Step 4: Control the motor commutation according to the estimated commutation time.
[0137] [Corrected 06.03.2025 according to Rule 91] For example, if the current estimated sector time is Δzt9, then the sector time of the sector Δzt8 closest to Δzt9 is obtained, Δzt9 = ΔT Kz '=Δzt8, the estimated commutation time is: ΔT KC '=1.5*(ΔT KZ '), where ΔT KZ ' is the estimated sector time.
[0138] [Corrected 06.03.2025 according to Rule 91] The theoretical commutation time period can be calculated from the above formula. If the zero crossing point is not detected within this time period, or the zero crossing point detection is incorrect, forced commutation will be performed at the estimated commutation time.
[0139] [Corrected 06.03.2025 according to Rule 91] To solve the commutation confusion of brushless motors without position sensors under certain working conditions, a certain error correction mechanism is used to correct the failed detection and control, so that the motor operation and control are normal, so that the system can continue to operate, increase the system stability, and improve the user experience.
[0140] [Corrected 06.03.2025 according to Rule 91] Referring to FIG6 , there is a flowchart showing a motor commutation control method according to a fifth embodiment of the present application, the steps comprising:
[0141] When the motor rotor position acquisition fails:
[0142] Step 1: Obtain multiple bus current values and multiple historical sector times;
[0143] Step 2: Processing the multiple historical sector times to obtain processing information, and processing the multiple bus current values to obtain current slopes;
[0144] [Corrected 06.03.2025 according to Rule 91] Step 3: Determine whether the busbar slope satisfies the preset rules and whether the estimated commutation time conditions are met;
[0145] [Corrected 06.03.2025 according to Rule 91] Step 4: When it is determined that both the bus slope preset rule and the estimated commutation time conditions are met, control the motor commutation.
[0146] Get K t i , the sampling bus current value I within 0≤i≤K i , 0≤i≤X, perform linear fitting on the multiple sampled bus current values obtained to obtain the corresponding curve slope K, that is, the bus current slope value.
[0147] The first formula for obtaining the busbar current slope value K is: K=(Eti-Et×Ei)÷(Et 2 -(Et) 2 )
[0148] Among them, Eti is the expectation of the product of the sampling time t and the bus current value, Et is the mathematical expectation of the sampling time t, Ei is the mathematical expectation of the bus current, and Et 2 is the mathematical expectation of the square of the sampling time t, (Et) 2 is the square of the mathematical expectation at sampling time t.
[0149] [Corrected 06.03.2025 according to Rule 91] After the bus current slope value is obtained by processing the multiple bus current values obtained, it is determined whether the bus current slope value meets the preset conditions. If the preset conditions are met, that is, when the bus current slope value meets the first preset conditions and reaches the estimated commutation time, forced commutation is controlled; or when the bus current slope value meets the second preset conditions and reaches the estimated commutation time, forced commutation is controlled; the first preset condition is to determine whether the bus current slope value changes in the order of greater than zero, approximately equal to zero, and less than zero; the second preset condition is to determine whether the bus current slope value changes in the order of greater than zero, approximately equal to zero, less than zero, and greater than zero.
[0150] [Corrected 06.03.2025 according to Rule 91] To solve the commutation confusion of brushless motors without position sensors under certain working conditions, a certain error correction mechanism is used to correct the failed detection and control, so that the motor operation and control are normal, so that the system can continue to operate, increase the system stability, and improve the user experience.
[0151] [Corrected 06.03.2025 according to Rule 91] Referring to FIG7 , there is shown a flowchart of a motor commutation control method according to a sixth embodiment of the present application, the steps comprising:
[0152] When the motor rotor position acquisition fails:
[0153] Step 1: Obtain multiple bus current values and multiple historical sector times;
[0154] Step 2: Processing the multiple historical sector times to obtain processing information, and processing the multiple bus current values to obtain current differences;
[0155] [Corrected 06.03.2025 according to Rule 91] Step 3: Determine whether the busbar difference satisfies the preset rules and whether the estimated commutation time condition is met;
[0156] [Corrected 06.03.2025 according to Rule 91] Step 4: When it is determined that both the busbar difference preset rule and the estimated commutation time conditions are satisfied, control the motor commutation.
[0157] Get the sampled bus current value I within X PWM cycles i , 0≤i≤X, perform a difference simplification algorithm on the obtained multiple sampled bus current values to obtain the corresponding bus current difference C.
[0158] The second formula for obtaining the bus current slope value C is: i =I 2i+1 -I 2i , 0≤i≤X
[0159] [Corrected 06.03.2025 according to Rule 91] After processing the multiple bus current values obtained to obtain the bus current difference, determine whether the bus current difference meets the preset conditions. When the preset conditions are met, that is, when the bus current slope value meets the third preset condition and reaches the estimated commutation time, control the forced commutation; or when the bus current slope value meets the fourth preset condition and reaches the estimated commutation time, control the forced commutation; the third preset condition is to determine whether the bus current difference changes in the order of greater than zero, approximately equal to zero and less than zero; the fourth preset condition is to determine whether the bus current difference changes in the order of greater than zero, approximately equal to zero, less than zero and greater than zero.
[0160] [Corrected 06.03.2025 according to Rule 91] To solve the commutation confusion of brushless motors without position sensors under certain working conditions, a certain error correction mechanism is used to correct the failed detection and control, so that the motor operation and control are normal, so that the system can continue to operate, increase the system stability, and improve the user experience.
[0161] [Corrected 06.03.2025 according to Rule 91] The present application also provides a commutation control system for a motor, comprising a memory and a processor, wherein the memory stores a computer program that can be run on the processor, and the processor implements the above-mentioned method when executing the computer program.
[0162] The present application also provides a readable medium having a non-volatile program code executable by a processor, wherein the program code enables the processor to execute the above method.
[0163] It should be noted that, in this document, the terms "comprises," "includes," or any other variations thereof are intended to encompass non-exclusive inclusion, such that a process, method, article, or apparatus comprising a series of elements includes not only those elements but also other elements not explicitly listed, or elements inherent to such process, method, article, or apparatus. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of other identical elements in the process, method, article, or apparatus comprising the element.
[0164] The above is a preferred embodiment of the present invention. It should be pointed out that for ordinary technicians in this technical field, several improvements and modifications can be made without departing from the principles of the present invention. These improvements and modifications should also be regarded as within the scope of protection of the present invention.
Claims
1. [Corrected 06.03.2025 according to Rule 91] A motor commutation control method, characterized in that: The control method comprises: If it is detected that the motor rotor position acquisition fails, a plurality of historical sector times of the motor are acquired; performing data processing according to a plurality of historical sector times of the motor to obtain processing information; Determining an estimated commutation time of the motor based on the processed information; The motor is controlled to perform a commutation operation according to the estimated commutation time of the motor.
2. [Corrected 06.03.2025 according to Rule 91] The motor commutation control method according to claim 1, characterized in that: Determining the estimated commutation time of the motor includes: Step 1: Get n consecutive historical sector times ΔT x , 2≤n≤60, 0≤x≤n, n and x are integers; Step 2: Perform data fitting on the historical sector time to obtain a slope K; Step 3: Calculate the intercept b based on the slope K; Step 4: Obtain the sector time function based on the slope K and intercept b. The function formula is: ΔT KC '=7*k+b; Step 5: Determine the estimated commutation time according to the sector time function, and control the motor commutation according to the estimated commutation time.
3. [Corrected 06.03.2025 according to Rule 91] The motor commutation control method according to claim 2, characterized in that: The calculation formula of the slope K is: K=(E(nΔT)-E(n)ΔT*E(ΔT) / [E(n 2 )-(E(n)) 2 ], Where, E(nΔT) is the mathematical expectation of the product of the sector number and the sector time ΔT, E(n) is the mathematical expectation of the sector number, E(ΔT) is the mathematical expectation of the sector time ΔT, and E(n 2 ) is the mathematical expectation of the square of the sector number, (E(n)) 2 is the square of the mathematical expectation of the sector number; the calculation formula of the intercept b is: b=E(ΔT)-K*E(n), Wherein, E(ΔT) is the mathematical expectation of the sector time ΔT, E(n) is the mathematical expectation of the sector number, and K is the slope of the sector time.
4. [Corrected 06.03.2025 according to Rule 91] The motor commutation control method according to claim 1, characterized in that: Determining the estimated commutation time of the motor includes: Step 1: Get n consecutive historical sector times; Step 2: Calculate the average of the n consecutive historical sector times to obtain the estimated sector time. The calculation formula for the estimated sector time is: Among them, Δzt k Zero-crossing detection time interval; Step 3: Obtain the estimated commutation time based on the estimated sector time. The calculation formula for the estimated commutation time is: ΔT KC '=1.5*(ΔT KZ '), where ΔT KZ ' is the estimated sector time.
5. [Corrected 06.03.2025 according to Rule 91] The motor commutation control method according to claim 1, characterized in that: Determining the estimated commutation time of the motor includes: Step 1: Get n non-consecutive historical sector times; Step 2: averaging the n non-continuous historical sector times to obtain an estimated sector time. The formula for calculating the estimated sector time is: where Δzt k Zero-crossing detection time interval; Step 3: Obtain the estimated commutation time based on the estimated sector time. The calculation formula for the estimated commutation time is: ΔT KC '=1.5*(ΔT KZ '), where ΔT KZ ' is the estimated sector time.
6. [Corrected 06.03.2025 according to Rule 91] The motor commutation control method according to claim 1, characterized in that: Determining the estimated commutation time of the motor includes: Step 1: Get the last historical sector time; Step 2: Estimating the estimated sector time based on the previous historical sector time; Step 3: Obtain an estimated commutation time according to the estimated sector time.
7. [Corrected 06.03.2025 according to Rule 91] The motor commutation control method according to claim 1, characterized in that: Before the control motor performs the commutation operation, the method further includes: Step 1: Obtain multiple bus current values; Step 2: Processing the multiple bus current values to obtain a current slope; Step 3: Determine whether the busbar slope meets the preset rules; When it is determined that both the bus slope preset rule and the estimated commutation time condition are satisfied, the motor is controlled to commutate.
8. [Corrected 06.03.2025 according to Rule 91] The motor commutation control method according to claim 1, characterized in that: Before the control motor performs the commutation operation, the method further includes: Step 1: Obtain multiple bus current values; Step 2: Processing the multiple bus current values to obtain a current difference; Step 3: Determine whether the busbar difference satisfies a preset rule; When it is determined that both the busbar difference preset rule and the estimated commutation time condition are satisfied, the motor commutation is controlled.
9. [Corrected 06.03.2025 according to Rule 91] A commutation control system for a motor, comprising a memory and a processor, wherein the memory stores a computer program executable on the processor, characterized in that: When the processor executes the computer program, the method according to any one of claims 1 to 8 is implemented.
10. A readable medium having a non-volatile program code executable by a processor, characterized in that: The program code enables the processor to execute the method according to any one of claims 1 to 8.
Citation Information
Patent Citations
Dust collector, and commutation control method, device and system of brushless direct current motor
CN111384879A
Rotor position and speed estimation method for permanent magnet brushless direct current motor
CN111555670A
Three-phase brushless direct current motor and reversing control method, device and valve thereof
CN116667714A
Commutation control method and system of motor and readable medium
CN117895835A
Motor starting control method
WO2023159908A1