Motor control method, device, motor and readable storage medium

By using the current and voltage amplitudes of the dq coordinate system to calculate the angle deviation and set the closed-loop current and voltage amplitudes during the open-loop and closed-loop switching process of the motor, the stability and reliability problems during motor startup are solved, and smooth switching and reliable operation of the motor are achieved.

CN113691184BActive Publication Date: 2025-09-16HEFEI MIDEA HEATING & VENTILATING EQUIP +1
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111010496.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-08-31
Publication Date
2025-09-16
Estimated Expiration
2041-08-31

AI Technical Summary

Technical Problem

In the prior art, the rotor position estimation of the motor in the open-loop and closed-loop control stages is inconsistent, resulting in poor smoothness and reliability when the motor starts, especially sudden changes in current and speed during switching, affecting the smooth operation of the motor.

Method used

When the motor switches from open loop to closed loop, the current and voltage amplitudes of the dq coordinate system are obtained, the angle deviation is calculated, and the current and voltage amplitudes of the closed loop are set according to the deviation to achieve smooth switching of the coordinate system and avoid sudden changes in current and voltage.

Benefits of technology

It achieves smooth switching of the motor between the open-loop and closed-loop stages, improves the stability and reliability of the motor startup, avoids speed oscillation and other problems, and ensures that the motor can run smoothly.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113691184B_ABST
    Figure CN113691184B_ABST
Patent Text Reader

Abstract

The present invention provides a method, device, motor and readable storage medium for controlling a motor. The method includes: obtaining a first current amplitude and a first voltage amplitude in a d‑q coordinate system when the motor is in the open-loop operation stage during the process of switching from the open-loop operation stage to the closed-loop operation stage; determining the angular deviation between the open-loop position angle and the closed-loop position angle of the motor; and setting a second current amplitude and a second voltage amplitude in a d‑q coordinate system when the motor is in the closed-loop operation stage based on the angular deviation, the first current amplitude and the first voltage amplitude. Thus, during the switching process, the amplitude and absolute angle of the given voltage and the given current will not change suddenly, effectively solving the problem of sudden changes in current magnitude and phase during the switching due to inconsistency in the open-loop and closed-loop estimated angles, and achieving a smooth switching transition between the open-loop operation stage and the closed-loop operation stage.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of motor control, and in particular to a motor control method, a motor control device, a motor, and a readable storage medium. Background Art

[0002] In the related art, most motors used in household appliances (including compressors and fans) are controlled without position sensors and are usually started by switching from open loop to closed loop. In the open loop, the motor is directly rotated by opening the loop at a given angle. At this time, there is only a current loop and no speed loop. After the motor has established a certain back electromotive force, it is directly switched to closed loop control. In the closed loop stage, a position sensorless control method is used to estimate the motor rotor position and speed. Since the rotor position estimation methods used in the open and closed loop stages are different, when the open loop is switched to the closed loop, the estimated angle and speed will inevitably undergo a sudden change, affecting the actual control effect, and then affecting the smoothness and reliability of the motor start-up. Summary of the Invention

[0003] The present invention aims to solve or improve at least one of the technical problems existing in the prior art or related art.

[0004] To this end, a first aspect of the present invention provides a method for controlling a motor.

[0005] A second aspect of the present invention further provides a control device for a motor.

[0006] The third aspect of the present invention further provides a motor.

[0007] A fourth aspect of the present invention further provides a readable storage medium.

[0008] In view of this, the first aspect of the present invention proposes a method for controlling a motor, including obtaining a first current amplitude and a first voltage amplitude in a dq coordinate system when the motor is in an open-loop operation stage during the process of switching the motor from an open-loop operation stage to a closed-loop operation stage; determining the angular deviation between the open-loop position angle and the closed-loop position angle of the motor; and setting a second current amplitude and a second voltage amplitude in the dq coordinate system when the motor is in a closed-loop operation stage according to the angular deviation, the first current amplitude and the first voltage amplitude.

[0009] The motor control method provided by the present invention first uses a given current as the target current that the motor ultimately wants to reach in open-loop operation during the motor startup process. When the motor reaches a certain speed and establishes a certain back electromotive force, it needs to switch to closed-loop operation to achieve precise control of the motor through control feedback.

[0010] Specifically, during the process of switching the motor from the open-loop operation stage to the closed-loop operation stage, that is, the open-loop-closed-loop switching stage, the first current amplitude and the first voltage amplitude of the dq coordinate system (two-phase rotating coordinate system) when the motor is in the open-loop operation stage, that is, the maximum values ​​of the current and voltage, are obtained. Among them, the first current amplitude includes the component of the d-axis (direct axis) current amplitude and the component of the q-axis (quadratic axis) current amplitude when the loop is open. Similarly, the first voltage amplitude includes the component of the d-axis (direct axis) voltage amplitude and the component of the q-axis (quadratic axis) voltage amplitude when the loop is open. The rotor position angle (open-loop position angle) of the motor in the open-loop operation stage and the rotor position angle (closed-loop position angle) of the motor in the closed-loop operation stage are estimated, and the angular deviation between the open-loop position angle and the closed-loop position angle and the first current amplitude are used to determine the second current amplitude of the motor in the closed-loop operation stage. At the same time, the angular deviation between the open-loop position angle and the closed-loop position angle and the first voltage amplitude are used to determine the second voltage amplitude of the motor in the closed-loop operation stage. Thus, the difference in rotor position estimation used in the open-loop and closed-loop operation stages is fully taken into account. At the beginning of the switching stage, the first current amplitude and the first voltage amplitude can be switched from the d and q axes of the open-loop dq coordinate system to the d and q axes of the closed-loop dq coordinate system, that is, the given current and the given voltage in the open-loop dq coordinate system are projected onto the closed-loop dq coordinate system according to the angular deviation.

[0011] Through the motor control method provided by the present invention, since the second current amplitude and the second voltage amplitude are obtained by converting according to the ratio of the first current amplitude and the first voltage amplitude, during the switching stage, only the reference coordinate system, that is, the coordinate projection, is switched, and the amplitude (current upper limit) and absolute angle of the given voltage and the given current will not change suddenly, thereby effectively solving the problem of sudden changes in current magnitude and phase during switching due to inconsistent open and closed loop estimation angles during open-loop and closed-loop switching, achieving smooth switching transition between the open-loop operation stage and the closed-loop operation stage, avoiding problems such as speed oscillation of the motor that cause the motor to not run smoothly, and improving the smoothness and reliability of motor startup.

[0012] It should be noted that the three-stage starting method of the motor includes three stages: positioning-open loop-closed loop. Before the open loop operation, the motor first enters the positioning stage to locate the initial position of the rotor. Specifically, a DC current is applied to the motor winding so that the rotor is positioned at a certain initial angle. Open-loop drag is performed at the initial angle. At this time, the given current of the motor will be added to the q axis (quadratic axis) or d axis (direct axis) of the dq coordinate system. Taking the d axis as an example, the given current amplitude in the open loop operation stage is set to Iref. Then, the d-axis current amplitude component Idref1=Iref in the first current amplitude, and the d-axis current amplitude component Iqref1=0. Taking the q axis as an example, the given current amplitude in the open loop operation stage is set to Iref. Then, the q-axis current amplitude component Iqref1=Iref in the first current amplitude, and the d-axis current amplitude component Idref1=0.

[0013] The motor control method provided by the present invention may also have the following additional technical features:

[0014] In the above technical solution, further, based on the angle deviation and the first current amplitude, the second current amplitude of the dq coordinate system when the motor is in the closed-loop operation stage is set, including: taking the product of the cosine value of the angle deviation and the first current amplitude as the d-axis current amplitude in the second current amplitude; taking the product of the sine value of the angle deviation and the first current amplitude as the q-axis current amplitude in the second current amplitude.

[0015] In this technical solution, the components of the second current amplitude in the closed-loop dq coordinate system include the d-axis current amplitude and the q-axis current amplitude. The d-axis current amplitude in the second current amplitude is equal to the cosine value of the angular deviation multiplied by the first current amplitude, and the q-axis current amplitude in the second current amplitude is equal to the sine value of the angular deviation multiplied by the first current amplitude, thereby completing the coordinate projection of the given current amplitude in the dq coordinate system. Thus, the difference in rotor position estimation adopted in the open-loop and closed-loop operation stages is fully taken into account. At the beginning of the switching stage, the first current amplitude and the first voltage amplitude can be switched from the open-loop coordinate system d and q axes to the closed-loop coordinate system d and q axes. Then, during the switching process, only the reference coordinate system is switched, and the amplitude (current upper limit) and absolute angle of the given voltage and the given current will not change suddenly. This effectively solves the problem of sudden changes in current magnitude and phase during switching due to inconsistent open-loop and closed-loop estimation angles during open-loop and closed-loop switching, realizes smooth switching transition between the open-loop operation stage and the closed-loop operation stage, avoids problems such as speed oscillation of the motor that cause the motor to not run smoothly, and improves the smoothness and reliability of motor starting.

