Back electromotive force zero crossing point detection method and motor control method

By sampling and analyzing the historical and current data of the three-phase terminal voltage in a brushless DC motor, accurately distinguishing effective data from glitch interference, the problem of insufficient accuracy and robustness of back electromotive force zero crossing detection in the prior art is solved, and a higher accuracy and robust motor control is achieved.

CN120034043APending Publication Date: 2025-05-23GIGADEVICE SEMICON (BEIJING) INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311568718.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-11-22
Publication Date
2025-05-23

AI Technical Summary

Technical Problem

The lack of a high-precision and robust back EMF zero crossing detection method in the prior art leads to incorrect detection of back EMF zero crossing point in the case of large interference of commutation flow, affecting the accuracy of the commutation and speed measurement of the motor.

Method used

By sampling the three-phase terminal voltage of the brushless DC motor, saving the terminal voltage data of the history and the current PWM period, determining whether the terminal voltage of the suspended phase is in a specific range, distinguishing between effective data and burr interference, and then accurately determining the zero crossing point of the back electromotive force.

Benefits of technology

It improves the accuracy and robustness of back electromotive force zero-crossing point detection, adapts to changes in burr interference under different working conditions, reduces false detection, and enhances the accuracy of motor control.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120034043A_ABST
    Figure CN120034043A_ABST
Patent Text Reader

Abstract

The invention provides a counter electromotive force zero crossing point detection method and a motor control method. The counter electromotive force zero crossing point detection method comprises the following steps: storing terminal voltage data of a historical period; and obtaining a first judgment result based on the historical period terminal voltage data. And distinguishing whether the current suspended phase end voltage is valid data or burr interference at least based on the first judgment result. And executing a subsequent zero crossing point judgment process according to a judgment result. According to the configuration, the historical periodic terminal voltage data is incorporated into glitch interference judgment, real-time changes of the system environment can be adapted, the influence of glitch interference under different conditions and different durations on the final judgment result is eliminated, the precision and robustness of the detection method are improved, and the detection accuracy is improved. The problem that a high-precision and high-robustness counter electromotive force zero crossing point detection method is lacked in the prior art is solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of brushless DC motor control, and in particular to a back electromotive force zero-crossing point detection method and a motor control method. Background Art

[0002] During the control process of a brushless DC motor, it is necessary to obtain the rotor position in real time to achieve accurate commutation control of the three-phase winding and speed measurement. For some cost-saving scenarios without position sensors, the motor rotor position is generally estimated by detecting the zero-crossing point of the three-phase back electromotive force. Figure 1 As shown, there is a zero-crossing point every 60° for the three-phase back electromotive force. The position of the rotor can be obtained by detecting the corresponding zero-crossing point, which is used for the three-phase winding commutation conduction control.

[0003] Figure 1 Medium EMF A Represents the back electromotive force of phase A, EMF B Represents the back electromotive force of phase B, EMF C It indicates the back electromotive force of phase C. The selection of phases A, B and C can be selected according to actual needs.

[0004] There are currently two existing back-EMF zero-crossing detection schemes. The first scheme is to build a special circuit structure, divide and filter the three-phase terminal voltage, build a virtual neutral point voltage Um, and use a comparator to compare Ua / Ub / Uc with Um to detect the back-EMF zero-crossing point.

[0005] In practical applications, due to the phase-commutation continuous current, interference glitches will be generated on the terminal voltage, and the magnitude and duration of the glitches are proportional to the magnitude of the motor winding current. Figure 2 As shown in the figure, the above method may cause the back electromotive force to cross the zero point incorrectly when the commutation glitch is large and difficult to filter out, causing commutation and speed measurement errors. If the filter capacitor is increased to filter out the glitch, it will bring a larger zero-crossing delay and also cause commutation errors. Figure 2 Middle,U dc That is, the bus voltage, that is, in this case, U dc =24V.

[0006] Another method is to use the ADC module of the MCU to directly collect the three-phase terminal voltage after voltage division and determine the zero-crossing point through a software algorithm.

