Motor controller and method for driving a permanent magnet synchronous motor using field oriented control

CN115208255BActive Publication Date: 2026-08-28INFINEON TECH AUSTRIA AG
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202210385382.9
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2021-04-13
Filing Date
2022-04-13
Publication Date
2026-08-28
Estimated Expiration
2042-04-13

AI Technical Summary

Technical Problem

[0006]某些应用,例如静音和低振动风扇,要求高效率和低噪声电流(即,高保真电流)二者,而FOC控制和具有霍尔传感器的开环占空比控制都不能满足这两个要求

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115208255B_ABST
    Figure CN115208255B_ABST
Patent Text Reader

Abstract

A motor controller configured to drive a permanent magnet synchronous motor (PMSM) with field oriented control (FOC) and a method of driving a PMSM with FOC are disclosed. The motor controller includes a current controller configured to generate control signals for driving the PMSM. The current controller is configured to measure current information of the PMSM, the current information including a direct axis motor current and a quadrature axis motor current. The current controller includes a direct axis current regulator configured to receive a direct axis reference current and the direct axis motor current to generate a direct axis error value based on a difference between the direct axis reference current and the direct axis motor current. The current controller includes a voltage regulator configured to regulate a DQ voltage vector including a direct axis motor voltage and a quadrature axis motor voltage, wherein the voltage regulator generates the direct axis motor voltage based on the direct axis error value and a voltage vector limit function to drive the direct axis motor current to zero.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of electronics, and more particularly to open-loop duty cycle control for permanent magnet AC (PMAC) motors using automatic field orientation. Background Technology

[0002] In residential, commercial, and industrial applications, motor drives use switching power inverters to generate variable frequency AC voltage to control the speed of AC motors. Permanent magnet AC (PMAC) motors typically offer a higher power-to-weight ratio and efficiency than induction motors and are widely used in applications requiring high dynamic response and / or very high system efficiency. Stable operation of a PMAC motor requires that the amplitude and frequency of the applied voltage be proportional to and synchronized with the motor's rotational frequency.

[0003] Field-oriented control (FOC) is one way to achieve high efficiency in PMAC motors, while other methods use open-loop duty cycle control with rotor position sensing feedback from devices such as Hall sensors. However, both control schemes have limitations and unique problems.

[0004] The FOC method requires high-fidelity current sensing. This is particularly challenging under low-speed operating conditions because the controller must change / modify the PWM pulse width to open the current sampling window. This results in higher acoustic noise and current waveform distortion.

[0005] On the other hand, due to the fact that the phase angle of the voltage applied for the phase current is ahead, open-loop duty cycle control with Hall sensors lacks optimal efficiency in high-speed operating regions. Without angle lead, the motor power factor decreases with increasing frequency, and the motor drive efficiency is low. External angle lead can be used, but the optimal lead function for maximizing efficiency varies with motor parameters and load, and therefore must be customized for each application use case. For example, in some cases, a lookup table is used to find the angle lead to be applied relative to the load. As the application and load change, even during runtime, the lookup table needs to be consulted to adjust the angle lead.

[0006] Some applications, such as silent and low-vibration fans, require both high efficiency and low noise current (i.e., high-fidelity current), which neither FOC control nor open-loop duty cycle control with Hall sensors can meet.

[0007] Therefore, an improved motor controller capable of providing high efficiency and high-fidelity current may be needed. Summary of the Invention

[0008] One or more embodiments provide a motor controller configured to drive a permanent magnet synchronous motor (PMSM) using field-oriented control (FOC). The motor controller includes a current controller configured to generate control signals for driving the PMSM, wherein the current controller is configured to measure current information of the PMSM, including direct-axis motor current and quadrature-axis motor current. The current controller includes a direct-axis current regulator configured to receive a direct-axis reference current and a direct-axis motor current to generate a direct-axis error value based on the difference between the direct-axis reference current and the direct-axis motor current. The current controller includes a voltage regulator configured to regulate a DQ voltage vector including a direct-axis motor voltage and a quadrature-axis motor voltage, wherein the voltage regulator generates a direct-axis motor voltage based on the direct-axis error value and a voltage vector limiting function to drive the direct-axis motor current to zero.

[0009] A method for driving a permanent magnet synchronous motor (PMSM) using field-oriented control (FOC) includes: generating a control signal for driving the PMSM via a current controller; measuring current information of the PMSM via the current controller, the current information including direct-axis motor current and quadrature-axis motor current; generating a direct-axis error value based on the difference between a direct-axis reference current and the direct-axis motor current via a direct-axis current regulator; and adjusting a DQ voltage vector including a direct-axis motor voltage and a quadrature-axis motor voltage via a voltage regulator, which includes generating a direct-axis motor voltage based on the direct-axis error value and a voltage vector limiting function to drive the direct-axis motor current to zero. Attached Figure Description

[0010] The embodiments are described herein with reference to the accompanying drawings.

[0011] Figure 1A This is a schematic block diagram illustrating a motor control actuator of a power semiconductor device according to one or more embodiments;

[0012] Figure 1B This is a schematic diagram illustrating a power inverter utilizing a single shunt current sense according to one or more embodiments;

[0013] Figure 2 A schematic block diagram of a motor drive system according to one or more embodiments is shown; and

[0014] Figure 3 The following are illustrated according to one or more embodiments. Figure 2 The diagram shows an extension of the motor drive system. Detailed Implementation

[0015] In the following sections, details are set forth to provide a more thorough description of exemplary embodiments. However, it will be apparent to those skilled in the art that embodiments can be practiced without these specific details. In other instances, to avoid obscuring the embodiments, well-known structures and apparatuses are shown in block diagrams or schematic diagrams rather than in detail. Furthermore, unless otherwise specifically indicated, features of the different embodiments described below can be combined with each other.

[0016] Furthermore, in the following description, equivalent or similar reference numerals are used to denote equivalent or similar elements or elements having equivalent or similar functions. Since identical or functionally equivalent elements in the drawings are given the same reference numerals, repeated descriptions of elements with the same reference numerals can be omitted. Therefore, the descriptions provided for elements with the same or similar reference numerals can be interchanged.

[0017] In this regard, directional terms such as "top," "bottom," "below," "above," "front," "rear," "behind," "in front," "behind," etc., may be used with reference to the orientation of the described drawings. Because the various parts of the embodiments can be positioned in many different orientations, the directional terms are for illustrative purposes and are by no means limiting. It should be understood that other embodiments may be utilized and structural or logical changes may be made without departing from the scope defined by the claims. Therefore, the following detailed description should not be considered limiting.

[0018] What will be understood is that when an element is described as "connected" or "coupled" to another element, it can be directly connected or coupled to the other element, or there may be intermediate elements. Conversely, when an element is described as "directly connected" or "directly coupled" to another element, there are no intermediate elements. Other terms used to describe relationships between elements (e.g., "between" and "directly between," "adjacent" and "directly adjacent," etc.) should be interpreted in a similar manner.