[0016] Specifically, since the given current of the motor will be added entirely to the q-axis or d-axis of the dq coordinate system during open-loop drag, when the given current is entirely loaded on the d-axis, the d-axis current amplitude is the amplitude of the given current, and the q-axis current amplitude is 0. At this time, the first current amplitude is the d-axis current amplitude, and the d-axis current amplitude in the second current amplitude is the product of the cosine value of the angle deviation and the d-axis current amplitude, and the q-axis current amplitude in the second current amplitude is the product of the sine value of the angle deviation and the d-axis current amplitude. Similarly, when the given current is entirely loaded on the q-axis, the q-axis current amplitude is the amplitude of the given current, and the d-axis current amplitude is 0. At this time, the first current amplitude is the q-axis current amplitude, and the d-axis current amplitude in the second current amplitude is the product of the cosine value of the angle deviation and the q-axis current amplitude, and the q-axis current amplitude in the second current amplitude is the product of the sine value of the angle deviation and the q-axis current amplitude.

[0017] In any of the above technical solutions, further, according to the angle deviation and the first voltage amplitude, the second voltage amplitude of the dq coordinate system when the motor is in the closed-loop operation stage is set, including: setting the d-axis voltage amplitude in the second voltage amplitude according to the product of the d-axis voltage amplitude in the first voltage amplitude and the cosine value of the angle deviation, and the product of the q-axis voltage amplitude in the first voltage amplitude and the sine value of the angle deviation; setting the q-axis voltage amplitude in the second voltage amplitude according to the product of the d-axis voltage amplitude in the first voltage amplitude and the sine value of the angle deviation, and the product of the q-axis voltage amplitude in the first voltage amplitude and the cosine value of the angle deviation.

[0018] In this technical solution, the components of the second voltage amplitude in the closed-loop dq coordinate system include the d-axis voltage amplitude and the q-axis voltage amplitude. The product of the d-axis voltage amplitude component in the first voltage amplitude and the cosine value of the angular deviation is calculated to obtain a first voltage, and the product of the q-axis voltage amplitude in the first voltage amplitude and the sine value of the angular deviation is calculated to obtain a second voltage. The first and second voltages are added, and the resulting value is configured as the d-axis voltage amplitude in the second voltage amplitude. The product of the d-axis voltage amplitude in the first voltage amplitude and the sine value of the angular deviation is calculated to obtain a third voltage, and the product of the q-axis voltage amplitude in the first voltage amplitude and the cosine value of the angular deviation is calculated to obtain a fourth voltage. The third and fourth voltages are added, and the resulting value is configured as the q-axis voltage amplitude in the second voltage amplitude, completing the coordinate projection of the given voltage amplitude in the dq coordinate system. Thus, the difference in rotor position estimation adopted in the open-loop and closed-loop operation stages is fully taken into account. At the beginning of the switching stage, the first voltage amplitude and the first voltage amplitude can be switched from the open-loop coordinate system d and q axes to the closed-loop coordinate system d and q axes. Then, during the switching process, only the reference coordinate system is switched, while the given voltage and the amplitude (voltage upper limit) and absolute angle of the given voltage will not change suddenly. This effectively solves the problem of sudden changes in voltage magnitude and phase during switching due to inconsistent open-loop and closed-loop estimation angles during open-loop and closed-loop switching, realizes smooth switching transition between the open-loop operation stage and the closed-loop operation stage, avoids problems such as speed oscillation of the motor that cause the motor to not run smoothly, and improves the smoothness and reliability of motor starting.

[0019] In the above technical solution, further, the angular deviation between the open-loop position angle and the closed-loop position angle of the motor is determined, including: determining the open-loop position angle based on the rotational speed of the motor; determining the closed-loop position angle based on the magnetic flux information and the phase-locked loop of the motor; and determining the difference between the open-loop position angle and the closed-loop position angle as the angular deviation.

[0020] In this technical solution, since there is no control feedback in the open-loop operation stage of the motor, it is controlled by the input given current. At this time, the motor accelerates the rotor speed of the motor from a certain speed (for example, 0, -5rad / s) to a preset speed related to the given current. In the open-loop operation stage, the rotor speed is integrated to estimate the open-loop position angle. For the closed-loop operation stage, the flux observer is used to determine the flux information (speed and angle) of the rotor in the dq coordinate system, and the flux information is used as the input of the phase-locked loop. The closed-loop position angle of the rotor is estimated through the output of the phase-locked loop. The open-loop position angle and the closed-loop position angle are subtracted to obtain the angular deviation between the open-loop position angle and the closed-loop position angle.

[0021] In any of the above technical solutions, the motor control method further includes: controlling the motor speed to remain within a preset speed range; controlling the motor current amplitude to be reduced to an amplitude threshold; timing the duration during which the current amplitude is less than or equal to the amplitude threshold; and controlling the motor to enter a closed-loop operation stage based on the duration being greater than or equal to the preset duration.

[0022] In this technical solution, after setting the second current amplitude and the second voltage amplitude in the dq coordinate system, that is, after switching from the open-loop coordinate system to the closed-loop coordinate system, the motor is controlled to operate at a speed that meets the preset speed range, so that the motor can continue to run at the speed of the open-loop operation stage, thereby ensuring the smooth operation of the motor. At this time, the current amplitude of the motor is adjusted, that is, the maximum value of the given current is set, so that the current amplitude begins to decrease until the current amplitude is reduced to the specified amplitude threshold.

[0023] If the current amplitude is less than or equal to the amplitude threshold for a duration greater than or equal to the preset duration, it indicates that the current amplitude in the dq coordinate system has been configured with the amplitude threshold and maintained for a short period of time. At this time, the d-axis current is positive, which helps increase the excitation current and magnetize the motor, ensuring that the motor has a large output voltage. The motor is then controlled to enter the closed-loop operation phase, completing the switch from open-loop to closed-loop operation. This further ensures that the open-loop and closed-loop switching is fast and more stable, smooth and reliable. Even if the load fluctuates during the switching process, the motor will not lose step, and has excellent stability performance.

[0024] The amplitude threshold is related to the sampling performance of the motor, and the preset speed range is related to the speed of the motor in the open-loop operation stage.

[0025] In any of the above technical solutions, further, controlling the current amplitude of the motor to decrease to an amplitude threshold includes: controlling the current amplitude to decrease multiple times according to a preset offset.

[0026] In this technical solution, in the process of controlling the current amplitude to decrease, in order to avoid current oscillation caused by a direct, one-time rapid reduction, a step-by-step reduction method is adopted, and the current amplitude is adjusted multiple times according to a preset offset, so that the current amplitude can be gradually reduced until the current amplitude is reduced to the amplitude threshold. This is beneficial to increasing the excitation current and playing a role in motor magnetization. It ensures smooth control of the speed open-loop and closed-loop control switching process during motor startup, prevents sudden changes in motor current, stabilizes motor speed, and greatly reduces motor vibration. The switching success rate is improved, and the switching process is not affected by the motor load characteristics. It has strong versatility and a wide range of adaptability.

[0027] In any of the above technical solutions, the motor control method further includes: obtaining the current amplitude of the motor in response to the start-up instruction of the motor; controlling the motor to enter the open-loop operation stage according to the current amplitude, and obtaining the speed of the motor; based on the motor speed being greater than or equal to the preset speed, controlling the motor to switch from the open-loop operation stage to the closed-loop operation stage.

[0028] In this technical solution, when the motor starts, it controls open-loop operation according to the specified current amplitude (current amplitude) required by the motor. Specifically, the motor windings are sequentially energized using the specified current amplitude in a predetermined phase sequence while the commutation frequency is gradually increased to increase the motor speed. During the open-loop operation phase, the motor speed is monitored in real time.