[0007] In this method, the ADC sampling is started after a certain delay after the phase change to avoid glitch interference. The collected terminal voltage is compared with a fixed threshold. When it is higher than the threshold voltage (U dc / 2), it is determined as a zero crossing point. However, since the duration of the glitch signal generated by the phase-commutation continuous current is proportional to the winding current, the delay time is difficult to determine. When starting, accelerating or carrying a large load, the current is large and the glitch lasts for a long time, and a large delay time is required to avoid the glitch; when the no-load speed is high, the zero crossing detection window is short. A fixed delay time is difficult to cope with various complex situations. In addition, this method only detects the terminal voltage of the suspended phase (i.e., the non-conducting phase) within a certain phase-commutation cycle, and compares it with the fixed threshold (U dc / 2) is compared, it cannot cope with the fluctuation and reduction of bus voltage.

[0008] In summary, the prior art lacks a high-precision and robust back-electromotive force zero-crossing detection method. Summary of the invention

[0009] The object of the present invention is to provide a back electromotive force zero-crossing detection method and a motor control method, so as to solve the problem that there is a lack of a high-precision and robust back electromotive force zero-crossing detection method in the prior art.

[0010] In order to solve the above technical problems, the present invention provides a back electromotive force zero-crossing point detection method, which is applied to a motor, wherein the motor is a brushless DC motor.

[0011] The back electromotive force zero-crossing point detection method includes: sampling the three-phase terminal voltages of the motor; saving the historical PWM cycle terminal voltage data and the current PWM cycle terminal voltage data of the three-phase terminal voltages of the motor; judging whether the historical suspended phase terminal voltage in the historical PWM cycle terminal voltage data is in a first range, and setting it as a first determination result; judging whether the current suspended phase terminal voltage in the current PWM cycle terminal voltage data is in a second range, and setting it as a second determination result; distinguishing whether the current suspended phase terminal voltage is valid data or burr interference based on at least the first determination result and the second determination result; and, if the current suspended phase terminal voltage is valid data, judging the zero-crossing point of the back electromotive force of the suspended phase of the motor based on the current PWM cycle terminal voltage data.

[0012] Optionally, the back electromotive force zero-crossing detection method also includes: determining whether the jump value of the current suspended phase terminal voltage is less than the voltage jump range, and setting it as a third judgment result; wherein the voltage jump range is set based on the back electromotive force constant and maximum operating speed of the motor.

[0013] The step of distinguishing whether the current floating phase terminal voltage is valid data or glitch interference based on at least the first judgment result and the second judgment result is: distinguishing whether the current floating phase terminal voltage is valid data or glitch interference based on the first judgment result, the second judgment result and the third judgment result.

[0014] Optionally, the step of saving the historical PWM cycle terminal voltage data and the current PWM cycle terminal voltage data further includes: only saving the historical PWM cycle terminal voltage data sampled in the previous PWM cycle.

[0015] The first determination result is obtained by using the historical PWM cycle terminal voltage data which differs from the current PWM cycle by one PWM cycle time.

[0016] Optionally, the step of sampling the three-phase terminal voltage of the motor is: based on a timer triggering ADC to collect the three-phase terminal voltage during the conduction period of each PWM cycle.

[0017] Optionally, the step of determining whether the historical suspended phase terminal voltage in the historical PWM period terminal voltage data is within the first range and setting it as the first determination result comprises: calculating U min (tT) = min{U A (tT), U B (tT), U C (tT)} and U max (tT) = max{U A (tT), U B (tT), U C (tT)}; and if U min (tT) D (tT) max (tT), the first determination result is that it is within the first range; otherwise, the first determination result is that it is not within the first range.

[0018] The step of determining whether the current suspended phase terminal voltage in the current PWM period terminal voltage data is within the second range and setting it as the second determination result comprises: calculating U min (t) = min{U A (t), U B (t), U C (t)} and U min (t) = max{U A (t), U B (t), U C (t)}; and if U min (t) D (t) max (t), the second determination result is that it is in the second range; otherwise, the second determination result is that it is not in the second range.

[0019] Among them, U D (x) represents the terminal voltage of the suspended phase at time x; U​​​​A (x), U B (x) and U C (x) represents the terminal voltage of one of the three-phase terminal voltages at time x; t represents the sampling time of the current PWM cycle, (tT) represents the sampling time of the historical PWM cycle, and T is the length of a PWM cycle; min{} is calculated by taking the minimum value, and max{} is calculated by taking the maximum value.

