Motor controller and method for reducing load torque ripple
By introducing a load torque pulsation compensator into the motor control system, using the feedforward compensation signal to match the frequency, amplitude and phase of the load torque pulsation, the problem of difficulty in suppressing load torque pulsation in the motor control system is solved, and more stable motor control and lower noise are achieved.
Patent Information
- Application Number
- CN202411126351.7
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-08-30
- Filing Date
- 2024-08-16
- Publication Date
- 2025-02-28
AI Technical Summary
Existing motor control systems are difficult to effectively suppress load torque pulsation, resulting in unstable motor control and increased noise.
A load torque pulsation compensator is used to measure the mechanical angle and rotation speed of the shaft to generate a feedforward compensation signal that matches the load torque pulsation frequency, amplitude and phase, and add it to the output signal of the PI controller to generate a torque reference value.
Effectively reduce or suppress load torque pulsation, improve the stability and efficiency of motor control, and reduce mechanical vibration and noise.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to motor controllers, and more particularly to automatic load torque ripple compensation using a feed-forward signal calculated using a cross-correlation function. Background Art
[0002] Motor drives use switching power inverters to generate variable frequency AC voltages to control the speed of AC motors in household, commercial, and industrial applications. Permanent magnet AC (PMAC) motors generally offer higher power-to-weight ratios and efficiencies than induction motors and are widely used in applications requiring high dynamic response and / or very high system efficiency. Stable operation of PMAC motors requires that the amplitude and frequency of the applied voltage be proportional to and synchronized with the motor rotation frequency.
[0003] Typically, the power inverter includes two complementary transistors (e.g., a high-side transistor and a low-side transistor) for each motor phase, wherein the two complementary transistors form a half-bridge to drive an output pad connected to the motor winding. The gate driver for driving the two complementary transistors can be provided with a fixed positive voltage by a positive power rail, and a fixed negative voltage by a negative power rail. The positive power rail can be connected to the output pad via a high-side transistor in the two complementary transistors to provide a load current to the motor winding, and the negative power rail can be connected to the output pad via a low-side transistor in the two complementary transistors to absorb the load current from the motor winding. The two complementary transistors can be turned on and off complementarily to avoid cross conduction.
[0004] Thus, the load current (also referred to as the motor phase current) can be controlled by driving two complementary transistors. The amplitude of the control signal received from the gate driver for each transistor can be changed to drive the two complementary transistors between the switching states. This in turn drives the motor. For example, the gate-source voltage Vgs of a metal oxide semiconductor field effect transistor (MOSFET) is typically driven down to approximately zero to turn off the MOSFET, and is typically driven to a maximum value to fully turn on the MOSFET. For this reason, the gate-source voltage Vgs can be referred to as a control voltage.
[0005] During operation, the motor can be driven according to the motor control algorithm to achieve the desired motor speed corresponding to the pulse width of the control signal. The motor can drive the load, for example, by driving a shaft coupled to the load. Some types of loads can change nonlinearly with changes in the mechanical angle of the shaft. For example, the motor can be configured to drive a compressor or a pump, during which the load torque changes as a nonlinear function of the mechanical angle of the shaft. As a result, a load torque pulsation with unknown amplitude and phase is generated. For example, the compressor has an alternating current (AC) load torque pulsation component with the motor rotation frequency as the base frequency due to the piston action. Therefore, although the base frequency of the AC load torque pulsation component can be derived according to the motor rotation frequency, the amplitude and phase of the AC load torque pulsation component are still unknown. However, in order to reduce or suppress the AC load torque pulsation component to improve motor control, it is necessary to accurately determine the amplitude and phase of the AC load torque pulsation component. Summary of the invention
[0006] In some implementations, a motor controller configured to drive a motor coupled to a load via a shaft, the motor controller comprising: a measurement interface configured to measure a mechanical angle of the shaft and a rotational speed of the shaft, and to generate a speed feedback signal representing the rotational speed; a speed regulator comprising: a first error component configured to receive a speed reference signal and a speed feedback signal corresponding to a speed reference value, and to generate a speed error signal based on a difference between the speed reference signal and the speed feedback signal; a proportional integral (PI) controller configured to adjust a torque reference value based on the speed error signal, the torque reference value being configured to maintain the speed reference value; and a load. A torque pulsation compensator configured to apply a torque feedforward function to reduce load torque pulsation in a torque reference value, wherein applying the torque feedforward function includes generating a feedforward compensation signal that matches the frequency, amplitude and phase of the load torque pulsation and adding the feedforward compensation signal to an output signal of a PI controller to generate a torque reference value, wherein the load torque pulsation varies with a mechanical angle, and wherein the load torque pulsation compensator is configured to dynamically adjust the amplitude and phase of the feedforward compensation signal in real time when the load of the motor varies with time; and a current regulator configured to receive the torque reference value and drive the motor current of the motor to generate a torque corresponding to the torque reference value.
[0007] In some implementations, a method for reducing load torque pulsation associated with driving a motor coupled to a load via a shaft includes: measuring a mechanical angle of the shaft; measuring a rotational speed of the shaft; generating a speed feedback signal representing the rotational speed; generating a speed error signal based on a difference between a speed reference signal and the speed feedback signal; adjusting a torque reference value based on the speed error signal through a PI controller, the torque reference value being configured to maintain a speed reference value of the speed reference signal; applying a torque feedforward function to reduce load torque pulsation in the torque reference value, including generating a feedforward compensation signal that matches the frequency, amplitude, and phase of the load torque pulsation and adding the feedforward compensation signal to an output signal of the PI controller to generate a torque reference value, wherein the load torque pulsation varies with the mechanical angle; dynamically adjusting the amplitude and phase of the feedforward compensation signal in real time as the load of the motor changes over time; and driving a motor current of the motor to generate a torque corresponding to the torque reference value. BRIEF DESCRIPTION OF THE DRAWINGS
[0008] Implementations are described herein with reference to the accompanying drawings.
[0009] Figure 1 A schematic block diagram illustrating a motor control system according to one or more implementations is shown.
[0010] Figure 2 A schematic block diagram illustrating a motor control system according to one or more implementations is shown.
[0011] Figure 3 A schematic block diagram illustrating a motor control system according to one or more implementations is shown.
[0012] Figure 4 Upper and lower graphs illustrating why a proportional-integral (PI) compensator of a speed regulator alone (eg, without feed-forward control) cannot fully suppress a load torque ripple component of the load torque ripple are shown.
[0013] Figure 5 An example of harmonic components of load torque pulsation is shown.
[0014] Figure 6 A graph showing how the load pulsation frequency of the load torque pulsation represented by one cycle of the load torque pulsation is directly related to the motor electrical frequency of the rotor electrical angle and the mechanical frequency of the mechanical angle through the number of motor poles is shown.
[0015] Figure 7 A torque compensation system according to one or more implementations is shown.
[0016] Figure 8 A torque compensation system according to one or more implementations is shown.
[0017] Fig. 9 A combined torque compensation system according to one or more implementations is shown.
[0018] Fig.10 A system model of a motor control algorithm with automatically adjusted torque compensation according to one or more implementations is shown.
[0019] Fig.11 A system model of a motor control algorithm with automatically adjusted torque compensation according to one or more implementations is shown. DETAILED DESCRIPTION
[0020] In the following, the details are set forth to provide a more comprehensive explanation of the example implementations. However, it will be apparent to those skilled in the art that these implementations may be practiced without these specific details. In other cases, in order to avoid obscuring the implementations, well-known structures and devices are shown in block diagram form or in schematic diagrams rather than in detail. In addition, unless otherwise specifically stated, the features of the different implementations described below may be combined with each other.
[0021] In addition, in the following description, equivalent or similar elements or elements having equivalent or similar functions are represented by equivalent or similar reference numerals. Since the same or functionally equivalent elements are given the same reference numerals in the drawings, repeated descriptions of the elements provided with the same reference numerals may be omitted. Therefore, the descriptions provided for the elements having the same or similar reference numerals may be interchangeable.
[0022] The orientation of various elements in the drawings is shown as an example, and the examples shown can be rotated relative to the depicted orientation. The description provided herein and the attached claims relate to any structure with the relationship described between various features, regardless of whether these structures are in the specific orientation of the drawings or rotated relative to such an orientation. Similarly, for ease of description, spatial relative terms such as "top", "bottom", "below", "below", "lower", "above", "upper", "middle", "left side" and "right side" are used herein to describe the relationship between an element and one or more other elements as shown in the drawings. Spatial relative terms are intended to cover different orientations of elements, structures and / or components in use or operation except for the orientation depicted in the drawings. Structures and / or components can be oriented in other ways (rotated 90 degrees or in other orientations), and the spatial relative descriptors used herein can be interpreted accordingly. In addition, in order to simplify the drawings, the cross-sectional views in the drawings only show the features in the cross-sectional plane, and the materials behind the cross-sectional plane are not shown, unless otherwise stated.
[0023] It will be understood that when an element is referred to as being "connected" or "coupled" to another element, it may be directly connected or coupled to the other element, or there may be intervening elements. In contrast, when an element is referred to as being "directly connected" or "directly coupled" to another element, there are no intervening elements. Other words used to describe the relationship between elements (e.g., "between" versus "directly between," "adjacent" versus "directly adjacent," etc.) should be interpreted in the same manner.
[0024] In the implementations described herein or shown in the accompanying drawings, any direct electrical connection or coupling (e.g., any connection or coupling without additional intermediate elements) may also be implemented by an indirect connection or coupling (e.g., a connection or coupling with one or more additional intermediate elements, or vice versa), as long as the general purpose of the connection or coupling is substantially maintained (e.g., to transmit a certain signal or transmit certain information). Features in different implementations may be combined to form additional implementations. For example, unless otherwise indicated to the contrary, variations or modifications described with respect to one of the implementations may also apply to other implementations.
[0025] As used herein, the terms "substantially" and "approximately" mean "within reasonable tolerances of manufacturing and measurement." For example, without departing from aspects of the implementations described herein, the terms "substantially" and "approximately" may be used herein to account for small manufacturing tolerances or other factors that are considered acceptable in the industry (e.g., within 5%). For example, a resistor having an approximate resistance value may actually have a resistance within 5% of the approximate resistance value. As another example, a signal having an approximate signal value may actually have a signal value within 5% of the approximate signal value.
[0026] In the present disclosure, expressions including ordinal numbers such as "first", "second", etc. can modify various elements. However, such elements are not limited by such expressions. For example, such expressions do not limit the order and / or importance of elements. Instead, such expressions are only used for the purpose of distinguishing elements from other elements. For example, a first box and a second box indicate different boxes, although both are boxes. For another example, without departing from the scope of the present disclosure, a first element may be referred to as a second element, and similarly, a second element may also be referred to as a first element.
[0027] A transistor may be referred to as a power switch or a transistor switch, which may be used to drive a current, such as a load current. The transistor may include an insulated gate bipolar transistor (IGBT) and a MOSFET (e.g., a Si MOSFET or a SiC MOSFET), etc. It will be understood that one type of transistor may replace another type of transistor.
[0028] Some implementations described in the present disclosure relate to, but are not limited to, a half-bridge for driving a motor. For example, as a power inverter, a multiphase inverter is configured to provide multiphase power by supplying power to a multiphase load (e.g., a three-phase motor). For example, three-phase power involves three symmetrical sinusoidal waves that are 120 electrical degrees out of phase with each other. In a symmetrical three-phase power supply system, three conductors each carry an alternating current (AC) with the same frequency and voltage amplitude relative to a common reference but with a phase difference of one-third of the drive cycle. Due to the phase difference, the voltage on any of the three conductors can reach its voltage peak at one-third of the drive cycle, wherein the voltage peaks of the three conductors are distributed with phase delays that are substantially equal to each other within the drive cycle. This phase delay makes it possible to generate a rotating magnetic field in the motor.
[0029] The three-phase inverter includes three inverter branches, one for each of the three phases, and each inverter branch is connected to a direct current (DC) voltage source in parallel with each other. Each inverter branch includes a pair of transistors arranged in a half-bridge configuration for converting DC to AC to drive a phase load.
[0030] The motor speed signal used by the motor controller for feedback control of the motor has an AC error component, which is caused by the net shaft pulsation torque filtered by a nonlinear load such as a compressor load. The integrator in the proportional integral (PI) controller of the motor controller is intended to drive the torque reference until the average motor speed error is zero. However, because the gain of the PI controller varies with frequency, the PI controller cannot track the per-cycle AC component of the load torque pulsation (e.g., the AC compressor pulsation component). At high motor speeds, the mechanical filtering provided by the compressor load inertia reduces the pulsation in the motor speed signal to an acceptable level. However, there is such an operating speed range: the pulsation in the motor speed signal can cause significant shaft vibration and acoustic noise. This pulsation in the motor speed signal can be referred to as "load torque pulsation", which represents the AC error component caused by the nonlinear load that appears in the motor speed signal.
[0031] For example, a motor may drive a nonlinear load, for example, by driving a shaft coupled to the nonlinear load. Some types of loads may vary nonlinearly with changes in the mechanical angle of the shaft. The load torque may vary as a nonlinear function of the mechanical angle of the shaft. As a result, a load torque pulsation of unknown magnitude and phase is generated. However, in order to reduce or even suppress the AC load torque pulsation component to improve motor control, the magnitude and phase of the AC load torque pulsation component need to be accurately determined.
[0032] In most applications, it is not possible to use a shaft torque sensor to measure the load torque ripple to reduce this AC error component. In addition, some solutions include using a feed-forward function, which requires manual determination of compensation parameters by trial and error during system commissioning and selection of parameter tables depending on the operating point and / or depending on the application configuration.
[0033] Some implementations disclosed herein relate to a motor controller using a feedforward compensation algorithm that automatically determines the amplitude and phase of a load torque pulsation and dynamically adjusts the feedforward compensation in real time when the load changes with changing environmental conditions. For example, when the pulsation frequency of the load torque pulsation is close to or greater than the bandwidth of the speed controller of the motor controller, the feedforward compensation algorithm can reduce or eliminate the load torque pulsation at medium and high speeds. The motor controller can use the feedforward compensation algorithm to automatically determine the AC component of the motor load torque and generate a feedforward compensation signal to eliminate mechanical vibration by suppressing the load torque pulsation. The motor controller can determine the frequency of the feedforward compensation signal according to the motor rotation frequency. In addition, the motor controller can determine the amplitude and phase of the load torque pulsation, and match the amplitude and phase of the feedforward compensation signal with the amplitude and phase of the load torque pulsation to reduce or otherwise suppress the load torque pulsation. The motor controller can adjust the frequency, amplitude and phase of the feedforward compensation signal in real time to match the load torque pulsation, and the load torque pulsation can change as a nonlinear function of the mechanical angle of the shaft.
[0034] In some implementations, the motor controller can use a cross-correlation function to measure the DC component and the quadrature component of the fundamental wave (e.g., the first harmonic component) of the output signal of the PI controller arranged in the motor speed control loop. The motor controller can perform two sequential measurements at two different feedforward torque test levels. The motor controller can calculate the amplitude and phase of the feedforward compensation signal based on the linear combination of the two sequential measurements.
[0035] Therefore, the motor controller can make the operation of systems such as heating, ventilation and air conditioning (HVAC) compressors and refrigeration compressors more reliable and improve run-time efficiency by minimizing mechanical vibrations under all operating conditions over the life of the product. In addition, the feedforward compensation algorithm can achieve cost savings by eliminating multiple manual steps during the manufacture and commissioning of these systems.
[0036] Figure 1A schematic block diagram illustrating a motor control system 100 according to one or more implementations is shown. Specifically, the motor control system 100 includes a power inverter 102, a controller 104, and a gate driver system 106. The controller 104 and the gate driver system 106 can work together as a motor control unit (e.g., a motor controller). In some implementations, the motor control unit can be a monolithic integrated circuit (IC), wherein the controller 104 and the gate driver system 106 are arranged on a single IC. "Monolithic" refers to an IC or semiconductor device manufactured on a single chip of a single material (usually silicon). The IC is called "monolithic" because the active and passive components of the circuit, such as transistors, resistors, capacitors, and interconnects, are all integrated into a single piece or substrate of a certain material. In some implementations, the motor control unit can be divided into two or more ICs, for example, the controller 104 is arranged on a first IC, and the gate driver system 106 is arranged on one or more second ICs. Therefore, the gate driver system 106 can be a monolithic gate driver. It will be appreciated that while the implementations described herein are directed to driving electric motors, the concepts described herein may be extended to other types of inductive loads and are not limited to electric motors.
[0037] The motor control system 100 is further coupled to a motor M (e.g., a permanent magnet synchronous motor (PMSM) as a type of AC motor), which includes three phases U, V, and W. In this example, the power inverter 102 is a three-phase voltage generator configured to provide three-phase power by supplying a three-phase voltage for driving the motor M.
[0038] Deviations in both amplitude and phase may result in loss of power and torque in the motor M. Therefore, the controller 104 may be configured to monitor and control the amplitude and phase of the voltage supplied to the motor M in real time to ensure that proper current balance is maintained based on a feedback control loop.
[0039] The power inverter 102 for motor M includes a switch array of six transistors 108u, 108v, 108w, 109u, 109v and 109w arranged in complementary pairs. Each complementary pair forms a half-bridge circuit, and constitutes an inverter branch for supplying phase voltage to motor M. Therefore, each inverter branch includes a high-side transistor 108u, 108v or 108w and a low-side transistor 109u, 109v or 109w. In addition, each transistor 108u, 108v, 108w, 109u, 109v and 109w can be connected to corresponding freewheeling diodes D1 to D6 in reverse parallel. Freewheeling diodes D1 to D6 provide alternative current paths for current commutation for load current after corresponding transistors 108u, 108v, 108w, 109u, 109v and 109w are turned off. For example, the freewheeling diode D1 provides an alternative current path with respect to the low-side transistor 109u during periods when the low-side transistor 109u is turned off. Similarly, the freewheeling diode D2 provides an alternative current path with respect to the high-side transistor 108u during periods when the high-side transistor 108u is turned off.
[0040] The load current paths U, V and W are connected from the output terminal U of each inverter branch (eg, the output of each half-bridge circuit) between the complementary transistors. out 、V out or W out The load current paths U, V and W each carry a corresponding phase current I u ,I v and I w . Each phase current I u ,I v and I w Has an AC electrical frequency that directly corresponds to the actual motor speed of the motor M.
[0041] The power inverter 102 is coupled to a DC power source (eg, a battery or a diode bridge rectifier) and to a gate driver system 106 .
[0042] The controller 104 can be a microcontroller or other hardware-based controller that performs the motor control functions of the motor control system 100 in real time (or near real time) and transmits a pulse width modulation (PWM) control signal to the gate driver system 106. The controller 104 can use a PWM scheme to control the state of each transistor and ultimately control each phase current provided on the corresponding load current path U, V, and W. The gate driver system 106 generates a driver signal for controlling the switch state (e.g., on and off state) of the transistors 108u, 108v, 108w, 109u, 109v, and 109w based on the PWM control signal. Therefore, the controller 104 and the gate driver system 106 can control the load current paths U, V, and W by controlling the control electrodes (e.g., gate electrodes) of the transistors 108u, 108v, 108w, 109u, 109v, and 109w. For example, upon receiving a PWM control signal from the controller 104, the gate driver system 106 may set the corresponding transistor 108u, 108v, 108w, 109u, 109v, or 109w in one of a conducting state (eg, an on state) or a blocking state (eg, an off state).
[0043] The gate driver system 106 may include one or more gate drivers for driving transistors 108u, 108v, 108w, 109u, 109v, and 109w between switch states. For example, the gate driver system 106 may include a gate driver for each half-bridge circuit. The gate driver system 106 may be configured to receive instructions including PWM control signals from the controller 104, and to turn on or off transistors 108u, 108v, 108w, 109u, 109v, and 109w, respectively, according to the received instructions and control signals. For example, during the turn-on process of transistors 108u, 108v, 108w, 109u, 109v, or 109w, the gate driver system 106 may be used to provide (supply) a gate current to the gate of transistors 108u, 108v, 108w, 109u, 109v, or 109w to charge the gate. In contrast, during the turn-off process, the gate driver system 106 may be used to draw (sink) a gate current from the gate of the transistor 108u, 108v, 108w, 109u, 109v, or 109w to discharge the gate.
[0044] In addition, the transistor 108u, 108v, 108w, 109u, 109v and 109w of the control power inverter 102 are so that the high-side transistor and the low-side transistor in the same inverter branch are not connected at any time, otherwise the DC power supply will be short-circuited. This requirement can be met according to the complementary operation of the transistor 108u, 108v, 108w, 109u, 109v and 109w in the inverter branch according to the motor control algorithm. For example, during operation, the motor M can be driven according to the motor control algorithm to realize the desired motor speed corresponding to the electrical frequency of the control signal. Dead time can be applied by controller 104, during which the high-side transistor and the low-side transistor of the same inverter branch are turned off simultaneously.
[0045] The controller 104 may include a clock source (i.e., a timer or counter) and / or a PWM controller, an analog-to-digital converter (ADC), a digital signal processor (DSP) used in implementing the PWM scheme to control the state of each transistor 108u, 108v, 108w, 109u, 109v and 109w, and ultimately control each phase current provided on the corresponding load current paths U, V and W.
[0046] In particular, the controller 104 may use a motor control algorithm such as a field oriented control (FOC) algorithm to provide real-time current control for each phase current output to a multi-phase load such as a multi-phase motor. Therefore, the field oriented control loop may be referred to as a current control loop. The motor speed may also be controlled by adding a speed constant control loop that provides speed constant control on top of the FOC. Therefore, the FOC (i.e., the current control loop) may be considered an inner control loop, and the speed constant control loop may be considered an outer control loop.
[0047] As indicated above, Figure 1 Provided as an example only. Other examples may vary from Figure 1 For example, in some implementations, the number of motor phases may be different, or two half-bridges may be connected as an H-bridge circuit. In some implementations, additional circuit components may be added without departing from the disclosure provided above.
[0048] Figure 2A schematic block diagram illustrating a motor control system 200 according to one or more implementations is shown. The motor control algorithm described herein can be implemented as software on a programmable motor controller, or as hardware on a configurable control circuit or a hard-coded control circuit. The configurable control circuit can be a digital or mixed signal control circuit. Likewise, the hard-coded control circuit can be a digital or mixed signal control circuit. For example, the motor control algorithm can be implemented as firmware programmed into the controller 104, or by a combination of firmware and circuit components (hardware) of the controller 104.
[0049] The motor control system 200 includes a current regulator 202 (eg, a FOC-based current regulator) and a speed regulator 204. The current regulator 202 and the speed regulator 204 may be implemented as part of the controller 104.
[0050] As used herein, V q and V d Respectively represent the stator Q-axis voltage and D-axis voltage of the motor in the DQ coordinate system. In other words, V q is the motor voltage component on the Q axis of the DQ coordinate system, and V d is the motor voltage component on the D axis of the DQ coordinate system. Similarly, I q and I d They represent the stator Q-axis current and D-axis current of the motor in the DQ coordinate system. In other words, I q is the motor current component on the Q axis of the DQ coordinate system, and I d is the motor current component on the D axis of the DQ coordinate system. In addition, each PI controller receives the proportional gain KP and the integral gain KI and generates an output according to Equation 1 and Equation 2:
[0051] PI output = KPΔ + KI∫Δdt, Equation 1, where Δ is the error or deviation between the actual measured value (PV) and the set point (SP).
[0052] Δ=SP–PV Equation 2.
[0053] The current regulator 202 and the speed regulator 204 each change the motor winding voltage of the AC motor to adjust the speed of the AC motor according to the speed reference signal ω. Ref The provided reference speed value (e.g., target speed) plays a role in driving the AC motor. A sensor-based or sensorless FOC algorithm structure can be used. Figure 2In the example of FIG, a sensor-based FOC algorithm structure is shown. For example, an AC motor can be coupled to a load via a shaft, and a shaft angle sensor 206 can be configured to sense a shaft angle (e.g., a rotation angle) of the shaft as the shaft rotates. An angle sensor interface 208 implemented as an example measurement interface includes a processor that processes a sensor signal generated by the shaft angle sensor 206. Based on the sensor signal, the angle sensor interface 208 can generate a speed feedback signal ω representing a motor speed (e.g., a rotation speed of the shaft) of the AC motor. m 、The mechanical angle of the load θ m (e.g., the mechanical angle of the shaft) and the rotor angle θ of the motor r (For example, the rotor magnetic field angle). Speed feedback signal ω m An AC error component corresponding to the load torque ripple as a compensation target is included.
[0054] In addition, current sensors 210 may be placed along load current paths U, V, and W to measure phase currents (eg, load currents), respectively, and the three sensor signals I u ,I v ,I w The three-phase to two-phase converter 212 is provided, such as a Clarke transformation unit. The current sensor 210 may include a Hall sensor or a shunt resistor for directly measuring the phase current. The three-phase to two-phase converter 212 may use a Clarke transformation to transform the three sensor signals I u ,I v ,I w Apply the α-β transformation to obtain the α current I α and β current I β The FOC also uses vector rotation (eg, cordic rotation) at the vector rotation unit 214 to utilize the α current I α and β current I β The motor winding current is transformed into two quasi-DC current components, including the d-axis current I that enhances or weakens the rotor magnetic field. d and the q-axis current I that generates the motor torque q The vector rotation of the vector rotation unit 214 can be determined by the rotor angle θ determined by the angle sensor interface 208 r Drive, so that the d-axis current I d and q-axis current I q They represent the rotor magnetic field component and torque component of the motor current respectively.
[0055] The q-axis summing node 216 and the PI compensator 218 (eg, a PI controller) regulate the q-axis voltage V in the rotating reference frame. q , so that the q-axis current I qTracking the torque reference value T output from the speed regulator 204 Ref For example, the q-axis summing node 216 may be an error generator, such as a subtractor, which receives the torque reference value T Ref As a set point (SP) value and receiving the q-axis current I from the vector rotation unit 214 q As the actual measurement value (PV), and generates an error value ErrIq. The PI compensator 218 adjusts the q-axis voltage V based on the error value ErrIq. q .
[0056] The d-axis summing node 220 and the PI compensator 222 (eg, a PI controller) regulate the d-axis voltage V in the rotating reference frame. d , so that the d-axis current I d Follows the d-axis current reference I dRef To maximize the motor efficiency. For example, the d-axis summing node 220 can be an error generator, such as a subtractor, which receives the d-axis current reference I dRef As a set point (SP) value and receiving the d-axis current I from the vector rotation unit 214 d As the actual measurement value (PV), and generates an error value ErrId. The PI compensator 222 adjusts the d-axis voltage V based on the error value ErrId. d .
[0057] The forward vector rotation unit 224 applies the forward vector rotation to the q-axis voltage V q and d-axis voltage V d , and based on the rotor angle θ calculated by the angle sensor interface 208 r The q-axis voltage V q and d-axis voltage V d Converted into two-phase AC voltage components V α and V β Therefore, the forward vector rotation unit 224 converts the d-axis voltage V d and q-axis voltage V q Transformed into a two-phase AC voltage signal V in the stator reference frame α and V β , which drives the space vector PWM modulator 226 so that the three-phase motor voltage drives the target motor magnetic field and torque components.
[0058] The space vector PWM modulator 226 receives the two-phase AC voltage components V α and V β , and based on V α and V βThe voltage input and space vector pulse width modulation (SVPWM) are used to generate inverter switching signals (e.g., six PWM control signals output from the controller 104). The gate driver system 106 then turns on / off the corresponding power transistors 108u, 108v, 108w, 109u, 109v, and 109w based on the PWM control signals. Therefore, the current regulator 202 can be configured to: receive the torque reference value T Ref And use the PWM control signal to drive the motor current of the AC motor to generate a torque reference value T Ref For example, the current regulator 202 may calculate the inverter voltage to drive the motor current required to operate the AC motor at maximum efficiency.
[0059] SVPWM is an algorithm for real-time control of PWM. It is used to create an AC waveform and can be used to drive a three-phase AC powered motor at a variable speed based on a DC source using multiple switching transistors. Although the examples herein are described in the context of a three-phase motor, the examples are not limited thereto and can be applied to any load scenario.
[0060] The speed regulator 204 includes a summing node 228, which can calculate the speed reference signal ω Ref The speed reference value and speed feedback signal ω provided m The speed error signal Δω is generated by the difference between m For example, summing junction 228 may be an error generator, such as a subtractor, that generates a speed reference signal ω Ref With the speed feedback signal ω m The speed error signal Δω is the difference between m .
[0061] The speed regulator 204 may further include a PI compensator 230 (eg, a PI controller) that calculates the speed error signal Δω based on the speed error signal Δω. m To adjust the torque reference value T Ref The average speed error is driven to zero so that the motor speed tracks the speed reference signal ω. Ref In other words, the PI compensator 230 can be configured to calculate the speed reference value based on the speed error signal Δω. m To adjust the torque reference value T Ref , torque reference value T Ref is configured to maintain the speed reference signal ω Ref For example, the PI compensator 230 can be based on the speed error signal Δω m To generate the output signal T PIO(For example, proportional integral output (PIO)) to compensate for the error value of the speed error signal Δωm. Output signal T PIO The frequency components of can be indicated by the subscript "N". For example, the output signal T PIO The DC component can be expressed as T PIO0 , where N is 0 (zero). Output signal T PIO The first harmonic (eg, fundamental) component of PIO1 , where N is 1. Output signal T PIO The second harmonic component can be expressed as T PIO2 , where N is 2, and so on.
[0062] The speed regulator 204 may further include a load torque ripple compensator 232 that applies a torque feed-forward function T FF (θ m ) to compensate for the AC component of the load torque, which varies with the mechanical angle θ of the shaft (e.g., of the load) m In other words, the load torque ripple compensator 232 applies the torque feedforward function T FF (θ m ) to compensate for the load torque pulsation Tc (eg, compressor pulsation AC component). The load torque pulsation compensator 232 may apply a torque feed-forward function T FF (θ m ) to reduce, eliminate or otherwise suppress the torque reference value T generated by the nonlinear relationship between the load torque and the mechanical angle of the shaft. Ref In other words, the load torque pulsation Tc varies with the mechanical angle θ of the shaft. m But (non-linearly) changes.
[0063] Apply torque feedforward function T FF (θ m ) may include generating a mechanical angle θ as an axis m The feedforward compensation signal T FF , so that the feedforward compensation signal T FF Matches the frequency, amplitude and phase of the load torque pulsation Tc. Feedforward compensation signal T FF The frequency can be equal to the motor rotation frequency (eg, the motor mechanical frequency), which can be calculated based on the mechanical angle θ of the shaft. m In other words, the feedforward compensation signal T FF The frequency can be obtained by the torque feedforward function T FF (θ m ) is determined based on the motor rotation frequency provided by the mechanical angle θm. Apply the torque feedforward function T FF (θm ) may also include the feedforward compensation signal T FF The output signal T of the PI compensator 230 PIO Add together to generate torque reference value T Ref In some implementations, the speed regulator 204 may further include a summing node 234 (eg, an adder) that converts the feedforward compensation signal T FF The output signal T of the PI compensator 230 PIO The load torque ripple compensator 232 may be configured to dynamically adjust the feedforward compensation signal T in real time when the load of the AC motor changes over time. FF For example, the feedforward compensation signal T FF The magnitude may increase as the load increases, and may decrease as the load decreases.
[0064] As indicated above, Figure 2 Provided as an example only. Other examples may vary from Figure 2 Examples described. Figure 2 The number and arrangement of components shown are provided as examples. Figure 2 Motor control system 200 may include additional components, fewer components, different components, or a different arrangement of components than those shown. Figure 2 Two or more of the components shown may be implemented in a single component, or Figure 2 The single components shown may be implemented as multiple distributed components. Additionally or alternatively, one set of components (eg, one or more components) of the motor control system 200 may perform one or more functions described as being performed by another set of components of the motor control system 200 .
[0065] Figure 3 A schematic block diagram illustrating a motor control system 300 according to one or more implementations is shown. For example, the motor control system 300 can apply a sensorless control implementation for an interior permanent magnet (IPM) motor using a single shunt resistor (Rs) placed on the negative DC link (bus) of the power inverter 102. The motor control system 300 includes a current regulator 302 (e.g., a FOC-based current regulator) and a speed regulator 304. The current regulator 302 and the speed regulator 304 can be implemented as part of the controller 104.
[0066] The current regulator 302 and the speed regulator 304 each change the motor winding voltage of the AC motor to adjust the speed of the AC motor according to the speed reference signal ω. RefThe reference speed value (e.g., target speed) provided is effective in driving the AC motor. The AC motor can be coupled to a load via a shaft. However, instead of using a sensor-based interface, the current regulator 302 includes a phase current reconstruction circuit 306 as part of the measurement interface. The phase current reconstruction circuit 306 can use a single shunt reconstruction (single shuntreconstruction) to reconstruct the phase current I of each corresponding phase U, V, and W. u ,I v and I w For example, the phase current reconstruction circuit 306 can measure the DC link current Idc in the shunt resistor Rs during the active vector of the PWM cycle using single shunt reconstruction. The phase current reconstruction circuit 306 can receive samples of the DC link current Idc obtained from the shunt resistor Rs and then use the SVPWM algorithm (e.g., software) to reconstruct the three phase currents in real time. For example, in each PWM cycle, there are two different active vectors, and the DC link current Idc in each active vector dc The phase current reconstruction circuit 306 may include an ADC that measures the DC link current I during an active vector of a PWM cycle (eg, by measuring a voltage drop across a shunt resistor Rs). dc Because the sum of all three winding currents is zero under balanced conditions, the third phase current value can be calculated. Therefore, the phase current reconstruction circuit 306 may include calculating the three phase currents I according to the ADC samples. u ,I v and I w processor.
[0067] The phase current reconstruction circuit 306 may further include a three-phase to two-phase converter that may use Clarke transformation to reconstruct the three phase currents I calculated by the phase current reconstruction circuit 306. u ,I v and I w Apply alpha-beta (α-β) transformation to obtain α current I α and β current I β The FOC also uses vector rotation (eg, cordic rotation) at the vector rotation unit 308 to utilize the α current I α and β current I β The motor winding current is transformed into two quasi-DC current components, including the d-axis current I that enhances or weakens the rotor magnetic field. d and the q-axis current I that generates the motor torque q The vector rotation of the vector rotation unit 308 can be determined by the rotor electrical angle θ determined by the flux angle estimator 310 through the measurement interface. eTo drive, the d-axis current I d and q-axis current I q They represent the rotor magnetic field component and torque component of the motor current respectively.
[0068] The flux angle estimator 310 performs rotor angle and motor speed measurement and estimation based on the motor winding voltage and current. For example, the flux angle estimator 310 can calculate the rotor angle and motor speed based on the voltage and current information, i.e., V α 、V β ,I α and I β The flux angle estimator 310 may also include an output rotor electrical angle θ e and a speed feedback signal ω representing the motor speed (eg, the rotational speed of the shaft) of the AC motor. m Angle phase-locked loop (PLL).
[0069] In some implementations, the flux angle estimator 310 can be based on the feedback current (e.g., using the α current I α and β current I β ), estimated voltage V α and V β The flux is calculated based on the DC bus feedback voltage and the modulation index and the motor parameters (e.g., inductance and resistance). The output of the flux estimator of the flux angle estimator 310 can represent the rotor flux in the α-β two-phase quantities φα and φβ in a stationary orthogonal frame, where the U phase is aligned with α.
[0070] The angle PLL can estimate the flux angle (e.g., estimated rotor angle) and motor speed based on the rotor flux vector of the α-β two-phase quantity φα and φβ. The vector rotation of the angle PLL calculates the error between the rotor flux angle and the estimated rotor angle. In a closed loop path, the PI compensator and integrator of the angle PLL force the angle and frequency estimation to track the angle and frequency of the rotor flux angle. The motor speed is derived from the rotor frequency based on the number of rotor poles. Therefore, the flux angle estimator 310 can be based on the motor winding voltage (e.g., α and β voltages, i.e., V α and V β ) and the motor winding currents (e.g., α and β currents, i.e., I α and I β ) to obtain the rotor electrical angle θe and speed feedback signal ω m However, the speed feedback signal ω m An AC error component corresponding to the load torque ripple as a compensation target is included.
[0071] The current regulator 302 may further include a scaling and alignment unit 312, which is configured to adjust the current according to the rotor electrical angle θ provided by the flux angle estimator 310. e and the torque reference value T provided by the speed regulator 304 Ref To calculate the mechanical angle θ m .
[0072] The current regulator 302 may also include an IPM controller 314 that can maximize the torque per ampere in the IPM motor. For example, when there is a difference between the motor Q-axis inductance and the D-axis inductance, the IPM controller 314 may adjust the D-axis reference current I dRef The IPM controller 314 may calculate the non-zero d-axis reference current I based on the angle advance calculation as a function of the motor parameters and the motor current. dRef The angle advance calculation can be implemented as a linear approximation or as a lookup table derived from the motor characteristics. This function optimizes the motor operating point of the motor for maximum efficiency.
[0073] The q-axis summing node 316 and the PI compensator 318 (eg, a PI controller) regulate the q-axis voltage V in the rotating reference frame. q , so that the q-axis current I q Tracking the torque reference value T output from the speed regulator 304 Ref For example, the q-axis summing node 316 may be an error generator, such as a subtractor, which receives the q-axis current reference I qRef As the set point (SP) value and receiving the q-axis current I from the vector rotation unit 308 q As the actual measurement value (PV), and generates an error value ErrIq. The PI compensator 318 adjusts the q-axis voltage V based on the error value ErrIq. q .
[0074] The d-axis summing junction 320 and the PI compensator 322 (eg, a PI controller) regulate the d-axis voltage V in the rotating reference frame. d , so that the d-axis current I d Follows the d-axis current reference I dRef To maximize the motor efficiency. For example, the d-axis summing node 320 can be an error generator, such as a subtractor, which receives the d-axis current reference I dRef As a set point (SP) value and receiving the d-axis current I from the vector rotation unit 308 d As the actual measurement value (PV), and generates an error value ErrId. The PI compensator 322 adjusts the d-axis voltage V based on the error value ErrId. d .
[0075] The forward vector rotation unit 324 applies the forward vector rotation to the q-axis voltage V q and d-axis voltage V d , and based on the rotor electrical angle θ calculated by the flux angle estimator 310 e The q-axis voltage V q and d-axis voltage V d Converted into two-phase AC voltage components V α and V β Therefore, the forward vector rotation unit 324 converts the d-axis voltage V d and q-axis voltage V q Transformed into a two-phase AC voltage signal V in the stator reference frame α and V β , which drives the space vector PWM modulator 326 so that the three-phase motor voltage drives the target motor magnetic field and torque components.
[0076] The space vector PWM modulator 326 receives the two-phase AC voltage components V α and V β , and based on V α and V β The voltage input and SVPWM generate inverter switching signals (i.e., six PWM control signals output from the controller 104). The gate driver system 106 then turns on / off the corresponding power transistors 108u, 108v, 108w, 109u, 109v, and 109w based on the PWM control signals. Therefore, the current regulator 302 can be configured to receive the torque reference value T Ref and using a PWM control signal to drive the motor current of the AC motor to generate a torque reference value T Ref For example, the current regulator 302 may calculate the inverter voltage to drive the motor current required to operate the AC motor at maximum efficiency.
[0077] The speed regulator 304 includes a combination of Figure 2 The summing node 228, PI compensator 230, load torque ripple compensator 232, and summing node 234 are similarly described, except that the summing node 228 receives the speed feedback signal ω from the flux angle estimator 310. m The load torque ripple compensator 232 receives the mechanical angle θ of the shaft from the scaling and alignment unit 312. m .
[0078] As indicated above, Figure 3 Provided as an example only. Other examples may vary from Figure 3 Examples described. Figure 3 The number and arrangement of components shown are provided as examples. Figure 3Motor control system 300 may include additional components, fewer components, different components, or a different arrangement of components than those shown. Figure 3 Two or more of the components shown may be implemented in a single component, or Figure 3 The single components shown may be implemented as multiple distributed components. Additionally or alternatively, one set of components (eg, one or more components) of the motor control system 300 may perform one or more functions described as being performed by another set of components of the motor control system 300 .
[0079] Figure 4 The upper graph 400A and the lower graph 400B are shown to illustrate why the PI compensator 230 of the speed regulator 304 cannot completely suppress the load torque pulsation component of the load torque pulsation Tc alone (e.g., without feedforward control). The upper graph 400A shows the average load torque pulsation of the load torque pulsation Tc. The load torque pulsation Tc makes the output signal T of the PI compensator 230 PIO There is also an AC error component, which is offset in phase with the load torque pulsation Tc by a phase difference θ CL The following diagram 400B shows the speed feedback signal ω m With an AC error component (e.g., a speed error signal Δω m ), the AC error component makes the speed feedback signal ω m Relative to the speed reference signal ω generated by the net shaft pulsation torque filtered by the load (e.g., due to the load torque pulsation Tc) Ref Oscillation. Speed error signal Δω m is a function of the load torque pulsation angle θc of the load torque pulsation Tc. The integrator drive output signal T of the PI compensator 230 PIO Until the average speed error is zero, the PI compensator 230 cannot track the AC component of the load torque ripple Tc per cycle because the gain of the PI compensator 230 varies with frequency. At very high speeds, the mechanical filtering provided by the compressor load inertia will cause the speed feedback signal ω to m However, there is an operating speed range in which significant shaft vibration, acoustic noise and speed pulsation exist.
[0080] As indicated above, Figure 4 Provided as an example only. Other examples may vary from Figure 4 Examples described.
[0081] Figure 5 FIG. 500 shows an example of a harmonic component of a load torque pulsation Tc. FIG. 501 shows an example of a harmonic component of a load torque pulsation Tc.CH1 (e.g., the fundamental frequency component of the load torque pulsation Tc), the second harmonic frequency component T CH2 and the fifth harmonic frequency component T CH5 The torque feed-forward function T implemented by the load torque ripple compensator 232 is FF (θ m ) may be a first-order torque feedforward function configured to make the feedforward compensation signal T FF The first harmonic frequency component T of the load torque pulsation Tc CH1 Matching in frequency, amplitude (gain) and phase to offset the first harmonic frequency component T of the load torque ripple Tc CH1 Therefore, the torque feed-forward function T implemented by the load torque ripple compensator 232 is FF (θ m ) can be configured to measure at least one harmonic frequency component of the load torque pulsation Tc to estimate the amplitude and phase of the load torque pulsation Tc. The load torque pulsation compensator 232 can measure at least one harmonic component (e.g., fundamental wave) of the output signal of the PI compensator 230 or the speed error signal Δω m At least one harmonic frequency component of the load torque pulsation Tc is measured by measuring at least one harmonic frequency component of the load torque pulsation Tc. In some implementations, feedforward compensation can be implemented for more than one harmonic frequency by adding additional load torque pulsation compensators (e.g., feedforward compensators) in parallel. For example, one load torque pulsation compensator can be configured to measure the first harmonic frequency component Tc of the load torque pulsation Tc. CH1 , and another load torque pulsation compensator can be configured to measure another harmonic frequency component of the load torque pulsation Tc.
[0082] As indicated above, Figure 5 Provided as an example only. Other examples may vary from Figure 5 Examples described.
[0083] Figure 6 The load pulsation frequency ω of the load torque pulsation Tc represented by one cycle of the load torque pulsation Tc is shown. c How to use the number of motor poles (p) and the rotor electrical angle θ e The motor electrical frequency and mechanical angle θ m The mechanical frequency of the AC motor is directly related to the load torque ripple angle θc. m The phase difference φ cm That is, it is fixed. The amplitude of load torque pulsation Tc changes with the change of applied load.
[0084] As indicated above, Figure 6 Provided as an example only. Other examples may vary from Figure 6 Examples described.
[0085] Figure 7 A torque compensation system model 700 is shown according to one or more implementations. The torque compensation system model 700 is a frequency domain model of a torque compensation system.
[0086] The speed regulator 204 (or 304) includes a load torque ripple compensator 232 that applies a torque feed-forward function T FF (θ m ) and the compensator transfer function C(s) for the PI compensator 230. Gain function 702 calculates the torque feedforward gain and uses the torque feedforward gain signal T F To provide a torque feed-forward gain. Gain function 702 is based on the average load torque With the feedforward gain parameter G F (e.g., feedforward proportional factor) to calculate the torque feedforward gain, so that the torque feedforward gain signal T F The amplitude of increases with the load. The feedforward gain parameter G F It is possible to match the amplitude of the first harmonic frequency component (eg, fundamental wave) of the load torque pulsation Tc.
[0087] The summing node 704 converts the feedforward phase parameter θ TCos (e.g., phase shift) and the mechanical angle θ m Added together, we get the feedforward phase θ F , in order to take into account the phase difference φ that exists when the system (e.g., motor and load) is assembled cm The corresponding alignment mismatch. The feedforward phase parameter θ TCos It is possible to match the phase of the first harmonic frequency component (eg, fundamental wave) of the load torque pulsation Tc.
[0088] Trigonometric function 706 (eg, T F Cos(θ F ))Use the feedforward gain signal T F (e.g., torque feedforward gain) and feedforward phase θ F To generate the feedforward compensation signal T FF As the sinusoidal torque pulsation compensation signal. Feedforward compensation signal T FF The gain function 702, the summing node 704 and the trigonometric function 706 may represent the torque feedforward function Tc of the speed regulator 204 (or 304). FF (θ m ).
[0089] Therefore, the torque feedforward function T FF (θ m ) includes a feedforward compensation signal T FF The input feedforward gain parameter G F and the feedforward phase parameter θ TCos In addition, at the gain function 702, the load torque ripple compensator 232 is configured to: set the feedforward gain parameter G F The torque feedforward gain signal T is multiplied by the average value of the output signal of the PI compensator 230 to determine F , and the torque feedforward gain signal T F Used as feedforward compensation signal T FF In addition, the load torque ripple compensator 232 is configured to feed forward phase parameter θ TCos With mechanical angle θ m Sum to determine the feedforward compensation signal T FF The phase of the feedforward phase θ F .
[0090] The torque compensation system model 700 also includes a system model 708 of the current regulator 202 (or 302), the AC motor, and the load. The first-order system 710 models the dynamic friction and inertia of the load and the AC motor and provides a speed feedback signal ω m The velocity integrator 712 models the shaft angular rotation and provides the mechanical angle θ m The summing node 714 and the multi-order Fourier series 716 model the nonlinear mechanical load. Specifically, the multi-order Fourier series 716 models the load torque ripple Tc. The rest of the system model 708 includes the motor current I m The three-phase voltage inverter 718 based on FOC current regulation, the AC motor torque generator 720 providing the motor torque Tm, the angle sensor interface (B q )722 and speed sensor interface (B w )724 linear model.
[0091] As indicated above, Figure 7 Provided as an example only. Other examples may vary from Figure 7 Examples described.
[0092] Figure 8 A torque compensation system model 800 is shown according to one or more implementations. The torque compensation system model 800 represents the motor and the load in the speed regulator scaling domain so that a feedforward compensation signal Tc can be calculated for reducing or canceling the fundamental (e.g., first-order ripple component) of the (non-linear) load torque ripple Tc. FF . Figure 7 The current regulation three-phase voltage inverter 718 based on FOC, the AC motor torque generator 720, the angle sensor interface (B q )722 and speed sensor interface (B w )724 are combined into a compressor load model S(s)802 represented in the speed regulator scaling domain.
[0093] As indicated above, Figure 8 Provided as an example only. Other examples may vary from Figure 8 Examples described.
[0094] Fig. 9 A combined torque compensation system model 900 according to one or more implementations is shown. For example, the combined torque compensation system model 900 may be a simplified version of the torque compensation system model 800. Additionally, the combined torque compensation system model 900 may be a first-order harmonic component model.
[0095] The PI compensator 230 is represented by the compensator transfer function C(s), the load model is represented by S(s) (eg, the mechanical system transfer function), and the torque feedforward gain signal T F (e.g., torque feed-forward gain) and load torque ripple Tc are represented by mathematical functions in blocks 232 and 716, respectively. Block 902 is represented by a closed-loop transfer function G CL (s) represents the closed loop gain of the speed regulator 204 (or 304). The summing node 904 obtains the first harmonic frequency component T of the load torque ripple Tc. CH1 (e.g., first-order ripple component) minus the feedforward compensation signal T FF In order to compensate for the (nonlinear) first harmonic frequency component T CH1 Therefore, the feedforward compensation signal T FF The frequency, amplitude (gain) and phase of the first harmonic frequency component T CH1 Match or substantially match to offset or otherwise reduce the load torque ripple Tc.
[0096] When the pulsation frequency is close to or greater than the bandwidth of the speed regulator 204 (or 304), the torque feedforward function T FF (θ m ) reduces or eliminates motor load torque ripple in motor drives at medium and high speeds. Torque feedforward function T FF (θ m ) automatically determines the AC component of the motor load torque and generates a feedforward compensation signal T FF , to reduce or eliminate mechanical vibration. Feedforward compensation signal T FF The frequency can be determined by the motor driver, but the feedforward compensation signal T FFIt should also match the mechanical load torque ripple in phase and amplitude. Torque feedforward function T FF (θ m ) A cross-correlation function may be used in the motor speed loop to measure the DC component and the quadrature component of the first harmonic of the output signal of the PI compensator 230, or a cross-correlation function may be used in the motor speed loop to measure the speed error signal Δω m For example, the output signal of the PI compensator 230 and the speed error signal Δω m Each AC frequency component of is a vector with magnitude and phase relative to a common reference angle and can be represented as a complex number. The cross-correlation function can be expressed relative to a reference angle (e.g., the feedforward phase θ F ) extracts the output signal or speed error signal Δω representing the PI compensator 230 m The load torque ripple compensator 232 may perform two sequential measurements at two different test feedforward levels of the feedforward torque. The load torque ripple compensator 232 may calculate the feedforward gain parameter G according to the linear combination of the two sequential measurements and the two different test feedforward levels. F and the feedforward phase parameter θ TCos .
[0097] Equation 3 expresses the first harmonic frequency component T CH1 , feedforward compensation signal T FF , closed-loop transfer function G CL (s) and the output signal T of the PI compensator 230 PIO The first harmonic component T PIO1 The relationship between.
[0098]
[0099] If the feedforward compensation signal T in the combined torque compensation system model 900 FF is known, the output signal T at the output of the PI compensator 230 can be directly measured. PIO , but it is impossible to measure the load torque pulsation Tc and mechanical system parameters. FF ] 1 and [T FF ] 2 The two output signals T PIO It is possible to indirectly measure the unknown pulsating torque component of the load torque pulsation Tc. In equations 4 and 5, [T FF ] 1 and [T FF ] 2 are two different feedforward torque values, and [T PIO1] 1 and [T PIO1 ] 2 are the output signals T of the PI compensator 230 PIO For example, the feedforward gain parameter G F Two different values of [G F ] 1 and [G F ] 2 To generate the feedforward compensation signal T FF , to generate two different feedforward torque values [T FF ] 1 and [T FF ] 2 (For example, two different feedforward compensation signals T FF ). The feedforward compensation signal T FF Set to the feedforward torque value [T FF ] 1 In the case of (for example, when the feedforward gain parameter G F When the output signal T of the PI compensator 230 is set to the first value, PIO The fundamental component of the PIO1 ] 1 Then the feedforward compensation signal T FF Set to the feedforward torque value [T FF ] 2 In the case of (for example, when the feedforward gain parameter G F When the output signal T of the PI compensator 230 is set to the second value) PIO The fundamental component of the PIO1 ] 2 .
[0100]
[0101] Equation 6 shows that the output signal T PIO The two fundamental components [T PIO1 ] 1 and [T PIO1 ] 2 The difference between the two produces no load torque ripple Tc, and one unknown term remains (for example, the closed-loop transfer function G CL (s)).
[0102]
[0103] Equation 7 provides the output signal T PIO The fundamental component [T PIO1 ] 1 The first measurement result and output signal T PIOThe two fundamental components [T PIO1 ] 1 and [T PIO1 ] 2 The ratio of the difference between 12 .
[0104]
[0105] For the first harmonic frequency component T of the load torque pulsation Tc CH1 , ratio R 12 Producing Equation 8. Based on the ratio R 12 and different sets of experimental feedforward values (e.g., feedforward gain parameter G F and the feedforward phase parameter θ TCos ) corresponding to the feedforward torque value [T FF ] 1 and [T FF ] 2 The first harmonic frequency component T of the load torque pulsation Tc is obtained CH1 .
[0106] T CH1 =[T FF ] 1 +([T FF ] 2 -[T FF ] 1 )R 12 Equation 8.
[0107] First harmonic frequency component T CH1 can be used to determine such a feedforward parameter G F and θ TCos , the feedforward parameter G F and θ TCos will be used as input at the load torque ripple compensator 232 for generating a feed-forward compensation signal T FF , the feedforward compensation signal T FF Will be provided to the summing node 234 for compensating the load torque ripple Tc. The feedforward parameter G can be calculated using Equation 9 and / or Equation 10 F and θ TCos ,
[0108]
[0109] |T CH1 |=|T PIOO |×[G F ] 3 =|T PIOO |×|[G F ] 1 +([G F ]2 -[G F ] 1 )R 12 | Equation 10, where [G F ] 3 represents the signal T to be used for generating the feedforward compensation signal FF The input feedforward gain parameter G F The updated value of the feedforward compensation signal T FF It will be provided to the summing node 234 to compensate the load torque ripple Tc. C1 is the first harmonic frequency component T CH1 The absolute value of .
[0110] As indicated above, Fig. 9 Provided as an example only. Other examples may vary from Fig. 9 Examples described.
[0111] Fig.10 A system model 1000 of a motor control algorithm with automatic adjustment of torque compensation according to one or more implementations is shown. The system model 1000 includes a cross-correlation unit 1002 as part of the load torque ripple compensator 232 of the speed regulator 204 (or 304). The cross-correlation unit 1002 can use a cross-correlation function to measure the output signal T of the PI compensator 230. PIO At least one harmonic component (eg, fundamental wave) of the PI compensator 230, and based on the output signal T PIO The feedforward gain parameter G is determined by at least one harmonic component of F (For example, the updated gain value [G F ] 3 ) and the feedforward phase parameter θ TCos Therefore, the cross-correlation function may be executed by at least one processor or other processing hardware. For example, the cross-correlation unit 1002 may automatically determine the frequency component T used to generate the first harmonic frequency component Tc corresponding to the load torque pulsation Tc. CH1 Matching feedforward compensation signal T FF The feedforward gain parameter G F and the feedforward phase parameter θ TCos .
[0112] The cross-correlation unit 1002 may include a cross-correlation block 1004 that may extract the output signal T from the PI compensator 230. PIO The fundamental component T PIO1 For example, the cross-correlation block 1004 may extract a representation of the output signal T PIO The complex vector represents the fundamental component T PIO1The first zero-order holding register 1006 may store the amplitude and phase of each instance of performing a cross-correlation calculation (eg, for the output signal T PIO The fundamental wave component T obtained by the first zero-order holding register 1006 is PIO1 Each sample can be used to generate the current feed-forward compensation signal T FF The current feedforward gain parameter G F and the current feedforward phase parameter θ TCos Associated.
[0113] The threshold comparator 1008 can calculate the fundamental wave component T according to the complex value provided by the first zero-order holding register 1006. PIO1 In addition, the threshold comparator 1008 can be used to PIO1 The amplitude |T| is compared with the threshold value Tε, and if the threshold comparator 1008 determines that the fundamental component T PIO1 The amplitude |T| satisfies the threshold T ε (For example, if the fundamental component T PIO1 The amplitude |T| is greater than the threshold T ε ), then the feedforward gain parameter G F and the feedforward phase parameter θ TCos adjustments.
[0114] If it is necessary to base on the fundamental component T PIO1 The amplitude |T| satisfies the threshold T ε To adjust the gain, the second zero-order holding register 1010 converts the fundamental wave component T PIO1 The complex value of is stored as the fundamental wave T PIO1 The first sample of the amplitude and phase [T PIO1 ] 1 . With the first sample [T PIO1 ] 1 The associated feedforward compensation signal T FF The feedforward gain parameter G F is also known and can be used as the gain value [G F ] 1 Therefore, with the gain value [G F ] 1 The associated feedforward compensation signal T FF It can be called the feedforward torque value [T FF ] 1 .
[0115] The main algorithm block 1012 can adjust the G (e.g., any gain setting) to adjust the feedforward gain parameter G provided to the gain function 702 F, in order to adjust the feedforward compensation signal T for the second measurement FF In this case, the adjusted feedforward gain parameter G F Can be used as gain value [G F ] 2 , and with the gain value [G F ] 2 The associated feedforward compensation signal T FF It can be called the feedforward torque value [T FF ] 2 Once the feedforward gain parameter G F From the gain value [G F ] 1 Adjust to the gain value [G F ] 2 and the system is stable (eg, after a predetermined delay imposed by the delay element 1014), the second zero-order holding register 1010 can obtain the fundamental component T PIO1 The complex value of the fundamental wave T PIO1 The second sample of the amplitude and phase [T PIO1 ] 2 The calculation units 1016 and 1018 may be configured to calculate the ratio R according to Equation 7: 12 , where A represents the first sample (e.g., [T PIO1 ] 1 ), and B represents the amplitude of the first sample (e.g., [T PIO1 ] 1 ) is the same as the magnitude of the second sample (e.g., [T PIO1 ] 2 ). Therefore, the calculation unit 1016 can be a subtractor component that (for example, according to Equation 7) calculates the difference in the amplitude of [T PIO1 ] 1 Subtract [T PIO1 ] 2 To obtain a divisor variable (eg, B) for the division operation. The calculation unit 1018 may be a divider component that uses the first sample (eg, [T PIO1 ] 1 ) as the dividend variable (eg, A) of the division operation. The calculation unit 1018 calculates the ratio R based on A and B according to equation 7: 12 , and the ratio R 12 Provided to the main algorithm block 1012. The main algorithm block 1012 can be configured to use the ratio R 12 The feedforward gain parameter G is calculated according to Equation 9 and / or Equation 10. F and the feedforward phase parameter θ TCos The main algorithm block 1012 can be fed forward gain parameter G Fand the feedforward phase parameter θ TCos The updated values of are provided to the gain function 702 and the summing node 704, respectively, so as to update the feedforward compensation signal T to be used to compensate for the load torque ripple Tc. FF .
[0116] During startup of the system model 1000 (eg, during initialization of the motor controller), the system model 1000 may be configured to generate a gain value [G F ] 1 Set to zero and set the gain value [G F ] 2 Set to any gain setting other than zero (for example, G init ) to calculate the feedforward gain parameter G F and the feedforward phase parameter θ TCos Therefore, the feedforward gain parameter G F The first sample is obtained when PIO1 ] 1 ), and the feedforward gain parameter G F The second sample is obtained when the gain setting is set to an arbitrary gain setting (e.g., [T PIO1 ] 2 ) to obtain the ratio R 12 The main algorithm block 1012 can use the ratio R 12 The initial value of the feedforward gain parameter G is calculated F and the feedforward phase parameter θ TCos When the first gain value is set to zero, the ratio R 12 The vector angle (phase) is equal to the fundamental AC torque component of the compressor and the feedforward compensation signal T FF When the ratio R 12 (e.g. phase difference) is used to feed forward the phase parameter θ TCos The phase error becomes zero.
[0117] After initialization, as described above, the system model 1000 may use the threshold comparator 1008 to determine when the feedforward gain parameter G should be adjusted. F and the feedforward phase parameter θ TCos Update to update the feedforward compensation signal T FF .
[0118] Therefore, the load torque ripple compensator 232 can be configured as follows: F is set to the first gain value [G F ] 1 The output signal T of the PI compensator 230 is measured under the condition of PIO The fundamental wave T PIO1The first sample of the amplitude and phase [T PIO1 ] 1 , in the feedforward gain parameter G F is set to be different from the first gain value [G F ] 1 The second gain value [G F ] 2 The output signal T of the PI compensator 230 is measured under the condition of PIO The fundamental wave T PIO1 The second sample of the amplitude and phase [T PIO1 ] 2 , and based on the first sample [T PIO1 ] 1 and the second sample [T PIO1 ] 2 To determine the signal used to generate the feedforward compensation signal T FF The feedforward gain parameter G F (For example, [G F ] 3 ) and the feedforward phase parameter θ TCos During initialization, the first gain value [G F ] 1 is set to zero, and the second gain value [G F ] 2 In addition, the load torque ripple compensator 232 can be configured to be based on the first gain value [G F ] 1 With the second gain value [G F ] 2 The difference between the two determines the feedforward gain parameter G F and the feedforward phase parameter θ TCos (See, for example, Equation 10).
[0119] In addition, the load torque ripple compensator 232 may be configured to calculate a torque ripple compensation value based on the first sample [T PIO1 ] 1 With the first sample [T PIO1 ] 1 and the second sample [T PIO1 ] 2 The feedforward gain parameter G is determined by the ratio of the difference between F and the feedforward phase parameter θ TCos .
[0120] In order to trigger the feedforward compensation signal T FF The load torque ripple compensator 232 can be configured to: measure the output signal T of the PI compensator 230 PIO The fundamental wave T PIO1 The amplitude and phase of the first sample are compared with the threshold Tε The comparison is performed based on the amplitude of the first sample being greater than or equal to or greater than the threshold value T. ε To trigger the feedforward compensation signal T FF The load torque ripple compensator 232 may be configured to: update the feedforward compensation signal T FF When updating the feedforward gain parameter G F The output signal T of the PI compensator 230 is measured with an adjusted gain value compared to the gain value used during the measurement of the first sample. PIO The fundamental wave T PIO1 The second sample of the amplitude and phase of the feedforward compensation signal T is determined based on the first sample and the second sample. FF The feedforward gain parameter G F (For example, [G F ] 3 ) and the feedforward phase parameter θ TCos .
[0121] Therefore, the load torque ripple compensator 232 may be configured to generate a first feed-forward compensation signal [T FF ] 1 , and the first feedforward compensation signal [T FF ] 1 The output signal T of the PI compensator 230 PIO The first torque reference value T is generated by adding Ref The output signal T of the PI compensator 230 is measured at PIO The first sample of the fundamental wave [T PIO1 ] 1 The load torque ripple compensator 232 may be configured to generate a second feed-forward compensation signal [T FF ] 2 , and the second feedforward compensation signal [T FF ] 2 The output signal T of the PI compensator 230 PIO The second torque reference value T is generated by adding Ref The output signal T of the PI compensator 230 is measured at PIO The second sample of the fundamental wave [T PIO1 ] 2 The first feedforward compensation signal [T FF ] 1 and the second feedforward compensation signal [T FF ] 2 Since, for example, the gain value [G F ] 1 and [G F ] 2As described above, the load torque pulsation compensator 232 may be configured to be based on the first sample [T PIO1 ] 1 and the second sample [T PIO1 ] 2 To determine the signal used to generate the feedforward compensation signal T FF The feedforward gain parameter G F and the feedforward phase parameter θ TCos Therefore, the first feedforward compensation signal [T FF ] 1 and the second feedforward compensation signal [T FF ] 2 can correspond to different feedforward gain parameters (e.g., different gain values [G F ] 1 and [G F ] 2 ).
[0122] As indicated above, Fig.10 Provided as an example only. Other examples may vary from Fig.10 Examples described. Fig.10 The number and arrangement of components shown are provided as examples. Fig.10 System model 1000 may include additional components, fewer components, different components, or a different arrangement of components than those shown. Fig.10 Two or more of the components shown may be implemented in a single component, or Fig.10 The single components shown may be implemented as multiple distributed components. Additionally or alternatively, one set of components (eg, one or more components) of the system model 1000 may perform one or more functions described as being performed by another set of components of the system model 1000.
[0123] Fig.11 A system model 1100 of a motor control algorithm with automatic adjustment of torque compensation according to one or more implementations is shown. The system model 1100 is combined with Fig.10 The system model 1000 described is similar except that the cross-correlation block 1004 receives the velocity error signal Δω m Instead of the output signal T of the PI compensator 230 PIO Therefore, the cross-correlation block 1004 can extract the velocity error signal Δω m A complex vector representing the first sample [Δω mH1 ] 1 and the second sample [Δω mH1 ] 2 The speed error signal Δω m The fundamental component ΔωmH1 The amplitude and phase of the first sample [Δω mH1 ] 1 and the second sample [Δω mH1 ] 2 , the cross-correlation unit 1002 is used to compare with the above output signal T PIO The amplitude and phase of the fundamental component are described in a similar way to the velocity error signal Δω m The fundamental component Δω mH1 For example, the cross-correlation unit 1002 can be configured to measure the speed error signal Δω m The amplitude and phase of the fundamental wave, as well as the speed error signal Δω m The amplitude and phase of the fundamental wave are used to determine the feedforward gain parameter G F and the feedforward phase parameter θ TCos Equation 11 provides the velocity error signal Δω m The first sample of the fundamental component [Δω mH1 ] 1 and the speed error signal Δω m The difference between the first sample and the second sample of the fundamental component ([Δω mH1 ] 1 -[Δω mH1 ] 2 ) 12 .
[0124]
[0125] The main algorithm block 1012 may be configured to use the ratio R 12 The feedforward gain parameter G is calculated according to Equation 9 and / or Equation 10. F and the feedforward phase parameter θ TCos The main algorithm block 1012 can be fed forward gain parameter G F and the feedforward phase parameter θ TCos The updated values of are provided to the gain function 702 and the summing node 704, respectively, so as to update the feedforward compensation signal T to be used to compensate for the load torque ripple Tc. FF .
[0126] As indicated above, Fig.11 Provided as an example only. Other examples may vary from Fig.11 Examples described. Fig.11 The number and arrangement of components shown are provided as examples. Fig.11 The system model 1100 may include additional components, fewer components, different components, or a different arrangement of components than those shown. Fig.11Two or more of the components shown may be implemented in a single component, or Fig.11 The single components shown may be implemented as multiple distributed components. Additionally or alternatively, one set of components (eg, one or more components) of the system model 1100 may perform one or more functions described as being performed by another set of components of the system model 1100.
[0127] The following provides an overview of some aspects of the disclosure:
[0128] Aspect 1: A motor controller configured to drive a motor coupled to a load via a shaft, the motor controller comprising: a measurement interface configured to measure a mechanical angle of the shaft and a rotational speed of the shaft, and to generate a speed feedback signal representing the rotational speed; a speed regulator comprising: a first error component configured to receive a speed reference signal and a speed feedback signal corresponding to a speed reference value, and to generate a speed error signal based on a difference between the speed reference signal and the speed feedback signal; a proportional integral (PI) controller configured to adjust a torque reference value based on the speed error signal, the torque reference value being configured to maintain the speed reference value; and a load torque pulse A dynamic compensator configured to apply a torque feedforward function to reduce load torque pulsation in a torque reference value, wherein applying the torque feedforward function includes generating a feedforward compensation signal that matches the frequency, amplitude and phase of the load torque pulsation and adding the feedforward compensation signal to the output signal of the PI controller to generate a torque reference value, wherein the load torque pulsation varies with a mechanical angle, and wherein the load torque pulsation compensator is configured to dynamically adjust the amplitude and phase of the feedforward compensation signal in real time when the load of the motor varies with time; and a current regulator configured to receive the torque reference value and drive the motor current of the motor to generate a torque corresponding to the torque reference value.
[0129] Aspect 2: A motor controller according to Aspect 1, wherein the torque feedforward function includes a feedforward gain parameter and a feedforward phase parameter used as input for generating a feedforward compensation signal, wherein the load torque pulsation compensator is configured to: measure at least one harmonic component of the output signal of the PI controller, and determine at least one of the feedforward gain parameter and the feedforward phase parameter based on at least one harmonic component of the output signal of the PI controller.
[0130] Aspect 3: The motor controller according to aspect 2, wherein the load torque ripple compensator is configured to multiply the feedforward gain parameter by an average value of the output signal of the PI controller to determine the amplitude of the feedforward compensation signal.
[0131] Aspect 4: The motor controller according to Aspect 3, wherein the amplitude of the feedforward compensation signal increases as the load increases.
[0132] Aspect 5: The motor controller according to aspect 2, wherein the load torque ripple compensator is configured to add the feedforward phase parameter to the mechanical angle to determine the phase of the feedforward compensation signal.
[0133] Aspect 6: A motor controller according to Aspect 2, wherein the load torque pulsation compensator is configured to: measure a first sample of the amplitude and phase of the fundamental wave of the output signal of the PI controller when the feedforward gain parameter is set to a first gain value, measure a second sample of the amplitude and phase of the fundamental wave of the output signal of the PI controller when the feedforward gain parameter is set to a second gain value different from the first gain value, and determine a feedforward gain parameter and a feedforward phase parameter for generating a feedforward compensation signal based on the first sample and the second sample.
[0134] Aspect 7: The motor controller according to Aspect 6, wherein the first gain value is zero.
[0135] Aspect 8: The motor controller according to Aspect 6, wherein the load torque ripple compensator is configured to determine the feedforward gain parameter and the feedforward phase parameter based on a difference between the first gain value and the second gain value.
[0136] Aspect 9: The motor controller according to aspect 6, wherein the load torque ripple compensator is configured to determine the feedforward gain parameter and the feedforward phase parameter based on a ratio of the first sample to a difference between the first sample and the second sample.
[0137] Aspect 10: A motor controller according to Aspect 2, wherein the load torque pulsation compensator is configured to: measure a first sample of the amplitude of the fundamental wave of the output signal of the PI controller, compare the amplitude of the first sample with a threshold, and trigger an update of the feedforward compensation signal based on the amplitude of the first sample being greater than or equal to or greater than the threshold.
[0138] Aspect 11: A motor controller according to Aspect 10, wherein the load torque pulsation compensator is configured to: when performing an update of the feedforward compensation signal, measure a second sample of the amplitude and phase of the fundamental wave of the output signal of the PI controller when the feedforward gain parameter has an adjusted value compared to the value used during the measurement of the first sample, and determine the feedforward gain parameter and feedforward phase parameter for updating the feedforward compensation signal based on the first sample and the second sample.
[0139] Aspect 12: A motor controller according to Aspect 2, wherein the load torque pulsation compensator is configured to: generate a first feedforward compensation signal, and measure a first sample of the fundamental wave of the output signal of the PI controller when the first feedforward compensation signal is added to the output signal of the PI controller to generate a first torque reference value, wherein the load torque pulsation compensator is configured to: generate a second feedforward compensation signal, and measure a second sample of the fundamental wave of the output signal of the PI controller when the second feedforward compensation signal is added to the output signal of the PI controller to generate a second torque reference value, wherein the first feedforward compensation signal and the second feedforward compensation signal are different, and wherein the load torque pulsation compensator is configured to determine a feedforward gain parameter and a feedforward phase parameter for generating the feedforward compensation signal based on the first sample and the second sample.
[0140] Aspect 13: The motor controller according to Aspect 12, wherein the first feedforward compensation signal and the second feedforward compensation signal correspond to different feedforward gain parameters.
[0141] Aspect 14: A motor controller according to any one of aspects 1 to 13, wherein the PI controller adjusts the torque reference to drive the average value of the speed error signal to zero.
[0142] Aspect 15: The motor controller according to any one of aspects 1 to 14, wherein the motor controller is configured to drive a compressor load coupled to the motor via a shaft.
[0143] Aspect 16: The motor controller according to any one of aspects 1 to 15, wherein the speed feedback signal includes an AC error component corresponding to load torque ripple.
[0144] Aspect 17: A motor controller according to any one of Aspects 1 to 16, wherein the torque feedforward function includes a feedforward gain parameter and a feedforward phase parameter used as input for generating a feedforward compensation signal, wherein the load torque pulsation compensator is configured to: measure the amplitude and phase of the fundamental wave of the speed error signal, and determine at least one of the feedforward gain parameter and the feedforward phase parameter based on the amplitude and phase of the fundamental wave of the speed error signal.
[0145] Aspect 18: A motor controller according to any one of aspects 1 to 17, wherein the load varies nonlinearly with changes in the mechanical angle of the shaft.
[0146] Aspect 19: A method for reducing load torque pulsation associated with driving a motor coupled to a load via a shaft, the method comprising: measuring the mechanical angle of the shaft; measuring the rotational speed of the shaft; generating a speed feedback signal representing the rotational speed; generating a speed error signal based on the difference between a speed reference signal and a speed feedback signal; adjusting a torque reference value based on the speed error signal through a PI controller, the torque reference value being configured to maintain the speed reference value of the speed reference signal; applying a torque feedforward function to reduce load torque pulsation in the torque reference value, including generating a feedforward compensation signal that matches the frequency, amplitude and phase of the load torque pulsation and adding the feedforward compensation signal to the output signal of the PI controller to generate a torque reference value, wherein the load torque pulsation varies with the mechanical angle; dynamically adjusting the amplitude and phase of the feedforward compensation signal in real time as the load of the motor changes over time; and driving the motor current of the motor to generate a torque corresponding to the torque reference value.
[0147] Aspect 20: A method according to Aspect 19, wherein the torque feedforward function includes a feedforward gain parameter and a feedforward phase parameter used as input for generating a feedforward compensation signal, wherein the method further includes: measuring at least one harmonic component of the output signal of the PI controller; and determining at least one of the feedforward gain parameter and the feedforward phase parameter based on at least one harmonic component of the output signal of the PI controller.
[0148] Aspect 21: The method according to Aspect 20 also includes: measuring a first sample of the fundamental wave of the output signal of the PI controller when the feedforward gain parameter is set to a first gain value; measuring a second sample of the fundamental wave of the output signal of the PI controller when the feedforward gain parameter is set to a second gain value different from the first gain value; and determining a feedforward gain parameter and a feedforward phase parameter for generating a feedforward compensation signal based on the first sample and the second sample.
[0149] Aspect 22: The method according to Aspect 20 further includes: measuring a first sample of the fundamental wave of the output signal of the PI controller; comparing the first sample with a threshold; and triggering an update of the feedforward compensation signal based on the first sample satisfying the threshold.
[0150] Aspect 23: A method according to any one of Aspects 19 to 22, wherein the torque feedforward function includes a feedforward gain parameter and a feedforward phase parameter used as input for generating a feedforward compensation signal, wherein the method further includes: measuring the fundamental wave of the speed error signal; and determining at least one of the feedforward gain parameter and the feedforward phase parameter based on the fundamental wave of the speed error signal.
[0151] Aspect 24: A system configured to perform one or more operations recited in one or more of Aspects 1 to 23.
[0152] Aspect 25: An apparatus comprising means for performing one or more operations recited in one or more of Aspects 1 to 23.
[0153] Aspect 26: A non-transitory computer-readable medium storing an instruction set, the instruction set comprising one or more instructions, which, when executed by an apparatus, causes the apparatus to perform one or more operations recited in one or more of Aspects 1 to 23.
[0154] Aspect 27: A computer program product comprising instructions or codes for performing one or more operations recited in one or more of Aspects 1 to 23.
[0155] The foregoing disclosure provides illustration and description, but is not intended to be exhaustive or to limit the implementations to the precise forms disclosed. Modifications and variations may be made in light of the above disclosure or may be acquired from practice of the implementations.
[0156] Some implementations may be described herein in conjunction with a threshold value. As used herein, "satisfying" a threshold value may refer to a value being greater than a threshold value, more than a threshold value, above a threshold value, greater than or equal to a threshold value, less than a threshold value, less than a threshold value, below a threshold value, less than or equal to a threshold value, equal to a threshold value, etc.
[0157] As used herein, the term "component" is intended to be broadly interpreted as hardware, firmware, or a combination of hardware and software. The systems and / or methods described herein can be implemented in different forms of hardware, firmware, or a combination of hardware and software. The actual dedicated control hardware or software code used to implement these systems and / or methods does not limit the implementation. Therefore, the operation and behavior of the system and / or method are described herein without reference to specific software codes-it should be understood that software and hardware can be designed to implement the system and / or method based on the description herein.
[0158] Any processing unit in the processing unit can be implemented as a central processing unit (CPU) or other processor that reads a software program from a non-transient computer-readable recording medium such as a hard disk or a semiconductor memory device and executes the software program. For example, the instruction can be executed by one or more processors such as one or more CPUs, DSPs, general-purpose microprocessors, application-specific integrated circuits (ASICs), field programmable logic arrays (FPGAs), programmable logic controllers (PLCs) or other equivalent integrated or discrete logic circuit systems. Therefore, the term "processor" used herein refers to any of the aforementioned structures or any other structure suitable for implementing the technology described herein. The software can be stored on a non-transient computer-readable medium so that the non-transient computer-readable medium includes a program code or a program algorithm stored thereon, which causes the processor to perform the steps of the method via a computer program when executed.
[0159] A controller including hardware may also perform one or more of the techniques of the present disclosure. A controller including one or more processors may use electrical signals and digital algorithms to perform its receiving, analyzing, and controlling functions, which may also include correction functions. Such hardware, software, and firmware may be implemented in the same device or in separate devices to support the various techniques described in the present disclosure.
[0160] Signal processing circuitry and / or signal conditioning circuitry may receive one or more signals (i.e., measurement signals) in the form of raw measurement data from one or more components, and may derive other information from the measurement signals. "Signal conditioning" as used herein refers to manipulating an analog signal in such a way that the signal meets the requirements of the next stage for further processing. Signal conditioning may include conversion from analog to digital (e.g., via an analog-to-digital converter), amplification, filtering, conversion, biasing, range matching, isolation, and any other processing required to make the signal suitable for processing after conditioning.
[0161] Although specific combinations of features are recorded in the claims and / or disclosed in the specification, these combinations are not intended to limit the disclosure of the implementation described herein. Many of these features can be combined in a manner that is not specifically recorded in the claims and / or not disclosed in the specification. For example, the disclosure includes each dependent claim in the claim set combined with each other independent claim in the claim set and each combination of multiple claims in the claim set. As used herein, the phrase "at least one" in the reference item list refers to any combination of these items, including a single member. As an example, "at least one of a, b or c" is intended to cover a, b, c, a and b, a and c, b and c and a, b and c, and any combination with multiple identical elements (e.g., a+a, a+a+a, a+a+b, a+a+c, a+b+b, a+c+c, b+b, b+b+b, b+b+c, c+c and c+c+c, or any other order of a, b and c).
[0162] In addition, it should be understood that the disclosure of multiple actions or functions disclosed in the specification or claims may not be interpreted as being in a specific order. Therefore, the disclosure of multiple actions or functions will not limit these actions or functions to a specific order, unless such actions or functions are not interchangeable due to technical reasons. In addition, in some implementations, a single action may include or may be decomposed into multiple sub-actions. Unless explicitly excluded, such sub-actions may be included and are part of the disclosure of the single action.
[0163] When a "component" or "one or more components" (or another element, such as a "controller" or "one or more controllers") is described or claimed (either within a single claim or across multiple claims) to perform or be configured to perform multiple operations, the language is intended to broadly encompass a variety of architectures and environments. For example, unless otherwise expressly required (e.g., by use of "first component" and "second component" or other language in the claim that distinguishes between components), the language is intended to encompass a single component that performs or is configured to perform all of the operations, a group of components that collectively perform or are configured to perform all of the operations, a first component that performs or is configured to perform a first operation and a second component that performs or is configured to perform a second operation, or a combination of any components that perform or are configured to perform an operation. For example, when a claim has the form "one or more components are configured to: perform X; perform Y; and perform Z," the claim should be interpreted to mean "one or more components are configured to perform X; one or more (possibly different) components are configured to perform Y; and one or more (possibly different) components are configured to perform Z."
[0164] Elements, actions or instructions used herein should not be interpreted as critical or necessary unless explicitly described as such. In addition, as used herein, the articles "one" and "a" are intended to include one or more items, and can be used interchangeably with "one or more". In addition, as used herein, the article "the" is intended to include one or more items mentioned in conjunction with the article "the", and can be used interchangeably with "the one or more". In the case of being intended to only one item, phrases "only one", "single" or similar language are used. In addition, as used herein, the terms "have", "include", "contain" etc. are intended to be open terms (for example, "elements with" A may also have B) of the elements modified without limiting them. In addition, unless otherwise expressly stated, the phrase "based on" is intended to mean "at least partially based on". As used herein, the term "multiple" can be replaced by "multiple", and vice versa. In addition, as used herein, unless otherwise expressly stated (for example, in the case of being used in combination with "any" or "only one of"), the term "or" is intended to be inclusive when used in a series, and can be used interchangeably with "and / or".
Claims
1. A motor controller configured to drive a motor coupled to a load via a shaft, the motor controller comprising: a measurement interface configured to measure a mechanical angle of the shaft and a rotational speed of the shaft, and to generate a speed feedback signal representative of the rotational speed; A speed regulator comprising: a first error component configured to receive a speed reference signal corresponding to a speed reference value and the speed feedback signal, and to generate a speed error signal based on a difference between the speed reference signal and the speed feedback signal; a proportional-integral (PI) controller configured to adjust a torque reference based on the speed error signal, the torque reference being configured to maintain the speed reference; and a load torque pulsation compensator configured to apply a torque feedforward function to reduce load torque pulsation in the torque reference value, wherein applying the torque feedforward function comprises: generating a feedforward compensation signal matching the frequency, amplitude and phase of the load torque pulsation, and adding the feedforward compensation signal to the output signal of the PI controller to generate the torque reference value, wherein the load torque pulsation varies with the mechanical angle, and wherein the load torque ripple compensator is configured to dynamically adjust the amplitude and phase of the feedforward compensation signal in real time when the load of the motor changes over time; and A current regulator is configured to receive the torque reference value and drive a motor current of the motor to generate a torque corresponding to the torque reference value.
2. The motor controller according to claim 1, wherein: The torque feedforward function includes a feedforward gain parameter and a feedforward phase parameter used as input for generating the feedforward compensation signal, and Wherein, the load torque pulsation compensator is configured to: measure at least one harmonic component of the output signal of the PI controller, and determine at least one of the feedforward gain parameter and the feedforward phase parameter based on the at least one harmonic component of the output signal of the PI controller.
3. The motor controller according to claim 2, wherein: The load torque ripple compensator is configured to multiply the feedforward gain parameter by an average value of an output signal of the PI controller to determine a magnitude of the feedforward compensation signal.
4. The motor controller according to claim 3, wherein: The amplitude of the feedforward compensation signal increases as the load increases.
5. The motor controller according to claim 2, wherein: The load torque ripple compensator is configured to add the feed-forward phase parameter to the mechanical angle to determine a phase of the feed-forward compensation signal.
6. The motor controller according to claim 2, wherein: The load torque pulsation compensator is configured to: measure a first sample of the amplitude and phase of the fundamental wave of the output signal of the PI controller when the feedforward gain parameter is set to a first gain value, measure a second sample of the amplitude and phase of the fundamental wave of the output signal of the PI controller when the feedforward gain parameter is set to a second gain value different from the first gain value, and determine a feedforward gain parameter and a feedforward phase parameter for generating the feedforward compensation signal based on the first sample and the second sample.
7. The motor controller according to claim 6, wherein: The first gain value is zero.
8. The motor controller according to claim 6, wherein: The load torque ripple compensator is configured to determine the feedforward gain parameter and the feedforward phase parameter based on a difference between the first gain value and the second gain value.
9. The motor controller according to claim 6, wherein: The load torque ripple compensator is configured to determine the feed-forward gain parameter and the feed-forward phase parameter based on a ratio of the first sample to a difference between the first sample and the second sample.
10. The motor controller according to claim 2, wherein: The load torque ripple compensator is configured to: measure a first sample of the amplitude and phase of the fundamental wave of the output signal of the PI controller, compare the amplitude of the first sample with a threshold, and trigger an update of the feedforward compensation signal based on the amplitude of the first sample being greater than or equal to or greater than the threshold.
11. The motor controller according to claim 10, wherein: The load torque ripple compensator is configured to: when performing an update of the feedforward compensation signal, measure a second sample of the amplitude and phase of the fundamental wave of the output signal of the PI controller when the feedforward gain parameter has an adjusted value compared to the value used during the measurement of the first sample, and determine a feedforward gain parameter and a feedforward phase parameter for updating the feedforward compensation signal based on the first sample and the second sample.
12. The motor controller according to claim 2, wherein: The load torque ripple compensator is configured to generate a first feed-forward compensation signal and measure a first sample of a fundamental wave of the output signal of the PI controller when adding the first feed-forward compensation signal to the output signal of the PI controller to generate a first torque reference value, wherein the load torque ripple compensator is configured to generate a second feedforward compensation signal, and to measure a second sample of a fundamental wave of the output signal of the PI controller when adding the second feedforward compensation signal to the output signal of the PI controller to generate a second torque reference value, wherein the first feedforward compensation signal and the second feedforward compensation signal are different, and The load torque ripple compensator is configured to determine a feedforward gain parameter and a feedforward phase parameter for generating the feedforward compensation signal based on the first sample and the second sample.
13. The motor controller according to claim 12, wherein: The first feedforward compensation signal and the second feedforward compensation signal correspond to different feedforward gain parameters.
14. The motor controller according to claim 1, wherein: The PI controller adjusts the torque reference to drive the average value of the speed error signal to zero.
15. The motor controller according to claim 1, wherein: The motor controller is configured to drive a compressor load coupled to the motor via the shaft.
16. The motor controller according to claim 1, wherein: The speed feedback signal includes an AC error component corresponding to the load torque pulsation.
17. The motor controller according to claim 1, wherein: The torque feedforward function includes a feedforward gain parameter and a feedforward phase parameter used as input for generating the feedforward compensation signal, The load torque pulsation compensator is configured to measure the amplitude and phase of the fundamental wave of the speed error signal, and determine at least one of the feedforward gain parameter and the feedforward phase parameter based on the amplitude and phase of the fundamental wave of the speed error signal.
18. The motor controller according to claim 1, wherein: The load varies non-linearly with changes in the mechanical angle of the shaft.
19. A method of reducing load torque ripple associated with driving an electric machine coupled to a load via a shaft, the method comprising: measuring a mechanical angle of the axis; measuring a rotational speed of the shaft; generating a speed feedback signal indicative of the rotational speed; generating a speed error signal based on a difference between a speed reference signal and the speed feedback signal; adjusting a torque reference value based on the speed error signal by a proportional-integral (PI) controller, the torque reference value being configured to maintain a speed reference value of the speed reference signal; Applying a torque feedforward function to reduce load torque pulsation in the torque reference value includes: generating a feedforward compensation signal that matches the frequency, amplitude and phase of the load torque pulsation, and adding the feedforward compensation signal to the output signal of the PI controller to generate the torque reference value, wherein the load torque pulsation varies with the mechanical angle; Dynamically adjusting the amplitude and phase of the feedforward compensation signal in real time as the load of the motor changes over time; and A motor current of the motor is driven to generate a torque corresponding to the torque reference value.
20. The method according to claim 19, wherein: The torque feedforward function includes a feedforward gain parameter and a feedforward phase parameter used as input for generating the feedforward compensation signal, Wherein, the method further comprises: measuring at least one harmonic component of an output signal of the PI controller; and At least one of the feedforward gain parameter and the feedforward phase parameter is determined based on at least one harmonic component of an output signal of the PI controller.
21. The method according to claim 20, further comprising: measuring a first sample of a fundamental wave of an output signal of the PI controller with the feedforward gain parameter set to a first gain value; measuring a second sample of a fundamental of an output signal of the PI controller with the feedforward gain parameter set to a second gain value different from the first gain value; as well as A feedforward gain parameter and a feedforward phase parameter for generating the feedforward compensation signal are determined based on the first sample and the second sample.
22. The method according to claim 20, further comprising: measuring a first sample of a fundamental wave of an output signal of the PI controller; comparing the first sample to a threshold; as well as An update of the feed-forward compensation signal is triggered based on the first sample satisfying the threshold.
23. The method according to claim 19, wherein: The torque feedforward function includes a feedforward gain parameter and a feedforward phase parameter used as input for generating the feedforward compensation signal, Wherein, the method further comprises: measuring a fundamental wave of the speed error signal; and At least one of the feedforward gain parameter and the feedforward phase parameter is determined based on a fundamental wave of the speed error signal.
24. A non-transitory computer readable medium storing instructions which, when executed by a processor, cause the processor to perform the method according to any one of claims 19 to 23.
25. A computer program product comprising instructions or codes for performing the method according to any one of claims 19 to 23.
Citation Information
Cited By
Motor control method and system based on torque feedforward
CN122394448A