[0029] Furthermore, if it is detected that the speed of the motor is greater than or equal to the preset speed, it means that the motor has accelerated to the required preset speed. At this time, the motor has established a sufficiently large back electromotive force, and the step of switching the motor from the open-loop operation stage to the closed-loop operation stage can be executed to complete the starting process of the motor. At the same time, in the process of switching the motor from the open-loop operation stage to the closed-loop operation stage, the second current amplitude and the second voltage amplitude of the motor in the closed-loop operation stage are converted using the angle deviation between the open-loop position angle and the closed-loop position angle. The amplitude (current upper limit) and absolute angle of the given voltage and the given current will not change suddenly, thereby effectively solving the problem of sudden change in current magnitude and phase during switching due to inconsistency in the open-loop and closed-loop estimated angles during the open-loop and closed-loop switching, achieving a smooth switching transition between the open-loop operation stage and the closed-loop operation stage, avoiding problems such as speed oscillation of the motor that cause the motor to not run smoothly, and improving the smoothness and reliability of the motor start-up.

[0030] According to a second aspect of the present invention, a motor control device is also proposed, comprising: an acquisition module for acquiring a first current amplitude and a first voltage amplitude in a dq coordinate system of the motor in the open-loop operation phase when the motor switches from the open-loop operation phase to the closed-loop operation phase; a determination module for determining the angular deviation between the open-loop position angle and the closed-loop position angle of the motor; and a switching module for setting a second current amplitude and a second voltage amplitude in the dq coordinate system of the motor in the closed-loop operation phase based on the angular deviation, the first current amplitude, and the first voltage amplitude. Therefore, the motor control device has all the beneficial effects of the motor control method proposed in the first aspect, and to avoid repetition, no further details will be given.

[0031] According to a third aspect of the present invention, a motor is provided, comprising: a memory storing a program or instructions; and a processor connected to the memory, configured to execute the program or instructions to implement the steps of the motor control method of the first aspect. Therefore, the motor has all the advantages of the motor control method of the first aspect, and to avoid repetition, further details are omitted.

[0032] According to a fourth aspect of the present invention, a readable storage medium is provided, on which a program or instruction is stored. When executed by a processor, the program or instruction implements the motor control method of the first aspect. Therefore, the readable storage medium has all the beneficial effects of the motor control method of the first aspect, and to avoid repetition, further details are omitted.

[0033] Additional aspects and advantages of the invention will become apparent from the description which follows, or may be learned by practice of the invention. BRIEF DESCRIPTION OF THE DRAWINGS

[0034] The above and / or additional aspects and advantages of the present invention will become apparent and readily understood from the following description of the embodiments with reference to the accompanying drawings, in which:

[0035] Figure 1 FIG1 shows a flow chart of a method for controlling a motor according to an embodiment of the present invention;

[0036] Figure 2 A second flow chart of a method for controlling a motor according to an embodiment of the present invention is shown;

[0037] Figure 3 FIG3 is a flow chart showing a method for controlling a motor according to an embodiment of the present invention;

[0038] Figure 4 FIG4 is a flow chart showing a method for controlling a motor according to an embodiment of the present invention;

[0039] Figure 5 FIG5 is a fifth flow chart showing a method for controlling a motor according to an embodiment of the present invention;

[0040] Figure 6 FIG6 is a sixth flow chart showing a method for controlling a motor according to an embodiment of the present invention;

[0041] Figure 7 FIG7 is a flowchart of a method for controlling a motor according to an embodiment of the present invention;

[0042] Figure 8 One of the open-loop-closed-loop switching principle diagrams of a specific embodiment of the present invention is shown;

[0043] Figure 9The second schematic diagram of the open-loop-closed-loop switching principle of a specific embodiment of the present invention is shown;

[0044] Figure 10 A schematic diagram showing current changes during the motor startup process according to a specific embodiment of the present invention is shown;

[0045] Figure 11 A schematic block diagram showing a control device for a motor according to an embodiment of the present invention is shown;

[0046] Figure 12 A schematic block diagram of a motor according to an embodiment of the present invention is shown. DETAILED DESCRIPTION

[0047] In order to more clearly understand the above-mentioned objects, features and advantages of the present invention, the present invention is further described in detail below in conjunction with the accompanying drawings and specific embodiments. It should be noted that, in the absence of conflict, the embodiments of the present application and the features therein can be combined with each other.

[0048] In the following description, many specific details are set forth to facilitate a full understanding of the present invention. However, the present invention may also be implemented in other ways different from those described herein. Therefore, the scope of protection of the present invention is not limited to the specific embodiments disclosed below.

[0049] Refer to the following Figures 1 to 12 A motor control method, a motor control device, a motor, and a readable storage medium according to some embodiments of the present invention are described.

[0050] Example 1:

[0051] like Figure 1 As shown, according to an embodiment of the first aspect of the present invention, the present invention provides a method for controlling a motor, comprising:

[0052] Step 102: When the motor switches from an open-loop operation phase to a closed-loop operation phase, obtain a first current amplitude and a first voltage amplitude in a dq coordinate system of the motor in the open-loop operation phase;

[0053] Step 104, determining an angle deviation between an open-loop position angle and a closed-loop position angle of the motor;

[0054] Step 106 : Setting a second current amplitude and a second voltage amplitude in the dq coordinate system when the motor is in a closed-loop operation phase according to the angle deviation, the first current amplitude, and the first voltage amplitude.

[0055] In this embodiment, during the motor startup process, the motor is first operated in open loop with a given current as the target current to be achieved. When the motor reaches a certain speed and establishes a certain back electromotive force, it is necessary to switch to closed loop operation to achieve precise control of the motor through control feedback.

[0056] Specifically, after the motor meets certain conditions, it will switch from the open-loop operation stage to the closed-loop operation stage. During the open-loop-closed-loop switching stage, the first current amplitude and the first voltage amplitude of the open-loop dq coordinate system (two-phase rotating coordinate system) during the open-loop control of the motor are obtained, that is, the maximum value of the motor's given current and given voltage. Among them, the first current amplitude includes the component of the d-axis (direct axis) current amplitude during the open-loop and the component of the q-axis (quadratic axis) current amplitude. Similarly, the first voltage amplitude includes the component of the d-axis (direct axis) voltage amplitude during the open-loop and the component of the q-axis (quadratic axis) voltage amplitude during the open-loop. The rotor position angle (open-loop position angle) of the motor when the motor is running in the open-loop and the rotor position angle (closed-loop position angle) of the motor when the motor is running in the closed-loop are estimated, and the angular deviation between the rotor position angles corresponding to the open-loop and closed-loop and the first current amplitude are used to determine the second current amplitude of the motor in the closed-loop operation stage. At the same time, the angular deviation between the open-loop position angle and the closed-loop position angle and the first voltage amplitude are used to determine the second voltage amplitude of the motor in the closed-loop operation stage. Thus, the difference in rotor position estimation used in the open-loop and closed-loop operation stages is fully taken into account. At the beginning of the switching stage, the first current amplitude and the first voltage amplitude can be switched from the d and q axes of the open-loop dq coordinate system to the d and q axes of the closed-loop dq coordinate system, that is, the given current and the given voltage in the open-loop dq coordinate system are projected onto the closed-loop dq coordinate system according to the angular deviation.

[0057] Through the motor control method provided by the present invention, since the second current amplitude and the second voltage amplitude of the closed-loop dq coordinate system are obtained by converting according to the ratio of the first current amplitude and the first voltage amplitude, during the switching stage, only the reference coordinate system (the dq coordinate system of the given current and the given voltage), that is, the coordinate projection, is switched, and the amplitude (current upper limit) and absolute angle of the given voltage and the given current will not change suddenly, thereby effectively solving the problem of sudden changes in current magnitude and phase during switching due to inconsistent open-loop and closed-loop estimation angles during open-loop and closed-loop switching, achieving smooth switching transition between the open-loop operation stage and the closed-loop operation stage, avoiding problems such as speed oscillation of the motor that cause the motor to not run smoothly, and improving the smoothness and reliability of motor startup.

[0058] It should be noted that the three-stage starting method of the motor includes three stages: positioning-open loop-closed loop. Before the open loop operation, the motor first enters the positioning stage to locate the initial position of the rotor. Specifically, a DC current is applied to the motor winding so that the rotor is positioned at a certain initial angle. Open-loop drag is performed at the initial angle. At this time, the given current of the motor will be added to the q axis (quadratic axis) or d axis (direct axis) of the dq coordinate system. Taking the d axis as an example, the given current amplitude in the open loop operation stage is set to Iref. Then, the d-axis current amplitude component Idref1=Iref in the first current amplitude, and the d-axis current amplitude component Iqref1=0. Taking the q axis as an example, the given current amplitude in the open loop operation stage is set to Iref. Then, the q-axis current amplitude component Iqref1=Iref in the first current amplitude, and the d-axis current amplitude component Idref1=0.

[0059] Example 2:

[0060] like Figure 2 As shown, according to one embodiment of the present invention, a method for controlling a motor is proposed, comprising:

[0061] Step 202 , in a switching phase of the motor, obtaining a first current amplitude and a first voltage amplitude in a dq coordinate system when the motor is in open-loop operation;

[0062] Step 204, estimating the open-loop position angle based on the motor speed;

[0063] Step 206, estimating the closed-loop position angle using the motor flux and the motor phase-locked loop;

[0064] Step 208: Subtract the open-loop position angle from the closed-loop position angle to determine the angle deviation.

[0065] Step 210: Setting a second current amplitude and a second voltage amplitude in the dq coordinate system when the motor is in closed operation according to the angle deviation, the first current amplitude, and the first voltage amplitude.

[0066] In this embodiment, since there is no control feedback during the motor's open-loop operation phase, control is performed using a given current input. The motor accelerates the rotor speed from a certain speed (e.g., 0, -5 rad / s) to a preset speed associated with the given current. During the open-loop operation phase, the rotor speed is integrated to estimate the open-loop position angle. During the closed-loop operation phase, a flux observer is used to determine the rotor's flux information in the dq coordinate system. This flux information is used as the input to a phase-locked loop (PLL), and the closed-loop position angle of the rotor is estimated via the PLL output. A subtraction operation is performed on the open-loop and closed-loop position angles to obtain the angular deviation between the corresponding rotor position angles for the open and closed loops.

[0067] Specifically, if Figure 8 and Figure 9 As shown, the estimated open-loop position angle is θ1, the closed-loop position angle is θ2, and the angular deviation between the open-loop and closed-loop is Δθ=θ1-θ2.

[0068] Example 3:

[0069] like Figure 3 As shown, according to one embodiment of the present invention, a method for controlling a motor is proposed, comprising:

[0070] Step 302 , during the switching phase of the motor, obtaining the open-loop current amplitude and the open-loop voltage amplitude of the dq coordinate system when the motor is in open-loop operation;

[0071] Step 304, calculating the angle deviation between the rotor position angle when the motor is in open loop operation and the rotor position angle when the motor is in closed loop operation;

[0072] Step 306 , performing a multiplication operation on the cosine value of the angle deviation and the d-axis current component in the open-loop current amplitude to obtain the d-axis current component in the closed-loop current amplitude;

[0073] Step 308 , performing a multiplication operation on the sine value of the angle deviation and the d-axis current component in the open-loop current amplitude to obtain the q-axis current component in the closed-loop current amplitude;

[0074] Step 310: setting the d-axis voltage component in the closed-loop voltage amplitude according to the product of the d-axis voltage component in the open-loop current amplitude and the cosine value of the angle deviation, and according to the product of the q-axis voltage component in the open-loop current amplitude and the sine value of the angle deviation;

[0075] Step 312 : Set the q-axis voltage component in the closed-loop voltage amplitude according to the product of the d-axis voltage component in the open-loop voltage amplitude and the sine value of the angle deviation, and the product of the q-axis voltage component in the open-loop voltage amplitude and the cosine value of the angle deviation.

[0076] In this embodiment, the components of the closed-loop current amplitude (second current amplitude) in the dq coordinate system include a d-axis current amplitude and a q-axis current amplitude.

[0077] Among them, during open-loop dragging, and when the given current is fully loaded on the d-axis, the current component of the d-axis in the closed-loop current amplitude (second current amplitude) (d-axis current amplitude) is equal to the cosine value of the angle deviation multiplied by the current component of the d-axis in the open-loop current amplitude (first current amplitude), and the current component of the q-axis in the closed-loop current amplitude (q-axis current amplitude) is equal to the sine value of the angle deviation multiplied by the current component of the d-axis in the open-loop current amplitude, so as to complete the coordinate projection of the given current amplitude in the dq coordinate system. Thus, the difference in rotor position estimation adopted in the open-loop and closed-loop operation stages is fully taken into account. At the beginning of the switching stage, the open-loop current amplitude and the open-loop voltage amplitude can be switched from the open-loop coordinate system d and q axes to the closed-loop coordinate system d and q axes. Therefore, during the switching process, only the reference coordinate system is switched, and the amplitude (current upper limit) and absolute angle of the given voltage and given current will not change suddenly. This effectively solves the problem of sudden changes in current magnitude and phase during switching due to inconsistent open-loop and closed-loop estimation angles during open-loop and closed-loop switching, realizes smooth switching transition between the open-loop operation stage and the closed-loop operation stage, avoids problems such as speed oscillation of the motor that cause the motor to not run smoothly, and improves the smoothness and reliability of motor starting.

[0078] Specifically, if Figure 8 As shown in FIG, taking the motor's given current as an example, the d-axis component of the closed-loop current amplitude is calculated using the following formula (1). The q-axis component of the closed-loop current amplitude is calculated using the following formula (2).

[0079] Idref2=Idref1×cosΔθ; (1)

[0080] Iqref2=Idref1×sinΔθ; (2)

[0081] Wherein, Idref2 is the current component of the d-axis in the closed-loop current amplitude, Iqref2 is the current component of the q-axis in the closed-loop current amplitude, and Δθ is the angle deviation.

[0082] The given current of the motor is all added to the q axis. Similarly, the closed-loop current amplitude is calculated using the following formulas (3) and (4):

[0083] Idref2=Iqref1×cosΔθ; (3)

[0084] Iqref2=Iqref1×sinΔθ; (4)

[0085] It should be noted that during open-loop operation, the motor's given current is applied entirely to the q-axis (quadrature axis) or d-axis (direct axis) of the dq coordinate system. Therefore, Iqref1 or Idref1 represents the amplitude of the given current (Iref). Furthermore, the components of the closed-loop voltage amplitude in the closed-loop dq coordinate system include the d-axis voltage amplitude and the q-axis voltage amplitude.

[0086] The first voltage is calculated by multiplying the cosine value of the angle deviation by the voltage component of the d-axis in the open-loop voltage amplitude. The second voltage is calculated by multiplying the sine value of the angle deviation by the voltage component of the q-axis in the open-loop voltage amplitude. The first and second voltages are added, and the resulting voltage is configured as the voltage component of the d-axis in the dq coordinate system in the closed-loop voltage amplitude.

[0087] Similarly, a third voltage is calculated by multiplying the sine value of the angle deviation by the d-axis voltage component of the open-loop voltage amplitude. A fourth voltage is calculated by multiplying the cosine value of the angle deviation by the q-axis voltage component of the open-loop voltage amplitude. The third and fourth voltages are added, and the resulting voltage value is configured as the q-axis voltage component of the closed-loop voltage amplitude to complete the coordinate projection of the given voltage amplitude in the dq coordinate system. Thus, the difference in rotor position estimation adopted in the open-loop and closed-loop operation stages is fully taken into account. At the beginning of the switching stage, the open-loop voltage amplitude and the open-loop voltage amplitude can be switched from the open-loop coordinate system d and q axes to the closed-loop coordinate system d and q axes. Then, during the switching process, only the reference coordinate system is switched, while the given voltage and the given voltage amplitude (voltage upper limit) and the absolute angle will not change suddenly. This effectively solves the problem of sudden changes in voltage magnitude and phase during switching due to inconsistent open-loop and closed-loop estimation angles during open-loop and closed-loop switching, realizes smooth switching transition between the open-loop operation stage and the closed-loop operation stage, avoids problems such as speed oscillation of the motor that cause the motor to not run smoothly, and can reliably connect to closed-loop control during the motor startup process, thereby improving the smoothness and reliability of the motor startup.

[0088] Specifically, if Figure 9 As shown, the d-axis voltage component of the dq coordinate system in the closed-loop voltage amplitude is specifically calculated using the following formula (5). The q-axis voltage component of the dq coordinate system in the closed-loop voltage amplitude is specifically calculated using the following formula (6).

[0089] Vdref2=Vdref1×cosΔθ-Vqref1×sinΔθ; (5)

[0090] Vqref2=Vdref1×sinΔθ+Vqref1×cosΔθ; (6)

[0091] Wherein, Vdref2 is the voltage component of the d-axis in the closed-loop voltage amplitude, Vqref2 is the voltage component of the q-axis in the closed-loop voltage amplitude, Δθ is the angle deviation, Vdref1 is the voltage component of the d-axis in the open-loop voltage amplitude, and Vqref1 is the voltage component of the q-axis in the open-loop voltage amplitude.

[0092] Example 4:

[0093] like Figure 4 As shown, according to one embodiment of the present invention, a method for controlling a motor is proposed, comprising:

[0094] Step 402 , in a switching phase when the motor switches from open-loop operation to closed-loop operation, obtaining an open-loop current amplitude and an open-loop voltage amplitude in a dq coordinate system when the motor is in open-loop operation;

[0095] Step 404, calculating the angle deviation between the rotor position angle when the motor is in open loop operation and the rotor position angle when the motor is in closed loop operation;

[0096] Step 406, setting the closed-loop current amplitude and closed-loop voltage amplitude of the dq coordinate system when the motor is in the closed-loop operation stage according to the angle deviation, the open-loop current amplitude, and the open-loop voltage amplitude;

[0097] Step 408, controlling the motor to operate at a speed that satisfies a preset speed range;

[0098] Step 410, adjusting the current amplitude of the motor to be less than or equal to the amplitude threshold;

[0099] Step 412: Check whether the duration of the current amplitude being less than or equal to the amplitude threshold reaches a preset duration. If so, proceed to step 414; if not, proceed to step 410.

[0100] Step 414: Control the motor to operate in closed loop.

[0101] In this embodiment, the closed-loop current amplitude (second current amplitude) and closed-loop voltage amplitude (second voltage amplitude) in the dq coordinate system are set using the angle deviation, the open-loop current amplitude (first current amplitude), and the open-loop voltage amplitude (first voltage amplitude). That is, after switching from the open-loop coordinate system to the closed-loop coordinate system, the motor is controlled to operate at a speed that satisfies the preset speed range, so that the motor can continue to operate at the speed of the open-loop operation phase, thereby ensuring smooth operation of the motor. At this time, the motor current amplitude is adjusted, that is, the maximum value of the given current is set, so that the current amplitude begins to decrease until the current amplitude drops to a specified amplitude threshold. When the duration of the current amplitude being less than or equal to the amplitude threshold reaches (is greater than or equal to) the preset duration, it indicates that the current amplitude in the dq coordinate system has been configured with the amplitude threshold and maintained for a short period of time. At this time, the d-axis current is positive, which is conducive to increasing the excitation current, playing a role in motor magnetization, and ensuring that the motor has a larger output voltage. The motor is then controlled to enter the closed-loop operation phase, completing the switching operation from open-loop operation to closed-loop operation. This further ensures that the open-loop and closed-loop switching is fast and more stable, smooth and reliable. Even if the load fluctuates during the switching process, the motor will not lose step, and it has excellent stability performance.

[0102] Among them, the amplitude threshold is related to the sampling structure of the motor, and the preset speed range is related to the speed of the motor in the open-loop operation stage. For example, the upper limit value of the preset speed range is the sum of the speed of the motor in the open-loop operation stage and the error amount, and the lower limit value of the preset speed range is the difference between the speed of the motor in the open-loop operation stage and the error amount.

[0103] Furthermore, after the motor enters the closed-loop operation phase, feedback signals from the motor are periodically obtained at preset time intervals, enabling detection of the motor's current and / or speed, thereby adjusting the motor's current and / or speed through closed-loop control. The detected motor current and / or speed are then input into the closed-loop control system as feedback signals to adjust the motor's current and / or speed so that the motor can achieve the desired current and / or speed. The preset time interval can be appropriately set based on the response time of the closed-loop control.

[0104] Embodiment 5:

[0105] like Figure 5 As shown, according to one embodiment of the present invention, a method for controlling a motor is proposed, comprising:

[0106] Step 502 , in a switching phase when the motor switches from open-loop operation to closed-loop operation, obtaining an open-loop current amplitude and an open-loop voltage amplitude in a dq coordinate system when the motor is in open-loop operation;

[0107] Step 504, calculating the angle deviation between the rotor position angle when the motor is in open loop operation and the rotor position angle when the motor is in closed loop operation;

[0108] Step 506, setting the closed-loop current amplitude and closed-loop voltage amplitude of the dq coordinate system during closed-loop operation of the motor according to the angle deviation, the open-loop current amplitude, and the open-loop voltage amplitude;

[0109] Step 508, controlling the motor to operate at a speed that satisfies a preset speed range;

[0110] Step 510, gradually reducing the current amplitude of the motor according to a preset offset;

[0111] Step 512: Check whether the duration of the current amplitude being less than or equal to the amplitude threshold reaches a preset duration. If so, proceed to step 514; if not, proceed to step 510.

[0112] Step 514: Control the motor to operate in closed loop.

[0113] In this embodiment, in the process of controlling the current amplitude to decrease, in order to avoid current oscillation caused by a direct, one-time rapid decrease, a step-by-step reduction method is adopted, in which the current amplitude is adjusted multiple times according to a preset offset, so that the current amplitude can be gradually and linearly reduced until the current amplitude is reduced to less than or equal to the amplitude threshold. This is beneficial for increasing the excitation current, playing a role in motor magnetization, and ensuring smooth control of the speed open-loop and closed-loop control switching process during motor startup. The motor current does not change suddenly, the motor speed is stable, and the motor vibration is greatly reduced. The switching success rate is improved, and the switching process is not affected by the motor load characteristics. It has strong versatility and a wide range of adaptability.

[0114] For example, after the motor switches from the open-loop coordinate system to the closed-loop coordinate system, the current amplitude is still the amplitude Iref of the specified current in the open-loop operation stage, the preset offset is In, and the current amplitude after the first drop is Iref1 = Iref-In; after the specified interval, the current amplitude is controlled to drop for the second time, and the current amplitude after the second drop is Iref2 = Iref1-In; and so on, until the current amplitude drops from Iref to Idmin (amplitude threshold).

[0115] It is understandable that in order to minimize the jitter of the motor during the current amplitude reduction phase, not only the motor speed needs to be kept constant, but also the phase of the given current needs to be controlled to remain constant.

[0116] Example 6:

[0117] like Figure 6 As shown, according to one embodiment of the present invention, a method for controlling a motor is proposed, comprising:

[0118] Step 602: upon receiving a motor start instruction, obtaining the current amplitude of the motor;

[0119] Step 604, operating the motor in open loop according to the current amplitude;

[0120] Step 606: Check whether the motor speed exceeds the preset speed. If so, proceed to step 608; if not, proceed to step 604.

[0121] Step 608, controlling the motor to enter the switching phase;

[0122] Step 610, setting the closed-loop current amplitude and closed-loop voltage amplitude of the dq coordinate system when the motor is in closed-loop operation according to the angle deviation between the motor opening and closing and the closed-loop, and the open-loop current amplitude and open-loop voltage amplitude of the dq coordinate system when the motor is in open-loop operation;

[0123] Step 612, maintaining the motor speed within a preset speed range;

[0124] Step 614, adjusting the current amplitude of the motor to be less than or equal to the amplitude threshold;

[0125] Step 616: Check whether the duration of the current amplitude being less than or equal to the amplitude threshold reaches a preset duration. If so, proceed to step 618; if not, proceed to step 614.

[0126] Step 618: Control the motor to operate in closed loop.

[0127] In this embodiment, upon receiving a motor start command, the motor executes a startup sequence. During this process, the motor is controlled to operate in open-loop mode, sequentially conducting the motor windings with a specified current amplitude and in a predetermined phase sequence while gradually increasing the commutation frequency to increase the motor speed. During open-loop operation, the motor speed is monitored in real time.

[0128] Furthermore, if it is detected that the motor speed exceeds (is greater than or equal to) the preset speed for motor startup, it means that the motor has accelerated to the required target speed. At this time, the motor has established a sufficiently large back electromotive force, and the motor can be controlled to enter the open-loop and closed-loop switching stage, and then the step of converting the motor from open-loop operation to closed-loop operation is executed to achieve the purpose of completing the motor startup. At the same time, during the motor switching stage, the closed-loop current amplitude (second current amplitude) and closed-loop voltage amplitude (second voltage amplitude) of the motor running in the closed-loop operation stage are converted using the estimated angle deviation of the rotor position angle during open-loop operation and closed-loop operation. In this way, when the open-loop dq coordinate system is switched to the closed-loop dq coordinate system, the amplitude (reference current upper limit) and absolute angle of the given voltage and given current in the coordinate system will not change suddenly, thereby effectively solving the problem of sudden change in current magnitude and phase during switching due to inconsistency of the open-loop and closed-loop estimated angles during the open-loop and closed-loop switching, achieving a smooth switching transition between the open-loop operation stage and the closed-loop operation stage, avoiding problems such as speed oscillation of the motor that cause the motor to not run smoothly, and improving the smoothness and reliability of the motor startup.