[0020] Optionally, the step of saving the historical period terminal voltage data of the three-phase terminal voltage of the motor is: only saving the U sampled in the previous PWM cycle min (x), U max (x) and U D (x).

[0021] Optionally, the back electromotive force zero-crossing detection method further includes: calculating dU D (t)=|U D (t)-U D (tT)|; and, compare dU D (t) and dU max and set as the third determination result; wherein dU max Based on the back EMF constant and maximum operating speed setting of the motor.

[0022] The step of distinguishing whether the current floating phase terminal voltage is valid data or glitch interference based on at least the first judgment result and the second judgment result is: distinguishing whether the current floating phase terminal voltage is valid data or glitch interference based on the first judgment result, the second judgment result and the third judgment result.

[0023] Among them, U D (x) represents the terminal voltage of the suspended phase at time x; t represents the sampling time of the current PWM cycle, (tT) represents the sampling time of the historical PWM cycle, and T is the length of a PWM cycle.

[0024] Optionally, the step of determining the zero-crossing point of the back electromotive force of the suspended phase of the motor based on the current PWM period terminal voltage data includes: calculating U m (t)=(U A (t)+U B (t)+U C (t)) / 3; and if U D (tT) m (t) D (t), judged as a rising edge crossing the zero point; if U D (t) m (t) D ​​​​(tT), it is judged as a falling edge crossing the zero point; in other cases, it is judged as not a zero crossing point.

[0025] Among them, U D (x) represents the terminal voltage of the suspended phase at time x; U A (x), U B (x) and U C (x) represents the terminal voltage of one phase of the three-phase terminal voltage at time x; t represents the sampling time of the current PWM cycle, (tT) represents the sampling time of the historical PWM cycle, and T is the length of a PWM cycle.

[0026] Optional, if U D (tT) m (t) D (t), determine that time t is the zero crossing point of the rising edge of phase D; if U D (t) m (t) D (tT), the determination time t is the falling edge zero crossing point of the D phase, where the D phase is the suspended phase among the three phases.

[0027] In order to solve the above technical problems, the present invention also provides a motor control method, which is applied to a motor, wherein the motor is a brushless DC motor. The motor control method comprises: determining the zero crossing point of the back electromotive force of the suspended phase of the motor based on the above-mentioned back electromotive force zero crossing point detection method; and determining the commutation timing based on the zero crossing point.

[0028] Compared with the prior art, the present invention provides a back electromotive force zero-crossing detection method and a motor control method, wherein the back electromotive force zero-crossing detection method includes: saving historical cycle terminal voltage data. Obtaining a first judgment result based on the historical cycle terminal voltage data. Distinguishing whether the current suspended phase terminal voltage is valid data or glitch interference based at least on the first judgment result. And, executing the subsequent zero-crossing judgment process according to the judgment result. With such a configuration, incorporating the historical cycle terminal voltage data into the judgment of glitch interference can adapt to real-time changes in the system environment, eliminate the influence of glitch interference of different durations under different conditions on the final judgment result, improve the accuracy and robustness of the detection method, and solve the problem of the lack of a high-precision and robust back electromotive force zero-crossing detection method in the prior art. BRIEF DESCRIPTION OF THE DRAWINGS

[0029] Those skilled in the art will appreciate that the accompanying drawings are provided for a better understanding of the present invention and do not constitute any limitation on the scope of the present invention.

[0030] Figure 1 This is a schematic diagram of the back electromotive force zero crossing point;

[0031] ​​​​ Figure 2 This is a schematic diagram of misdetection caused by burr interference;

[0032] Figure 3 1 is a schematic flow chart of a method for detecting a zero-crossing point of back electromotive force according to an embodiment of the present invention;

[0033] Figure 4 is a waveform diagram of the terminal voltage of a suspended phase according to an embodiment of the present invention;

[0034] Figure 5 It is another flow chart of a method for detecting a back electromotive force zero-crossing point according to an embodiment of the present invention. DETAILED DESCRIPTION