[0019] In the embodiments described herein or shown in the accompanying drawings, any direct electrical connection or coupling (i.e., any connection or coupling without additional intermediate elements) may also be achieved by an indirect connection or coupling (i.e., 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, such as for transmitting a signal or transmitting information, is substantially maintained. Features from different embodiments may be combined to form other embodiments. For example, unless otherwise stated, variations or modifications described with respect to one embodiment may also apply to other embodiments.

[0020] Without departing from aspects of the embodiments described herein, the terms "substantially" and "approximately" may be used herein to interpret what are considered industrially acceptable small manufacturing tolerances (e.g., within 5%). For example, a resistor having an approximate resistance value may actually have a resistance within 5% of that approximate resistance value.

[0021] In this disclosure, expressions including ordinal numbers such as "first," "second," etc., may modify the elements. However, such elements are not limited to the above expressions. For example, the above expressions do not limit the order and / or importance of the elements. The above expressions are merely used to distinguish one element from other elements. For example, the first box and the second box represent different boxes, but they are both boxes. As another example, without departing from the scope of this disclosure, the first element may be referred to as the second element, and similarly, the second element may be referred to as the first element.

[0022] A sensor can refer to a component that converts a physical quantity to be measured into an electrical signal (e.g., a current signal or a voltage signal). The physical quantity can be, for example, the current or voltage at the shunt resistor in a single shunt resistor system.

[0023] Signal processing circuitry and / or signal conditioning circuitry can receive one or more signals from one or more components and perform signal conditioning or processing on one or more signals. As used herein, signal conditioning refers to manipulating a signal in a manner that meets the requirements of the next stage for further processing. Signal conditioning may include analog-to-digital conversion (e.g., via an analog-to-digital converter), amplification, filtering, conversion, biasing, range matching, isolation, and any other processing required to adapt the signal for subsequent processing.

[0024] Therefore, signal processing circuitry may include an analog-to-digital converter (ADC) that converts analog signals from one or more sensor elements into digital signals. Signal processing circuitry may also include a digital signal processor (DSP) that performs some processing on the digital signals.

[0025] Many functions of modern devices in automotive, consumer, and industrial applications (such as converting electrical energy and driving electric motors or electrical machinery) rely on power semiconductor devices. For example, to name just a few, insulated-gate bipolar transistors (IGBTs), metal-oxide-semiconductor field-effect transistors (MOSFETs), and diodes have been used in a variety of applications, including but not limited to switches in power supplies and power converters.

[0026] Power semiconductor devices typically include semiconductor structures configured to conduct load current along a load current path between two load terminal structures of the device. Furthermore, the load current path can be controlled by a control electrode (sometimes called a gate electrode). For example, upon receiving a corresponding control signal from, for example, a driver unit, the control electrode can set the power semiconductor device to one of a conducting state or a blocking state. The control signal can be a voltage signal or a current signal with a controlled value.

[0027] A power transistor is a power semiconductor device that can be used to drive load current. For example, an IGBT is "turned on" or "turned off" by activating and deactivating its gate terminal. Applying a positive input voltage signal between the gate and emitter will keep the device in its "on" state, while making the input gate signal zero or slightly negative will "turn it off." There are turn-on and turn-off processes for power transistors. During the turn-on process, the gate driver integrated circuit (IC) can be used to supply gate current (i.e., on-current) to the gate of the power transistor to charge the gate to a sufficient voltage to turn the device on. Conversely, during the turn-off process, the gate driver IC is used to draw gate current (i.e., turn-off current) from the gate of the power transistor to fully discharge the gate to turn off the device. Current pulses can be output from the gate driver IC as control signals according to a pulse width modulation (PWM) scheme. Therefore, the control signal can switch between on-current and off-current levels during the PWM cycle to control the power transistor. This, in turn, charges and discharges the gate voltage to turn the power transistor on and off, respectively.

[0028] Specifically, the gate of the power transistor is a capacitive load, and the on-current (i.e., gate-source current) and off-current (i.e., gate-sink current) are designated as initial currents at the start of a switching event. During the off-event, the gate current decreases after a short period (smaller than the PWM cycle) and reaches zero when the gate reaches 0V. During the on-event, the gate current decreases after a short period (smaller than the PWM cycle) and reaches zero when the gate reaches 15V.

[0029] Transistors may include insulated-gate bipolar transistors (IGBTs) and metal-oxide-semiconductor field-effect transistors (MOSFETs) (e.g., Si MOSFETs or SiC MOSFETs). Although IGBTs may be used as examples in the following embodiments, it should be understood that MOSFETs may be used instead of IGBTs, and vice versa. In this case, when a MOSFET is used instead of an IGBT, in any of the examples described herein, the drain of the MOSFET may replace the collector of the IGBT, the source of the MOSFET may replace the emitter of the IGBT, and the drain-source voltage V of the MOSFET may be... DS It can replace the collector-emitter voltage V of an IGBT CE Therefore, any IGBT module can be replaced by a MOSFET module, and vice versa.

[0030] The specific embodiments described in this specification relate to, but are not limited to, power semiconductor devices that can be used within power converters or power supplies. Therefore, in these embodiments, the power semiconductor device can be configured to carry load current to be supplied to a load and / or load current supplied separately by a power supply. For example, the semiconductor device may include one or more power semiconductor units, such as monolithic integrated diode units and / or monolithic integrated transistor units. Such diode units and / or such transistor units may be integrated within a power semiconductor module.

[0031] In the field of power electronics, power semiconductor devices that include transistors appropriately connected to form a half-bridge are commonly used. For example, a half-bridge can be used to drive an electric motor or a switch-mode power supply.

[0032] For example, a multiphase inverter is configured to provide multiphase power by supplying multiphase loads, such as a three-phase motor. Three-phase power, for instance, involves three symmetrical sine waves, each 120 electrical degrees out of phase with the others. In a symmetrical three-phase power system, each of the three conductors carries alternating current (AC) with the same frequency and voltage amplitude relative to a common reference, but with a phase difference of one-third of a cycle. Due to the phase difference, the voltage on any conductor reaches its peak value one-third of a cycle after one of the other conductors and one-third of a cycle before the remaining conductors. This phase delay delivers constant power to a balanced linear load. This also allows a rotating magnetic field to be generated in the motor.

[0033] In a three-phase system feeding a balanced and linear load, the sum of the instantaneous currents in the three conductors is zero. In other words, the current in each conductor is equal in magnitude to the sum of the currents in the other two conductors, but with opposite signs. The return path of the current in any phase conductor is through the other two phase conductors. Instantaneous currents produce a current space vector.

[0034] A three-phase inverter comprises three inverter branches, one for each of the three phases, and each inverter branch is connected in parallel to a direct current (DC) voltage source. Each inverter branch includes a pair of transistors, such as a pair of transistors arranged in a half-bridge configuration, for converting DC to AC. In other words, each inverter branch includes two complementary transistors connected in series (i.e., a high-side transistor and a low-side transistor), and these two complementary transistors are complementary in turning on and off to drive the phase load. However, multiphase inverters are not limited to three-phase and may include two or more phases, each with an inverter branch.

[0035] Figure 1A This is a schematic block diagram illustrating a motor control actuator 100 of a power semiconductor device according to one or more embodiments. Specifically, the motor control actuator 100 includes a power inverter 1 and an inverter control unit 2. The inverter control unit 2 serves as a motor control unit and can therefore also be referred to as a motor controller or motor control IC. The motor control unit can be a monolithic IC, or it can be distributed across two or more ICs containing a microcontroller and a gate driver.

[0036] The motor control actuator 100 is also coupled to a three-phase motor M (e.g., a permanent magnet synchronous motor (PMSM) of the AC motor type), which includes three phases U, V, and W. The power inverter 1 is a three-phase voltage generator configured to provide three-phase power to drive the motor M by supplying three-phase voltage. It will be further understood that the power inverter 1 and the inverter control unit 2 may be placed on the same circuit board or on separate circuit boards.

[0037] Deviations in both amplitude and phase can lead to power and torque losses in the motor M. Therefore, the motor control actuator 100 can be configured to monitor and control the amplitude and phase of the voltage supplied to the motor M in real time to ensure proper current balance is maintained based on a feedback control loop. An open-loop motor control unit also exists and can be implemented.

[0038] The power inverter 1 for a three-phase motor M includes a switching array of six transistor modules 3u+, 3u-, 3v+, 3v-, 3w+, and 3w- (collectively referred to as transistor modules 3) arranged in complementary pairs. Each complementary pair constitutes an inverter branch supplying phase voltage to the three-phase motor M. Therefore, each inverter branch includes an upper (high-side) transistor module 3 and a lower (low-side) transistor module 3. Each transistor module may include a power transistor and may also include a diode (not shown). Thus, each inverter branch includes an upper transistor and a lower transistor. Load current paths U, V, and W extend from the output of each inverter branch located between the complementary transistors (i.e., the output of each half-bridge) and are configured to be coupled to a load, such as the motor M. The power inverter 1 is coupled to a DC power supply 4 (e.g., a battery or a diode bridge rectifier) ​​and to an inverter control unit 2.

[0039] In this example, the inverter control unit 2 includes motor control circuitry and gate driver circuitry for controlling the switch array. In some examples, the inverter control unit 2 may be monolithic, where the motor control circuitry and gate driver circuitry are integrated onto a single die. In other examples, the motor control circuitry and gate driver circuitry may be separated into separate ICs. A “monolithic” gate driver is a gate driver on a single silicon chip and may be further fabricated using specific high-voltage (HV) techniques. Alternatively, the gate driver IC may be integrated onto the power inverter 1.

[0040] The motor controller executes the motor control function of the motor control actuator 100 in real time and transmits the PWM control signal to the gate driver. For example, the inverter control unit 2 includes a controller and driver unit 5, which includes a microcontroller unit (MCU) 6 that acts as a motor controller and a gate driver 7 for generating driver signals to control the transistors of each transistor module 3. Therefore, the load current paths U, V, and W can be controlled by the controller and driver unit 5 by controlling the control electrode (i.e., the gate electrode) of the transistor 3. For example, when receiving the PWM control signal from the microcontroller, the gate driver IC can set the corresponding transistor to one of two states: either a conducting state (i.e., an on state) or a blocking state (i.e., an off state).

[0041] The gate driver IC can be configured to receive instructions from the microcontroller, including control signals for the power transistors, and to turn the corresponding transistor 3 on or off according to the received instructions and control signals. For example, during the turn-on process of the corresponding transistor 3, the gate driver IC can be used to provide (supply) gate current to the gate of the corresponding transistor 3 to charge the gate. In contrast, during the turn-off process, the gate driver IC can be used to draw (drain) gate current from the gate of the transistor 3 to discharge the gate.

[0042] The inverter control unit 2 or the controller and driver unit 5 may itself include a PWM controller, ADC, DSP and / or clock source (i.e., timer or counter) for implementing a PWM scheme to control the state of each transistor, and ultimately providing each phase current on the corresponding load current paths U, V and W.

[0043] Specifically, the microcontroller 6 of the controller and driver unit 5 can 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 can be referred to as the current control loop. The motor speed can also be controlled by adding a speed-constant control loop on top of the FOC control to provide constant speed control. Therefore, the FOC (i.e., the current control loop) can be considered an internal control loop, and the speed-constant control loop can be considered an external control loop. Furthermore, the motor power, and therefore the motor speed, can also be controlled by a power-constant control loop on top of the speed-constant control loop. Therefore, at least relative to the current control loop and the speed-constant control loop, the power-constant control loop can be considered the outermost control loop. In other words, the current control loop can be considered an internal control loop, the speed-constant control loop can be considered an intermediate control loop, and the power-constant control loop can be considered an external control loop.

[0044] In some cases, a fourth control loop (e.g., a position control loop) that is also outside the constant speed control loop can be used to control the motor position.

[0045] For example, during FOC, the motor phase current should be measured so that the accurate rotor position can be determined in real time. To achieve the determination of the motor phase current, the microcontroller 6 can employ an algorithm using single shunt current sensing (e.g., space vector modulation (SVM), also known as space vector pulse width modulation (SVPWM)).

[0046] Furthermore, the switches 3 (i.e., transistors) of the power inverter 1 are controlled so that the two switches in the same inverter branch are never turned on simultaneously at any time, otherwise the DC power supply will be short-circuited. This requirement can be met by the complementary operation of switches 3 within the inverter branch according to the motor control algorithm.

[0047] Figure 1B This is a schematic diagram illustrating a power inverter 1 utilizing a single shunt current sense according to one or more embodiments. Specifically, the power inverter 1 includes a shunt resistor Rs placed on the negative DC link (bus) of the power inverter 1. Transistor 3 u+ 3 u- 3 v+3 v- 3 w+ and 3 w- The circuit is represented as a switch, and the motor M is shown as having windings for each of its phases. Here, UO represents the line-to-neutral voltage from the bridge midpoint U to the motor neutral point O; UN represents the U-bridge voltage from the bridge midpoint U to the negative bus power supply rail N; UV represents the line-to-line voltage from phase U to phase V; VW represents the line-to-line voltage from phase V to phase W; and WV represents the line-to-line voltage from phase W to phase V.

[0048] Figure 1A The microcontroller 6 in the inverter control unit 2 can receive samples of the current from the shunt resistor Rs and then reconstruct the three-phase current in real time using an algorithm (i.e., software). For example, SVPWM is a vector control-based algorithm that requires sensing the currents of the three motor phases. By using a single shunt resistor Rs, the DC link current pulses can be sampled at precisely timed intervals. The voltage drop across the shunt resistor Rs can be amplified by an operational amplifier inside the inverter control unit 2 and can be increased to, for example, 1.65V. The obtained voltage can be converted by an ADC inside the inverter control unit 2. Based on the actual combination of switches, the three-phase current of the motor M is reconstructed using the SVPWM algorithm. The ADC can measure the DC link current during the effective vector of the PWM cycle. Two-phase current measurements can be performed in each sector. Since the sum of the currents in the three windings is zero, the value of the third-phase current can be calculated.

[0049] SVPWM itself is an algorithm for real-time control of PWM. It is used to create AC waveforms and can be used to drive a three-phase AC-powered motor from a DC source at variable speed using multiple switching transistors. Although the examples in this article are described in the context of a three-phase motor, the examples are not limited to this and can be applied to any load scenario.

[0050] Furthermore, it will be understood that implementations other than a single shunt resistor can also be used for current sensing, and other motor control algorithms can be used to control the load, and the implementations described herein are not limited thereto. For example, a Hall sensor can be used instead of a shunt resistor for current sensing. Alternatively, a current sensor, such as a Hall sensor or a shunt resistor, can be placed along each of the load current paths U, V, and W, and the current can be measured directly from them. Figure 2 A current sensor 8 for measuring the load current is shown, placed along the load current paths U, V, and W.

[0051] The core motor drive function is to maintain the target motor angle, speed, or torque within specified performance targets. Various control algorithms originate from a motor model that functions as a set of variable-frequency AC sources, converting electrical energy in the stator circuitry into mechanical energy on the shaft. The interaction between the stator winding currents in the load current paths U, V, and W and the rotor magnets mounted on the shaft generates mechanical torque, which rotates the motor shaft. The movement of the rotor magnets alters the magnetic flux linked by the stator windings, producing a voltage with frequency and phase depending on the angular position of the magnets.

[0052] The motor operates at maximum efficiency when the stator magnetic field is orthogonal to the rotor magnetic field. The point of maximum efficiency is when the stator direct (D) axis current is zero and the quadrature (Q) axis current is in phase with the motor's back electromotive force (EMF). At this point, due to the voltage across the stator magnetizing inductor, the stator voltage vector leads the back EMF vector. To maximize efficiency, the drive system includes devices that adjust the stator voltage to maintain the stator D and Q currents, which generate the torque required to achieve the desired system-level control functions.

[0053] As will be discussed below, the implementation includes a voltage regulator (i.e., a voltage limiter) that performs a voltage limiting function to distribute the available voltage, set by the voltage limit, to the D-axis and Q-axis. The voltage regulator performs this distribution, automatically achieving angle lead to optimize efficiency. Specifically, the voltage regulator performs the distribution such that the stator direct (D)-axis current is zero and the quadrature (Q)-axis current is in phase with the motor back electromotive force. By doing so, the motor controller applies field-oriented control principles to automatically lead the stator voltage angle to maximize motor efficiency, regardless of motor parameters or load. This means automatically achieving angle lead without needing to find the optimal angle lead function through lookup tables or other means.

[0054] Figure 2 A schematic block diagram of a motor drive system 200 according to one or more embodiments is shown. In particular, the motor control algorithm described herein can be implemented as software on a programmable motor controller, or as hardware on configurable or hard-coded digital or mixed-signal control circuitry. For example, the motor control algorithm can be implemented as firmware programmed into the motor controller 6, or as a combination of firmware and circuit components (hardware). The motor drive system 200 includes an inverter 1, control circuitry connected to the input of the inverter 1, and a sensor interface and power conversion circuitry connected to the AC motor and integrated with the control circuitry. The motor controller 6 itself may include one or more controllers, one or more processing circuits, and / or one or more signal processors configured to implement the motor control algorithm.

[0055] Specifically, the motor control algorithm implemented by the motor controller 6 provides open-loop duty cycle control with magnetic field alignment through the current control loop 13. The motor controller 6 is a current controller that implements the current control loop 13. The current control loop 13 can be used interchangeably with the current controller.

[0056] As used herein, Vq and Vd represent the stator Q-axis voltage and D-axis voltage of the motor in the DQ coordinate system, respectively. That is, Vq is the motor voltage component on the Q-axis of the DQ coordinate system, and Vd is the motor voltage component on the D-axis of the DQ coordinate system. Similarly, Iq and Id represent the stator Q-axis current and D-axis current of the motor in the DQ coordinate system, respectively. That is, Iq is the motor current component on the Q-axis of the DQ coordinate system, and Id is the motor current component on the D-axis of the DQ coordinate system. Furthermore, each proportional-integral (PI) controller receives the proportional gain KP and the integral gain KI and generates an output according to equations Eq.1 and Eq.2:

[0057] PI output = KPΔ + KI∫Δdt Eq.1

[0058] Here, Δ is the error or deviation between the actual measured value (PV) and the set point (SP).

[0059] Δ=SP-PV Eq.2

[0060] The FOC software supports driving two types of permanent magnet synchronous motors (PMSMs): surface-mounted magnet motors with constant air gap and internally mounted magnet motors with variable reluctance. The FOC algorithm structure is... Figure 2 and Figure 3 As shown in [the image]. Figure 2 In the middle, the motor speed can be adjusted by adjusting the duty cycle command of Lim. Figure 3 The diagram illustrates a cascaded control structure for FOC (Fuel-Oriented Control) algorithms, featuring an external speed control loop and an internal current control loop, each responsible for altering the motor winding voltage to drive the motor at a target power or speed. Sensor-based or sensorless FOC algorithm structures can also be used, provided that the angle PLL 44 and either the flux estimator 43 or the angle sensor interface 45 are valid. The angle PLL unit 44 performs the measurement and estimation of the rotor angle and motor speed based on signals from the flux estimator 43 or the angle sensor interface 45. The angle sensor interface 45 includes a processor that processes sensor signals generated by the shaft angle sensor 9. The flux estimator 43 generates angle signals based on voltage and current information Vα, Vβ, Iα, and Iβ. The angle PLL unit 44 outputs the estimated rotor angle and the estimated motor speed.

[0061] The Iq reference current IqRef generates torque, while the Id reference current IdRef is a lagging reactive current that does not generate any torque. Therefore, the current loop of current controller 13 keeps the Id reference current IdRef at zero. IqRef is the current command (i.e., the reference current value) on the Q-axis. In other words, IdRef is the value of the target current (i.e., the reference current value) of the Id current component.

[0062] The current Iq loop PI compensator 34 (also called the Iq controller 34) acts on the error ErrIq between IqRef and Iq. The current Iq loop PI compensator 34 generates its output based on the time integral of the current error ErrIq plus the proportional output of the current error ErrIq. The integral term forces the steady-state error to zero, while the proportional term improves the high-frequency response. The PI compensator gains KP and KI are adjusted according to motor and load characteristics to meet the target dynamic performance. By setting the Iq reference current IqRef to the motor current limit MotorLim (i.e., the maximum current the motor can handle), ErrIq will always have a (non-zero) error as long as Iq is less than the motor current limit MotorLim. The motor current limit MotorLim drives the output voltage PIOq of the Iq loop PI compensator 34 to Vqmax (i.e., the maximum available voltage after distributing the voltage to Vd) until the motor current Iq reaches the motor current limit MotorLim. When the motor current Iq equals the motor current limit MotorLim, the error ErrIq is zero and the output voltage PIOq begins to decrease.

[0063] Similarly, the current Id loop PI compensator 35 (also known as the Id controller 35) acts on the error ErrId between IdRef and the motor current Id to convert the current error ErrId into an output voltage PIOd. The PI compensator gains KP and KI are also adjusted according to the motor and load characteristics to meet the target dynamic performance, but they are generally the same as the PI compensator gains KP and KI for the current Iq loop PI compensator 34.

[0064] Voltage limiter (i.e., voltage regulator) 36 regulates the d-axis voltage Vd and q-axis voltage Vq. Voltage limiter 36 is a non-linear element acting on the PIOd and PIOq voltage outputs. If the output voltage PIOd is less than the limit Lim, the PIOd signal is transmitted as the d-axis voltage Vd to the Vd output. If the output voltage PIOd exceeds the limit Lim, the Vd output is set to the limit value Lim. In this way, the PI compensator 35 generates the output voltage PIOd as the initial direct-axis motor voltage, which is evaluated and regulated by voltage limiter 36 according to the voltage vector limiting function using the limit Lim. Voltage limiter 36 outputs the d-axis voltage Vd based on the output voltage PIOd, the limit Lim, and the voltage vector limiting function.

[0065] As an example, the analog circuit implementation has a resistor and a diode connected between the limiting input and the voltage source. The output Vd is the diode anode-resistor circuit node. If the input (i.e., the output voltage PIOd) is lower than the source voltage, the diode is reverse biased and the Vd output follows the input (i.e., the output voltage PIOd). If the input (i.e., the output voltage PIOd) is higher than the source voltage, the diode will turn on and the Vd output will remain above the diode dropout voltage. Mathematically, output = minimum(Lim, input).

[0066] Similarly, the PI compensator 34 generates an output voltage PIOq as the initial q-axis motor voltage, which is evaluated and regulated by the voltage limiter 36 using the voltage vector limiting function with limit Lim. The voltage limiter 36 outputs the q-axis voltage Vq based on the output voltage PIOq, limit Lim, and the voltage vector limiting function.

[0067] Components 33, 35 and 36 together form a current regulator that monitors and regulates the motor current Id, and adjusts the d-axis voltage Vd and the q-axis voltage Vq according to the desired motor current Id.

[0068] Voltage limiter 36 receives a duty cycle command (e.g., duty cycle) that sets the voltage limit Lim and maintains the inverter output voltage based on the voltage limit Lim. Voltage limiter 36 also receives outputs from Iq controller 34 and Id controller 35, respectively, and adjusts the current loop output voltages Vd and Vq based on the voltage limit Lim and voltage vector limiting functions according to the following equations Eq.3, Eq.4, Eq.5, and Eq.6:

[0069] |Vd| <Lim Eq.3,

[0070] |Vq| <sqrt(Lim 2 -Vd 2 Eq.4,

[0071] Vd 2 +Vq 2 <Lim 2 Eq.5.

[0072] Vd 2 +Vq 2 =Lim 2 if |Vq|>sqrt(Lim) 2 -Vd 2 Eq.6.

[0073] The duty cycle command adjusts the voltage limit Lim used by voltage regulator 36. The voltage limit Lim is the total amount of voltage that can be allocated by voltage regulator 36 to output voltages Vd and Vq. By adjusting the duty cycle command, the total amount of voltage that can be allocated is adjusted. Equation 5 is the general form when both Id and Iq are regulated and the DQ voltage vector (i.e., Vd, Vq voltage vector) is within the inverter voltage limit. Equation 6 is applied when the q-axis voltage Vq is greater than the limit.

[0074] According to Equations Eq.3 and Eq.4 of the voltage vector limiting function, voltage regulator 36 regulates (limits) current loop output voltages Vd and Vq based on the same limit Lim, wherein the duty cycle command sets the total voltage amount to be allocated (output) to output voltages Vd and Vq. Here, voltage regulator 36 first allocates a first portion of the total voltage set by Lim to output voltage Vd, the first portion being sufficient to drive d-axis motor current Id to zero (up to the voltage limit Lim), and voltage regulator 36 allocates any remaining portion of the voltage limit Lim to output voltage Vq, wherein the remaining portion is (Lim 2 -Vd 2 ) square root (sqrt).

[0075] In other words, output voltage Vd is the main vector between the two output voltages Vd and Vq, and has priority over output voltage Vq. As long as Vdext is less than the voltage limit Lim (|Vd|<Lim), some part of the available voltage limit set by the duty cycle command will be available for output voltage Vq. In this case, the amount of voltage allocated to output voltage Vq is set by Equation Eq.4. On the other hand, if Vdext reaches or exceeds the voltage limit Lim, the first portion is the entire portion and the remaining portion is zero. In other words, no voltage remains available to be allocated to output voltage Vq, and the voltage regulator sets output voltage Vq to zero.

[0076] Therefore, according to the voltage vector limiting function of Equations Eq.3 and Eq.4, voltage regulator 36 limits the amplitudes of output voltages Vd and Vq based on the total available voltage amount set by the voltage limit Lim. Giving output voltage Vd priority up to the set limit Lim enables d-axis current Id to be driven and maintained at zero. This automatically sets the current consistent with the rotor flux, thereby providing automatic angle advance independent of motor parameters and load, without the need for a lookup table to determine angle advance relative to load. In other words, the voltage regulator performs allocation such that the stator direct (D) axis current Id is zero and the quadrature (Q) axis current Iq is in phase with the motor back EMF, so that angle advance is automatically performed based on the voltage vector limiting function.

[0077] Therefore, as a first feature, the vector limiting function limits the d-axis voltage amplitude, where the d-axis voltage Vd takes precedence over the q-axis voltage Vq. The d-axis current regulator adjusts the d-axis voltage Vd to maintain the d-axis current Id required for maximum efficiency operation of the driver, and the voltage vector limiting function applies the remaining available voltage to the q-axis voltage Vq. Preferably, the voltage vector limiting function keeps the d-axis current Id at zero, which provides automatic angle lead functionality. When the duty cycle command sets the vector limiting level Lim, the d-axis and q-axis stator voltage amplitudes then follow the duty cycle command.

[0078] As a second feature, the motor controller 6 can be configured to set the Iq reference current IqRef to the motor current limit MotorLim to provide an additional advantage. In this case, the q-axis current regulator sets its input at the error generator 32 to the maximum permissible motor current limit MotorLim. This q-axis regulator typically operates in saturation, but if the Iq motor current exceeds the motor current limit MotorLim, the q-axis current regulator adjusts the q-axis voltage Vq output at the voltage regulator 36 to keep the motor current Iq within the motor current limit MotorLim.

[0079] By setting the Iq reference current IqRef to the motor current limit MotorLim (i.e., the maximum current the motor can handle), the ErrIq generated by the error generator 32 will always have an error as long as the motor current Iq is less than the motor current limit MotorLim, which drives the output voltage POIq of the PI controller 34 to Vqmax (i.e., the maximum available voltage after allocating the voltage to voltage Vd). If the motor current Iq increases to the motor current limit MotorLim, the error ErrIq becomes zero and the output voltage PIOq begins to decrease. This second feature provides overcurrent protection without distorting the voltage waveform and thus minimizes unwanted noise and vibration.

[0080] The forward vector rotation unit 38 applies forward vector rotation to the current loop output voltages Vd and Vq, and converts the current loop output voltages Vd and Vq into two-phase AC voltage components Vα and Vβ based on the rotor angle θ calculated by the flux estimator and PLL unit 44. As a result, the forward vector rotation unit 38 uses a shaft angle sensor to align the stator voltage with the motor's anti-EMF.

[0081] The space vector pulse width modulator 39 receives two-phase AC voltage components Vα and Vβ, and generates inverter switching signals (i.e., six PWM control signals output from the motor controller 6) based on the Vα and Vβ voltage inputs and SVPWM. Then, the gate driver 7 turns the corresponding power transistor 3 on / off based on the PWM control signals.

[0082] The duty cycle command is open-loop control, the d-axis current regulator is closed-loop control, and the q-axis current regulator is open-loop control. The current loop of current controller 13 calculates the inverter voltage for the motor current required to drive the motor to operate at maximum efficiency. Phase current reconfiguration circuit 40 uses single shunt reconfiguration to reconfigure each of the phase currents Iu, Iv, and Iw in each of the corresponding phases U, V, and W. Alternatively, current sensors, such as Hall sensors or shunt resistors, can be placed along each of the load current paths U, V, and W, and the current can be measured directly from them and supplied to phase current reconfiguration circuit 40.

[0083] Specifically, the phase current reconstruction circuit 40 uses single shunt reconstruction to measure the DC link current in the shunt resistor Rs during the effective vector of the PWM cycle. In each PWM cycle, there are two distinct effective vectors, and the DC link current in each effective vector represents the current on one motor phase. Because the sum of the currents in all three windings is zero under balanced conditions, the value of the third phase current can be calculated.

[0084] Field-oriented control (FOC) uses the Clarke transformation at Clarke transformation unit 41 to apply an alpha-beta (α-β) transformation to the three-phase currents to obtain the α current Iα and the β current Iβ. The FOC also uses vector rotation (i.e., cordic rotation) at vector rotation unit 42 to transform the motor winding currents into two quasi-DC current components using the α current Iα and the β current Iβ: the Id current component that enhances or weakens the rotor magnetic field and the Iq current component that generates the motor torque.

[0085] Two error generators (e.g., subtractors) 32 and 33 generate error values ​​ErrIq and ErrId, respectively. Specifically, error generator 32 receives a reference current value IqRef as a setpoint (SP) value and receives an Iq current value from the vector rotation unit 42 as the actual measured value (PV), and generates the error value ErrIq. Similarly, error generator 33 receives a reference current value IdRef (i.e., the reference current value on the D-axis) as a setpoint (SP) value and receives an Id current value from the vector rotation unit 42 as the actual measured value (PV), and generates the error value ErrId. The motor controller 6 sets IdRef to zero.

[0086] The rotor magnet position estimator includes a flux estimator 43 and an angle PLL 44. The flux estimator 43 and angle PLL 44 operate to detect the rotor position and measure the motor speed of the running motor. The flux is calculated based on the feedback current (i.e., using α current Iα and β current Iβ), the estimated voltages Vα and Vβ (based on the DC bus feedback voltage and modulation index), and motor parameters (inductance and resistance). The output of the flux estimator 43 represents the rotor flux in the α-β (static orthogonal coordinate system, u-phase aligned with α) two-phase quantities φα and φβ.

[0087] The angle PLL 44 estimates the flux angle (i.e., the estimated rotor angle) and motor speed based on the rotor flux vector in the α-β components. The vector rotation of the PLL calculates the error between the rotor flux angle and the estimated angle. The PI compensator and integrator of the PLL 44 in the closed-loop path force the angle estimate and frequency estimate to track the angle and frequency of the rotor flux. The motor speed is derived from the rotor frequency based on the number of rotor poles.

[0088] In the alternative implementation, the angle PLL 44 estimates the flux angle (i.e., the estimated rotor angle) and motor speed based on the signal generated by the shaft angle sensor. The error amplifier of the angle PLL calculates the error between the shaft sensor angle and the estimated angle. The PI compensator and integrator of the PLL in the closed-loop path force the frequency estimation to track the sensor angle. The motor speed is derived from the rotor frequency based on the rotor pole number.

[0089] Figure 3 A schematic block diagram of a motor drive system 300 according to one or more embodiments is shown. Specifically, the motor drive system 300 is an extension of the motor drive system 200 and also includes an extended current control loop 13 and a speed limiting loop 12. Therefore, the motor controller 6 includes a motor current limiter 14 that performs a motor current limiting function that reduces the motor voltage (DQ voltage) when the DQ motor current vector amplitude Im exceeds the motor current limit (ImLim) input. The motor current limit Im is a reference DQ current vector amplitude used as a reference current value IqRef. The motor current limit Im is introduced because the IPM control function performed by the IPM controller 31 generates a non-zero Id current. As a result, the Iq current no longer behaves like... Figure 2 The total motor current is represented as shown in the diagram.

[0090] The motor current amplitude processor 30 calculates the DQ motor current vector amplitude of the direct motor current Id and the quadrature motor current Iq as Im = sqrt(Id) 2 +Iq 2If the DQ motor current vector amplitude Im is less than the reference DQ current vector amplitude ImLim, the Q-axis PI regulator 34 (PI controller) output PIOq will drive the motor voltage (DQ voltage) to the value Lim set by the duty cycle command. If the DQ motor current vector amplitude Im is greater than the reference DQ current vector amplitude ImLim, the PI regulator 34 will reduce the motor voltage (DQ voltage) until the DQ current vector amplitude Im is less than or equal to the reference DQ current vector amplitude ImLim.

[0091] The PI compensator 34 (also referred to as the Im controller 34 in this example) acts on the error ErrIm between ImRef and Im. The motor current amplitude error ErrIm drives the PI regulator 34, causing its output to be PIOq. The integral term forces the steady-state error to zero, while the proportional term improves the high-frequency response. The PI compensator gains KP and KI are adjusted according to the motor and load characteristics to meet the target dynamic performance.

[0092] If PIOq exceeds the Q-axis limit voltage (sqrt(Lim) 2 –Vd 2 If the voltage limiter 36's Vq output is set to Q-axis limit and the PIOq voltage at the PI regulator 34 is set to Q-axis limit, then the integrator of the PI controller 34 is effectively suspended when the output PIOq is limited. This is often described as "anti-saturation". Then, if ErrIm becomes negative, the Vq voltage can be driven immediately in the other direction.

[0093] The speed limit control loop 12 provides a speed limit function that reduces the input Im1m to the motor current limiter 14 when the speed exceeds the motor speed limit setting.

[0094] The motor speed limit is a constant value. Error generator 22 limits the motor speed and receives the actual (measured) motor speed value MotorSpeed ​​(i.e., the estimated motor speed) from angle PLL44, and generates a speed error ErrS, which is the deviation between the motor speed limit and the actual (estimated) motor speed.

[0095] The PI compensator 23 acts on the error ErrS and generates the output voltage PIOS based on the time integral of the speed error ErrS plus the proportional output of the speed error ErrS. When the estimated motor speed is less than the motor speed limit, the PIOS output increases until it reaches the motor current limit set at the motor current limiter 24. When the estimated motor speed is greater than the motor speed limit, the output voltage PIOS decreases, thereby causing the motor current limiter output to decrease by ImLim until the estimated motor speed drops below the motor speed limit.

[0096] Motor current limiter 24 is a limiting function block that applies one or more limiting functions to the output PIOS of PI compensator 23. For example, motor current limiter 24 performs a motor current limiting function on the output PIOS of PI compensator 23 according to a motor current limit to prevent integral saturation and keep the motor current within the maximum current that the motor can handle. Motor current limiter 24 can also perform a low-speed limiting function on the output PIOS of PI compensator 23 to limit the motor current at low speeds. Motor current limiter 24 can also perform a regenerative current limiting function on the output PIOS of PI compensator 23 to limit the regenerative current of the motor.

[0097] In this example, the speed limiting function includes a PI regulator 23 that increases the ImRef output based on the motor current limit setting, as long as the estimated motor speed from the angle PLL 44 is lower than the motor speed limit input to the error generator (subtractor) 22. If the motor current exceeds the motor current limit, the motor current limiter 24 will only reduce the motor voltage (DQ voltage). If the estimated motor speed exceeds the motor speed limit, the PI regulator 23 will reduce the ImRef output. The motor current protection regulator will then further reduce the motor voltage (DQ voltage) until a new steady-state operating point is reached where the estimated motor speed is less than or equal to the motor speed limit. This may be necessary when the motor is under light load during factory testing.

[0098] Two error generators (e.g., subtractors) 32 and 33 generate error values ​​ErrId and ErrIm, respectively. Specifically, error generator 32 receives a reference current value ImRef from motor current limiter 24 as a setpoint (SP) value and an Im current value from motor current amplitude processor 30 as an actual measured value (PV), and generates the error value ErrIm. Similarly, error generator 33 receives a reference current value IdRef (i.e., a reference current value on the d-axis) from motor current limiter 24 as a setpoint (SP) value and an ErrIm current value from motor current amplitude processor 30 as an actual measured value (PV), and generates the error value ErrId.

[0099] When there is a difference between the Q-axis inductance and the D-axis inductance of the motor, the internal permanent magnet (IPM) controller 31 makes the necessary adjustments to the d-axis reference current IdRef to maximize the motor torque per ampere.

[0100] The IPM controller 31 calculates a non-zero IdRef based on the angle lead of the motor parameters and motor current. The angle lead calculation can be implemented as a linear approximation or as a lookup table derived from the motor characteristics. This function optimizes the motor's operating point for maximum efficiency.

[0101] In this example, the IPM controller 31 includes an angle lead function that calculates a current vector angle lead proportional to the magnitude Im of the DQ motor current vector. An angle lead proportional gain AdvK is input to the IPM controller 31 and determined based on the motor magnetic constant and the difference between the motor d-axis winding inductance and the q-axis winding inductance. The IPM controller 31 calculates a d-axis reference current IdRef proportional to the angle lead and the sine of the motor current (i.e., based on the value of the angle lead proportional gain AdvK). A d-axis current regulator, including an error amplifier 33 and a PI compensator 35, is configured to adjust the d-axis voltage Vd to maintain a target Id current defined by the d-axis reference current IdRef.

[0102] Although various embodiments have been disclosed, it will be apparent to those skilled in the art that various changes and modifications can be made to achieve some of the advantages of the concepts disclosed herein without departing from the spirit and scope of the invention. It should be understood that other embodiments can be utilized, and structural or logical changes can be made, without departing from the scope of the invention. It should be mentioned that even features not explicitly mentioned, those illustrated with reference to specific drawings, can be combined with features in other drawings. Such modifications to the general inventive concept are intended to be covered by the appended claims and their legal equivalents.

[0103] Furthermore, the appended claims are incorporated herein by reference to specific embodiments, wherein each claim may stand alone as a separate exemplary embodiment. While each claim may stand alone as a separate exemplary embodiment, it should be noted that although dependent claims may refer in the claims to a particular combination of one or more other claims, other exemplary embodiments may also include combinations of dependent claims with the subject matter of each other's dependent or independent claims. Such combinations are presented herein unless otherwise indicated. Furthermore, it is intended that the features of the claims also be included in any other independent claim, even if that claim does not directly depend on that independent claim.

[0104] It should also be noted that the methods disclosed in the specification or claims can be implemented by a device having means for performing each of the corresponding actions of these methods. For example, the techniques described in this disclosure can be implemented at least in part in hardware, software, firmware, or any combination thereof, including any combination of computing systems, integrated circuits, and computer programs on non-transitory computer-readable recording media. For example, aspects of the described techniques can be implemented within one or more processors, including one or more microprocessors, DSPs, ASICs, or any other equivalent integrated or discrete logic circuits, and any combination of such components.

[0105] Furthermore, it should be understood that the disclosure of multiple actions or functions in the specification or claims is not to be construed as being in a particular order. Therefore, the disclosure of multiple actions or functions does not limit them to a specific order unless such actions or functions are not interchangeable for technical reasons. Additionally, in some embodiments, a single action may include multiple sub-actions or may be decomposed into multiple sub-actions. Unless expressly excluded, such sub-actions may be included within and are part of the disclosure of that single action.

Claims

1. A motor controller configured to drive a permanent magnet synchronous motor (PMSM) using field-oriented control, the motor controller comprising: A current controller is configured to generate control signals for driving the PMSM, wherein the current controller is configured to measure current information of the PMSM, including direct-axis motor current and quadrature-axis motor current. The current controller includes a direct-axis current regulator configured to receive a direct-axis reference current and the direct-axis motor current, and to generate a direct-axis error value based on the difference between the direct-axis reference current and the direct-axis motor current. The current controller includes a voltage regulator configured to regulate a DQ voltage vector comprising the voltage of a direct-axis motor and the voltage of a quadrature-axis motor. The voltage regulator generates the direct-axis motor voltage based on the direct-axis error value and the voltage vector limiting function, thereby driving the direct-axis motor current to zero. Specifically, the voltage vector limiting function is configured to limit the DQ voltage vector according to a voltage limit, such that the sum of the squares of the direct-axis motor voltage and the squares of the quadrature-axis motor voltage is always equal to the square of the voltage limit. The voltage regulator is configured to allocate a first portion of the voltage limit, up to and including the voltage limit, to the direct-axis motor voltage based on the direct-axis error value, and to allocate the remaining portion of the voltage limit to the quadrature-axis motor voltage.

2. The motor controller according to claim 1, wherein: The current controller includes an orthogonal axis current regulator configured to receive an orthogonal axis reference current and an orthogonal axis motor current to generate an orthogonal axis error value based on the difference between the orthogonal axis reference current and the orthogonal axis motor current. The voltage regulator is configured to generate the orthogonal axis motor voltage based on the direct axis error value, the orthogonal axis error value, and the voltage vector limiting function.

3. The motor controller according to claim 1, wherein, The voltage regulator is configured to preferentially distribute voltage to the direct-axis motor voltage compared to the orthogonal-axis motor voltage.

4. The motor controller according to claim 1, wherein, The voltage regulator is configured to receive a duty cycle command having a predetermined duty cycle and to set the voltage limit of the DQ voltage vector according to the predetermined duty cycle, wherein the voltage limit is the total voltage amount that can be used to allocate to a combination of the direct-axis motor voltage and the quadrature-axis motor voltage.

5. The motor controller according to claim 1, wherein, The remaining part is equal to (Lim) 2 - Vd 2 The square root of ), where Lim represents the voltage limit and Vd represents the first portion of the voltage limit assigned to the direct-axis motor voltage.

6. The motor controller according to claim 1, wherein, The voltage regulator adjusts the voltage of the direct-axis motor and the voltage of the quadrature-axis motor according to the following formula: , Wherein, Lim represents the voltage limit, Vd represents the first portion of the voltage limit allocated to the direct-axis motor voltage, and Vq represents the remaining portion of the voltage limit allocated to the quadrature-axis motor voltage.

7. The motor controller according to claim 1, wherein, The voltage regulator is configured to allocate the remaining portion of the voltage limit to the quadrature axis motor voltage after allocating the first portion of the voltage limit to the direct axis motor voltage, wherein the remaining portion is equal to or greater than zero, up to the voltage limit.

8. The motor controller according to claim 4, wherein: The current controller includes an orthogonal axis current regulator configured to receive an orthogonal axis reference current and an orthogonal axis motor current to generate an orthogonal axis error value based on the difference between the orthogonal axis reference current and the orthogonal axis motor current. The current controller is configured to fix the orthogonal axis reference current as a motor current limit to operate the orthogonal axis current regulator in a saturated state when the orthogonal axis motor current is less than the motor current limit, wherein the motor current limit is the maximum current that the PMSM can handle.

9. The motor controller according to claim 8, wherein: The orthogonal axis current regulator is configured to reduce the orthogonal axis motor voltage in response to the orthogonal axis motor current exceeding the motor current limit, so as to keep the orthogonal axis motor current within the motor current limit.

10. The motor controller according to claim 1, wherein, The voltage regulator drives the direct-axis motor current to zero and aligns the quadrature-axis motor current with the motor back electromotive force.

11. The motor controller according to claim 1, wherein: The current controller includes an orthogonal axis current regulator configured to receive an orthogonal axis reference current and an orthogonal axis motor current to generate an orthogonal axis error value based on the difference between the orthogonal axis reference current and the orthogonal axis motor current. The current controller is configured to fix the orthogonal axis reference current as a motor current limit to operate the orthogonal axis current regulator in a saturated state when the orthogonal axis motor current is less than the motor current limit, wherein the motor current limit is the maximum current that the PMSM can handle.

12. The motor controller according to claim 11, wherein: The orthogonal axis current regulator is configured to reduce the orthogonal axis motor voltage in response to the orthogonal axis motor current exceeding the motor current limit, so as to keep the orthogonal axis motor current within the motor current limit.

13. The motor controller according to claim 1, wherein, The current controller is configured to set the direct-axis reference current to zero.

14. The motor controller according to claim 1, in, When the voltage regulator sets the direct-axis motor voltage to be equal to the voltage limit, the remaining portion is equal to zero, wherein when the voltage regulator sets the direct-axis motor voltage to be less than the voltage limit, the remaining portion is greater than zero and equal to the square root of (Lim² - Vd²), where Lim represents the voltage limit and Vd represents the first portion of the voltage limit allocated to the direct-axis motor voltage when the direct-axis motor voltage is less than the voltage limit, and wherein the remaining portion is equal to or greater than zero up to the voltage limit.

15. The motor controller according to claim 14, wherein: The direct-axis current regulator includes a proportional-integral controller configured to receive the direct-axis error value and generate an initial direct-axis motor voltage based on the direct-axis error value, and The voltage regulator is configured to receive the initial direct-axis motor voltage and apply the voltage vector limiting function to the initial direct-axis motor voltage to generate the direct-axis motor voltage, wherein when the initial direct-axis motor voltage is equal to or greater than the voltage limit, the direct-axis motor voltage is limited to be equal to the voltage limit.

16. The motor controller according to claim 15, wherein, The voltage regulator is configured to receive a duty cycle command having a predetermined duty cycle and to set the voltage limit of the DQ voltage vector according to the predetermined duty cycle, wherein the voltage limit is the total voltage amount that can be used to allocate to a combination of the direct-axis motor voltage and the quadrature-axis motor voltage.

17. A method for driving a permanent magnet synchronous motor (PMSM) using field-oriented control, the method comprising: A control signal for driving the PMSM is generated by a current controller; The current information of the PMSM is measured by the current controller, and the current information includes the direct-axis motor current and the quadrature-axis motor current. The direct-axis error value is generated based on the difference between the direct-axis reference current and the direct-axis motor current using a direct-axis current regulator. The DQ voltage vector, which includes the direct-axis motor voltage and the quadrature-axis motor voltage, is regulated by a voltage regulator. This includes generating the direct-axis motor voltage based on the direct-axis error value and the voltage vector limiting function to drive the direct-axis motor current to zero. The orthogonal axis error value is generated based on the difference between the orthogonal axis reference current and the orthogonal axis motor current through the orthogonal axis current regulator; The voltage regulator generates the orthogonal axis motor voltage based on the direct axis error value, the orthogonal axis error value, and the voltage vector limiting function. The orthogonal axis reference current is fixedly set to the motor current limit by the current controller, so that the orthogonal axis current regulator can be operated in saturation state when the orthogonal axis motor current is less than the motor current limit, wherein the motor current limit is the maximum current that the PMSM can handle; The direct-axis reference current is set to zero by the current controller; and When the orthogonal axis reference current is fixedly set to the motor current limit and the direct axis reference current is set to zero, the orthogonal axis motor voltage is reduced by the orthogonal axis current regulator in response to the orthogonal axis motor current exceeding the motor current limit, so as to keep the orthogonal axis motor current within the motor current limit.

18. The method according to claim 17, wherein, Adjusting the voltage of the direct-axis motor and the voltage of the quadrature-axis motor includes preferentially allocating voltage to the direct-axis motor voltage compared to the voltage of the quadrature-axis motor.

19. The method of claim 17, wherein, Adjusting the voltage of the direct-axis motor and the voltage of the quadrature-axis motor includes: Receive duty cycle commands with a predetermined duty cycle; and The voltage limit of the DQ voltage vector is set according to the predetermined duty cycle, wherein the voltage limit is the total voltage amount that can be used to allocate to the combination of the direct-axis motor voltage and the quadrature-axis motor voltage.

20. The method according to claim 19, wherein, Adjusting the DQ voltage vector includes: Based on the direct-axis error value, a first portion of the voltage limit, up to or greater than the voltage limit, is allocated to the direct-axis motor voltage; and The remaining portion of the voltage limit is allocated to the voltage of the orthogonal axis motor.

21. The method according to claim 20, wherein, The remaining part is equal to (Lim) 2 - Vd 2 The square root of ), where Lim represents the voltage limit and Vd represents the first portion of the voltage limit assigned to the direct-axis motor voltage.

22. The method according to claim 20, wherein, The voltages of the direct-axis motor and the quadrature-axis motor are adjusted according to the following formula: , Wherein, Lim represents the voltage limit, Vd represents the first portion of the voltage limit allocated to the direct-axis motor voltage, and Vq represents the remaining portion of the voltage limit allocated to the quadrature-axis motor voltage.

23. The method of claim 20, wherein, Allocating the remaining portion includes allocating the remaining portion of the voltage limit to the quadrature axis motor voltage after allocating the first portion of the voltage limit to the direct axis motor voltage, wherein the remaining portion is equal to zero or greater than zero up to the voltage limit.

24. The method of claim 17, wherein, Adjust the voltage of the direct-axis motor and the voltage of the quadrature-axis motor to drive the current of the direct-axis motor to zero and align the current of the quadrature-axis motor with the back electromotive force of the motor.

Citation Information

Patent Citations

  • Optimized field oriented control strategies for permanent magnet synchronous motors

    US20140210387A1

  • Motor vector control method and device, and aircraft

    US20190140572A1

  • Method and apparatus for field weakening control in an AC motor drive system

    US6965212B1