[0129] It is understandable that the rotational speed of the motor can be detected by a rotational speed detection device, or can be obtained by converting the current and voltage of the dq coordinate system when the motor is running in open loop.

[0130] It should be noted that, in response to a motor start command, before open-loop operation, the motor is first controlled to enter a positioning phase to determine the initial rotor position angle. The rotor is positioned at this initial position angle, and the motor is controlled to operate in open-loop mode according to a given current amplitude. At this point, the motor enters the open-loop operation phase.

[0131] It is worth mentioning that whether to switch from open-loop operation to closed-loop operation of the motor can be determined not only by the motor speed, but also by the gradual increase of the motor in the open-loop operation phase. The open-loop operation time has a certain correspondence with the motor speed. Therefore, the open-loop operation time can also be used to control whether to switch from open-loop operation to closed-loop operation of the motor. Specifically, based on the operating time of the motor in open-loop operation exceeding (greater than or equal to) the time threshold, the motor is switched from the open-loop operation phase to the closed-loop operation phase.

[0132] Embodiment seven:

[0133] like Figure 7 As shown, according to a specific embodiment of the present invention, a motor control method is proposed, including:

[0134] Step 702, responding to the motor start instruction;

[0135] Step 704, the motor enters the positioning phase;

[0136] Step 706, open loop operation of the motor;

[0137] Step 708 , the open-loop time ends and the coordinate system starts to be switched to project the given current and the given voltage into the closed-loop coordinate system;

[0138] Step 710: The rotational speed remains unchanged, and the given current amplitude gradually decreases to the amplitude threshold Idmin and maintains it for a preset time period;

[0139] Step 712: Determine that the closed-loop switching is completed and operate the motor in closed loop.

[0140] In this embodiment, Figure 10 As shown, the motor first enters the positioning (PARK) phase before entering the open-loop operation phase. Due to open-loop drag, the motor's given current is applied entirely to the d-axis or q-axis. Taking the d-axis as an example, the given current amplitude during the open-loop phase is set to Iref (Idref1 = Iref, Iqref1 = 0). When the open-loop accelerates to the starting speed, the switching phase begins. At the beginning of the switching phase, the given current component and the given voltage component are simultaneously switched from the open-loop dq coordinate system (d and q axes) to the closed-loop dq coordinate system (d and q axes). In other words, the given current and voltage in the open-loop coordinate system are projected onto the closed-loop coordinate system.

[0141] Specifically, if Figure 8 As shown in the figure, assuming that at the start of switching, the open-loop position angle is θ1 (the open-loop angle is obtained by integrating the given speed), the closed-loop position angle is θ2 (the closed-loop angle is obtained by flux observation and the phase-locked loop), and the angular deviation between the open and closed loops is Δθ = θ1 - θ2. The given current in the open-loop coordinate system d1, q1 is projected onto the closed-loop coordinate system d2, q2. Here, the given current projection on the d-axis is Idref2 = Iref × cosΔθ; the given current projection on the q-axis is Iqref2 = Iref × sinΔθ.

[0142] Similarly, if Figure 9 As shown, the given voltage in the open-loop coordinate system d1 and q1 is projected onto the closed-loop coordinate system d2 and q2. The given current projection on the d-axis is Vdref2 = Vdref1 × cosΔθ - Vqref1 × sinΔθ; the given current projection on the q-axis is Vqref2 = Vdref1 × sinΔθ + Vqref1 × cosΔθ.

[0143] Therefore, when the open loop is switched to the closed loop, only the reference coordinate system, i.e., the coordinate projection, is switched. The amplitude and absolute angle of the given voltage and the given current will not change suddenly, thus ensuring a smooth transition during switching.

[0144] Furthermore, if Figure 10As shown in the figure, the switching phase begins. After the coordinate system is switched, the motor speed remains unchanged, the phase of the given current Iref also remains unchanged, and the given current amplitude is linearly reduced until it is equal to the amplitude threshold Idmin. When the given current decreases to the amplitude threshold Idmin and remains at this level for a given time, the closed-loop switching is completed. This achieves a smooth transition between open and closed loop, improving the smoothness and reliability of motor startup.

[0145] Embodiment 8:

[0146] like Figure 11 As shown, according to an embodiment of the second aspect of the present invention, a motor control device 800 is proposed, including: an acquisition module 802 , a determination module 804 and a switching module 806 .

[0147] Specifically, the acquisition module 802 is configured to acquire a first current amplitude and a first voltage amplitude in the dq coordinate system of the motor in the open-loop operation phase when the motor switches from the open-loop operation phase to the closed-loop operation phase. The determination module 804 is configured to determine the angular deviation between the open-loop position angle and the closed-loop position angle of the motor. The switching module 806 is configured to set a second current amplitude and a second voltage amplitude in the dq coordinate system of the motor in the closed-loop operation phase based on the angular deviation, the first current amplitude, and the first voltage amplitude.

[0148] In this embodiment, after the motor meets certain conditions, it will switch from the open-loop operation stage to the closed-loop operation stage. During the open-loop-closed-loop switching stage, the first current amplitude and the first voltage amplitude of the open-loop dq coordinate system (two-phase rotating coordinate system) during the open-loop control of the motor are obtained, that is, the maximum value of the motor's given current and given voltage. The first current amplitude includes the components of the d-axis (direct axis) current amplitude and the q-axis (quadratic axis) current amplitude during the open-loop control. Similarly, the first voltage amplitude includes the components of the d-axis (direct axis) voltage amplitude and the q-axis (quadratic axis) voltage amplitude during the open-loop control. The rotor position angle (open-loop position angle) of the motor during open-loop operation and the rotor position angle (closed-loop position angle) of the motor during closed-loop operation are estimated. The angular deviation between the corresponding rotor position angles of the open-loop and closed-loop modes and the first current amplitude are used to determine the second current amplitude of the motor during the closed-loop operation stage. The angular deviation between the open-loop position angle and the closed-loop position angle and the first voltage amplitude are used to determine the second voltage amplitude of the motor during the closed-loop operation stage. This fully accounts for the differences in rotor position estimation used in the open-loop and closed-loop operation phases. At the start of the switching phase, the first current amplitude and the first voltage amplitude can be switched from the d and q axes of the open-loop dq coordinate system to the d and q axes of the closed-loop dq coordinate system. That is, the given current and voltage in the open-loop dq coordinate system are projected onto the closed-loop dq coordinate system according to the angle deviation. Therefore, during the switching phase, only the reference coordinate system (the dq coordinate system of the given current and given voltage), i.e., the coordinate projection, is switched, while the amplitudes (current upper limit) and absolute angles of the given voltage and given current do not undergo sudden changes. This effectively resolves the problem of sudden changes in current magnitude and phase during switching between open and closed loops due to inconsistent open and closed loop estimation angles, achieving a smooth switching transition between the open-loop and closed-loop operation phases, avoiding speed oscillations in the motor that could cause the motor to not operate smoothly, and improving the smoothness and reliability of motor startup.

[0149] Furthermore, the switching module 806 is further configured to use the product of the cosine value of the angle deviation and the first current amplitude as the d-axis current amplitude in the second current amplitude. The switching module 806 is further configured to use the product of the sine value of the angle deviation and the first current amplitude as the q-axis current amplitude in the second current amplitude.

[0150] In this embodiment, the components of the second current amplitude (closed-loop current amplitude) in the closed-loop dq coordinate system include a d-axis current amplitude and a q-axis current amplitude. The d-axis current component (d-axis current amplitude) of the second current amplitude is equal to the cosine value of the angular deviation multiplied by the first current amplitude (open-loop current amplitude), and the q-axis current component (q-axis current amplitude) of the second current amplitude is equal to the sine value of the angular deviation multiplied by the first current amplitude, thereby completing the coordinate projection of the given current amplitude in the dq coordinate system. Thus, the difference in rotor position estimation adopted in the open-loop and closed-loop operation stages is fully taken into account. At the beginning of the switching stage, the first current amplitude and the first voltage amplitude can be switched from the open-loop coordinate system d and q axes to the closed-loop coordinate system d and q axes. Then, during the switching process, only the reference coordinate system is switched, and the amplitude (current upper limit) and absolute angle of the given voltage and the given current will not change suddenly. This effectively solves the problem of sudden changes in current magnitude and phase during switching due to inconsistent open-loop and closed-loop estimation angles during open-loop and closed-loop switching, realizes smooth switching transition between the open-loop operation stage and the closed-loop operation stage, avoids problems such as speed oscillation of the motor that cause the motor to not run smoothly, and improves the smoothness and reliability of motor starting.