[0035] In order to make the purpose, advantages and features of the present invention clearer, the present invention is further described in detail below in conjunction with the accompanying drawings and specific embodiments. It should be noted that the drawings are all in a very simplified form and are not drawn to scale, and are only used to conveniently and clearly assist in explaining the purpose of the embodiments of the present invention. In addition, the structure shown in the drawings is often a part of the actual structure. In particular, the emphasis of each drawing is different, and sometimes different scales are used.

[0036] As used in the present invention, the singular forms "one", "an" and "the" include plural objects, the term "or" is generally used to include the meaning of "and / or", the term "several" is generally used to include the meaning of "at least one", and the term "at least two" is generally used to include the meaning of "two or more". In addition, the terms "first", "second" and "third" are only used for descriptive purposes and cannot be understood as indicating or implying relative importance or implicitly indicating the number of technical features indicated. Therefore, the features defined as "first", "second" and "third" may explicitly or implicitly include one or at least two of the features, "one end" and "the other end" and "the proximal end" and "the distal end" generally refer to two corresponding parts, which include not only the endpoints, and the terms "installed", "connected" and "connected" should be understood in a broad sense, for example, it can be a fixed connection, a detachable connection, or an integral body; it can be a mechanical connection or an electrical connection; it can be directly connected or indirectly connected through an intermediate medium, it can be the internal connection of two elements or the interaction relationship between two elements. In addition, as used in the present invention, an element disposed on another element generally only indicates that there is a connection, coupling, cooperation or transmission relationship between the two elements, and the connection, coupling, cooperation or transmission between the two elements may be direct or indirect through an intermediate element, and cannot be understood as indicating or implying the spatial position relationship between the two elements, that is, one element may be in any orientation such as inside, outside, above, below or on one side of another element, unless otherwise clearly indicated in the content. For ordinary technicians in this field, the specific meanings of the above terms in the present invention can be understood according to specific circumstances.

[0037] The core idea of ​​the present invention is to provide a back electromotive force zero-crossing detection method, a motor control method and a storage medium to solve the problem of lack of a high-precision and robust back electromotive force zero-crossing detection method in the prior art.

[0038] The following description is given with reference to the accompanying drawings.

[0039] Please refer to Figure 3 This embodiment provides a back electromotive force zero-crossing detection method, which is applied to a motor, wherein the motor is a brushless DC motor, and the back electromotive force zero-crossing detection method includes:

[0040] S10, sampling the three-phase terminal voltage of the motor.

[0041] S20, saving historical PWM cycle terminal voltage data and current PWM cycle terminal voltage data of the three-phase terminal voltage of the motor.

[0042] S30, determining whether the historical suspended phase terminal voltage in the historical PWM period terminal voltage data is within a first range, and setting the range as a first determination result.

[0043] S40, determining whether the current suspended phase terminal voltage in the current PWM period terminal voltage data is within a second range, and setting the range as a second determination result.

[0044] S50, distinguishing whether the current floating phase terminal voltage is valid data or glitch interference based at least on the first determination result and the second determination result.

[0045] And, S60, if the current suspended phase terminal voltage is glitch interference, skip the judgment; if the current suspended phase terminal voltage is valid data, judge the zero crossing point of the back electromotive force of the suspended phase of the motor based on the current PWM cycle terminal voltage data.

[0046] In step S20, the current PWM cycle terminal voltage data will become the historical PWM cycle terminal voltage data in the next PWM cycle, so saving the current data is actually equivalent to saving the historical data. This description is only to make the solution clearer.

[0047] The setting principle of step S30 is: considering that the generation of glitch signal is related to the phase-changing continuous flow action, and in the same operation process of the motor, the time period of the phase-changing continuous flow action in each PWM (pulse width modulation) cycle has a certain connection. Therefore, the possible time period of the phase continuous flow action can be analyzed through the historical PWM cycle terminal voltage data, and used as the basis for eliminating glitch interference. Step S30 has two advantages: on the one hand, it can still extract empirical data from the historical PWM cycle terminal voltage data to eliminate glitch interference; on the other hand, it can change with the change of the motor operation situation, which provides the possibility of shifting the time period of glitch interference under different working conditions.

[0048] In step S50, the specific logic can be set according to actual needs. For example, when both the first judgment result and the second judgment result are yes, it is considered to be valid data. It can also be other logics, for example, as long as one of them is judged to be yes, it is considered to be valid data. Or other more complex judgment logic.

