Motor and control method, device, storage medium and computer program product thereof
By employing a sinusoidal fitting method and a full-order flux linkage observer to obtain the rotor position in a permanent magnet synchronous motor, a smooth transition from open-loop to closed-loop operation is achieved, solving the problems of large size and stability caused by mechanical sensors and improving the stability of motor startup.
Patent Information
- Application Number
- CN202511065968.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-31
- Publication Date
- 2025-11-07
- Estimated Expiration
- 2045-07-31
AI Technical Summary
In the control of permanent magnet synchronous motors, the use of mechanical sensors to observe rotor position and speed information results in large size and complex structure, which affects the stability and starting stability of the motor control system.
By employing a sinusoidal fitting method, given and observed parameters of the motor are obtained, and given and observed curves are fitted to achieve smooth transition control of the motor from open-loop start-up to closed-loop operation. Accurate rotor position and speed information are obtained using a full-order flux linkage observer and a phase-locked loop module.
It improves the stability of motor starting, avoids problems such as overcurrent and speed fluctuations during motor switching, achieves a smooth transition from open-loop to closed-loop, and enhances the stability of the motor control system.
Smart Images

Figure CN120566969B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application belongs to the technical field of electric machines, and particularly relates to a control method and device of an electric machine, the electric machine, a storage medium and a computer program product, and more particularly relates to a smooth transition method, device, electric machine, storage medium and computer program product for switching from strong-towing starting to closed-loop operation of a permanent magnet synchronous electric machine. BACKGROUND
[0002] Electric machines (such as permanent magnet synchronous electric machines) have the characteristics of high power factor, high torque inertia ratio, high power density, simple structure and easy maintenance, and are widely used in servo systems, industrial control and other fields. In the control of permanent magnet synchronous electric machines, in order to observe the rotor position and speed information, a mechanical sensor (such as a Hall sensor, a rotary transformer, an optical encoder, etc.) needs to be installed on the electric machine to realize closed-loop control of the electric machine. However, the installation of the position sensor (i.e. the mechanical sensor) on the electric machine body will make the electric machine larger in size, the structure of the electric machine control system more complex, and the maintenance more inconvenient, and will also cause the stability of the electric machine control system to decrease and the anti-interference ability to deteriorate. It can be seen that, in the control of electric machines (such as permanent magnet synchronous electric machines), the use of mechanical sensors to observe the rotor position and speed information not only has the problems of large size and complex structure, but also affects the stability of the electric machine control system, thereby affecting the stability of the electric machine starting.
[0003] The above content is only used to assist in understanding the technical solutions of the present application and does not represent the acknowledgement of the above content as prior art. SUMMARY
[0004] The purpose of the present application is to provide a control method and device of an electric machine, the electric machine, a storage medium and a computer program product, to solve the problem that, in the control of electric machines (such as permanent magnet synchronous electric machines), the use of mechanical sensors to observe the rotor position and speed information not only has the problems of large size and complex structure, but also affects the stability of the electric machine control system, thereby affecting the stability of the electric machine starting, and to achieve the effect of realizing smooth transition control from strong-towing starting to closed-loop operation and improving the stability of the electric machine starting by using a sine fitting method in the starting process of the electric machine.
[0005] The present application provides a control method of an electric machine, comprising: obtaining given parameters of the electric machine before starting of the electric machine; controlling the electric machine to run according to the given parameters of the electric machine to make the electric machine rotate in the case that the electric machine starts to start; obtaining observation parameters of the electric machine; based on the given parameters of the electric machine and the observation parameters of the electric machine, using a sine fitting method to respectively fit to obtain a given curve of the electric machine and an observation curve of the electric machine; based on the given curve of the electric machine and the observation curve of the electric machine, controlling the electric machine to switch from an open-loop starting phase to a closed-loop running phase to realize starting control of the electric machine.
[0006] In some embodiments, the given parameters of the motor include given values of d-axis current, q-axis current and position angle of the motor, the observed parameters of the motor include observed values of d-axis current, q-axis current and position angle of the motor, the observed parameters of the motor are obtained by obtaining sampling values of three-phase current of the motor and obtaining sampling values of voltage in the α-axis and β-axis coordinate system of the motor, the sampling values of three-phase current of the motor are converted into transformed values of current in the α-axis and β-axis coordinate system of the motor through Clark transformation, the observed value of the position angle of the motor is obtained based on the sampling values of voltage in the α-axis and β-axis coordinate system of the motor and the sampling values of current in the α-axis and β-axis coordinate system of the motor by using a flux linkage observation module and a phase-locked module, and the transformed values of current in the α-axis and β-axis coordinate system of the motor and the observed value of the position angle of the motor are taken as the observed parameters of the motor.
[0007] In some embodiments, the given curve of the motor and the observed curve of the motor are fitted respectively based on the given parameters of the motor and the observed parameters of the motor by using a sine fitting method, including: setting a curve fitter by using a sine fitting method, fitting the current given curve of the motor by using the curve fitter based on the given parameters of the motor, and fitting the observed curve of the motor by using the curve fitter based on the observed parameters of the motor.
[0008] In some embodiments, the motor is switched from an open-loop starting phase to a closed-loop running phase based on the given curve of the motor and the observed curve of the motor to achieve starting control of the motor, including: generating an approximation curve based on the given curve of the motor and the observed curve of the motor, denoted as the approximation curve of the motor, and controlling the motor to switch from the open-loop starting phase to the closed-loop running phase based on the approximation curve of the motor and the observed curve of the motor to achieve starting control of the motor.
[0009] In some embodiments, the approximation curve of the motor is generated based on the given curve of the motor and the observed curve of the motor, including: determining a first curve error of the motor in phase and / or amplitude, denoted as the first curve error of the motor, and determining whether the first curve error of the motor is greater than a preset required error, and if it is determined that the first curve error of the motor is greater than the preset required error, generating the approximation curve of the motor based on the given curve of the motor and the observed curve of the motor by using an approximation curve generator.
[0010] In some embodiments, according to the approximation curve of the motor and the observation curve of the motor, the motor is switched from the open-loop starting phase to the closed-loop running phase to achieve the starting control of the motor, and the method further comprises: determining the error between the approximation curve of the motor and the observation curve of the motor in phase and / or amplitude, denoted as the second curve error of the motor; and determining whether the second curve error of the motor is greater than a preset required error; if it is determined that the second curve error of the motor is greater than the preset required error, the values of the d-axis current, the q-axis current and the position angle of the motor generated by the approximation curve of the motor are taken as new given parameters of the motor; the motor is controlled to run according to the new given parameters of the motor; and then the approximation curve of the motor is generated again based on the given curve of the motor and the observation curve of the motor.
[0011] In some embodiments, according to the approximation curve of the motor and the observation curve of the motor, the motor is switched from the open-loop starting phase to the closed-loop running phase to achieve the starting control of the motor, and the method further comprises: determining the error between the approximation curve of the motor and the observation curve of the motor in phase and / or amplitude, denoted as the second curve error of the motor; and determining whether the second curve error of the motor is greater than a preset required error; if it is determined that the second curve error of the motor is less than or equal to the preset required error, the motor is controlled to run according to the observation parameters of the motor corresponding to the observation curve of the motor to switch the motor from the open-loop starting phase to the closed-loop running phase to achieve the starting control of the motor.
[0012] Corresponding to the above method, another aspect of the present application provides a motor control device, comprising: an acquisition unit configured to acquire given parameters of the motor before the motor starts; a control unit configured to control the motor to run according to the given parameters of the motor to make the motor rotate when the motor starts; the acquisition unit is further configured to acquire observation parameters of the motor; the control unit is further configured to respectively fit the given curve of the motor and the observation curve of the motor by using a sine fitting method based on the given parameters of the motor and the observation parameters of the motor; and the control unit is further configured to switch the motor from the open-loop starting phase to the closed-loop running phase to achieve the starting control of the motor based on the given curve of the motor and the observation curve of the motor.
[0013] In some embodiments, the given parameters of the motor include given values of d-axis current, q-axis current and position angle of the motor, and the observed parameters of the motor include observed values of d-axis current, q-axis current and position angle of the motor; the obtaining unit obtains the observed parameters of the motor by obtaining sampling values of three-phase current of the motor and sampling values of voltage in the α-axis and β-axis coordinate system of the motor; the sampling values of three-phase current of the motor are converted into transformed values of current in the α-axis and β-axis coordinate system of the motor through Clark transformation; the observed value of the position angle of the motor is obtained based on the sampling values of voltage in the α-axis and β-axis coordinate system of the motor and the sampling values of current in the α-axis and β-axis coordinate system of the motor by using a flux linkage observation module and a phase-locked module; and the transformed values of current in the α-axis and β-axis coordinate system of the motor and the observed value of the position angle of the motor are taken as the observed parameters of the motor.
[0014] In some embodiments, the control unit uses a sine fitting method to respectively fit the given curve of the motor and the observed curve of the motor based on the given parameters of the motor and the observed parameters of the motor, including: using the sine fitting method to set a curve fitter; fitting the current given curve of the motor by using the curve fitter based on the given parameters of the motor; and fitting the observed curve of the motor by using the curve fitter based on the observed parameters of the motor.
[0015] In some embodiments, the control unit controls the motor to switch from the open-loop starting phase to the closed-loop running phase based on the given curve of the motor and the observed curve of the motor to achieve starting control of the motor, including: generating an approximation curve based on the given curve of the motor and the observed curve of the motor, denoted as the approximation curve of the motor; and controlling the motor to switch from the open-loop starting phase to the closed-loop running phase based on the approximation curve of the motor and the observed curve of the motor to achieve starting control of the motor.
[0016] In some embodiments, the control unit generates an approximation curve based on the given curve of the motor and the observed curve of the motor, denoted as the approximation curve of the motor, including: determining a first curve error of the motor in phase and / or amplitude, denoted as the first curve error of the motor; and determining whether the first curve error of the motor is greater than a preset required error; if it is determined that the first curve error of the motor is greater than the preset required error, generating the approximation curve of the motor by using an approximation curve generator based on the given curve of the motor and the observed curve of the motor.
[0017] In some embodiments, the control unit controls the motor to switch from the open-loop starting phase to the closed-loop running phase according to the approximation curve of the motor and the observation curve of the motor, and implements the starting control of the motor, including: determining an error between the approximation curve of the motor and the observation curve of the motor in phase and / or amplitude, denoted as a second curve error of the motor; and determining whether the second curve error of the motor is greater than a preset required error; if it is determined that the second curve error of the motor is greater than the preset required error, taking the values of the d-axis current, the q-axis current and the position angle of the motor generated by the approximation curve of the motor as new given parameters of the motor; controlling the motor to run according to the new given parameters of the motor; and then returning to generate the approximation curve of the motor based on the given curve of the motor and the observation curve of the motor.
[0018] In some embodiments, the control unit controls the motor to switch from the open-loop starting phase to the closed-loop running phase according to the approximation curve of the motor and the observation curve of the motor, and implements the starting control of the motor, further including: determining an error between the approximation curve of the motor and the observation curve of the motor in phase and / or amplitude, denoted as a second curve error of the motor; and determining whether the second curve error of the motor is greater than a preset required error; if it is determined that the second curve error of the motor is less than or equal to the preset required error, controlling the motor to run according to the observation parameters of the motor corresponding to the observation curve of the motor, so as to control the motor to switch from the open-loop starting phase to the closed-loop running phase and implement the starting control of the motor.
[0019] In order to match the above device, the motor is further provided in another aspect of the present application.
[0020] In order to match the above method, the storage medium is further provided in another aspect of the present application, which includes a stored program. When the program is executed, the device where the storage medium is located performs the steps of the above motor control method.
[0021] In order to match the above method, the computer program product is further provided in another aspect of the present application, which includes a computer program. When the computer program is executed by a processor, the steps of the above motor control method are implemented.
[0022] Therefore, the scheme of the present application aims at the starting control of the motor (such as the permanent magnet synchronous motor). Before the motor starts, the motor is controlled to start in an open-loop mode according to the given current (such as the given d-axis current and q-axis current) of the motor and the given position angle of the motor. After the motor rotates, the full-order flux linkage observer is used to generate the approximation curve of the motor according to the estimated current (such as the current i α and i β) and the estimated voltage of the motor (such as the voltage u of the motor α and u β ) to obtain an estimated position angle of the motor; a strong drag curve is fitted according to the given current of the motor and the given position angle by using a sine fitting method, an observer curve is fitted according to the estimated current of the motor and the estimated position angle of the motor, an approximation curve is obtained according to the strong drag curve and the observer curve, when the error between the approximation curve and the observer curve is within a preset error interval, switching to the observer curve for closed-loop control to realize the start control of the motor; thereby, by using the sine fitting method in the starting process of the motor, the smooth transition control from the strong drag start to the closed-loop operation is realized, and the stability of the motor start is improved.
[0023] Other features and advantages of the present application will be set forth in the following description, and in part will become apparent from the description, or can be learned by practice of the present application.
[0024] The technical solutions of the present application will be further described in detail below by means of the accompanying drawings and examples. BRIEF DESCRIPTION OF DRAWINGS
[0025] Figure 1 The flowchart of an embodiment of the control method of the motor of the present application;
[0026] Figure 2 The flowchart of an embodiment of obtaining the observation parameter of the motor in the method of the present application;
[0027] Figure 3 The flowchart of an embodiment of fitting the given curve of the motor and the observation curve of the motor by using the sine fitting method in the method of the present application;
[0028] Figure 4 The flowchart of an embodiment of controlling the motor to switch from the open-loop starting phase to the closed-loop running phase in the method of the present application;
[0029] Figure 5 The flowchart of an embodiment of generating an approximation curve in the method of the present application;
[0030] Figure 6 The flowchart of an embodiment of controlling the motor to run according to the approximation curve of the motor in the method of the present application;
[0031] Figure 7 The flowchart of an embodiment of controlling the motor to run according to the observation curve of the motor in the method of the present application;
[0032] Figure 8 The structural schematic diagram of an embodiment of the control device of the motor of the present application;
[0033] Figure 9 Flowchart of the motor starting method;
[0034] Figure 10 Flowchart of the control process of the motor operation before switching;
[0035] Figure 11 Flowchart of the control process of the motor operation observed by the magnetic chain, i.e. the control process of the motor operation after switching;
[0036] Figure 12 Schematic diagram of generating the approximation curve.
[0037] In the embodiments of the present application, the reference signs in the drawings are as follows in combination with the drawings:
[0038] 102 - acquisition unit; 104 - control unit. DETAILED DESCRIPTION
[0039] To make the objectives, technical solutions and advantages of the present application clearer, the technical solutions of the present application will be described below in combination with specific embodiments of the present application and corresponding drawings. Obviously, the described embodiments are only some of the embodiments of the present application, but not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative labor fall within the scope of protection of the present application.
[0040] It is considered that, in the control of a motor (such as a permanent magnet synchronous motor), the use of a mechanical sensor to observe rotor position and speed information not only has the problems of large volume and complex structure, but also affects the stability of the motor control system, thereby affecting the stability of the motor starting. At the same time, the position sensor has specific application conditions and can only operate under appropriate conditions. In some harsh environments, the position sensor cannot be used normally. Therefore, many permanent magnet synchronous motors now use a position sensorless control method to reduce the cost of the motor and improve the stability of the system.
[0041] In the related scheme, field-oriented control (FOC) is one of the common methods for controlling a permanent magnet synchronous motor. Through field-oriented control, the stator current of the permanent magnet synchronous motor can be decoupled into excitation current and torque current, which are controlled respectively, so as to realize accurate control of the torque and speed of the motor. Field-oriented control needs to know the position and speed information of the rotor in order to accurately control the excitation current and torque current; at the same time, according to the position and speed information of the rotor, the speed loop and current loop of the motor can also be adjusted and controlled accordingly.
[0042] Specifically, if the position sensor is malfunctioning and the feedback position information is inaccurate, the controller may not be able to correctly calculate the voltage vector that should be applied, which can result in the motor's magnetic field not being properly synchronized, leading to unstable torque output; for example, if the position information lags behind the actual rotor position, the controller may apply the voltage at the wrong time, causing torque fluctuations, and even potentially causing vibrations, which can be more pronounced at low speeds.
[0043] If the motor does not use a mechanical position sensor, the motor's angle and position can only be obtained through a positionless algorithm. If the motor's angle and position are incorrect, it can cause problems such as torque fluctuations, vibrations, unstable speed, overcurrent, overheating, electromagnetic interference, reduced efficiency, system loss of control, overload, and difficulty starting. If the speed feedback is incorrect, the controller may incorrectly adjust the output; for example, in the case of excessive speed, the controller may attempt to reduce the speed, but because the feedback is incorrect, it may over-reduce or fail to adjust correctly, resulting in unstable speed; in more severe cases, if the speed feedback is faster than the actual speed, the controller may believe that the motor has reached the target speed, thus stopping adjustment, but the actual speed may be too high, causing over-speed operation, which can cause the motor to overheat or even be damaged.
[0044] As can be seen, incorrect rotor position and speed information can cause excessive current. Because the controller adjusts the output based on feedback, if the feedback is incorrect, the output may be too large, causing the current to exceed the motor's rated value, which can cause problems such as overheating, insulation damage, and the like, which can cause the motor to vibrate, increase noise, or even stop running. Therefore, in order to achieve accurate control of the permanent magnet synchronous motor, a suitable estimation method is needed to obtain accurate rotor position and speed information, and to apply it to field-oriented control.
[0045] Therefore, the scheme of the present application proposes a control method for a motor, specifically a smooth transition method for a permanent magnet synchronous motor when switching from strong drag starting to closed-loop operation. During the starting process of the IF motor, a sinusoidal fitting method is used to generate the current of Id and Iq and the motor angle, improving the stability of the motor starting.
[0046] According to an embodiment of the present application, a control method for a motor is provided, as shown in Figure 1 The flowchart of an embodiment of the method of the present application is shown. The control method for the motor can include steps S110 to S150.
[0047] At step S110, before the motor starts, the given parameters of the motor are obtained.
[0048] At step S120, when the motor starts, the motor is controlled to run according to the given parameters of the motor, so that the motor rotates.
[0049] At step S130, after the motor rotates, an observation parameter of the motor is acquired.
[0050] At step S140, based on the given parameter of the motor and the observation parameter of the motor, a given curve of the motor and an observation curve of the motor are respectively fitted by using a sine fitting method.
[0051] At step S150, based on the given curve of the motor and the observation curve of the motor, the motor is controlled to switch from an open-loop starting phase to a closed-loop running phase, so as to realize starting control of the motor.
[0052] Figure 9 A flowchart of a motor starting method is shown. In view of the technical defects existing in the control of a permanent magnet synchronous motor in related schemes, the scheme of the present application proposes a smooth transition processing scheme when the permanent magnet synchronous motor is started and switched to speed loop control. The entire motor starting scheme flow is shown in Figure 9 As shown in Figure 9 , the motor starting method comprises the following steps.
[0053] Step 1: At the initial moment, the initial d-axis current Id, q-axis current Iq and initial angle θ of the motor are given to drag the motor to rotate, and then step 2 is executed.
[0054] In step 1, when the motor starts, the d-axis and q-axis reference current values in the two-phase rotating coordinate system and the initial reference position angle θ are first given to make the motor rotate.
[0055] Step 2: When the motor rotates, the full-order flux observer (Flux_Observer) shown in Figure 10 is opened, and the phase locked loop (PLL) shown in Figure 10 is combined to calculate the current motor speed and phase angle by using the α-axis and β-axis voltages and and currents and , and to fit the α-axis and β-axis sine running curves of the observer as the fitted observer curve; the given d-axis current Id, q-axis current Iq and initial angle θ at the initial moment are also fitted as the corresponding α-axis and β-axis sine running curves by coordinate transformation, as the fitted strong drag curve, and then step 3 is executed.
[0056] Wherein, the α-axis and β-axis voltages and and currents and The current motor speed and phase angle are calculated, specifically: the voltage and current information (I, U) is input into an empirical formula, the back electromotive force information (I) in the voltage and current information is extracted, 、 、 and ) is input into an empirical formula, the back electromotive force information (I) is extracted, 、 , the current speed information is locked by using the phase-locked method, Wr , and the angle information (θ) is obtained by discrete integration of the speed information.
[0057] The alpha-axis and beta-axis sine operating curves of the observer are fitted by using the current and phase angle, the current refers to the observed speed in the flux linkage observer, Wref_f , the current idref_f 、 iqref_f is fitted by PI, and the phase angle is θ_f obtained by speed integration, as shown in Figure 11 . At this time, only this process is run, but this process does not participate in control, and only the regenerated parameters are used for the observation curve, and the parameters generated by the approximation curve are in control.
[0058] Step 3: generating an approximation curve according to two operating sine curves (i.e., the fitting observer curve and the fitting strong drag curve), and then performing step 4 to control the motor to switch from the open-loop starting phase to the closed-loop running phase based on the given curve of the motor and the observation curve of the motor, so as to realize the starting control of the motor.
[0059] The scheme of the application provides a smooth transition scheme for a permanent magnet synchronous motor when switching from strong drag starting to closed-loop operation. The estimated angle and current amplitude of the motor after IF starting are obtained, the sine curve of the current is fitted by coordinate transformation, the motor angle and current amplitude of the full-order observer are fitted by coordinate transformation, the strong drag curve is generated by fitting the sine curve, the sine curves of the two are close to each other, and the loop switching is completed, so that the smooth transition of the control ring is realized in the normal starting of the IF starting of the motor, and the problem of large motor overcurrent and starting failure when the motor is switched to the closed-loop directional control algorithm is eliminated. The problem of large speed pulse vibration leading to motor operation fluctuation is solved, and stable control in the motor starting ring switching process is realized.
[0060] In some embodiments, the given parameters of the motor include: given values of the d-axis current, the q-axis current and the position angle of the motor; and the observation parameters of the motor include: observed values of the d-axis current, the q-axis current and the position angle of the motor.
[0061] For the specific process of obtaining the observation parameters of the motor in step S130, please refer to the following exemplary description.
[0062] The following is combined with Figure 2 The schematic diagram shown is an embodiment of the method of the present invention for obtaining the observation parameters of the motor. The specific process of obtaining the observation parameters of the motor in step S130 is further explained, including steps S210 to S230.
[0063] Step S210: When the motor is running according to the given parameters of the motor, obtain the sampled values of the three-phase current of the motor, and obtain the sampled values of the voltage in the α-axis and β-axis coordinate systems of the motor.
[0064] Step S220: The sampled values of the three-phase current of the motor are obtained by Clark transformation to obtain the transformed values of the current in the α-axis and β-axis coordinate systems of the motor.
[0065] Step S230: Using the flux linkage observation module and the phase-locked loop (PLL) module, based on the sampled voltage values and current values in the α-axis and β-axis coordinate systems of the motor, the observed position angle of the motor is obtained; and the transformed current values in the α-axis and β-axis coordinate systems of the motor, and the observed position angle values of the motor, are used as the observation parameters of the motor. The flux linkage observation module is a full-order flux linkage observer, and the PLL module is a phase-locked loop.
[0066] like Figure 9 As shown, the motor starting method further includes: in step 2, after the motor starts rotating, the full-order flux linkage observer is turned on. The full-order flux linkage observer uses a current sampling sensor to obtain the current on the three-phase lines of the motor, and converts the three-phase current of the motor into signals of the current on the α and β axes through Clark transformation; the voltage and current signals of the α and β axes are input to the flux linkage observation module, and the angle between the amplitude of the permanent magnet flux linkage containing motor angle information and the motor angle is obtained by the following formula based on the stator voltage, stator current, three-phase winding resistance and voltage equation.
[0067]
[0068] Where Rs and Ls are the inductances of the stator windings, respectively; V, I, and e are the stator voltage, current, and back electromotive force, respectively; K e W r θ r Let be the back electromotive force coefficient, rotor angular velocity, and rotor position. The system's state variables are: The input variables are The output variable is State variables refer to the state of the motor at each moment during operation, while output variables refer to the output of the equation; within this equation, the state variables are also the output variables. L1 and L2 represent the feedback gain parameters in the equation, obtained through empirical adjustments.
[0069] Furthermore, after obtaining the angle between the permanent magnet flux linkage amplitude and the motor angle, the motor speed signal is obtained through a phase-locked loop (PLL) or an arctangent module. The speed signal is integrated to obtain the observed angular position of the motor. Based on the observed angle and the sampled current value, the current values in the observed α-axis and β-axis coordinate systems are obtained. The arctangent module refers to the method of calculating the electrical angle using the arctangent method, which is a small part of the entire full-order flux linkage observer.
[0070] In the solution of this invention, by using the flux linkage observation module and the phase-locked module, the observed values of the d-axis current, q-axis current and position angle of the motor can be obtained more accurately, which is beneficial to obtaining accurate observation curves and thus improving the accuracy of subsequent control.
[0071] In some embodiments, the specific process of using a sine fitting method to fit the given curve of the motor and the observed curve of the motor in step S140 based on the given parameters of the motor and the observed parameters of the motor is described in the following exemplary description.
[0072] The following is combined with Figure 3 The flowchart shown is a schematic diagram of an embodiment of the method of the present invention, which uses a sine fitting method to fit the given curve and the observed curve of the motor respectively. The specific process of using a sine fitting method to fit the given curve and the observed curve of the motor in step S140 is further explained, including steps S310 to S330.
[0073] Step S310: Use a sine fitting method to set up a curve fitter; wherein, the sine fitting method includes: a method of fitting a sine curve using a sine curve fitting algorithm.
[0074] Step S320: Based on the given parameters of the motor, the curve fitter is used to fit the given current curve of the motor, specifically, to fit the given current curve of the motor. And,
[0075] Step S330: Based on the observed parameters of the motor, the observed curve of the motor is obtained by using the curve fitter, specifically by fitting the observed curve of the motor current.
[0076] like Figure 9 As shown, the motor starting method also includes:
[0077] In step 2, the observed current and angle at the same moment are input into the curve fitter through inverse Clark transformation and θ input of given Id, Iq, respectively to generate the observed curve and the given curve.
[0078] Sine fitting is a technique that matches a sine function model with data points through mathematical methods, commonly used in signal processing, vibration analysis and other fields. The goal of sine fitting is to adjust the parameters of the sine function (amplitude A, frequency f, phase φ, etc.) to make the function curve as close as possible to the actual data points. Sine degree usually refers to the numerical value of the sine function (sin) at a specific angle, which is defined based on the ratio of the opposite side to the hypotenuse in a right triangle or the ordinate in a unit circle. Motor strong drag angle refers to the process of forcibly dragging the motor rotor to a specific position or angle by applying a fixed angle offset during motor control. This process usually occurs during the startup phase of the motor, especially in sensorless control. The accuracy and stability of the strong drag angle are crucial for the smooth startup of the motor.
[0079] In the scheme of the present application, during the process of IF motor startup, the sine fitting method is adopted to generate the current of Id and Iq and the motor angle, avoiding direct switching to the full-order flux linkage observation angle. The position information of the motor control is too different from the actual rotor position, which causes the motor to produce pulse vibration jitter. At the same time, it can also avoid too large position error, generate switching peak current, and cause motor overcurrent failure, reduce the probability of motor startup failure, and improve the stability of motor startup. Thus, the problem of easy motor overcurrent and large startup failure caused by closed-loop switching during motor IF startup can be eliminated, the problem of motor operation fluctuation caused by loop switching speed can be solved, and stable motor startup control can be achieved. In the scheme of the present application, the angle refers to the approximate estimated angle of the motor after it starts rotating (this angle may have a certain error with the actual running angle of the motor).
[0080] Wherein, I / F start is a low-speed start strategy in permanent magnet synchronous motor (PMSM) sensorless control, and the motor is started quickly and stably through current-frequency ratio (I / F) control. The current amplitude of the motor after IF start is the size of the given Id and Iq current values input into the motor at this time. The estimated angle and current amplitude of the motor after IF start are a given value at the initial state of the motor; the strong drag angle and current amplitude of the motor are the angle and current size at the current time of the motor estimated by the full-order flux linkage observation algorithm according to the feedback information of the motor. The estimated angle and current amplitude of the motor after IF start are given values, and the strong drag angle and current amplitude of the motor are actual values, and there is a gap between the two. The interpolation curve between the two is generated through sine fitting to obtain the next given value, until the error between the given value and the observed value is negligible, and switching is performed. Loop switching, specifically: at the beginning, there is no control loop, only the given current and the initial angle of the motor are given to make the motor rotate, which is called open-loop motion. The latter is to observe the angle and current size of the motor by using the flux linkage, and the closed-loop motor control of the speed loop and the current loop is added in the motor control. The switching from open loop to closed loop is called loop switching.
[0081] In some embodiments, the step S150 of controlling the motor to switch from the open-loop start phase to the closed-loop running phase based on the given curve of the motor and the observed curve of the motor, realizes the specific process of the start control of the motor, see the following exemplary description.
[0082] The following will be combined Figure 4 The embodiment flowchart of the method of the application shown in the figure further illustrates the specific process of the step S150 of controlling the motor to switch from the open-loop start phase to the closed-loop running phase, including steps S410 to S420.
[0083] Step S410, based on the given curve of the motor and the observed curve of the motor, a curve is generated, denoted as the approximation curve of the motor; specifically, based on the given curve of the motor and the observed curve of the motor, an approximation curve generator is used to generate a sine curve that approximates the given curve of the motor to the observed curve of the motor.
[0084] Step S420, according to the approximation curve of the motor and the observed curve of the motor, the motor is controlled to switch from the open-loop start phase to the closed-loop running phase, and the start control of the motor is realized.
[0085] In the scheme of the present application, the estimated angle and the current amplitude of the motor after the IF starting are fitted into a sinusoidal curve through coordinate transformation, and the motor angle and the current amplitude of the full-order observer are fitted into a sinusoidal curve through coordinate transformation, the strong drag curve is generated by the sinusoidal curve fitting, the sinusoidal curve of the observer is approximated, and when the sinusoidal degrees of the two are close to coincide, the loop switching is completed, so as to realize the normal starting of the IF starting of the motor, the smooth transition of the control cut ring, and eliminate the problems of motor overcurrent starting failure and motor speed fluctuation caused by the motor switching inductorless observation algorithm.
[0086] In some embodiments, a specific process of generating an approximation curve based on the given curve of the motor and the observation curve of the motor in step S410 is described as follows.
[0087] The following will be described in combination with Figure 5 The following will be described in combination with
[0088] In step S510, the error of the given curve of the motor and the observation curve of the motor in phase and / or amplitude is determined, which is recorded as the first curve error of the motor, and it is determined whether the first curve error of the motor is greater than the preset required error.
[0089] In step S520, if it is determined that the first curve error of the motor is greater than the preset required error, the approximation curve generator is used to generate the approximation curve of the motor based on the given curve of the motor and the observation curve of the motor. Of course, if it is determined that the first curve error of the motor is not greater than the preset required error, the motor is directly switched to the observation curve operation.
[0090] As Figure 9As shown, the motor starting method further comprises: in step 3, generating an approximation curve according to the two operating sinusoidal curves (i.e. the fitted observer curve and the fitted strong drag curve), specifically comprising: after obtaining the two operating sinusoidal curves (i.e. the fitted observer curve and the fitted strong drag curve), determining the errors of the two operating sinusoidal curves (i.e. the fitted observer curve and the fitted strong drag curve) in the phase and amplitude directions, performing error judgment on the two operating sinusoidal curves (i.e. the fitted observer curve and the fitted strong drag curve) in the phase and amplitude directions, and judging whether the errors of the two operating sinusoidal curves (i.e. the fitted observer curve and the fitted strong drag curve) in the phase and amplitude directions are greater than a preset required error; when the errors of the two operating sinusoidal curves (i.e. the fitted observer curve and the fitted strong drag curve) in the phase and amplitude directions are greater than the required error, generating an approximation curve, and then performing step 4. For example: the amplitude and phase angle of the next moment of the two curves are taken to judge, and the amplitude and phase can be obtained through the analytical expression of the curve. As in step S520, if it is determined that the first curve error of the motor is not greater than the preset required error, the motor is directly switched to the observer curve operation.
[0091] In the scheme of the present application, based on the given curve of the motor and the observed curve of the motor, an approximation curve of the motor is generated, and then the new current and angle are obtained to continue control until the switching requirement is reached to complete the entire loop cut ring, realizing smooth transition of the motor and improving the stability of the motor starting control.
[0092] In some embodiments, in step S420, the motor is switched from the open-loop starting phase to the closed-loop running phase according to the approximation curve of the motor and the observed curve of the motor, realizing the starting control of the motor, comprising: controlling the motor to run according to the approximation curve of the motor.
[0093] The following will be described in detail Figure 6 An embodiment flowchart of the method of the present application for controlling the motor to run according to the approximation curve of the motor is shown, which further illustrates the specific process of controlling the motor to run according to the approximation curve of the motor in step S420, specifically comprising: step S610 to step S630.
[0094] In step S610, the error of the approximation curve of the motor and the observed curve of the motor in the phase and / or amplitude is determined, denoted as the second curve error of the motor; and it is determined whether the second curve error of the motor is greater than a preset required error.
[0095] In step S620, if it is determined that the second curve error of the motor is greater than the preset required error, the values of the d-axis current, q-axis current and position angle of the motor generated by the approximation curve of the motor are taken as the new given parameters of the motor.
[0096] Step S630: Control the motor to run according to the new given parameters of the motor; then return to generate the approximation curve of the motor again based on the given curve of the motor and the observed curve of the motor.
[0097] like Figure 9 As shown, the motor starting method also includes:
[0098] Step 4: When the errors in phase and amplitude of the two operating sine curves (i.e., the fitted observer curve and the fitted strong drag curve) are greater than the required error, an approximation curve is generated. The new approximation sine curve is then compared with the new observed curve to determine the errors in phase and amplitude between the approximation curve and the observed curve. It is then determined whether these errors exceed the preset error range (i.e., the error requirement). If so, Step 5 is executed to continue acquiring the approximation curve; otherwise, Step 6 is executed to switch. Specifically, after generating the approximation curve, a comparison is performed: if the error range is not met, the value of the next moment of the generated approximation curve is replaced by the strong drag control. After one cycle, a new observed curve is acquired. The new observed curve is then compared with the first generated approximation curve (i.e., the current strong drag curve) to determine the next control method for the motor. Here, the observed curve refers to the newly generated observed curve, and the new approximation curve refers to the previous approximation curve and the approximation curve fitted from the generator using the new information.
[0099] Step 5: Obtain the α-axis current generated by the approximation curve. β-axis current The new initial angle θ is input into the motor control system for operation, and then the process returns to step 3 to generate a new approximation curve (i.e., a new approximation sine curve). Each moment on the approximation curve represents the required information; by determining the time value of the next moment, the corresponding current value can be obtained. The phase angle is determined by the offset of the curve equation. After generating the current and phase values α and β in a fixed coordinate system, only a Park transformation is needed to obtain the d-axis and q-axis values, which are already directly completed in the curve generator.
[0100] In the solution of this invention, the motor starting loop cutting algorithm is as follows: an approximation curve is generated, and the required current and angle are generated according to the approximation curve; the new current and phase are obtained by using the method of generating the approximation curve, and the new current and phase are used to drive the motor, so as to achieve a smooth transition of loop cutting to drive the motor and eliminate problems such as overcurrent and motor operation fluctuations that are easy to occur during loop cutting.
[0101] In some embodiments, the step S420 of switching the motor from the open-loop starting phase to the closed-loop running phase according to the approximation curve of the motor and the observation curve of the motor to achieve the starting control of the motor further comprises: controlling the motor to run according to the observation curve of the motor.
[0102] The specific process of controlling the motor to run according to the observation curve of the motor in the method of the motor starting method shown in Figure 7 The specific process of controlling the motor to run according to the observation curve of the motor in the method of the motor starting method shown in
[0103] In step S710, the error of the approximation curve of the motor and the observation curve of the motor in phase and / or amplitude is determined, denoted as the second curve error of the motor, and it is determined whether the second curve error of the motor is greater than the preset required error.
[0104] In step S720, if it is determined that the second curve error of the motor is less than or equal to the preset required error, the motor is controlled to run according to the observation parameter of the motor corresponding to the observation curve of the motor to switch the motor from the open-loop starting phase to the closed-loop running phase to achieve the starting control of the motor.
[0105] As shown in Figure 9 The motor starting method further comprises:
[0106] Step 6: When the phase and amplitude error of the approximation curve and the observation curve meets the required error, the motor is controlled by switching to the observation curve, that is, the current motor speed and phase angle observed by the full-order flux observer are used to control the motor, thereby completing the entire motor starting and switching to the speed loop control process. Specifically, the initial given angle value and current value are abandoned, and the motor control of the speed loop is switched to, the d-axis and q-axis currents of the motor are obtained by the speed loop, and the phase angle is directly input to the motor control system through observation, that is, idref_i and iqref_i and θ_i are replaced. In this way, the intermediate control angle and current are generated, specifically the angle θ_s and the current idref_s and iqref_s of the approximation curve, as shown in Figure 10 The angle of the full-order flux observation is directly switched to avoid the large difference between the position information of the motor control and the actual rotor position, which causes the motor to produce pulse vibration or switching peak current, causes the motor to appear overcurrent fault, reduces the probability of motor starting failure, and improves the stability of motor starting.
[0107] In step 3 to step 6, after generating the observation curve and the given curve, the two curves are input into the approximation curve generator. According to the difference between the two current and amplitude, a series of approximation curves are generated, as shown in Figure 12 The method of generating approximation curves is as follows: first, the difference is divided into K parts, and then the given curve is phase compensated and amplitude reduced according to the proportion, and all the approximation curves are calculated, and then the approximation curve closest to the given curve is selected, as shown in Figure 12 The approximation curve 1 is used to calculate the current and angle required at the next moment, and the current at the next moment is obtained through Clark transformation to obtain Id, Iq and θ, which are input into the control system for control. The whole control flow chart is shown in Figure 10 . Figure 10 The control process diagram of the motor running before switching is shown in Figure 12 The schematic diagram of generating approximation curves is shown in Figure 12 The horizontal coordinate is time t (unit: s) and the vertical coordinate is current i (unit: A).
[0108] In order to avoid the difference becoming smaller and smaller, and the number of approximation curves being constant when K value is constant, resulting in too long switching time of the whole motor loop, affecting the control process of the whole motor, the division ratio K value needs to be adjusted synchronously according to the difference size, and when the error satisfies the switching error ξ of the minimum approximation curve and the observation curve, the approximation curve generation process is exited, and the whole loop switching is completed. The intermediate transition Id, Iq and angle are generated by sine fitting, avoiding the large difference between the angle and current when switching from the given current value and angle value to the flux linkage observation, causing the motor to produce pulse vibration, or overcurrent fault leading to motor start failure.
[0109] After the motor starts and the loop is switched, the given current and angle are removed, and only the current and voltage of the α axis and β axis are input into the full-order flux linkage observer. The flux linkage information is obtained through the full-order flux linkage observer, and then the running angle and speed information are obtained by inputting the flux linkage information into the phase-locked loop or arctangent module. The speed information and angle information are input into the control system to complete the closed loop of the whole control system and realize the control of the motor. At this time, there is a speed loop in the control system, which can control the speed of the motor in real time, making the control of the motor more stable. The whole control process is shown in Figure 11 . Figure 11 The control process diagram of the motor running after switching is shown in Figure 10 The flowchart of the angle observation method of the motor starting and not switching to the flux linkage observation motor is shown in Figure 11 The flowchart of the angle observation method of the motor running after switching is shown in Figure 11 The ratio is Figure 10The part of fitting observation and the control structure with the speed loop are reduced. The idref_i, iqref_i and θ_i are given to perform the initial starting process of the motor, and the whole process is shown in the upper part of Figure 10 . When a cycle is run, the feedback current and voltage are collected, and the information is input into the full-order flux observer, and then the current idref_f, iqref_f and angle θ_f are obtained. The acquisition process and method can refer to Figure 11 . When the information is obtained, the starting and observed information is input into the producer to generate the approximation curve, and then the description in Figure 9 is processed. If the approximation curve does not meet the requirement, the idref_s, iqref_s and θ_s are used to replace the idref_i, iqref_i and θ_i to continue the next cycle. When the requirement is met, the switching process is performed, and the process is directly run according to the process in Figure 11 . The part of fitting observation and the replacement of the current value are not included.
[0110] In the scheme of the application, before the starting of the motor, the motor is started by giving the position angle and the current of the d-axis and q-axis, the full-order observer is started synchronously after the motor rotates, the observed current and angle are obtained, the observed data and the given data are input into the approximation curve generator, the approximation curve is generated, the new current and angle are obtained to continue the control, and the whole loop is switched until the switching requirement is met, the smooth transition of the motor is realized, the overcurrent problem caused by the too large angle error during the loop switching is solved, and the speed fluctuation problem caused by the too large current deviation during the switching is solved.
[0111] By adopting the technical scheme of the embodiment, the open-loop starting of the motor (such as a permanent magnet synchronous motor) is controlled according to the given current (such as the given d-axis current and q-axis current) of the motor and the given position angle of the motor before the starting of the motor. After the motor rotates, the estimated position angle of the motor is obtained by using the full-order flux observer according to the estimated current (such as the current i α and i β ) of the motor and the estimated voltage (such as the voltage u α and u β ) of the motor. The strong drag curve is fitted according to the given current and the given position angle by using the sine fitting method, the observer curve is fitted according to the estimated current and the estimated position angle of the motor, the approximation curve is obtained according to the strong drag curve and the observer curve, the observer curve is switched to perform the closed-loop control when the error between the approximation curve and the observer curve is within the preset error interval, and the starting control of the motor is realized. Thus, by using the sine fitting method in the starting process of the motor, the smooth transition control from the strong drag starting to the closed-loop running is realized, and the stability of the motor starting is improved.
[0112] According to an embodiment of the present invention, a motor control device corresponding to the motor control method is also provided. See also Figure 8 The diagram shows a structural schematic of an embodiment of the device of the present invention. The control device for the motor may include: an acquisition unit 102 and a control unit 104.
[0113] The acquisition unit 102 is configured to acquire given parameters of the motor before the motor starts. The specific functions and processing of the acquisition unit 102 are described in step S110.
[0114] The control unit 104 is configured to control the motor to operate according to given parameters when the motor starts, so as to make the motor rotate. The specific functions and processing of the control unit 104 are described in step S120.
[0115] The acquisition unit 102 is further configured to acquire the observed parameters of the motor after the motor rotates. The specific functions and processing of the acquisition unit 102 are further described in step S130.
[0116] The control unit 104 is further configured to, based on the given parameters of the motor and the observed parameters of the motor, use a sine fitting method to obtain the given curve and the observed curve of the motor, respectively. The specific functions and processing of the control unit 104 are further described in step S140.
[0117] The control unit 104 is further configured to control the motor to switch from an open-loop start-up phase to a closed-loop operation phase based on a given curve and an observed curve of the motor, thereby achieving start-up control of the motor. The specific functions and processing of this control unit 104 are further described in step S150.
[0118] Figure 9 This is a flowchart illustrating the motor starting method. Addressing the technical deficiencies in existing permanent magnet synchronous motor control schemes, this invention proposes a smooth transition processing scheme for the transition from permanent magnet synchronous motor startup to speed loop control. The entire motor startup process is as follows: Figure 9 As shown. Figure 9 As shown, the motor starting method includes:
[0119] Step 1: At the initial moment, the motor is driven to rotate by giving the initial d-axis current Id, q-axis current Iq, and initial angle θ. Then, Step 2 is executed.
[0120] In step 1, when the motor starts, the reference current values of the d-axis and q-axis in the two-phase rotating coordinate system and the initial reference position angle θ are given to make the motor rotate.
[0121] Step 2: When the motor starts rotating, turn on the full-order flux linkage observer (e.g., Figure 10 (as shown in Flux_Observer), combined with Figure 10 The phase-locked loop (PLL) shown utilizes the voltages along the α and β axes. and and current and Calculate the current motor speed and phase angle, and use the current and phase angle to fit the sinusoidal operating curves of the observer's α-axis and β-axis as the fitted observer curves; also fit the d-axis current Id, q-axis current Iq and initial angle θ given at the initial moment to the corresponding sinusoidal operating curves of the α-axis and β-axis through coordinate transformation as the fitted strong drag curves, and then execute step 3.
[0122] Step 3: Generate an approximation curve based on two operating sine curves (i.e., the fitted observer curve and the fitted strong drag curve). Then, execute step 4 to control the motor from the open-loop start-up stage to the closed-loop operation stage based on the given curve and the observed curve of the motor, thereby realizing the start-up control of the motor.
[0123] The present invention proposes a smooth transition scheme for permanent magnet synchronous motors switching from forced-drive start to closed-loop operation. It employs a sine curve fitting method, using coordinate transformation to fit the estimated angle and current amplitude after the motor's IF start to a sine curve of the current. Similarly, it fits the motor angle and current amplitude of the full-order observer to a sine curve using coordinate transformation. This sine curve fitting generates a forced-drive curve that approximates the observer's sine curve. When the sinusoidal values of the two curves nearly coincide, the loop switch is completed. This achieves a smooth transition during normal IF start-up of the motor, eliminating problems such as excessive current causing start-up failure and excessive speed pulsation leading to motor operation fluctuations when switching to the closed-loop directional control algorithm. This achieves stable control during the motor start-up loop switching process.
[0124] In some embodiments, the given parameters of the motor include: given values of the d-axis current, q-axis current, and position angle of the motor; the observed parameters of the motor include: observed values of the d-axis current, q-axis current, and position angle of the motor.
[0125] The acquisition unit 102 acquires the observed parameters of the motor, including:
[0126] The acquisition unit 102 is specifically further configured to acquire the sampling values of the three-phase currents of the motor and acquire the sampling values of the voltages in the α-axis and β-axis coordinate system of the motor when the motor is running according to the given parameters of the motor. The specific functions and processes of the acquisition unit 102 are also described with reference to step S210.
[0127] The acquisition unit 102 is specifically further configured to obtain the transformed values of the currents in the α-axis and β-axis coordinate system of the motor by Clark transformation on the sampling values of the three-phase currents of the motor. The specific functions and processes of the acquisition unit 102 are also described with reference to step S220.
[0128] The acquisition unit 102 is specifically further configured to obtain the observation values of the position angle of the motor based on the sampling values of the voltages in the α-axis and β-axis coordinate system of the motor and the sampling values of the currents in the α-axis and β-axis coordinate system of the motor by using a flux linkage observation module and a phase-locked module; and use the transformed values of the currents in the α-axis and β-axis coordinate system of the motor and the observation values of the position angle of the motor as the observation parameters of the motor. The flux linkage observation module is, for example, a full-order flux linkage observer, and the phase-locked module is, for example, a phase-locked loop. The specific functions and processes of the acquisition unit 102 are also described with reference to step S230.
[0129] As shown in FIG. 2, the motor starting method further includes the following steps. Figure 9 In step 2, after the motor is rotated, the full-order flux linkage observer is opened, the full-order flux linkage observer acquires the currents on the three-phase lines of the motor by using the current sampling sensor, and converts the three-phase currents of the motor into the current signals of the α-axis and β-axis by Clark transformation; the voltage and current signals of the α-axis and β-axis are input into the flux linkage observation module, and the included angle between the permanent magnet flux linkage amplitude and the motor angle of the motor containing the motor angle information is obtained from the following formula according to the stator voltage, the stator current, the three-phase winding resistance and the voltage equation.
[0130]
[0131] Wherein, Rs and Ls are the inductance of the stator winding; V, I and e are the stator voltage, current and back electromotive force respectively; K e , W r , θ r is the back electromotive force coefficient, the rotor angular velocity and the rotor position. The state variable of the system is ; the input variable is , and the output variable is .
[0132] Further, after the flux linkage amplitude of the permanent magnet and the included angle of the motor angle are obtained, the speed signal of the motor is obtained through a phase-locked loop (PLL) or an arctangent module, the observed angle position of the motor is obtained by integrating the speed signal, and the observed current values in the alpha-axis and beta-axis coordinate systems are obtained according to the observed angle and the sampled current values.
[0133] In the scheme of the application, the d-axis current, q-axis current and position angle observation values of the motor can be obtained more accurately by using the flux linkage observation module and the phase-locked module, which is beneficial to obtaining an accurate observation curve and further improving the accuracy of subsequent control.
[0134] In some embodiments, the control unit 104 uses a sine fitting method to respectively fit the given curve of the motor and the observation curve of the motor based on the given parameters of the motor and the observation parameters of the motor, including:
[0135] The control unit 104 is specifically configured to use a sine fitting method to set a curve fitter, and the sine fitting method includes a method of fitting a sine curve by using a sine curve fitting algorithm. For specific functions and processes of the control unit 104, see step S310.
[0136] The control unit 104 is specifically configured to use the curve fitter to fit the current given curve of the motor based on the given parameters of the motor, and specifically to fit the current given curve of the motor. For specific functions and processes of the control unit 104, see step S320. And,
[0137] The control unit 104 is specifically configured to use the curve fitter to fit the observation curve of the motor based on the observation parameters of the motor, and specifically to fit the observation curve of the current of the motor. For specific functions and processes of the control unit 104, see step S330.
[0138] As shown in Figure 9 The motor starting method further includes:
[0139] In step 2, the observed current and angle at the same time and the given Id and Iq are input into the curve fitter through inverse Clark transformation and θ to generate the observation curve and the given curve, respectively.
[0140] Sinusoidal fitting is a mathematical technique that matches a sinusoidal function model to data points, commonly used in signal processing, vibration analysis, and other fields. The goal of sinusoidal fitting is to adjust the parameters of the sinusoidal function (amplitude A, frequency f, phase φ, etc.) to make the function curve as close as possible to the actual data points. The sine value usually refers to the numerical value of the sine function (sin) at a specific angle, which is defined based on the ratio of the opposite side to the hypotenuse in a right triangle or the vertical coordinate in a unit circle. The strong drag angle of the motor refers to the process of applying a fixed angle offset to the motor rotor during motor control, so that the motor rotor can be forced to drag to a specific position or angle. This process usually occurs during the startup phase of the motor, especially in sensorless control. The accuracy and stability of the strong drag angle are crucial for the smooth startup of the motor.
[0141] In the scheme of the present application, during the process of IF motor startup, the sinusoidal fitting method is adopted to generate the current of Id and Iq and the motor angle, avoiding direct switching to the full-order flux linkage observation angle. The position information of the motor control is too different from the actual rotor position, causing the motor to produce pulse vibration jitter. At the same time, it can also avoid too large position error, generate switching peak current, and cause motor overcurrent failure, reducing the probability of motor startup failure and improving the stability of motor startup. Thus, the problem of easy motor overcurrent and startup failure caused by closed-loop switching during motor IF startup can be eliminated, and the problem of motor operation fluctuation caused by loop switching speed can be solved, achieving stable motor startup control. In the scheme of the present application, the angle refers to the approximate estimated angle of the motor after it starts rotating (this angle may have some error with the actual running angle of the motor).
[0142] Wherein, I / F start is a low-speed start strategy in permanent magnet synchronous motor (PMSM) sensorless control, and the motor is started quickly and stably through current-frequency ratio (I / F) control. The current amplitude of the motor after IF start is the size of the given Id and Iq current values input to the motor at this time. The estimated angle and current amplitude of the motor after IF start are a given value at the initial state of the motor; the strong drag angle and current amplitude of the motor are the angle and current size at the current time of the motor inferred by the full-order flux linkage observation algorithm according to the feedback information of the motor. The estimated angle and current amplitude of the motor after IF start are given values, and the strong drag angle and current amplitude of the motor are actual values, and there is a gap between the two. The interpolation curve between the two is generated by sine fitting to obtain the next given value, until the error between the given value and the observed value is negligible, and switching is performed. Loop switching, specifically: at the beginning, there is no control loop, only the given current and the initial angle of the motor are given to make the motor rotate, which is called open-loop motion. The latter is to observe the angle and current size of the motor by using the flux linkage, and the closed-loop motor control of the speed loop and the current loop is added in the motor control. The switching from open loop to closed loop is called loop switching.
[0143] In some embodiments, the control unit 104 controls the motor to switch from the open-loop start phase to the closed-loop running phase based on the given curve of the motor and the observed curve of the motor, to realize the start control of the motor, including:
[0144] The control unit 104 is specifically further configured to generate an approximation curve based on the given curve of the motor and the observed curve of the motor, denoted as the approximation curve of the motor; specifically, based on the given curve of the motor and the observed curve of the motor, an approximation curve generator is used to generate a sine curve in which the given curve of the motor approximates the observed curve of the motor. The specific functions and processes of the control unit 104 are also referred to step S410.
[0145] The control unit 104 is specifically further configured to control the motor to switch from the open-loop start phase to the closed-loop running phase according to the approximation curve of the motor and the observed curve of the motor, to realize the start control of the motor. The specific functions and processes of the control unit 104 are also referred to step S420.
[0146] In the scheme of the present application, the estimated angle and the current amplitude of the motor after the IF starting are fitted into a sine curve through coordinate transformation, and the motor angle and the current amplitude of the full-order observer are fitted into a sine curve through coordinate transformation, the sine curve fitting generates a strong drag curve to approximate the sine curve of the observer, and when the sine degrees of the two curves are close to coincide, the loop switching is completed, thereby realizing the normal starting of the motor IF starting, the smooth transition of the control cut loop, and eliminating the problems of motor overcurrent starting failure and motor speed fluctuation caused by the motor switching inductance observer algorithm.
[0147] In some embodiments, the control unit 104 generates an approximation curve based on the given curve of the motor and the observed curve of the motor, denoted as the approximation curve of the motor, comprising:
[0148] The control unit 104 is specifically further configured to determine the error of the given curve of the motor and the observed curve of the motor in phase and / or amplitude, denoted as the first curve error of the motor, and determine whether the first curve error of the motor is greater than a preset required error. The specific functions and processes of the control unit 104 are also referred to step S510.
[0149] The control unit 104 is specifically further configured to generate the approximation curve of the motor based on the given curve of the motor and the observed curve of the motor using the approximation curve generator if it is determined that the first curve error of the motor is greater than the preset required error. Of course, the control unit 104 is specifically further configured to control the motor to directly switch to the observed curve operation if it is determined that the first curve error of the motor is not greater than the preset required error. The specific functions and processes of the control unit 104 are also referred to step S520.
[0150] As shown in Figure 9 The motor starting method further comprises: in step 3, generating an approximation curve according to the two operating sine curves (i.e. the fitted observer curve and the fitted strong drag curve), specifically comprising: after obtaining the two operating sine curves (i.e. the fitted observer curve and the fitted strong drag curve), determining the error of the two operating sine curves (i.e. the fitted observer curve and the fitted strong drag curve) in phase and amplitude, judging the error of the two operating sine curves (i.e. the fitted observer curve and the fitted strong drag curve) in phase and amplitude, and determining whether the error of the two operating sine curves (i.e. the fitted observer curve and the fitted strong drag curve) in phase and amplitude is greater than a preset required error: when the error of the two operating sine curves (i.e. the fitted observer curve and the fitted strong drag curve) in phase and amplitude is greater than the required error, generating an approximation curve, and then executing step 4.
[0151] In the scheme of the present application, based on the given curve of the motor and the observed curve of the motor, an approximation curve of the motor is generated, and then the new current and angle are obtained to continue the control until the switching requirement is reached to complete the entire loop cut ring, realizing the smooth transition of the motor and improving the stability of the motor starting control.
[0152] In some embodiments, the control unit 104 controls the motor to switch from the open-loop starting phase to the closed-loop running phase according to the approximation curve of the motor and the observed curve of the motor, and realizes the starting control of the motor, including: controlling the motor to run according to the approximation curve of the motor, specifically as follows:
[0153] The control unit 104 is specifically further configured to determine the error of the approximation curve of the motor and the observed curve of the motor in phase and / or amplitude, denoted as the second curve error of the motor; and determine whether the second curve error of the motor is greater than the preset required error. The specific functions and processes of the control unit 104 are also referred to step S610.
[0154] The control unit 104 is specifically further configured to, if it is determined that the second curve error of the motor is greater than the preset required error, take the values of the d-axis current, q-axis current and position angle of the motor generated by the approximation curve of the motor as the new given parameters of the motor. The specific functions and processes of the control unit 104 are also referred to step S620.
[0155] The control unit 104 is specifically further configured to control the motor to run according to the new given parameters of the motor; and then return to generate the approximation curve of the motor based on the given curve of the motor and the observed curve of the motor again. The specific functions and processes of the control unit 104 are also referred to step S630.
[0156] As shown in Figure 9 , the motor starting method further comprises:
[0157] Step 4, when the error of the two running sinusoidal curves (i.e. the fitted observer curve and the fitted strong drag curve) in the phase and amplitude directions is greater than the required error, a new approximation curve is generated, and then the new approximation sinusoidal curve and the new observed curve are compared by difference: the error of the approximation curve and the observed curve in the phase and amplitude directions is determined, and it is judged whether the error of the approximation curve and the observed curve in the phase and amplitude directions is greater than the preset error interval: if yes, step 5 is executed to continue to obtain the approximation curve, otherwise step 6 is executed to switch.
[0158] Step 5, the α-axis current , β-axis current The new initial angle θ is input into the motor control for operation, and then the process returns to step 3 to continue generating a new approximation curve (i.e., a new approximation sine curve).
[0159] In the solution of this invention, the motor starting loop cutting algorithm is as follows: an approximation curve is generated, and the required current and angle are generated according to the approximation curve; the new current and phase are obtained by using the method of generating the approximation curve, and the new current and phase are used to drive the motor, so as to achieve a smooth transition of loop cutting to drive the motor and eliminate problems such as overcurrent and motor operation fluctuations that are easy to occur during loop cutting.
[0160] In some embodiments, the control unit 104 controls the motor to switch from an open-loop start-up phase to a closed-loop operation phase based on the approximation curve and the observed curve of the motor, thereby achieving start-up control of the motor. The control unit also includes a process of controlling the motor to operate according to the observed curve of the motor, as detailed below:
[0161] The control unit 104 is further configured to determine the error in phase and / or amplitude between the approximation curve of the motor and the observed curve of the motor, denoted as the second curve error of the motor; and to determine whether the second curve error of the motor is greater than a preset required error. The specific functions and processing of this control unit 104 are further described in step S710.
[0162] The control unit 104 is further configured to, if it is determined that the second curve error of the motor is less than or equal to a preset required error, control the motor to operate according to the observed parameters of the motor corresponding to the observed curve of the motor, so as to control the motor to switch from the open-loop start-up stage to the closed-loop operation stage, thereby realizing the start-up control of the motor. The specific functions and processing of this control unit 104 are further described in step S720.
[0163] like Figure 9 As shown, the motor starting method also includes:
[0164] Step 6: When the phase and amplitude errors between the approximation curve and the observed curve meet the required error, switch to the observed curve to control the motor. This involves using the current motor speed and phase angle observed by the full-order flux linkage observer to control the motor, thus completing the entire motor startup and switching to speed loop control process. This generates intermediate control angles and currents, avoiding direct switching to the full-order flux linkage observation angle. In such cases, the motor control position information may differ significantly from the actual rotor position, causing pulsation or switching spike currents, leading to overcurrent and other faults. This reduces the probability of motor startup failure and improves the stability of motor startup.
[0165] In step 3 to step 6, after generating the observation curve and the given curve, the two curves are input into the approximation curve generator. According to the difference between the two current and amplitude, a series of approximation curves are generated, as shown in Figure 12 . The method of generating approximation curves is as follows: first, the difference is divided into K parts, and then the given curve is phase compensated and amplitude reduced according to the proportion, and all the approximation curves are calculated, and then the approximation curve closest to the given curve is selected, such as Figure 12 , to calculate the current and angle required at the next moment, and the current at the next moment is obtained through Clark transformation to Id, Iq and θ input into the control system for control. The whole control flow chart is shown in Figure 10 . Figure 10 The control process diagram of the motor running before switching is shown in Figure 12 , and the schematic diagram of generating approximation curves is shown in Figure 12 , where the horizontal axis is time and the vertical axis is current.
[0166] In order to avoid the difference becoming smaller and smaller, and the number of approximation curves unchanged when K value is unchanged, resulting in too long switching time of the whole motor loop, affecting the control process of the whole motor, the division ratio K value needs to be adjusted synchronously according to the difference size, and when the error satisfies the switching error ξ of the minimum approximation curve and the observation curve, the approximation curve generation process is exited, and the whole loop switching is completed. The intermediate transition Id, Iq and angle are generated by sine fitting, which avoids the large difference between the angle and current when switching from the given current value and angle value to the flux linkage observation, causing the motor to produce pulse vibration, or overcurrent fault leading to motor start failure.
[0167] After the motor starts and the loop is switched, the given current and angle are removed, and only the current and voltage of the α axis and β axis are input into the full order flux linkage observer to obtain the flux linkage information, and then the flux linkage information is input into the phase-locked loop or arctangent module to obtain the running angle and speed information, and then the speed information and angle information are input into the control system to complete the closed loop of the whole control system and realize the control of the motor. At this time, there is a speed loop in the control system, which can control the speed of the motor in real time, so that the control of the motor is more stable. The whole control process is shown in Figure 11 . Figure 11 The control process diagram of the motor running after the flux linkage observation is shown in Figure 10 The flowchart of the angle observation method of the motor dragging up and the motor without switching to the flux linkage observation is shown in Figure 11 The flowchart of the observation method of the motor running angle after switching is shown in Figure 11 The ratio is Figure 10The part of the fitting observation is reduced and the control structure with the speed loop is added.
[0168] In the scheme of the application, before starting the motor, the motor is started by giving the position angle of the motor and the currents of the d-axis and q-axis, the full-order observer is started synchronously after the motor rotates, the observed currents and angles are obtained, the observed data and given data are input into the approximation curve generator, the approximation curve is generated, the new currents and angles are obtained to continue the control until the switching requirement is met to complete the loop switching, the smooth transition of the motor is realized, the overcurrent problem caused by the too large angle error during the loop switching is solved, and the speed fluctuation problem caused by the too large current deviation during the switching is solved.
[0169] Since the processing and functions realized by the device of the embodiment basically correspond to the embodiments, principles and examples of the foregoing method, details not described in the description of the embodiment can be referred to the related description in the foregoing embodiments, which will not be described here.
[0170] According to the embodiment of the application, a motor corresponding to the motor control device is also provided. The motor can include the motor control device described above.
[0171] Since the processing and functions realized by the motor of the embodiment basically correspond to the embodiments, principles and examples of the foregoing device, details not described in the description of the embodiment can be referred to the related description in the foregoing embodiments, which will not be described here.
[0172] According to the embodiment of the application, a computer program product corresponding to the motor control method is also provided, including a computer program, which, when executed by a processor, realizes the steps of the motor control method described above.
[0173] Since the processing and functions realized by the product of the embodiment basically correspond to the embodiments, principles and examples of the foregoing method, details not described in the description of the embodiment can be referred to the related description in the foregoing embodiments, which will not be described here.
[0174] According to the embodiment of the application, a storage medium corresponding to the motor control method is also provided, including a stored program, wherein when the program runs, the device where the storage medium is located executes the steps of the motor control method described above.
[0175] Since the processing and functions realized by the storage medium of the embodiment basically correspond to the embodiments, principles and examples of the foregoing method, details not described in the description of the embodiment can be referred to the related description in the foregoing embodiments, which will not be described here.
[0176] In summary, the person skilled in the art can easily understand that the above-mentioned advantageous modes can be freely combined and superimposed without conflict.
[0177] The above merely provides an example of the present application, but is not intended to limit the present application. The present application can be variously changed and modified by those skilled in the art. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the present application shall fall within the scope of claims of the present application.
Claims
1. A control method of an electric motor, characterized by, The method comprises the following steps: Before the motor starts, the given parameters of the motor are obtained; Before the motor starts, the motor is controlled to start in an open loop mode according to the given current of the motor and the given value of the position angle of the motor; When the motor starts, the motor is controlled to run according to the given parameters of the motor, so that the motor rotates; After the motor rotates, the observation value of the position angle of the motor is obtained by using a flux linkage observation module and a phase-locked loop module according to the transformed value of the current in the α-axis and β-axis coordinate system of the motor and the sampling value of the voltage in the α-axis and β-axis coordinate system of the motor, and the observation parameters of the motor are obtained; Based on the given parameters of the motor and the observation parameters of the motor, a sine fitting method is used to fit the given curve of the motor and the observation curve of the motor, respectively; Based on the given curve of the motor and the observation curve of the motor, the motor is controlled to switch from the open loop starting phase to the closed loop running phase, so as to realize the starting control of the motor; wherein the given curve is fitted according to the given current of the motor and the given value of the position angle, the observation curve is fitted according to the transformed value of the current in the α-axis and β-axis coordinate system of the motor and the observation value of the position angle of the motor, the approximation curve is obtained according to the given curve and the observation curve, and when the error between the approximation curve and the observation curve is within a preset error interval, the observation curve is switched to the closed loop control.
2. The control method of an electric motor according to claim 1, characterized by, The given parameters of the motor include the given value of the d-axis current of the motor, the given value of the q-axis current of the motor and the given value of the position angle of the motor; the observation parameters of the motor include the transformed value of the current in the α-axis and β-axis coordinate system of the motor and the observation value of the position angle of the motor; The observation parameters of the motor are obtained, including: The sampling value of the three-phase current of the motor is obtained, and the sampling value of the voltage in the α-axis and β-axis coordinate system of the motor is obtained; The sampling value of the three-phase current of the motor is transformed into the transformed value of the current in the α-axis and β-axis coordinate system of the motor by Clark transformation; Based on the sampling value of the voltage in the α-axis and β-axis coordinate system of the motor and the transformed value of the current in the α-axis and β-axis coordinate system of the motor, the observation value of the position angle of the motor is obtained by using a flux linkage observation module and a phase-locked loop module; and the transformed value of the current in the α-axis and β-axis coordinate system of the motor and the observation value of the position angle of the motor are taken as the observation parameters of the motor.
3. The control method of an electric motor according to claim 1, characterized by, Based on the given parameters of the motor and the observation parameters of the motor, a sine fitting method is used to fit the given curve of the motor and the observation curve of the motor, respectively, including: A curve fitter is set by using the sine fitting method; Based on the given parameters of the motor, the current given curve of the motor is fitted by using the curve fitter; and Based on the observation parameters of the motor, the observation curve of the motor is fitted by using the curve fitter.
4. The control method of an electric motor according to any one of claims 1 to 3, characterized by, Based on the given curve of the motor and the observation curve of the motor, the motor is controlled to switch from the open loop starting phase to the closed loop running phase, so as to realize the starting control of the motor, including: generating an approximation curve based on the given curve of the motor and the observed curve of the motor, denoted as an approximation curve of the motor; controlling the motor to switch from the open-loop starting phase to the closed-loop running phase according to the approximation curve of the motor and the observed curve of the motor, so as to realize the starting control of the motor.
5. The control method of an electric motor according to claim 4, characterized by generating an approximation curve based on the given curve of the motor and the observed curve of the motor, denoted as an approximation curve of the motor, comprising: determining the error of the given curve of the motor and the observed curve of the motor in phase and / or amplitude, denoted as a first curve error of the motor; and determining whether the first curve error of the motor is greater than a preset required error; if it is determined that the first curve error of the motor is greater than the preset required error, generating the approximation curve of the motor based on the given curve of the motor and the observed curve of the motor by using an approximation curve generator.
6. The control method of an electric motor according to claim 4, characterized by controlling the motor to switch from the open-loop starting phase to the closed-loop running phase according to the approximation curve of the motor and the observed curve of the motor, so as to realize the starting control of the motor, comprising: determining the error of the approximation curve of the motor and the observed curve of the motor in phase and / or amplitude, denoted as a second curve error of the motor; and determining whether the second curve error of the motor is greater than a preset required error; if it is determined that the second curve error of the motor is greater than the preset required error, taking the values of the d-axis current, the q-axis current and the position angle of the motor generated by the approximation curve of the motor as new given parameters of the motor; controlling the motor to run according to the new given parameters of the motor; and then returning to generate the approximation curve of the motor based on the given curve of the motor and the observed curve of the motor again.
7. The control method of an electric motor according to claim 4, characterized by, controlling the motor to switch from the open-loop starting phase to the closed-loop running phase according to the approximation curve of the motor and the observed curve of the motor, so as to realize the starting control of the motor, further comprising: determining the error of the approximation curve of the motor and the observed curve of the motor in phase and / or amplitude, denoted as a second curve error of the motor; and determining whether the second curve error of the motor is greater than a preset required error; if it is determined that the second curve error of the motor is less than or equal to the preset required error, controlling the motor to run according to the observed parameters of the motor corresponding to the observed curve of the motor, so as to control the motor to switch from the open-loop starting phase to the closed-loop running phase and realize the starting control of the motor.
8. A control device for controlling the motor by a control method using the motor according to claim 1, characterized by comprising: an acquisition unit configured to acquire given parameters of the motor before the motor starts; a control unit configured to control the motor to run according to the given parameters of the motor when the motor starts to start, so as to rotate the motor; the acquisition unit is further configured to acquire observed parameters of the motor; the control unit is further configured to fit the given curve of the motor and the observed curve of the motor respectively by using a sine fitting method based on the given parameters of the motor and the observed parameters of the motor; The control unit is further configured to control the motor to switch from the open-loop starting phase to the closed-loop running phase based on a given curve of the motor and an observed curve of the motor, so as to achieve starting control of the motor.
9. An electric machine characterized by The control method comprises: The control device of the motor according to claim 8.
10. A storage medium, characterized by The storage medium comprises a stored program, wherein the program, when executed, controls a device where the storage medium is located to perform the control method of the motor according to any one of claims 1 to 7.
11. A computer program product comprising a computer program, characterized in that, The computer program, when executed by a processor, implements the steps of the control method of the motor according to any one of claims 1 to 7.
Citation Information
Patent Citations
Method for starting motor without sensor
CN101984554A
Motor and control method and device thereof, storage medium and computer program product
CN119401880A