[0151] Specifically, since the given current of the motor will be added entirely to the q-axis or d-axis of the dq coordinate system during open-loop drag, when the given current is entirely loaded on the d-axis, the d-axis current amplitude is the amplitude of the given current, and the q-axis current amplitude is 0. At this time, the first current amplitude is the d-axis current amplitude, and the d-axis current amplitude in the second current amplitude is the product of the cosine value of the angle deviation and the d-axis current amplitude, and the q-axis current amplitude in the second current amplitude is the product of the sine value of the angle deviation and the d-axis current amplitude. Similarly, when the given current is entirely loaded on the q-axis, the q-axis current amplitude is the amplitude of the given current, and the d-axis current amplitude is 0. At this time, the first current amplitude is the q-axis current amplitude, and the d-axis current amplitude in the second current amplitude is the product of the cosine value of the angle deviation and the q-axis current amplitude, and the q-axis current amplitude in the second current amplitude is the product of the sine value of the angle deviation and the q-axis current amplitude.

[0152] Furthermore, the switching module 806 is further configured to set the d-axis voltage amplitude in the second voltage amplitude based on the product of the d-axis voltage amplitude in the first voltage amplitude and the cosine value of the angular deviation, and the product of the q-axis voltage amplitude in the first voltage amplitude and the sine value of the angular deviation. The switching module 806 is further configured to set the q-axis voltage amplitude in the second voltage amplitude based on the product of the d-axis voltage amplitude in the first voltage amplitude and the sine value of the angular deviation, and the product of the q-axis voltage amplitude in the first voltage amplitude and the cosine value of the angular deviation.

[0153] In this embodiment, the components of the second voltage amplitude (closed-loop voltage amplitude) in the closed-loop dq coordinate system include the d-axis voltage amplitude and the q-axis voltage amplitude. The first voltage is calculated by multiplying the cosine value of the angular deviation by the d-axis voltage amplitude in the first voltage amplitude, and the second voltage is calculated by multiplying the sine value of the angular deviation by the q-axis voltage amplitude in the first voltage amplitude (open-loop voltage amplitude). The first and second voltages are added, and the resulting value is configured as the d-axis voltage component of the second voltage amplitude in the dq coordinate system. Similarly, the third voltage is calculated by multiplying the sine value of the angular deviation by the d-axis voltage amplitude in the first voltage amplitude, and the fourth voltage is calculated by multiplying the cosine value of the angular deviation by the q-axis voltage amplitude in the first voltage amplitude. The third voltage is added to the fourth voltage, and the resulting value is configured as the q-axis voltage amplitude in the second voltage amplitude, thereby completing the coordinate projection of the given voltage amplitude in the dq coordinate system. Thus, the difference in rotor position estimation adopted in the open-loop and closed-loop operation stages is fully taken into account. At the beginning of the switching stage, the first voltage amplitude and the first voltage amplitude can be switched from the open-loop coordinate system d and q axes to the closed-loop coordinate system d and q axes. Then, during the switching process, only the reference coordinate system is switched, and the given voltage and the amplitude (voltage upper limit) and absolute angle of the given voltage will not change suddenly. This effectively solves the problem of sudden changes in voltage magnitude and phase during switching due to inconsistent open-loop and closed-loop estimation angles during open-loop and closed-loop switching, realizes smooth switching transition between the open-loop operation stage and the closed-loop operation stage, avoids problems such as speed oscillation of the motor that cause the motor to not run smoothly, and can reliably connect to closed-loop control during the startup of the motor, thereby improving the smoothness and reliability of the motor startup.

[0154] Furthermore, determination module 804 is further configured to determine an open-loop position angle based on the motor speed. Determination module 804 is further configured to determine a closed-loop position angle based on the motor flux information and the phase-locked loop. Determination module 804 is further configured to determine the difference between the open-loop position angle and the closed-loop position angle as an angle deviation.

[0155] In this embodiment, since the motor operates without control feedback during open-loop operation, it is controlled by a given current input. The motor accelerates the rotor speed from a certain speed to a preset speed associated with the given current. During the open-loop operation, the rotor speed is integrated to estimate the open-loop position angle. During the closed-loop operation, a flux observer determines the rotor's flux information in the dq coordinate system. This flux information serves as the input to a phase-locked loop (PLL), which then outputs an estimated closed-loop position angle. A subtraction operation is performed on the open-loop and closed-loop position angles to determine the angular deviation between the open-loop and closed-loop rotor position angles.

[0156] Furthermore, the motor control device 800 further includes: a control module (not shown in the figure), which is configured to control the motor speed to remain within a preset speed range; and to control the motor current amplitude to decrease to an amplitude threshold. A timing module (not shown in the figure), which is configured to time the duration that the current amplitude is less than or equal to the amplitude threshold. The control module is further configured to control the motor to enter a closed-loop operation phase if the duration is greater than or equal to a preset duration.

[0157] In this embodiment, after setting the second current amplitude and the second voltage amplitude in the dq coordinate system, that is, switching from the open-loop coordinate system to the closed-loop coordinate system, the motor is controlled to operate at a speed that meets the preset speed range so that the motor can continue to operate at the speed of the open-loop operation stage, thereby ensuring the smooth operation of the motor. At this time, the motor current amplitude is adjusted, that is, the maximum value of the given current is set, so that the current amplitude begins to decrease until the current amplitude drops to the specified amplitude threshold. When the duration of the current amplitude being less than or equal to the amplitude threshold reaches (greater than or equal to) the preset duration, it means that the current amplitude in the dq coordinate system is configured with the amplitude threshold and maintained for a short period of time. At this time, the d-axis current is positive, which is conducive to increasing the excitation current, playing a role in motor magnetization, and ensuring that the motor has a larger output voltage. The motor is then controlled to enter the closed-loop operation stage, completing the switching operation of the motor from open-loop operation to closed-loop operation. Further ensuring that the open-loop and closed-loop switching can be more stable, smooth and reliable while being fast, even if the load fluctuates during the switching process, it will not cause the motor to lose step, and has excellent stability.

[0158] Furthermore, the control module is also used to control the current amplitude to decrease multiple times according to a preset offset.

[0159] In this embodiment, in the process of controlling the current amplitude to decrease, in order to avoid current oscillation caused by a direct, all-at-once rapid decrease, a step-by-step reduction method is adopted, where the current amplitude is adjusted multiple times according to a preset offset, so that the current amplitude can be gradually reduced until it reaches the amplitude threshold. This helps increase the excitation current, plays a role in magnetizing the motor, and ensures smooth control of the speed open-loop and closed-loop control switching process during motor startup. The motor current does not change suddenly, the motor speed is stable, and the motor vibration is greatly reduced, thereby improving the switching success rate. Moreover, the switching process is not affected by the motor load characteristics, and has strong versatility and a wide range of adaptability.

[0160] Furthermore, the acquisition module 802 is also used to obtain the current amplitude of the motor in response to the start-up instruction of the motor; the motor control device 800 also includes: a start-up module (not shown in the figure), which is used to control the motor to enter the open-loop operation stage according to the current amplitude; the acquisition module 802 is also used to obtain the speed of the motor; the switching module 806 is also used to control the motor to switch from the open-loop operation stage to the closed-loop operation stage based on the speed of the motor being greater than or equal to the preset speed.

[0161] In this embodiment, when the motor starts, the motor executes the start-up procedure. At this time, the motor is controlled to operate in open-loop mode, using a specified current amplitude to sequentially conduct the motor windings in a predetermined phase sequence, while gradually increasing the commutation frequency to increase the motor speed. When the motor is running in open loop, the motor speed is detected in real time. If it is detected that the motor speed exceeds (is greater than or equal to) the preset speed for motor startup, it means that the motor has accelerated to the required target speed. At this time, the motor has established a sufficiently large back electromotive force, and the motor can be controlled to enter the open-loop and closed-loop switching stage, and then the step of converting the motor from open-loop operation to closed-loop operation is executed to achieve the purpose of completing the motor startup. At the same time, when the motor is in the switching stage, the closed-loop current amplitude (second current amplitude) and closed-loop voltage amplitude (second voltage amplitude) of the motor running in the closed-loop operation stage are converted using the estimated angle deviation of the rotor position angle during open-loop operation and closed-loop operation. In this way, when the open-loop dq coordinate system is switched to the closed-loop dq coordinate system, the amplitude (reference current upper limit) and absolute angle of the given voltage and given current in the coordinate system will not change suddenly, thereby effectively solving the problem of sudden changes in current size and phase during switching due to inconsistent open-loop and closed-loop estimated angles, achieving smooth switching transition between the open-loop operation stage and the closed-loop operation stage, avoiding problems such as speed oscillation of the motor that cause the motor to not run smoothly, and improving the smoothness and reliability of motor startup.