[0049] In another embodiment, step S50 may be further optimized as follows: based on the first determination result, the second determination result and the third determination result, distinguish whether the current floating phase terminal voltage is valid data or glitch interference.

[0050] In a further embodiment, the third judgment result is implemented based on the following steps: S41 (not shown in the figure), determining whether the jump value of the current suspended phase terminal voltage is less than the voltage jump range, and setting it as the third judgment result; wherein, the voltage jump range is based on the back electromotive force constant and the maximum operating speed setting of the motor.

[0051] With this configuration, glitch detection is performed from three perspectives: historical PWM cycle terminal voltage data, current PWM cycle terminal voltage data, and jump range, thereby improving accuracy.

[0052] Preferably, in step S10, the step of sampling the three-phase terminal voltage of the motor is: based on a timer triggering an ADC (Analog To Digital Converter) to simultaneously sample the three-phase terminal voltage during the on-period of each PWM cycle.

[0053] In one embodiment, please refer to Figure 4 Step S30 includes: calculating U min (tT) = min{U A (tT), U B (tT), U C (tT)} and U max (tT) = max{U A (tT), U B (tT), U C (tT)}; and if U min (tT) D (tT) max (tT), the first determination result is that it is within the first range; otherwise, the first determination result is that it is not within the first range. min (tT)~U max (tT) is the first range.

[0054] Step S40 includes: calculating U min (t) = min{U A (t), U B (t), U C (t)} and U min (t) = max{U A (t), U B (t), U C (t)}; and if U min (t) D (t) max (t), the second determination result is that it is in the second range; otherwise, the second determination result is that it is not in the second range. min (t)~U​​​​max (t) is the second range.

[0055] Among them, U D (x) represents the terminal voltage of the suspended phase at time x; U A (x), U B (x) and U C (x) represents the terminal voltage of one phase at time x; t represents the sampling time of the current PWM cycle, (tT) represents the sampling time of the historical PWM cycle, and T is the duration of a PWM cycle; min{} is the minimum value, and max{} is the maximum value. That is, in this embodiment, the terminal voltage U D (x) should be the middle value of the three voltage values ​​of the three-phase terminal voltage sampled in the corresponding PWM cycle, that is, U D (t) is {U A (t), U B (t), U C (t)} The middle value among the three, U D (tT) is also {U A (tT), U B (tT), U C (tT)} is the middle value among the three.

