Starting method and device of brushless motor, electric control device, massage equipment and storage medium
By adjusting the pulse signal and commutation cycle based on the cumulative number of zero crossings during the brushless motor startup process, the problems of low startup efficiency and jitter in brushless motors are solved, resulting in a smoother and more reliable startup process.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- GUANGDONG SKG INTELLIGENT TECH CO LTD
- Filing Date
- 2022-06-17
- Publication Date
- 2026-06-12
Smart Images

Figure CN115189602B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of circuit control technology, and in particular to a method, apparatus, electronic control device, massage device, and storage medium for starting a brushless motor. Background Technology
[0002] With the advancement of science and technology, most electronic control devices used in daily life are equipped with brushless motors. These devices control different functions by switching between brushless motors.
[0003] Currently, in most electronic control devices, the starting process of a brushless motor requires precise knowledge of the motor's rotor position. After determining the initial rotor position, the central processing unit (CPU) of the electronic control device changes the applied voltage and commutation signal to gradually accelerate the motor from a standstill, thus controlling the start-up of the brushless motor. This process typically employs either a constant frequency boost method or a constant voltage boost method to gradually accelerate the motor and complete the start-up. However, regardless of the method used, one variable needs to be changed. For control systems, frequency or voltage is usually adjusted according to fixed parameters. If the adjusted frequency or voltage does not meet the requirements of the electronic control device, the starting process may fail to smoothly enter the closed loop or experience severe jitter, leading to low efficiency in the motor starting process. Summary of the Invention
[0004] This application provides a method, apparatus, electronic control device, massage device, and storage medium for starting a brushless motor. It can update the pulse signal and commutation cycle based on the collected zero-crossing cumulative number of times until the brushless motor enters the closed-loop control stage, thereby improving the flexibility and efficiency of starting the brushless motor.
[0005] On one hand, this application provides a method for starting a brushless motor. The method is applied to an electronic control device, which includes a brushless motor and a power control unit. When the electronic control device is working, the power control unit generates a pulse signal, which is used to drive the brushless motor to commutate. The control method includes:
[0006] Obtain the working duration of the pulse signal;
[0007] When the working time reaches a preset proportion of the commutation cycle, zero-crossing detection is performed and the cumulative number of zero-crossings is updated;
[0008] When the cumulative number of zero crossings has not reached the preset number of zero crossings, the duty cycle of the pulse signal and the commutation period are updated according to the cumulative number of zero crossings. The steps of performing zero crossing detection and updating the cumulative number of zero crossings are repeated until the cumulative number of zero crossings reaches the preset number of zero crossings to control the brushless motor to enter the closed-loop stage.
[0009] Optionally, when the cumulative number of zero crossings has not reached a preset number, updating the duty cycle of the pulse signal and the commutation period based on the cumulative number of zero crossings includes:
[0010] When the cumulative number of zero crossings has not reached the preset number of zero crossings, the duty cycle of the pulse signal is updated according to the first preset rule based on the cumulative number of zero crossings, so as to increase the duty cycle of the pulse signal.
[0011] Based on the cumulative number of zero crossings, the commutation period is updated according to the second preset rule to reduce the commutation period.
[0012] Optionally, the working duration for acquiring the pulse signal includes:
[0013] Record the number of pulses of the pulse signal;
[0014] The working duration of the pulse signal is obtained based on the number of pulses.
[0015] Optionally, before obtaining the working duration of the pulse signal based on the number of pulses, the method further includes:
[0016] Detect whether the number of pulses is less than a preset number of pulses;
[0017] When the number of pulses is less than the preset number of pulses, the step of obtaining the working duration of the pulse signal based on the number of pulses is executed.
[0018] Optionally, updating the commutation period according to the cumulative number of zero crossings and a second preset rule to reduce the commutation period includes:
[0019] Based on the cumulative number of zero crossings, the preset pulse count is updated according to the second preset rule to reduce the preset pulse count;
[0020] The updated commutation period is obtained based on the updated preset pulse number in order to reduce the commutation period.
[0021] Optionally, when the cumulative number of zero crossings has not reached the preset number of zero crossings, updating the duty cycle of the pulse signal and the commutation period based on the cumulative number of zero crossings, and repeating the steps of performing zero crossing detection and updating the cumulative number of zero crossings, includes:
[0022] If the cumulative number of zero crossings does not reach the preset number of zero crossings, the step of detecting whether the number of pulses is less than the preset number of pulses will be executed again.
[0023] When the number of pulses is greater than or equal to the preset number of pulses, the step of updating the duty cycle of the pulse signal and the commutation period based on the cumulative number of zero crossings is executed.
[0024] And clear the recorded pulse count of the pulse signal to zero;
[0025] Repeat the step of obtaining the working duration of the pulse signal based on the number of pulses.
[0026] Optionally, obtaining the cumulative number of zero-crossings includes:
[0027] Retrieve the number of zero-crossing detections recorded;
[0028] The cumulative number of zero-crossings is determined based on the number of zero-crossing detections.
[0029] Optionally, the acquisition of the number of zero-crossing detections for the records includes:
[0030] Obtain the sampled value of the analog-to-digital converter for the currently floating phase;
[0031] When the sampled value meets the preset condition, the zero-crossing detection count is increased by one to obtain the current zero-crossing detection count;
[0032] When the sampled value does not meet the preset condition, the step of obtaining the working duration of the pulse signal is executed.
[0033] On the other hand, embodiments of this application provide a starting device for a brushless motor. This device is applied to an electronic control device, which includes a brushless motor and a power control unit. When the electronic control device is operating, the power control unit generates a pulse signal, which is used to drive the brushless motor to commutate. The control device includes:
[0034] The duration acquisition module is used to acquire the working duration of the pulse signal;
[0035] The first execution module is used to perform zero-crossing detection and update the cumulative number of zero-crossings when the working time reaches a preset proportion of the commutation cycle;
[0036] The second execution module is used to update the duty cycle of the pulse signal and the commutation period according to the cumulative number of zero crossings when the cumulative number of zero crossings has not reached the preset number of zero crossings, and repeat the steps of performing zero crossing detection and updating the cumulative number of zero crossings until the cumulative number of zero crossings reaches the preset number of zero crossings to control the brushless motor to enter the closed-loop stage.
[0037] On the other hand, embodiments of this application provide an electronic control device, which includes a memory and a processor. The memory stores a computer program, and when the computer program is executed by the processor, the processor enables the processor to implement the brushless motor starting method as described in one aspect above.
[0038] On the other hand, embodiments of this application provide a massage device, which includes an electronic control device as described in one aspect above.
[0039] On the other hand, embodiments of this application provide a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the brushless motor starting method as described in one aspect above.
[0040] On the other hand, embodiments of this application provide a computer program product that, when run on a computer, causes the computer to execute the brushless motor starting method as described in one aspect above.
[0041] On the other hand, embodiments of this application provide an application publishing platform for publishing computer program products, wherein when the computer program product is run on a computer, the computer executes the brushless motor starting method as described in one aspect above.
[0042] The technical solutions provided in this application embodiment may include at least the following beneficial effects:
[0043] The electronic control device provided in this application acquires the working duration of the pulse signal; when the working duration reaches a preset proportion of the commutation cycle, it performs zero-crossing detection and updates the cumulative number of zero-crossings; when the cumulative number of zero-crossings has not reached the preset number of zero-crossings, it updates the duty cycle and commutation cycle of the pulse signal according to the cumulative number of zero-crossings, and repeats the steps of zero-crossing detection and updating the cumulative number of zero-crossings until the cumulative number of zero-crossings reaches the preset number of zero-crossings to control the brushless motor to enter the closed-loop stage. This application can control the brushless motor to commutate and collect the cumulative number of zero crossings when the preset proportion of the commutation cycle is reached. Based on the acquired cumulative number of zero crossings, the pulse signal and commutation cycle are updated. As the number of successful zero crossings increases, the pulse signal and commutation cycle are changed accordingly. When the cumulative number of zero crossings and the speed meet the requirements for entering closed-loop control, the motor enters the closed-loop state. The pulse signal and commutation cycle are adaptively adjusted, making the entire open-loop acceleration process smoother. This optimizes the problem of the motor failing to enter the closed loop smoothly or experiencing severe jitter during startup. When the brushless motor adopts the solution of this application, its startup process can be adaptively adjusted to achieve continuous acceleration and rapid open-loop operation, resulting in a smoother and more reliable entry into the closed loop. The entire startup process of the brushless motor is more flexible, improving the startup efficiency of the brushless motor. Attached Figure Description
[0044] Figure 1 This is a flowchart illustrating a method for starting a brushless motor according to an exemplary embodiment of this application;
[0045] Figure 2 This is a flowchart illustrating a method for starting a brushless motor according to an exemplary embodiment of this application;
[0046] Figure 3 This is a schematic diagram of the structure of an electronic control device according to an exemplary embodiment of this application;
[0047] Figure 4 This is a schematic diagram of a circuit structure for driving a brushless motor according to an exemplary embodiment of this application;
[0048] Figure 5 This is a flowchart illustrating a method for starting a brushless motor according to an exemplary embodiment of this application;
[0049] Figure 6 This is a structural block diagram of a brushless motor starting device provided in an exemplary embodiment of this application;
[0050] Figure 7 This is a schematic diagram of the structure of an electronic control device disclosed in an exemplary embodiment of this application. Detailed Implementation
[0051] Exemplary embodiments will now be described in detail, examples of which are illustrated in the accompanying drawings. When the following description relates to the drawings, unless otherwise indicated, the same numbers in different drawings denote the same or similar elements. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with this application. Rather, they are merely examples of apparatuses and methods consistent with some aspects of this application as detailed in the appended claims.
[0052] In this article, "multiple" refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone. The character " / " generally indicates that the preceding and following related objects have an "or" relationship.
[0053] The solution provided in this application can be used in real-world scenarios where people use electronic control devices in their daily lives to control the brushless motor contained within them. To facilitate understanding, some terms and application scenarios involved in the embodiments of this application will be briefly introduced below.
[0054] A brushless direct current motor (BLDC) consists of a motor body and a driver, and is a typical mechatronic product. A brushless motor refers to a motor without brushes and a commutator (or slip rings), also known as a commutatorless motor.
[0055] Electric angle: the angle of rotation of a magnetic field.
[0056] Mechanical angle: The rotation angle of the motor rotor.
[0057] Constant frequency boost method: This refers to the method of gradually increasing the applied voltage to accelerate the brushless motor while keeping the commutation signal frequency constant.
[0058] Constant voltage frequency increase method: This refers to the method of keeping the applied voltage of a brushless motor constant and gradually increasing the frequency of the commutation signal to make the motor gradually accelerate.
[0059] A brushless motor (MT) typically consists of a rotor made of permanent magnets and a stator made of coils. Under three-phase direct current, each pair of coils is energized to generate a magnetic field that can continuously drive the rotor to rotate. When driven in a certain pattern, it will generate an uninterrupted rotating magnetic field, which in turn drives the permanent magnets of the motor to rotate.
[0060] Back electromotive force (EMF) is the induced current generated in a conductor when it moves relative to another conductor in a magnetic field. In a sensorless brushless motor, since there is no position sensor, the magnitude of the back EMF of the phase when the motor is not energized is used to determine the current rotor position.
[0061] Brushless motors, named for their absence of brushes and commutators, consist of a motor body and a driver, making them a typical mechatronic product. As a relatively new product in the motor industry, although they have only been in China for a short time and are more expensive than brushed motors, their significant advantages have led to their rapid expansion into various industries, making them a rising star in the motor sector and ushering in the brushless era.
[0062] With the widespread adoption of microcontrollers, their costs have decreased significantly, accelerating the widespread application of brushless motors. Compared to traditional brushed DC motors, brushless motors eliminate mechanical commutation and use electronic commutation, fundamentally solving the problem of short lifespan caused by brush failure. At the same time, brushless motors are quieter and have greater torque. Currently, brushless motors have found good applications in industrial robots, drones, electric vehicles, machine tools, compressors, and other products.
[0063] In summary, brushless DC motors are characterized by their small size, light weight, long lifespan, high efficiency, low noise, low vibration, spark-free operation, high reliability, good stability, strong adaptability, and simple maintenance. Thanks to their superior performance, brushless DC motors are increasingly being used in the manufacture of home appliances and luxury cars. Consequently, countries around the world are accelerating the development of brushless motor products and increasing their market share. Many Japanese companies have successfully applied brushless DC motors to digital cameras, miniature recorders, camcorders, printers, mobile storage devices, mobile phones, as well as automotive air conditioners, vacuum cleaners, electric vehicles, and heart pumps.
[0064] Today, brushless DC motors can completely replace DC motor speed control, as well as inverter-driven speed control and asynchronous motor-driven speed control. They eliminate the carbon brushes and slip rings, combining all the advantages of traditional brushed motors, resulting in excellent torque characteristics. They offer good torque performance at low and medium speeds, high starting torque, low starting current, stepless speed regulation, a wide speed range, and strong overload capacity. Furthermore, while the lifespan of a conventional brushed DC motor is approximately 10,000 hours, the lifespan of a brushless DC motor is several times longer.
[0065] Furthermore, since brushless DC motors inherently lack excitation and carbon brush losses, eliminating multi-stage reduction losses, the overall energy saving rate can reach 20% to 60%. The price difference compared to ordinary motors can be recovered within a year solely through energy savings. Moreover, the government has been advocating energy conservation and environmental protection in recent years, making brushless DC motors undoubtedly the future development trend of the motor industry.
[0066] Typically, brushless motors require sensors to detect the rotor's position. The controller then precisely controls commutation based on the detected rotor position. For sensorless brushless motors, to accurately determine the rotor's position, it's necessary to detect the zero-crossing of the third term using back electromotive force (EMF). Since the stator winding's back EMF is proportional to the motor's speed, the back EMF is zero when the motor is stationary or very small at low speeds. In these cases, the rotor pole position cannot be determined based on the back EMF signal. Therefore, the back EMF method requires a special starting technique. It accelerates from a standstill until the speed is high enough that a zero-crossing can be detected by the back EMF, at which point the motor switches to brushless DC motor operation. This process is called "three-stage" starting, which mainly includes three stages: rotor pre-positioning, acceleration, and operating state switching.
[0067] For brushless DC motors with trapezoidal back EMF waveforms, under small, light-load conditions, magnetic braking rotor positioning is generally used during the rotor pre-positioning stage. For example, during system startup, an arbitrary set of trigger pulses creates a magnetic flux with constant amplitude and direction in the air gap. As long as the amplitude is sufficiently large, this flux can force the motor rotor to be positioned in that direction for a certain period. In application, any set of windings can be energized for a certain time. The PWM duty cycle and pre-positioning time settings can be determined by the specific motor characteristics and load, and are adjusted in practical applications. After successful pre-positioning, the rotor reaches the predetermined position before starting, preparing the motor for startup.
[0068] After the above stages are completed, the motor enters the external synchronous acceleration stage. Since the back electromotive force in the stator winding is still zero at this time, it is necessary to manually change the applied voltage and commutation signal of the motor to gradually accelerate the motor from a standstill. External synchronous acceleration can be divided into three categories based on different methods of adjusting the applied voltage and commutation signal: constant frequency boosting, constant voltage frequency boosting, and frequency boosting and voltage boosting.
[0069] Among these methods, the frequency and voltage boosting method involves artificially applying a controllable synchronous switching signal to the motor, gradually increasing from low to high frequency, while the voltage also increases continuously. The starting speed of the motor can be adjusted by changing its commutation frequency. The adjustment method is relatively simple. However, this process is difficult to implement. The frequency of the switching signal must be determined based on the number of pole pairs and other parameters of the motor. If the frequency is too low, the motor cannot accelerate; if it is too high, the motor speed will not be reached, resulting in noise or even failure to start. The algorithm is quite complex. In all the acceleration methods mentioned above, this process occurs when no back electromotive force signal is detected. Therefore, for the control system, this stage is a blind spot for motor control. When the parameters are properly adjusted, the system can quickly switch to normal operation; however, if the parameters are not ideal, the current may be unstable, or even the motor may vibrate.
[0070] Therefore, in the above-mentioned accelerated start-up process, when a controllable synchronous switching signal that continuously accelerates from low frequency to high frequency is applied to the motor, and the voltage is also continuously increasing, the frequency or voltage transformation based on fixed parameters results in low flexibility and low start-up efficiency in the motor start-up process.
[0071] To avoid the problems existing in the above technical solutions, this application provides a brushless motor starting method that flexibly changes the pulse signal during the brushless motor starting process to improve the flexibility and efficiency of brushless motor starting. This method adjusts the pulse signal based on the acquired cumulative zero-crossing count, avoiding blind spots in motor control and improving the starting efficiency of the brushless motor.
[0072] Please refer to Figure 1 This document illustrates a flowchart of a method for starting a brushless motor according to an exemplary embodiment of this application. This method can be used in the aforementioned scenario architecture and is executed by an electronic control device that includes a brushless motor. The electronic control device includes the brushless motor and a power control unit. When the electronic control device is operating, the power control unit generates pulse signals, which are used to drive the brushless motor to commutate, such as... Figure 1 As shown, the starting method of this brushless motor may include the following steps.
[0073] Step 101: Obtain the working duration of the pulse signal.
[0074] The CPU of the electronic control device can acquire the pulse signals generated by the power control unit when the brushless motor is working. Optionally, the CPU of the electronic control device can be an MCU. When the brushless motor is working, the electronic control device can control the MOS full-bridge circuit to work through the MCU, so that the MOS full-bridge circuit acts as the drive circuit for the brushless motor, thereby supplying power to the brushless motor. That is, in this application, the MCU can be used as a controller to process some control logic and detect feedback signals from the motor to perform related control calculations, and use an internal timer to output six PWM waves to control the on / off state of the MOS full-bridge.
[0075] Optionally, the pulse signal can be a PWM pulse signal obtained based on Pulse Width Modulation (PWM). For example, the MCU of the electronic control device provides a PWM waveform signal by controlling the power control unit, thereby controlling the MOS full-bridge circuit to work, so that the MOS full-bridge circuit drives the brushless motor. After the MCU of the electronic control device provides the PWM waveform signal, the MCU of the electronic control device can execute this scheme to obtain the working duration of the PWM waveform signal.
[0076] The working duration for acquiring the PWM waveform signal can be calculated using the following formula: Working Duration = Number of PWM Pulses * T. Here, the number of PWM pulses is the number of PWM pulses acquired by the CPU of the electronic control device, and T is the pulse period of a unit PWM pulse signal. For example, if the pulse period S of a unit PWM pulse signal is 3 milliseconds, and the CPU of the electronic control device acquires 20 PWM pulses, then the working duration is 60 milliseconds. Alternatively, the working duration can be directly represented by the number of PWM pulses. Optionally, step 101 can begin after the CPU of the electronic control device determines the initial position of the rotor. That is, after determining the initial position of the rotor, the working duration of the generated pulse signal can be recorded. When the working duration reaches a preset proportion of the commutation cycle, step 102 is executed.
[0077] Step 102: When the working time reaches the preset proportion of the reversing cycle, perform zero-crossing detection and update the cumulative number of zero-crossings.
[0078] Optionally, the commutation period can be determined based on the number of pulses or the pulse duration of the pulse signal, or it can be preset by the user. The commutation period can contain a preset number of pulses, for example, 60, 120, or 180 pulses per commutation period, etc., which can be adjusted according to actual needs. The initial value of the commutation period can be preset, and the commutation period can be updated as the cumulative number of zero-crossings is updated.
[0079] Optionally, when the CPU of the electronic control device reaches a preset proportion of the commutation cycle during the aforementioned working time, it simultaneously performs zero-crossing detection and updates the cumulative number of zero-crossings during the commutation process of controlling the brushless motor. The preset proportion can be pre-set by the developers, for example, 50% or 60%.
[0080] Step 103: When the cumulative number of zero crossings has not reached the preset number of zero crossings, the duty cycle and commutation period of the pulse signal are updated according to the cumulative number of zero crossings. The steps of zero crossing detection and updating the cumulative number of zero crossings are repeated until the cumulative number of zero crossings reaches the preset number of zero crossings to control the brushless motor to enter the closed-loop stage.
[0081] The preset zero-crossing count can be pre-set in the electronic control device by developers or maintenance personnel. The CPU of the electronic control device detects the accumulated number of zero-crossings based on the preset zero-crossing count. When the accumulated number of zero-crossings reaches the preset zero-crossing count, the CPU of the electronic control device can control the brushless motor to enter the closed-loop control stage. That is, when the accumulated number of zero-crossings reaches the preset zero-crossing count, the brushless motor is controlled to enter the closed-loop control stage. When the accumulated number of zero-crossings does not reach the preset zero-crossing count, step 103 is executed. For example, the preset zero-crossing count can be 80 or 100 times. For instance, when the CPU of the electronic control device detects 80 zero-crossings, the brushless motor is controlled to enter the closed-loop control stage. When the CPU of the electronic control device detects less than 80 zero-crossings, step 103 is executed.
[0082] That is, when the number of zero-crossing detections obtained by the CPU of the above-mentioned electronic control device has not reached the preset number of zero-crossings, the duty cycle and commutation period of the pulse signal are updated according to the cumulative number of zero-crossings, the duty cycle of the pulse signal is gradually increased and the commutation period is reduced, thereby realizing flexible adjustment of the pulse signal during the start-up process of the brushless motor, making the entire open-loop acceleration process smoother.
[0083] In summary, the electronic control device provided in this application acquires the working duration of the pulse signal; when the working duration reaches a preset proportion of the commutation cycle, it performs zero-crossing detection and updates the cumulative number of zero-crossings; when the cumulative number of zero-crossings has not reached the preset number of zero-crossings, it updates the duty cycle and commutation cycle of the pulse signal according to the cumulative number of zero-crossings, and repeats the steps of zero-crossing detection and updating the cumulative number of zero-crossings until the cumulative number of zero-crossings reaches the preset number of zero-crossings to control the brushless motor to enter the closed-loop stage. This application can control the brushless motor to commutate and collect the cumulative number of zero crossings when the preset proportion of the commutation cycle is reached. Based on the acquired cumulative number of zero crossings, the pulse signal and commutation cycle are updated. As the number of successful zero crossings increases, the pulse signal and commutation cycle are changed accordingly. When the cumulative number of zero crossings and the speed meet the requirements for entering closed-loop control, the motor enters the closed-loop state. The pulse signal and commutation cycle are adaptively adjusted, making the entire open-loop acceleration process smoother. This optimizes the problem of the motor failing to enter the closed loop smoothly or experiencing severe jitter during startup. When the brushless motor adopts the solution of this application, its startup process can be adaptively adjusted to achieve continuous acceleration and rapid open-loop operation, resulting in a smoother and more reliable entry into the closed loop. The entire startup process of the brushless motor is more flexible, improving the startup efficiency of the brushless motor.
[0084] In one possible implementation, the electronic control device can determine whether the zero-crossing point is reached by sampling the current floating phase of the analog-to-digital converter (ADC) when the brushless motor is working. That is, the three output ports of the MOS full-bridge circuit that supplies power to the brushless motor are sampled for the zero-crossing point of the brushless motor output voltage each time according to the current floating phase.
[0085] Please refer to Figure 2 This document illustrates a flowchart of a method for starting a brushless motor according to an exemplary embodiment of this application. This method can be used in the aforementioned scenario architecture and is executed by an electronic control device that includes a brushless motor. The electronic control device includes the brushless motor and a power control unit. When the electronic control device is operating, the power control unit generates pulse signals, which are used to drive the brushless motor to commutate, such as... Figure 2 As shown, the starting method of this brushless motor may include the following steps.
[0086] Step 201: Determine the pre-position of the brushless motor in the electronic control device.
[0087] The pre-set position can be a pre-set position for the brushless motor by the developers or maintenance personnel, meaning that energizing any two points will cause the motor to reach a designated position. Optionally, in this application, the control device supplies power to the brushless motor through a MOS full-bridge circuit.
[0088] Please refer to Figure 3 This illustrates a schematic diagram of the structure of an electronic control device according to an exemplary embodiment of this application. Figure 3 As shown, it includes an MCU module 301, a MOS full-bridge module 302, and a brushless motor (MT) module 303. The MCU module 301 acts as a controller to process some control logic and detect feedback signals from the motor to perform related control calculations. It controls the on / off state of the MOS full-bridge by outputting six PWM waveforms through its internal timer.
[0089] The MOS full-bridge module 302 is a motor drive circuit composed of 6 MOSFETs and transistors. Its control pin can turn on the high-voltage, high-current terminal when it receives the control signal from the microcontroller. Each phase is composed of a set of MOSFETs, divided into upper and lower MOSFETs. The upper and lower MOSFETs will not be turned on at the same time. Each phase has the same hardware design. This circuit generates an alternating three-phase DC current to drive the motor.
[0090] The MT module 303, or brushless motor, typically consists of a rotor made of magnets and a stator made of coils. Under three-phase DC power, the coils are energized in pairs to generate a magnetic field that can drive the rotor to rotate. When driven in a certain pattern, it produces a continuous rotation effect.
[0091] Please refer to Figure 4 This illustration shows a schematic diagram of a circuit structure for driving a brushless motor according to an exemplary embodiment of this application. Figure 4 As shown, the module includes an MCU module 401, a MOS full-bridge module 402, and an MT module 403. The MCU module 401 includes six signal output ports and three detection ports: first output port 401a, second output port 401b, third output port 401c, fourth output port 401d, fifth output port 401e, sixth output port 401f, first detection port 401g, second detection port 401h, and third detection port 401i. The MOS full-bridge module 402 includes a first MOS transistor group 402a, a second MOS transistor group 402b, and a third MOS transistor group 402c. The MT module 403 includes three input ports: first input port 403a, second input port 403b, and third input port 403c.
[0092] like Figure 4 As shown, the MCU module 401 contains six signal output ports, which are electrically connected to the six MOSFETs of the MOS full-bridge module 402. The six MOSFETs of the MOS full-bridge module 402 are electrically connected to the three input ports of the MT module 403 in groups. The three detection ports of the MCU module 401 are also electrically connected to the three input ports of the MT module 403. The following description will primarily focus on the MCU in the electronic control device as the executing entity.
[0093] Optionally, the MCU in the electronic control device, according to the above structure, outputs PWM waveform signals through 6 signal output ports to drive the MOS full-bridge circuit to work, thereby driving the brushless motor.
[0094] As mentioned above Figure 4 The MOS full-bridge circuit shown can be pre-positioned at the position the motor reaches after power is applied to B+ and A-. That is, the position reached by the motor when B is the positive terminal and A is the negative terminal is the pre-positioned position. Afterwards, the motor can be switched sequentially in a six-step commutation sequence: (B+A-), (B+C-), (A+C-), (A+B-), (C+B-), (C+A-).
[0095] Step 202: Obtain the working duration of the pulse signal.
[0096] Optionally, the power control unit can be an MCU in the electronic control device, as described above. Figure 3 or Figure 4 As shown, the MCU in the electronic control device can drive the brushless motor to commutate by outputting six PWM pulse signals.
[0097] Optionally, in this application, the electronic control device may also include a timer, which starts timing from the time the predetermined position is obtained. The working duration of the pulse signal obtained in this step is the cumulative working duration of the obtained pulse signal. The working duration of the pulse signal can be calculated as follows: the MCU in the electronic control device records the number of pulses of the pulse signal; based on the number of pulses, the working duration of the pulse signal is obtained. This process can refer to the description in step 101 above, and will not be repeated here.
[0098] In one possible implementation, in this step, the electronic control device can also detect the number of pulses of the acquired pulse signal. For example, the electronic control device acquires the number of pulses of the pulse signal and detects whether the number of pulses is less than a preset number of pulses. When the number of pulses is less than the preset number of pulses, the step of acquiring the working duration of the pulse signal based on the number of pulses is executed.
[0099] Starting from the pre-position acquisition, the MCU of the electronic control device can accumulate the number of pulses of the pulse signal within the elapsed time period and perform pre-detection based on a preset pulse count. If the pulse count is less than the preset pulse count, the step of obtaining the working duration of the pulse signal based on the pulse count is executed, i.e., step 202. The preset pulse count can be preset in the MCU of the electronic control device by the developers or maintenance personnel. For example, if the preset pulse count is 60, this step can be executed when the pulse count accumulated by the MCU is within 60.
[0100] Step 203: Detect whether the obtained working time has reached the preset ratio of the reversal cycle.
[0101] If the target is reached, proceed to step 204; otherwise, proceed to step 205.
[0102] The commutation cycle is described in step 102 above and will not be repeated here. Optionally, the preset ratio can be set by the developer in advance, for example, the preset ratio is 50%.
[0103] Step 204: When the working time reaches the preset proportion of the reversing cycle, perform zero-crossing detection and update the cumulative number of zero-crossings.
[0104] Optionally, when the aforementioned working time reaches a preset proportion of the commutation cycle, the MCU of the electronic control device controls the brushless motor to commutate, performs zero-crossing detection, and acquires the cumulative number of zero-crossings. That is, when the accumulated working time reaches a preset proportion of the commutation cycle, the MCU of the electronic control device can control the MOS full-bridge circuit to output voltages with different positive and negative terminals, causing the motor to commutate. For example, after the initial output is B+, A-, the output of the MOS full-bridge circuit during the first commutation can be (B+C-), controlling the brushless motor to commutate. At the same time, the MCU of the electronic control device acquires the cumulative number of zero-crossings. For example, the MCU of the electronic control device acquires the recorded number of zero-crossing detections; based on the number of zero-crossing detections, it updates the cumulative number of zero-crossings. The cumulative number of zero-crossings can be accumulated based on the previous cumulative number of zero-crossings. For example, if the number of zero-crossing detections is 5, then the cumulative number of zero-crossings is also 5. Optionally, within one cycle, if the cumulative number of zero-crossings is 5, and the number of zero-crossing detections acquired this time is 2, then after updating the cumulative number of zero-crossings, the updated cumulative number of zero-crossings is 7.
[0105] The method for recording the number of zero-crossing detections can be as follows: The MCU of the electronic control device acquires the sampled value of the analog-to-digital converter of the currently floating phase; when the sampled value meets a preset condition, it increments the previous zero-crossing detection count by one, thus acquiring the current recorded zero-crossing detection count; when the sampled value does not meet the preset condition, it executes the step of acquiring the working duration of the pulse signal. In other words, the MCU of the electronic control device acquires the sampled value of the analog-to-digital converter of the currently floating phase and determines whether a zero-crossing point has been reached based on the current ADC sampled value of the floating phase. The optional preset conditions are as follows: When the MOS full-bridge circuit outputs B+A-, the voltage of the currently floating phase C is less than VCC*0.5; when the MOS full-bridge circuit outputs B+C-, the voltage of the currently floating phase A is greater than VCC*0.5; when the MOS full-bridge circuit outputs A+C-, the voltage of the currently floating phase B is less than VCC*0.5; when A+B-, the voltage of the currently floating phase C is greater than VCC*0.5; when the MOS full-bridge circuit outputs C+B-, the voltage of the currently floating phase A is less than VCC*0.5; when the MOS full-bridge circuit outputs C+A-, the voltage of the currently floating phase B is greater than VCC*0.5. When the sampled value meets the preset conditions, one more zero-crossing detection is added to the previous zero-crossing detection count, and the current recorded zero-crossing detection count is obtained.
[0106] For example, let BEMF_CNT represent the number of zero-crossing detections. The initial number of zero-crossing detections is 0. Each time a zero-crossing detection is recorded, BEMF_CNT will be incremented by 1. When the next sampled value meets the preset conditions, the number of zero-crossing detections will be incremented again from the previous count, and so on. If the sampled value does not meet the preset conditions and no zero-crossing is detected, the step of acquiring the pulse signal duration can be repeated.
[0107] Optionally, the above sampling method is illustrated using ADC sampling. In practical applications, the electronic control device can also use other detection sensors to obtain back electromotive force, such as Hall elements, encoders, code disks, gratings, and other position detection sensors to obtain the rotor position and thus obtain better position detection accuracy.
[0108] Step 205: Check whether the cumulative number of zero crossings has reached the preset number of zero crossings.
[0109] That is, the MCU of the electronic control device detects the cumulative number of zero-crossings obtained above. If the cumulative number of zero-crossings has not reached the preset number, step 206 is executed; otherwise, step 207 is executed. This preset number of zero-crossings can also be pre-set in the electronic control device by developers or maintenance personnel. For example, 80 times.
[0110] Step 206: When the cumulative number of zero crossings has not reached the preset number of zero crossings, update the pulse signal and commutation period according to the cumulative number of zero crossings, and re-execute the step of acquiring the working time of the pulse signal.
[0111] Optionally, in this application, when the cumulative number of zero-crossings obtained above does not reach the preset number of zero-crossings, the pulse signal and commutation period can be updated based on the cumulative number of zero-crossings obtained, and the process can return to step 202 according to the updated pulse signal and commutation period to re-execute the scheme. This process will clear the recorded pulse count above and re-count the data.
[0112] In one possible implementation, updating the pulse signal and commutation period based on the cumulative number of zero-crossings can be done as follows: The duty cycle of the pulse signal is updated according to a first preset rule based on the cumulative number of zero-crossings to increase the duty cycle. The first preset rule can be: Y_after = Y_before * 50% + BEMF_CNT * 4. Here, Y_after represents the updated duty cycle of the pulse signal, and Y_before represents the original duty cycle of the pulse signal. That is, the duty cycle of the generated PWM pulse signal is adjusted according to the above preset rule to make the adjusted PWM pulse signal have a higher duty cycle. It should be noted that the first preset rule can be adjusted according to requirements; for example, Y_after = Y_before * 60% + BEMF_CNT * 6.
[0113] In one possible implementation, corresponding to step 202 above, the electronic control device can also detect the number of pulses in the acquired pulse signal. When the cumulative number of zero-crossings has not reached the preset number, this step is equivalent to re-executing the step of detecting whether the number of pulses is greater than the preset number of pulses; and when the number of pulses is greater than or equal to the preset number of pulses, the step of updating the duty cycle and commutation period of the pulse signal based on the cumulative number of zero-crossings is executed; and the recorded number of pulses in the pulse signal is cleared to zero; and the step of obtaining the working duration of the pulse signal based on the number of pulses is re-executed. Optionally, when the number of pulses is less than the preset number of pulses, the step of obtaining the working duration of the pulse signal based on the number of pulses is executed directly.
[0114] In other words, when the cumulative number of zero crossings has not reached the preset number of zero crossings, the electronic control device can re-execute the operation of acquiring pulse signals during the re-execution of the working time, and can re-execute the subsequent steps such as detecting whether the number of pulses is greater than the preset number of pulses, and updating the pulse signal and commutation period according to the cumulative number of zero crossings when the number of pulses is greater than or equal to the preset number of pulses.
[0115] Optionally, the electronic control device can also update the commutation period according to the cumulative number of zero crossings and a second preset rule to reduce the commutation period. For example, the electronic control device can update the preset pulse number according to the cumulative number of zero crossings and a second preset rule to reduce the preset pulse number; and obtain the updated commutation period based on the updated preset pulse number to reduce the commutation period. The commutation period can be the updated preset pulse number. The update of the preset pulse number can be performed in the following way, for example, by updating the preset pulse number according to the cumulative number of zero crossings and a preset calculation method; wherein, the preset calculation method can be as follows: M_after = M_before - BEMF_CNT. Where M_after represents the updated preset pulse number, and M_before represents the preset pulse number before the update. In addition, after updating the above pulse signal and commutation period, this scheme can return to step 202 and re-execute this scheme.
[0116] Step 207: When the cumulative number of zero crossings reaches the preset number, control the brushless motor to enter the closed-loop control stage.
[0117] When the cumulative number of zero crossings reaches the preset number, the MCU of the electronic control device can clear the data in this process and control the brushless motor to enter the closed-loop control stage to complete the start-up.
[0118] It should be noted that, in order to make the control of the magnetic field more precise and improve the control effect of the electronic control device, the above-mentioned electronic control device can implement this scheme through the field-oriented control (FOC) algorithm.
[0119] In summary, the electronic control device provided in this application acquires the working duration of the pulse signal; when the working duration reaches a preset proportion of the commutation cycle, it performs zero-crossing detection and updates the cumulative number of zero-crossings; when the cumulative number of zero-crossings has not reached the preset number of zero-crossings, it updates the duty cycle and commutation cycle of the pulse signal according to the cumulative number of zero-crossings, and repeats the steps of zero-crossing detection and updating the cumulative number of zero-crossings until the cumulative number of zero-crossings reaches the preset number of zero-crossings to control the brushless motor to enter the closed-loop stage. This application can control the brushless motor to commutate and collect the cumulative number of zero crossings when the preset proportion of the commutation cycle is reached. Based on the acquired cumulative number of zero crossings, the pulse signal and commutation cycle are updated. As the number of successful zero crossings increases, the pulse signal and commutation cycle are changed accordingly. When the cumulative number of zero crossings and the speed meet the requirements for entering closed-loop control, the motor enters the closed-loop state. The pulse signal and commutation cycle are adaptively adjusted, making the entire open-loop acceleration process smoother. This optimizes the problem of the motor failing to enter the closed loop smoothly or experiencing severe jitter during startup. When the brushless motor adopts the solution of this application, its startup process can be adaptively adjusted to achieve continuous acceleration and rapid open-loop operation, resulting in a smoother and more reliable entry into the closed loop. The entire startup process of the brushless motor is more flexible, improving the startup efficiency of the brushless motor.
[0120] In addition, this solution uses pulse statistics to calculate key parameters such as time, speed, and electrical angle, and simultaneously drives the hardware circuit. The entire driver software uses only one timer, making the software simple and requiring fewer hardware resources.
[0121] As an example, this solution can be applied to fascia guns. A fascia gun is a device that relaxes muscles through tapping. It uses a brushless motor to drive an eccentric wheel, which in turn drives a connecting rod in a reciprocating motion to move the massage balls. The fascia gun uses a low-power brushless motor to drive a handheld device with a certain load. This solution allows for a rapid and stable start-up to the set speed levels. The brushless motor must be quick, accurate, and decisive in its positioning and entry into the closed loop, reducing the probability of start-up failure and vibration during the start-up phase. Compared to existing start-up processes, which are prone to vibration if not properly controlled during the start-up phase, this solution achieves a more stable effect once the closed loop is entered. When the massage ball head of the fascia gun applies high pressure, it can cause the motor to stall. To prevent the motor from burning out due to continuous stalling, the motor output is usually actively shut off, and the motor is restarted after a period of time. Therefore, the motor may need to be started frequently. This solution avoids these defects, thereby improving the start-up efficiency of the fascia gun.
[0122] As another example, this solution can also be applied to brushless motors in electric vehicles. Brushless motors are also a primary drive unit in electric vehicles, using their rotation as a power source to drive a reducer, increasing torque and thus rotating the tires. The application of brushless motors in electric vehicles requires driving larger loads and, as a passenger-carrying product, smoother operation during startup and running, while achieving greater load and higher efficiency within a given power output. Electric vehicles may involve repeated acceleration, deceleration, and starts / stops during operation; the speed control of the motor and the agility of startup directly affect the acceleration performance of the electric vehicle. This solution can also improve the smoothness and efficiency of the motor's operation in electric vehicles.
[0123] Below, based on the above Figure 4 Taking the MCU, MOS full-bridge circuit, and MT structure shown as examples, with 80 zero-crossing detections, the above... Figure 1 and Figure 2 The embodiments shown are illustrated by way of example.
[0124] Please refer to Figure 5 The document illustrates a flowchart of a method for starting a brushless motor according to an exemplary embodiment of this application. This method can be used in the aforementioned scenario architecture and is executed by an electronic control device that includes a brushless motor. The electronic control device includes the brushless motor and a power control unit. When the electronic control device is operating, the power control unit generates pulse signals, which are used to drive the brushless motor to commutate, such as... Figure 5 As shown, the starting method of this brushless motor may include the following steps.
[0125] Step 501: Make a reservation.
[0126] Optionally, the pre-positioning method in step 501 can refer to the description in step 201 above, and will not be repeated here.
[0127] Step 502: Is the number of PWM pulses greater than or equal to the preset number of pulses?
[0128] If yes, proceed to step 503; otherwise, proceed to step 506.
[0129] Optionally, the PWM pulse count is the pulse count obtained in step 202 above. This detection process can also refer to the description in step 202 above, and will not be repeated here.
[0130] Step 503: Adjust the duty cycle of the pulse signal to 50% of the current pulse signal duty cycle + BEMF_CNT*4.
[0131] Here, BEMF_CNT represents the number of zero-crossing detections. The method for adjusting the duty cycle of the pulse signal can be referred to the description in step 206 above, and will not be repeated here.
[0132] Step 504: Adjust the preset pulse number to the current preset pulse number - BEMF_CNT.
[0133] The method for adjusting the preset pulse number can also refer to the description in step 206 above, and will not be repeated here.
[0134] Step 505: Clear the PWM pulse count to zero.
[0135] That is, the electronic control device clears the recorded number of PWM pulses to zero, so that step 502 can be re-executed if the conditions for subsequent steps are not met.
[0136] Step 506: Detect whether the working duration of the PWM pulse signal has reached the preset proportion of the commutation cycle.
[0137] If the target is reached, proceed to step 507; otherwise, proceed to step 502.
[0138] The method for detecting whether the working duration of the PWM pulse signal has reached the preset proportion of the commutation cycle can also refer to the description in step 203 above, and will not be repeated here.
[0139] Step 507: Detect zero crossing.
[0140] If a zero crossing is detected, proceed to step 508; otherwise, proceed to step 502.
[0141] Step 508: Zero-crossing statistics are incremented once based on the current BEMF_CNT.
[0142] The method for detecting zero crossings described above can be referred to in step 204 above, and will not be repeated here.
[0143] Step 509: Check if BEMF_CNT has reached the preset zero-crossing number of 80.
[0144] If the target is reached, proceed to step 510; otherwise, proceed to step 502.
[0145] Step 510: Enter closed loop.
[0146] In summary, this application can control the brushless motor to commutate and collect the cumulative number of zero-crossings when the preset proportion of the commutation cycle is reached. Based on the acquired cumulative number of zero-crossings, the pulse signal and commutation cycle are updated. As the number of successful zero-crossings increases, the pulse signal and commutation cycle are adjusted accordingly. When the cumulative number of zero-crossings and the speed meet the requirements for entering closed-loop control, the motor enters the closed-loop state. The pulse signal and commutation cycle are adaptively adjusted, making the entire open-loop acceleration process smoother. This optimizes the problem of the motor failing to enter the closed loop smoothly or experiencing severe jitter during startup. When the brushless motor adopts the solution of this application, its startup process can be adaptively adjusted to achieve continuous acceleration and rapid open-loop operation, resulting in smoother and more reliable entry into the closed loop. The entire startup process of the brushless motor is more flexible, improving the startup efficiency of the brushless motor.
[0147] The following are embodiments of the apparatus described in this application, which can be used to execute the embodiments of the method described in this application. For details not disclosed in the apparatus embodiments of this application, please refer to the embodiments of the method described in this application.
[0148] Please refer to Figure 6 This illustration shows a structural block diagram of a brushless motor starting device 600 provided in an exemplary embodiment of this application. The brushless motor starting device 600 can be used in an electronic control device that includes a brushless motor to perform… Figure 1 or Figure 2 The method provided in the illustrated embodiment includes all or part of the steps performed by an electronically controlled device. The electronically controlled device includes a brushless motor and a power control unit. When the electronically controlled device is operating, the power control unit generates a pulse signal, which is used to drive the brushless motor to commutate. The starting device 600 of the brushless motor includes:
[0149] The duration acquisition module 601 is used to acquire the working duration of the pulse signal;
[0150] The first execution module 602 is used to perform zero-crossing detection and update the cumulative number of zero-crossings when the working time reaches a preset proportion of the commutation cycle;
[0151] The second execution module 603 is used to update the duty cycle of the pulse signal and the commutation period according to the cumulative number of zero crossings when the cumulative number of zero crossings has not reached the preset number of zero crossings, and repeat the steps of performing zero crossing detection and updating the cumulative number of zero crossings until the cumulative number of zero crossings reaches the preset number of zero crossings to control the brushless motor to enter the closed-loop stage.
[0152] In summary, the electronic control device provided in this application acquires the working duration of the pulse signal; when the working duration reaches a preset proportion of the commutation cycle, it performs zero-crossing detection and updates the cumulative number of zero-crossings; when the cumulative number of zero-crossings has not reached the preset number of zero-crossings, it updates the duty cycle and commutation cycle of the pulse signal according to the cumulative number of zero-crossings, and repeats the steps of zero-crossing detection and updating the cumulative number of zero-crossings until the cumulative number of zero-crossings reaches the preset number of zero-crossings to control the brushless motor to enter the closed-loop stage. This application can control the brushless motor to commutate and collect the cumulative number of zero crossings when the preset proportion of the commutation cycle is reached. Based on the acquired cumulative number of zero crossings, the pulse signal and commutation cycle are updated. As the number of successful zero crossings increases, the pulse signal and commutation cycle are changed accordingly. When the cumulative number of zero crossings and the speed meet the requirements for entering closed-loop control, the motor enters the closed-loop state. The pulse signal and commutation cycle are adaptively adjusted, making the entire open-loop acceleration process smoother. This optimizes the problem of the motor failing to enter the closed loop smoothly or experiencing severe jitter during startup. When the brushless motor adopts the solution of this application, its startup process can be adaptively adjusted to achieve continuous acceleration and rapid open-loop operation, resulting in a smoother and more reliable entry into the closed loop. The entire startup process of the brushless motor is more flexible, improving the startup efficiency of the brushless motor.
[0153] Optionally, the second execution module 603 includes: a first update unit and a second update unit;
[0154] The first update unit is used to update the duty cycle of the pulse signal according to the cumulative number of zero crossings and a first preset rule when the cumulative number of zero crossings has not reached the preset number of zero crossings, so as to increase the duty cycle of the pulse signal.
[0155] The second update unit is used to update the commutation period according to the cumulative number of zero crossings and a second preset rule, so as to reduce the commutation period.
[0156] Optionally, the duration acquisition module 601 includes: a first recording unit and a first acquisition unit;
[0157] The first recording unit is used to record the number of pulses of the pulse signal;
[0158] The first acquisition unit is used to acquire the working duration of the pulse signal based on the number of pulses.
[0159] Optionally, the device further includes:
[0160] The first detection module is used to detect whether the number of pulses is less than a preset number of pulses before obtaining the working duration of the pulse signal based on the number of pulses.
[0161] The third execution module is used to execute the step of obtaining the working duration of the pulse signal based on the number of pulses when the number of pulses is less than the preset number of pulses.
[0162] Optionally, the second update unit includes: a first update subunit and a second update subunit;
[0163] The first update subunit is used to update the preset pulse number according to the second preset rule based on the cumulative number of zero crossings, so as to reduce the preset pulse number;
[0164] The second update subunit is used to obtain the updated commutation period based on the updated preset pulse number, so as to reduce the commutation period.
[0165] Optionally, the second execution module 603 includes: a fourth execution unit, a fifth execution unit, a pulse count clearing unit, and a sixth execution unit;
[0166] The fourth execution unit is used to re-execute the step of detecting whether the number of pulses is less than the preset number of pulses when the cumulative number of zero crossings has not reached the preset number of zero crossings;
[0167] The fifth execution unit is used to execute the step of updating the duty cycle of the pulse signal and the commutation period based on the cumulative number of zero crossings when the number of pulses is greater than or equal to the preset number of pulses;
[0168] The pulse count clearing unit is used to clear the recorded pulse count of the pulse signal to zero.
[0169] The sixth execution unit is used to re-execute the step of obtaining the working duration of the pulse signal based on the number of pulses.
[0170] Optionally, the first execution module includes: a second acquisition unit and a third update unit;
[0171] The second acquisition unit is used to acquire the number of zero-crossing detections recorded;
[0172] The third update unit is used to update the cumulative number of zero-crossings based on the number of zero-crossing detections.
[0173] Optionally, the second acquisition unit includes: a first acquisition subunit, a second acquisition subunit, and a first execution subunit;
[0174] The first acquisition subunit is used to acquire the sampled value of the analog-to-digital converter of the currently floating phase;
[0175] The second acquisition subunit is used to add one more zero-crossing detection count to the previous zero-crossing detection count when the sampled value meets the preset conditions, and acquire the zero-crossing detection count recorded this time.
[0176] The first execution subunit is configured to execute the step of acquiring the working duration of the pulse signal when the sampled value does not meet the preset condition.
[0177] Please refer to Figure 7 This illustration shows a schematic diagram of the structure of an electronic control device disclosed in an exemplary embodiment of this application. Figure 7 As shown, in addition to a brushless motor and a MOS full-bridge circuit, the electronic control device may also include: a radio frequency (RF) circuit 710, a memory 720, an input unit 730, a display unit 740, a sensor 750, an audio circuit 760, a WiFi module 770, a processor 780, and a power supply 790, among other components. In the above embodiment, this electronic control device can be used as a massage device or simply as an electronic control device. Those skilled in the art will understand that... Figure 7 The structure of the electronic control device shown does not constitute a limitation on the electronic control device, and may include more or fewer components than shown, or combine certain components, or have different component arrangements.
[0178] The following is combined Figure 7 The components of the electronic control device are described below:
[0179] RF circuit 710 can be used for receiving and transmitting signals during information transmission or calls. Specifically, it receives downlink information from the base station and processes it with processor 780; additionally, it transmits uplink data to the base station. Typically, RF circuit 710 includes, but is not limited to, an antenna, at least one amplifier, a transceiver, a coupler, a low-noise amplifier (LNA), a duplexer, etc. Furthermore, RF circuit 710 can also communicate wirelessly with networks and other devices. The aforementioned wireless communication can use any communication standard or protocol, including but not limited to Global System for Mobile Communication (GSM), General Packet Radio Service (GPRS), Code Division Multiple Access (CDMA), Wideband Code Division Multiple Access (WCDMA), Long Term Evolution (LTE), email, Short Messaging Service (SMS), etc.
[0180] The memory 720 can be used to store software programs and modules. The processor 780 executes various functional applications and data processing of the electronic control device by running the software programs and modules stored in the memory 720. The memory 720 may mainly include a program storage area and a data storage area. The program storage area may store the operating system, application programs required for at least one function (such as sound playback function, image playback function, etc.), etc.; the data storage area may store data created according to the use of the electronic control device (such as audio data, telephone directory, etc.). In addition, the memory 720 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, or other volatile solid-state storage device.
[0181] The input unit 730 can be used to receive input digital or character information, and to generate key signal inputs related to user settings and function control of the electronic control device. Specifically, the input unit 730 may include a touch panel 731 and other input devices 732. The touch panel 731, also known as a touch screen, can collect touch operations performed by the user on or near it (such as operations performed by the user using a finger, stylus, or any suitable object or accessory on or near the touch panel 731), and drive the corresponding connected devices according to a pre-set program. Optionally, the touch panel 731 may include two parts: a touch detection device and a touch controller. The touch detection device detects the user's touch position and the signal generated by the touch operation, and transmits the signal to the touch controller; the touch controller receives touch information from the touch detection device, converts it into touch point coordinates, sends it to the processor 780, and can receive and execute commands sent by the processor 780. In addition, the touch panel 731 can be implemented using various types such as resistive, capacitive, infrared, and surface acoustic wave. In addition to the touch panel 731, the input unit 730 may also include other input devices 732. Specifically, other input devices 732 may include, but are not limited to, one or more of the following: physical keyboard, function keys (such as volume control buttons, power buttons, etc.), trackball, mouse, joystick, etc.
[0182] The display unit 740 can be used to display information input by the user or information provided to the user, as well as various menus of the electronic control device. The display unit 740 may include a display panel 741, which may optionally be configured as a Liquid Crystal Display (LCD), Organic Light-Emitting Diode (OLED), or similar display panel. Further, a touch panel 731 may cover the display panel 741. When the touch panel 731 detects a touch operation on or near it, it transmits the information to the processor 780 to determine the type of touch event. Subsequently, the processor 780 provides corresponding visual output on the display panel 741 based on the type of touch event. Although in Figure 7 In this embodiment, the touch panel 731 and the display panel 741 are two separate components to realize the input and output functions of the electronic control device. However, in some embodiments, the touch panel 731 and the display panel 741 can be integrated to realize the input and output functions of the electronic control device.
[0183] The electronic control device may also include at least one sensor 750, such as a light sensor, a motion sensor, and other sensors. Specifically, the light sensor may include an ambient light sensor and a proximity sensor, wherein the ambient light sensor can adjust the brightness of the display panel 741 according to the ambient light level, and the proximity sensor can turn off the display panel 741 and / or backlight when the electronic control device is moved to the ear. As a type of motion sensor, an accelerometer sensor can detect the magnitude of acceleration in various directions (generally three axes), and can detect the magnitude and direction of gravity when stationary. It can be used for applications that identify the posture of the electronic control device (such as landscape / portrait switching, related games, magnetometer posture calibration), vibration recognition related functions (such as pedometer, tapping), etc. Other sensors that may be configured in the electronic control device, such as gyroscopes, barometers, hygrometers, thermometers, and infrared sensors, will not be described in detail here.
[0184] Audio circuit 760, speaker 761, and microphone 762 provide an audio interface between the user and the electronic control device. Audio circuit 750 converts received audio data into electrical signals and transmits them to speaker 761, where speaker 761 converts them into sound signals for output. On the other hand, microphone 762 converts collected sound signals into electrical signals, which are received by audio circuit 760, converted into audio data, and then processed by processor 780 before being sent via RF circuit 710 to, for example, another electronic control device, or output to memory 720 for further processing.
[0185] WiFi is a short-range wireless transmission technology. The electronic control device, through the WiFi module 770, can help users send and receive emails, browse web pages, and access streaming media, providing users with wireless broadband internet access. Although Figure 7 The WiFi module 770 is shown, but it is understood that it is not a necessary component of the electronic control device and can be omitted as needed without changing the nature of the invention.
[0186] The processor 780 is the control center of the electronic control device. It connects various parts of the device via various interfaces and lines, and performs various functions and processes data by running or executing software programs and / or modules stored in the memory 720, and by calling data stored in the memory 720, thereby providing overall monitoring of the electronic control device. Optionally, the processor 780 may include one or more processing units; preferably, the processor 780 may integrate an application processor and a modem processor, wherein the application processor mainly handles the operating system, user interface, and applications, and the modem processor mainly handles wireless communication. It is understood that the modem processor may not be integrated into the processor 780.
[0187] The electronic control device also includes a power supply 790 (such as a battery) that supplies power to various components. Preferably, the power supply can be logically connected to the processor 780 through a power management system, thereby enabling functions such as charging, discharging, and power consumption management through the power management system.
[0188] Although not shown, the electronic control device may also include a camera, Bluetooth module, etc., which will not be described in detail here.
[0189] This application discloses a massage device, wherein the massage device may include the above-mentioned... Figure 7 The electronic control device shown. The massage device can be, but is not limited to, a neck massager, a waist massager, a knee massager, or a fascia gun.
[0190] This application discloses a computer-readable storage medium storing a computer program, wherein the computer program, when executed by a processor, implements the method described in the above method embodiments.
[0191] This application discloses a computer program product, which includes a non-transitory computer-readable storage medium storing a computer program, and the computer program is operable to cause a computer to perform the methods described in the above method embodiments.
[0192] This application discloses an application publishing platform, which is used to publish computer program products. When the computer program products are run on a computer, the computer executes the methods described in the above method embodiments.
[0193] It should be understood that the phrase "one embodiment" or "an embodiment" throughout the specification means that a specific feature, structure, or characteristic related to the embodiment is included in at least one embodiment of this application. Therefore, "in one embodiment" or "in an embodiment" appearing throughout the specification does not necessarily refer to the same embodiment. Furthermore, these specific features, structures, or characteristics can be combined in any suitable manner in one or more embodiments. Those skilled in the art should also recognize that the embodiments described in the specification are optional embodiments, and the actions and modules involved are not necessarily essential to this application.
[0194] In the various embodiments of this application, it should be understood that the sequence number of each process does not necessarily imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.
[0195] The units described above as separate components may or may not be physically separate. The components shown as units may or may not be physical units; they can be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.
[0196] Furthermore, the functional units in the various embodiments of this application can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit.
[0197] If the integrated units described above are implemented as software functional units and sold or used as independent products, they can be stored in a computer-accessible memory. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a memory and includes several requests to cause a computer device (which can be a personal computer, server, or network device, specifically a processor in the computer device) to execute some or all of the steps of the methods described in the various embodiments of this application.
[0198] Those skilled in the art will understand that all or part of the steps in the various methods of the above embodiments can be implemented by a program instructing related hardware. The program can be stored in a computer-readable storage medium, including read-only memory (ROM), random access memory (RAM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), one-time programmable read-only memory (OTPROM), electrically-Erasable Programmable Read-Only Memory (EEPROM), compactdisc read-only memory (CD-ROM) or other optical disc storage, disk storage, magnetic tape storage, or any other computer-readable medium capable of carrying or storing data.
[0199] The above description provides examples of a brushless motor starting method, device, massage equipment, and storage medium disclosed in the embodiments of this application. These examples illustrate the principles and implementation methods of this application. The descriptions of the above embodiments are merely for the purpose of helping to understand the method and core ideas of this application. Furthermore, those skilled in the art will recognize that, based on the ideas of this application, there will be changes in the implementation methods and application scope. Therefore, the content of this specification should not be construed as a limitation of this application.
Claims
1. A method for starting a brushless motor, characterized in that, The method is applied to an electronic control device, which includes a brushless motor and a power control unit. When the electronic control device is working, the power control unit generates a pulse signal, which is used to drive the brushless motor to commutate. The starting method includes: Obtain the working duration of the pulse signal; When the working time reaches a preset proportion of the commutation cycle, zero-crossing detection is performed and the cumulative number of zero-crossings is updated; When the cumulative number of zero crossings has not reached the preset number of zero crossings, the duty cycle of the pulse signal and the commutation period are updated according to the cumulative number of zero crossings. The steps of performing zero crossing detection and updating the cumulative number of zero crossings are repeated until the cumulative number of zero crossings reaches the preset number of zero crossings to control the brushless motor to enter the closed-loop stage. When the cumulative number of zero-crossings has not reached the preset number of zero-crossings, updating the duty cycle of the pulse signal and the commutation period based on the cumulative number of zero-crossings includes: When the cumulative number of zero crossings has not reached the preset number of zero crossings, the duty cycle of the pulse signal is updated according to the first preset rule based on the cumulative number of zero crossings, so as to increase the duty cycle of the pulse signal. Based on the cumulative number of zero crossings, the commutation period is updated according to the second preset rule to reduce the commutation period.
2. The method according to claim 1, characterized in that, The working time for acquiring the pulse signal includes: Record the number of pulses of the pulse signal; The working duration of the pulse signal is obtained based on the number of pulses.
3. The method according to claim 2, characterized in that, Before obtaining the working duration of the pulse signal based on the number of pulses, the method further includes: Detect whether the number of pulses is less than a preset number of pulses; When the number of pulses is less than the preset number of pulses, the step of obtaining the working duration of the pulse signal based on the number of pulses is executed.
4. The method according to claim 3, characterized in that, The step of updating the commutation period according to the cumulative number of zero crossings and a second preset rule to reduce the commutation period includes: Based on the cumulative number of zero crossings, the preset pulse count is updated according to the second preset rule to reduce the preset pulse count; The updated commutation period is obtained based on the updated preset pulse number in order to reduce the commutation period.
5. The method according to claim 3, characterized in that, When the cumulative number of zero crossings has not reached the preset number of zero crossings, the duty cycle of the pulse signal and the commutation period are updated according to the cumulative number of zero crossings, and the steps of performing zero crossing detection and updating the cumulative number of zero crossings are repeated, including: If the cumulative number of zero crossings does not reach the preset number of zero crossings, the step of detecting whether the number of pulses is less than the preset number of pulses will be executed again. When the number of pulses is greater than or equal to the preset number of pulses, the step of updating the duty cycle of the pulse signal and the commutation period based on the cumulative number of zero crossings is executed. And clear the recorded pulse count of the pulse signal to zero; Repeat the step of obtaining the working duration of the pulse signal based on the number of pulses.
6. The method according to claim 1, characterized in that, The execution of zero-crossing detection and updating of the cumulative zero-crossing count includes: Retrieve the number of zero-crossing detections recorded; The cumulative number of zero-crossings is updated based on the number of zero-crossing detections.
7. The method according to claim 6, characterized in that, The number of zero-crossing detections obtained from the records includes: Obtain the sampled value of the analog-to-digital converter for the currently floating phase; When the sampled value meets the preset condition, the zero-crossing detection count is increased by one to obtain the current zero-crossing detection count; When the sampled value does not meet the preset condition, the step of obtaining the working duration of the pulse signal is executed.
8. A starting device for a brushless motor, characterized in that, The device is applied to an electronic control device, which includes a brushless motor and a power control unit. When the electronic control device is working, the power control unit generates a pulse signal, which is used to drive the brushless motor to commutate. The starting device includes: The duration acquisition module is used to acquire the working duration of the pulse signal; The first execution module is used to perform zero-crossing detection and update the cumulative number of zero-crossings when the working time reaches a preset proportion of the commutation cycle; The second execution module is used to update the duty cycle of the pulse signal and the commutation period according to the cumulative number of zero crossings when the cumulative number of zero crossings has not reached the preset number of zero crossings, and repeat the steps of performing zero crossing detection and updating the cumulative number of zero crossings until the cumulative number of zero crossings reaches the preset number of zero crossings to control the brushless motor to enter the closed-loop stage. The second execution module is further configured to, when the cumulative number of zero crossings has not reached the preset number of zero crossings, update the duty cycle of the pulse signal according to the cumulative number of zero crossings and a first preset rule, so as to increase the duty cycle of the pulse signal; Based on the cumulative number of zero crossings, the commutation period is updated according to the second preset rule to reduce the commutation period.
9. An electronic control device, characterized in that, The electronic control device includes a memory and a processor. The memory stores a computer program. When the computer program is executed by the processor, the processor enables the processor to implement the brushless motor starting method as described in any one of claims 1 to 7.
10. A massage device, characterized in that, The massage device includes the electronic control device as described in claim 9.
11. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the brushless motor starting method as described in any one of claims 1 to 7.