[0162] Embodiment 9:

[0163] like Figure 12 As shown, according to an embodiment of the third aspect of the present invention, a motor 900 is provided, comprising: a memory 902 and a processor 904. The memory 902 stores a program or instruction. The processor 904 is connected to the memory 902. When the processor 904 executes the program or instruction, the steps of the motor control method provided in the embodiment of the first aspect are implemented. Therefore, the motor has all the beneficial effects of the motor control method provided in the embodiment of the first aspect. To avoid repetition, the details are not further described.

[0164] Specifically, the motor includes a permanent magnetic synchronous machine (PMSM), which adopts a sensorless control strategy during startup.

[0165] Embodiment 10:

[0166] According to an embodiment of a fourth aspect of the present invention, a readable storage medium is provided. The readable storage medium stores a program or instructions, which, when executed by a processor, implements the motor control method provided in the embodiment of the first aspect. Therefore, the readable storage medium has all the beneficial effects of the motor control method provided in the embodiment of the first aspect, and to avoid repetition, further details are omitted.

[0167] In the present invention, the terms "comprises", "includes" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, an element defined by the statement "comprising a ..." does not exclude the presence of other identical elements in the process, method, article or device comprising the element. In addition, it should be noted that the scope of the methods and devices in the embodiments of the present application is not limited to performing functions in the order shown or discussed, and may also include performing functions in a substantially simultaneous manner or in the opposite order according to the functions involved. For example, the described method may be performed in an order different from that described, and various steps may also be added, omitted, or combined. In addition, the features described with reference to certain examples may be combined in other examples.

[0168] Throughout this specification, terms such as "one embodiment," "some embodiments," and "specific embodiments" mean that the specific features, structures, materials, or characteristics described in conjunction with that embodiment or example are included in at least one embodiment or example of the present invention. In this specification, schematic representations of these terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in any one or more embodiments or examples.

[0169] Through the description of the above implementation methods, those skilled in the art can clearly understand that the above-mentioned embodiment methods can be implemented by means of software plus the necessary general hardware platform, and of course can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art can be embodied in the form of a computer software product, which is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk), including a number of instructions for enabling a terminal (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods described in each embodiment of the present application.

[0170] The foregoing description is merely a preferred embodiment of the present invention and is not intended to limit the present invention. Those skilled in the art will readily appreciate that various modifications and variations of the present invention are possible. Any modifications, equivalent substitutions, or improvements made within the spirit and principles of the present invention are intended to be within the scope of protection of the present invention.

Claims

1. A method for controlling a motor, characterized in that: include: During the process of the motor switching from the open-loop operation stage to the closed-loop operation stage, obtaining a first current amplitude and a first voltage amplitude of the dq coordinate system of the motor in the open-loop operation stage; determining an angular deviation between an open-loop position angle and a closed-loop position angle of the motor; According to the angle deviation, the first current amplitude and the first voltage amplitude, setting a second current amplitude and a second voltage amplitude of the dq coordinate system when the motor is in a closed-loop operation stage; The step of setting a second current amplitude in a dq coordinate system when the motor is in a closed-loop operation stage according to the angle deviation and the first current amplitude includes: multiplying the cosine value of the angle deviation and the first current amplitude by the product as the d-axis current amplitude in the second current amplitude; multiplying the sine value of the angle deviation and the first current amplitude as the q-axis current amplitude in the second current amplitude; The step of setting a second voltage amplitude in a dq coordinate system when the motor is in a closed-loop operation stage according to the angle deviation and the first voltage amplitude includes: setting the d-axis voltage amplitude in the second voltage amplitude according to a product of a d-axis voltage amplitude in the first voltage amplitude and a cosine value of the angle deviation, and a product of a q-axis voltage amplitude in the first voltage amplitude and a sine value of the angle deviation; setting the q-axis voltage amplitude in the second voltage amplitude according to the product of the d-axis voltage amplitude in the first voltage amplitude and the sine value of the angle deviation, and the product of the q-axis voltage amplitude in the first voltage amplitude and the cosine value of the angle deviation; Determining an angle deviation between an open-loop position angle and a closed-loop position angle of the motor includes: Determining the open-loop position angle according to the rotational speed of the motor; Determining a closed-loop position angle based on the flux information of the motor and a phase-locked loop; A difference between the open-loop position angle and the closed-loop position angle is determined as the angle deviation.

2. The motor control method according to claim 1, characterized in that: Also includes: Controlling the rotation speed of the motor to remain within a preset rotation speed range; controlling the current amplitude of the motor to decrease to an amplitude threshold; Counting the duration during which the current amplitude of the motor is less than or equal to the amplitude threshold; Based on the duration being greater than or equal to a preset duration, the motor is controlled to enter the closed-loop operation phase.

3. The motor control method according to claim 2, characterized in that: The controlling the current amplitude of the motor to decrease to an amplitude threshold comprises: The current amplitude of the motor is controlled to be reduced multiple times according to a preset offset.

4. The motor control method according to claim 1, wherein: Also includes: In response to a start instruction of the motor, obtaining a current amplitude of the motor; controlling the motor to enter the open-loop operation phase according to the current amplitude of the motor, and obtaining the rotational speed of the motor; Based on the rotation speed of the motor being greater than or equal to a preset rotation speed, the motor is controlled to switch from the open-loop operation stage to the closed-loop operation stage.

5. A motor control device, characterized in that: include: an acquisition module, configured to acquire, during the process of the motor switching from the open-loop operation stage to the closed-loop operation stage, a first current amplitude and a first voltage amplitude of the motor in the dq coordinate system in the open-loop operation stage; a determination module, configured to determine an angle deviation between an open-loop position angle and a closed-loop position angle of the motor; a switching module, configured to set a second current amplitude and a second voltage amplitude of a dq coordinate system when the motor is in a closed-loop operation phase according to the angle deviation, the first current amplitude, and the first voltage amplitude; The switching module is further configured to use the product of the cosine value of the angle deviation and the first current amplitude as the d-axis current amplitude in the second current amplitude; multiplying the sine value of the angle deviation and the first current amplitude as the q-axis current amplitude in the second current amplitude; The switching module is further configured to set the d-axis voltage amplitude in the second voltage amplitude according to a product of a d-axis voltage amplitude in the first voltage amplitude and a cosine value of the angle deviation, and a product of a q-axis voltage amplitude in the first voltage amplitude and a sine value of the angle deviation; setting the q-axis voltage amplitude in the second voltage amplitude according to the product of the d-axis voltage amplitude in the first voltage amplitude and the sine value of the angle deviation, and the product of the q-axis voltage amplitude in the first voltage amplitude and the cosine value of the angle deviation; The determining module is further configured to determine the open-loop position angle according to the rotational speed of the motor; Determining a closed-loop position angle based on the flux information of the motor and a phase-locked loop; A difference between the open-loop position angle and the closed-loop position angle is determined as the angle deviation.

6. The motor control device according to claim 5, characterized in that: Also includes: A control module, configured to control the rotational speed of the motor to remain within a preset rotational speed range; controlling the current amplitude of the motor to decrease to an amplitude threshold; a timing module, configured to time the duration during which the current amplitude of the motor is less than or equal to the amplitude threshold; The control module is further configured to control the motor to enter the closed-loop operation phase based on the duration being greater than or equal to a preset duration.

7. The motor control device according to claim 6, characterized in that: The control module is further configured to control the current amplitude of the motor to decrease multiple times according to a preset offset.

8. The motor control device according to claim 5, characterized in that: The acquisition module is further configured to acquire the current amplitude of the motor in response to a start instruction of the motor; The control device of the motor also includes: a starting module, configured to control the motor to enter the open-loop operation phase according to the current amplitude of the motor; The acquisition module is further configured to acquire the rotational speed of the motor; The switching module is further configured to control the motor to switch from the open-loop operation stage to the closed-loop operation stage based on the rotational speed of the motor being greater than or equal to a preset rotational speed.

9. A motor, characterized in that: include: Memory, which stores programs or instructions; A processor, wherein when executing the program or the instruction, the processor implements the motor control method according to any one of claims 1 to 4.

10. A readable storage medium having a program or instruction stored thereon, characterized in that: When the program or the instruction is executed by a processor, the motor control method according to any one of claims 1 to 4 is performed.

Citation Information

Patent Citations

  • System and method for motor control

    CN109391191A

  • Permanent magnet synchronous motor closed loop switching method

    CN109428524A