[0056] Figure 4 In the first half, phase A is a suspended phase. When the back electromotive force is detected to pass through zero, the motor switches phases, and phase A in the second half is not a suspended phase. Figure 4 The t is marked 1 The calculation parameters at time, that is, t 1 The time is the sampling time of the current PWM cycle (t 1 The time can be the current PWM cycle, triggering the ADC to sample the three-phase currents and thus calculate the three-phase terminal voltages. Figure 4 It can be observed that t 1 -T time is not the time of glitch interference. 1 -T is the sampling time of the previous PWM cycle (t 1 -T is, for example, the moment of the previous PWM cycle, which triggers the ADC to sample the three-phase currents and calculate the three-phase terminal voltages. Then, t 1 -TT is always in mutation interference, so t 1 -T time is considered as not free from glitch interference.

[0057] From the above logic, it can be seen that step S20, the step of saving the historical PWM cycle terminal voltage data and the current PWM cycle terminal voltage data of the three-phase terminal voltage of the motor can be: only saving the historical PWM cycle terminal voltage data of the previous PWM cycle length.

[0058] Step S41 includes: calculating dU D (t)=|U D (t)-U D (tT)|; and, compare dU D (t) and dU max and set as the third determination result; wherein dU max Based on the back EMF constant and maximum operating speed setting of the motor. D (t) is also the jump value of the current suspended phase terminal voltage described in the above embodiment, dU max That is, the voltage jump range described in the above embodiment. The content of step S41 is Figure 4 It is not reflected in the text, but readers of this application can understand its meaning.

[0059] An implementation logic for distinguishing whether the current floating phase terminal voltage is valid data or glitch interference based on the first determination result, the second determination result and the third determination result is: if the first determination result, the second determination result and the third determination result are all yes, the conclusion is valid data, in other cases, the conclusion is glitch interference.

[0060] Please continue to refer to Figure 4 Step S60, the step of judging whether the motor is at the zero-crossing moment based on the current PWM period terminal voltage data comprises: calculating U m (t)=(U A (t)+U B (t)+U C (t)) / 3; and, if U D (tT) m (t) D (t), judged as a rising edge crossing the zero point; if U D (t) m (t) D (tT), it is judged as a falling edge crossing zero; in other cases, it is judged as not a zero crossing. At the same time, save the current U D (t), U min (t), U max (t) For subsequent testing.

[0061] Figure 4 In, t ZC The time is the theoretical time when the back electromotive force of the suspended phase in the three-phase system passes through zero. The judgment result of this method is that the sampling time t of the current PWM cycle is 1 That is to say, in different embodiments, the time that meets U D (t​​​​1 -T) <U m (t 1 ) <U D (t 1 ) and U D (t 1 ) <U m (t 1 ) <U D (t 1 The moment t of -T 1 As the zero crossing point, on this basis, t 1 and (t 1 -T) can be used for linear interpolation, and the result is used as the zero crossing point.

[0062] Furthermore, if U D (t 1 -T) <U m (t 1 ) <U D (t 1 ), it is determined that the moment t 1 is the rising edge zero crossing point of phase D; if U D (t 1 ) <U m (t 1 ) <U D (t 1 -T), it is determined that the moment t 1 is the falling edge zero crossing point of phase D, where phase D is the floating phase among the three phases.

[0063] The above process can also be summarized as: the first determination result is obtained by using the historical PWM cycle terminal voltage data that differs from the current moment by a PWM cycle duration.

[0064] And only save U min (x), U max (x) and U D (x) for a PWM cycle duration.

[0065] Taking the floating phase as phase A as an example, the flow of the back electromotive force zero crossing detection method is as Figure 5 shown, including:

[0066] S101, initialize each variable to 0.

[0067] S102, determine the phase to be detected and the edge according to the current commutation step, such as the rising edge of phase A.

[0068] S103, the timer triggers the ADC to collect the three-phase terminal voltages U A (t), U B (t) and U C (t) at moment t.

[0069] S104, calculate the neutral point voltage U at time t m (t)=(U A (t)+U B (t)+U C (t)) / 3.

[0070] S105, calculate the maximum value U of the three-phase terminal voltage at time t max (t) and minimum value U min (t).

[0071] S106, Record U A (t), U max (t) and U min (t) is used for the next judgment.

[0072] S107, calculating the terminal voltage difference dU of the phase to be detected (i.e., the suspended phase A) before and after the PWM cycle A (t)=|U A (t)-U A (tT)|. It can be understood that when the suspended phase changes, the subscript A in S107 will change accordingly.

[0073] S108, determine whether the phase voltage to be detected satisfies U min (tT) A (tT) max (tT); if satisfied, jump to step S110, otherwise, jump to step S109.

[0074] S109, determine it is a burr interference signal and continue detection.

[0075] S110, determine whether the phase voltage to be detected satisfies U min (t) A (t) max (t); If satisfied, jump to step S111, otherwise, jump to step S109.

[0076] S111, determine whether the phase voltage difference to be detected satisfies dU A (t) <dU max ; If satisfied, jump to step S112, otherwise, jump to step S109.

[0077] S112, determine whether the phase voltage difference to be detected satisfies U A (t)>U m (t)>U A ​​​​(tT); if satisfied, jump to step S113, otherwise, jump to step S102. It should be understood that there is a corresponding relationship between the judgment condition in S112 here and the determination of the rising edge\falling edge in step S102. The specific corresponding relationship can be referred to the description of step S60 in the previous text.

[0078] S113, determine it is a valid zero-crossing point.

[0079] S114, setting the next phase switching step.

[0080] Among them, step S103 corresponds to step S10, steps S104 and S112 correspond to step S60, steps S105 and S108 correspond to step S30, step S106 corresponds to step S20, steps S107 and S111 correspond to step S41, and steps S105 and S110 correspond to step S40. The process conversion relationship between steps S108, S109, S110, and S111 corresponds to step S50. Steps S112 and S113 correspond to step S60.

[0081] This embodiment also provides a motor control method, which is applied to a motor, wherein the motor is a brushless DC motor. The motor control method includes: determining the zero-crossing point of the back electromotive force of the suspended phase of the motor based on the above-mentioned back electromotive force zero-crossing point detection method; and determining the commutation timing based on the zero-crossing point.

[0082] For example, in one embodiment, phase switching is performed while a zero crossing is detected; in another embodiment, when a zero crossing is detected, phase switching is performed at a predicted time point 30° after the zero crossing based on a prediction of the zero crossing; or, phase switching is performed based on other delay logic.

[0083] This embodiment also provides a storage medium, on which a program is stored. When the program is run, the above-mentioned back electromotive force zero-crossing detection method is executed, or the above-mentioned motor control method is executed. The storage medium can be understood as a computer storage medium, such as a hard disk, a USB flash drive, a memory, etc. The above-mentioned storage medium provides a prerequisite for burning the software of the relevant controller. The storage medium can also be understood as a storage module of the controller or a circuit structure of the controller. The above-mentioned storage medium can support the operation of the relevant method.

[0084] The above-mentioned motor control method and storage medium are both closely related to the back electromotive force zero-crossing point detection method, and can also solve the problem of lack of high-precision and robust back electromotive force zero-crossing point detection method in the prior art.

[0085] In summary, the present embodiment provides a back electromotive force zero-crossing detection method, a motor control method and a storage medium. Among them, the back electromotive force zero-crossing detection method includes: saving historical cycle terminal voltage data. Obtaining a first judgment result based on the historical cycle terminal voltage data. At least based on the first judgment result, distinguish whether the current suspended phase terminal voltage is valid data or glitch interference. And, executing the subsequent zero-crossing judgment process according to the judgment result. Such a configuration incorporates the historical cycle terminal voltage data into the judgment of glitch interference, which can adapt to the real-time changes of the system environment, eliminate the influence of glitch interference of different durations under different conditions on the final judgment result, improve the accuracy and robustness of the detection method, and solve the problem of the lack of high-precision and robust back electromotive force zero-crossing detection method in the prior art.

[0086] The above description is only a description of the preferred embodiment of the present invention, and is not intended to limit the scope of the present invention. Any changes or modifications made by a person skilled in the art in the field of the present invention based on the above disclosure shall fall within the scope of protection of the technical solution of the present invention.

Claims

1. A method for detecting the zero-crossing point of back electromotive force, It is characterized in that Applied to a motor, the motor is a brushless DC motor, and the back electromotive force zero-crossing detection method includes: Sampling the three-phase terminal voltage of the motor; Saving historical PWM cycle terminal voltage data and current PWM cycle terminal voltage data of the three-phase terminal voltage of the motor; Determine whether the historical suspended phase terminal voltage in the historical PWM period terminal voltage data is within a first range, and set the result as a first determination result; Determine whether the current suspended phase terminal voltage in the current PWM period terminal voltage data is within a second range, and set the result as a second determination result; Distinguishing whether the current floating phase terminal voltage is valid data or glitch interference based at least on the first determination result and the second determination result; and, If the current suspended phase terminal voltage is valid data, the zero-crossing point of the back electromotive force of the suspended phase of the motor is determined based on the current PWM period terminal voltage data.

2. The back electromotive force zero-crossing detection method according to claim 1, It is characterized in that The back electromotive force zero-crossing detection method further comprises: Determine whether the jump value of the current suspended phase terminal voltage is less than the voltage jump range, and set it as a third determination result; wherein the voltage jump range is set based on the back electromotive force constant and the maximum operating speed of the motor; The step of distinguishing whether the current floating phase terminal voltage is valid data or glitch interference based on at least the first judgment result and the second judgment result is: distinguishing whether the current floating phase terminal voltage is valid data or glitch interference based on the first judgment result, the second judgment result and the third judgment result.

3. The back electromotive force zero-crossing detection method according to claim 1, It is characterized in that The step of saving the historical PWM cycle terminal voltage data and the current PWM cycle terminal voltage data further includes: saving only the historical PWM cycle terminal voltage data sampled in the previous PWM cycle; The first determination result is obtained by using the historical PWM cycle terminal voltage data which differs from the current PWM cycle by one PWM cycle time.

4. The back electromotive force zero-crossing detection method according to claim 1, It is characterized in that The step of sampling the three-phase terminal voltage of the motor is: based on a timer triggering ADC to collect the three-phase terminal voltage during the conduction period of each PWM cycle.

5. The back electromotive force zero-crossing detection method according to claim 1, It is characterized in that The step of determining whether the historical suspended phase terminal voltage in the historical PWM period terminal voltage data is within the first range and setting it as the first determination result comprises: Calculate U min (t - T) = min{U A (t - T), U B (t - T), U C (t - T)} and U max (t - T) = max{U A (t - T), U B (t - T), U C (t - T)}; and, If U min (tT) D (tT) max (tT), the first determination result is that it is within the first range; otherwise, the first determination result is that it is not within the first range;​​ The step of judging whether the current suspended phase terminal voltage in the current PWM period terminal voltage data is within the second range and setting the second judgment result as the second judgment result comprises: Calculate U min (t) = min{U A (t), U B (t), U C (t)} and U min (t) = max{U A (t), U B (t), U C (t)}; and, If U min (t) D (t) max (t), the second determination result is that it is within the second range; otherwise, the second determination result is that it is not within the second range;​​ Among them, U D (x) represents the terminal voltage of the suspended phase at time x; U A (x), U B (x) and U C (x) represents the terminal voltage of one of the three-phase terminal voltages at time x; t represents the sampling time of the current PWM cycle, (tT) represents the sampling time of the historical PWM cycle, and T is the length of a PWM cycle; min{} is calculated by taking the minimum value, and max{} is calculated by taking the maximum value.

6. The back electromotive force zero-crossing detection method according to claim 5, It is characterized in that The step of storing the historical periodic terminal voltage data of the three-phase terminal voltage of the motor is as follows: only storing the U sampled in the previous PWM cycle min (x), U max (x) and U D (x).

7. The back electromotive force zero-crossing detection method according to claim 1, It is characterized in that The back electromotive force zero-crossing detection method further comprises: Calculate dU D (t)=|U D (t)-U D (tT)|; and, Compare dU D (t) and dU max and set as the third determination result; wherein dU max Based on the back electromotive force constant and the maximum operating speed setting of the motor; The step of distinguishing whether the current floating phase terminal voltage is valid data or glitch interference based on at least the first determination result and the second determination result is: distinguishing whether the current floating phase terminal voltage is valid data or glitch interference based on the first determination result, the second determination result and the third determination result; Among them, U D (x) represents the terminal voltage of the suspended phase at time x; t represents the sampling time of the current PWM cycle, (tT) represents the sampling time of the historical PWM cycle, and T is the length of a PWM cycle.

8. The back electromotive force zero-crossing detection method according to claim 1, It is characterized in that The step of determining the zero-crossing point of the back electromotive force of the suspended phase of the motor based on the current PWM period terminal voltage data comprises: Calculate U m (t)=(U A (t)+U B (t)+U C (t)) / 3; and, If U D (tT) m (t) D (t), judged as a rising edge crossing the zero point; if U D (t) m (t) D (tT), it is judged as a falling edge crossing zero point; in other cases, it is judged as not a zero crossing point;​​​​ Among them, U D (x) represents the terminal voltage of the suspended phase at time x; U A (x), U B (x) and U C (x) represents the terminal voltage of one phase of the three-phase terminal voltage at time x; t represents the sampling time of the current PWM cycle, (tT) represents the sampling time of the historical PWM cycle, and T is the length of a PWM cycle.

9. The back electromotive force zero-crossing detection method according to claim 8, It is characterized in that If U D (tT) m (t) D (t), determine that time t is the zero crossing point of the rising edge of phase D; if U D (t) m (t) D (tT), the determination time t is the falling edge zero crossing point of the D phase, where the D phase is the suspended phase among the three phases.​​​​ 10. A motor control method, It is characterized in that Applied to a motor, the motor is a brushless DC motor, and the motor control method comprises: determining the zero-crossing point of the back electromotive force of the suspended phase of the motor based on the back electromotive force zero-crossing point detection method as described in any one of claims 1 to 9; and determining the commutation timing based on the zero-crossing point.