Multi-Objective Optimization of Active Power Management for Synchronous Motor Drives

By determining and arbitrating multiple torque limits in the motor's active power management, the optimal performance problem of the motor under multiple constraints is solved, and the optimization of torque output and safe operation are achieved.

CN114301358BActive Publication Date: 2025-03-11STEERING SOLUTIONS IP HOLDING CORP
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111171762.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2020-10-07
Filing Date
2021-10-08
Publication Date
2025-03-11
Estimated Expiration
2041-10-08

AI Technical Summary

Technical Problem

In the active power management of a motor, multiple constraints need to be considered simultaneously to determine the achievable torque, including voltage constraints, inverter current constraints, supply current constraints, and regeneration current constraints, and the priority of different constraints is critical to optimal performance.

Method used

The final torque limit is determined by determining the optimal performance and safe operation of the motor by determining the torque limit based on voltage, motor current, supply current and regenerative current and arbitrating on this basis.

Benefits of technology

The torque output of the motor is optimized under multiple constraints, ensuring optimal performance and safe operation of the motor, especially in low-speed operating conditions, improving the accuracy of regenerative current constraints.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114301358B_ABST
    Figure CN114301358B_ABST
Patent Text Reader

Abstract

The present application discloses multi-objective optimization for active power management of synchronous motor drives. A method for controlling the operation of a motor includes: determining a voltage-based torque limit based on a voltage constraint of a direct current (DC) bus that supplies power to an inverter to power a motor; determining a motor current-based torque limit based on a motor current limit; determining a supply current-based torque limit based on a supply rating of the DC bus for supplying current to the inverter; determining a regenerative current-based torque limit based on a receiving rating of the DC bus for receiving current from the inverter; determining a final torque limit based on: a voltage-based torque limit, a motor current-based torque limit, a supply current-based torque limit, and a regenerative current-based torque limit; determining a limited command torque based on a torque command and a final torque limit; and calculating at least one current command based on at least the limited command torque.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This patent application claims priority to U.S. Provisional Patent Application Serial No. 63 / 088,575 filed on October 7, 2020, the entire contents of which are incorporated herein by reference. Technical Field

[0003] The present disclosure relates to electric machines, and in particular to using a motor drive to control the operation of an electric machine. Background Art

[0004] Vehicles such as automobiles, trucks, sport utility vehicles, crossovers, minivans, boats, aircraft, all-terrain vehicles, recreational vehicles, or other suitable vehicles often include one or more electric machines, such as electric motors. For example, a vehicle may include one or more multi-phase electric machines that are driven by corresponding electric motor drivers and configured to control various aspects of a steering system of the vehicle.

[0005] Power management is an important consideration when controlling an electric motor drive to regulate the power delivered to and recovered from the electric motor. Active power management involves considering multiple constraints simultaneously to determine the achievable torque. Constraints include supply voltage, supply (regeneration) current, and inverter (motor) current. Nonlinearities exist in the equations representing the different constraints, which require additional algorithms to additionally arbitrate between solutions from two independent constraints.

[0006] Constraints to consider in active power management include: voltage constraints; inverter (motor) current limits; supply current limits and regeneration current limits; and torque commands. Such voltage constraints can be based on the physical capabilities of the machine, including voltage limits of the inverter, motor, and / or other components such as interconnect wiring. Current limits can protect the drive system from damage. Supply current limits and regeneration current limits may include externally imposed constraints (typically for vehicle power management and protection of the battery or vehicle electrical microgrid). Typically, the torque command is independent of the constraints and attempts to ensure that the limited torque command is as close to the original command as possible.

[0007] The priority of different constraints may be relatively important for the best performance of such motors. The priority of constraints depends largely on the application and use case in which the motor drive is employed. Summary of the invention

[0008] The present disclosure generally relates to using a motor drive to control the operation of an electric machine.

[0009] One aspect of the disclosed embodiment includes a method of controlling the operation of an electric machine. The method includes: determining a voltage-based torque limit based on a voltage constraint of a direct current (DC) bus that supplies power to an inverter to power the electric machine; determining a motor current-based torque limit based on a motor current limit; determining a supply current-based torque limit based on a supply rating of the DC bus for supplying current to the inverter; determining a regenerative current-based torque limit based on a receiving rating of the DC bus for receiving current from the inverter; determining a final torque limit based on: a voltage-based torque limit, a motor current-based torque limit, a supply current-based torque limit, and a regenerative current-based torque limit; determining a limited command torque based on a torque command and a final torque limit; and calculating at least one current command based on at least the limited command torque.

[0010] One aspect of the disclosed embodiment includes a control system for controlling the operation of an electric motor. The control system includes a processor and a memory. The memory includes instructions that, when executed by the processor, cause the processor to: determine a voltage-based torque limit based on a voltage constraint of a direct current (DC) bus that supplies power to an inverter to power the electric motor; determine a motor current-based torque limit based on a motor current limit; determine a supply current-based torque limit based on a supply rating of the DC bus for supplying current to the inverter; determine a regenerative current-based torque limit based on a receiving rating of the DC bus for receiving current from the inverter; determine a final torque limit based on: a voltage-based torque limit, a motor current-based torque limit, a supply current-based torque limit, and a regenerative current-based torque limit; determine a limited command torque based on a torque command and a final torque limit; and calculate at least one current command based on at least the limited command torque.

[0011] These and other aspects of the disclosure are disclosed in the following detailed description of the embodiments, the appended claims and the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0012] The present disclosure is best understood by the following detailed description when read in conjunction with the accompanying drawings. It is emphasized that, according to common practice, the various features of the drawings are not drawn to scale. Instead, the sizes of the various features are arbitrarily expanded or reduced for clarity.

[0013] Figure 1 A schematic diagram of an electric power steering system in accordance with the principles of the present disclosure is generally shown.

[0014] Figure 2 A controller according to the principles of the present disclosure is generally shown.

[0015] Figure 3A block diagram of a motor controller in accordance with the principles of the present disclosure is generally shown.

[0016] Figure 4 A block diagram generally illustrates an example algorithm for controlling an electric motor in accordance with aspects of the present disclosure.

[0017] Figures 5A-5D FIG. 1 shows a graph generally illustrating four different I values ​​for searching for maximum torque that satisfies DC bus voltage and motor current limit constraints according to the principles of the present disclosure. d ,I q Trajectory.

[0018] Figure 6 A block diagram of a regenerative current control algorithm according to the principles of the present disclosure is generally shown.

[0019] Figure 7 A flow chart is shown generally illustrating a method of controlling operation of an electric machine according to the principles of the present disclosure. DETAILED DESCRIPTION

[0020] The following discussion is directed to various embodiments of the present disclosure. Although one or more of these embodiments may be preferred, the disclosed embodiments should not be interpreted or otherwise used as limiting the scope of the present disclosure, including the claims. In addition, it will be understood by those skilled in the art that the following description has a wide range of applications, and the discussion of any embodiment is intended only to be an exemplary discussion of that embodiment, and is not intended to imply that the scope of the present disclosure, including the claims, is limited to that embodiment.

[0021] As discussed above, vehicles such as automobiles, trucks, sport utility vehicles, crossovers, minivans, boats, aircraft, all-terrain vehicles, recreational vehicles, or other suitable vehicles typically include one or more electric machines, such as electric motors, etc. For example, a vehicle may include one or more multi-phase electric machines that are driven by corresponding electric motor drivers and configured to control various aspects of a steering system of the vehicle.

[0022] Power management is an important consideration when controlling an electric motor drive to regulate the power delivered to and recovered from the electric motor. Active power management involves considering multiple constraints simultaneously to determine the achievable torque. Constraints include supply voltage, supply (regeneration) current, and inverter (motor) current. Nonlinearities exist in the equations representing the different constraints, which require additional algorithms to additionally arbitrate between solutions from two independent constraints.

[0023] Constraints to consider in active power management include: voltage constraints; inverter (motor) current limits; supply current limits and regeneration current limits; and torque commands. Such voltage constraints can be based on the physical capabilities of the machine, including voltage limits of the inverter, motor, and / or other components such as interconnect wiring. Voltage constraints may also include limitations on the supply voltage source (e.g., battery pack, charging circuit, etc.). Current limits can protect the drive system from damage. Supply current limits and regeneration current limits may include externally imposed constraints (typically for vehicle power management and protection of the battery or vehicle electrical microgrid). Typically, the torque command is independent of the constraints, and an attempt is made to ensure that the limited torque command is as close to the original command as possible.

[0024] The priority of different constraints may be relatively important for optimal performance of such motors. The priority of constraints depends largely on the application and use case in which the motor drive is employed.

[0025] According to one aspect of the present disclosure, multiple different constraints are considered simultaneously, and satisfying the regenerative current constraints takes precedence over torque maximization. According to another aspect of the present disclosure, the accuracy of satisfying the regenerative current constraints is enhanced under low speed operating conditions.

[0026] Figure 1 A schematic diagram of an electric power steering system (EPS) 40 suitable for implementing the disclosed technology is generally shown. The EPS includes a steering mechanism 36 that includes a rack-and-pinion type mechanism having a toothed rack (not shown) within a housing 50 and a pinion (also not shown) located below a gear housing 52. When the operator input, hereinafter represented as the steering wheel 26 (e.g., hand wheel, etc.), is rotated, the upper steering shaft 29 is rotated, and the lower steering shaft 51 connected to the upper steering shaft 29 by a universal joint 34 causes the pinion to rotate. The rotation of the pinion causes the rack to move, which moves the tie rods 38 (only one shown), which in turn moves the steering knuckles 39 (only one shown), which rotate the steerable wheel(s) 44 (only one shown).

[0027] Electric power steering assistance is provided by a control system 24, which includes a controller 16 and a motor 19, which may be a permanent magnet synchronous motor (PMSM). The controller 16 is powered by a vehicle power supply 10 via line 12. The controller 16 receives a vehicle speed signal 14 representing the vehicle speed from a vehicle speed sensor 17. The steering angle is measured by a position sensor 32, which may be an optically encoded sensor, a variable resistance sensor, or any other suitable type of position sensor, and which provides a position signal 20 to the controller 16. The motor speed may be measured using a tachometer or any other device and transmitted to the controller 16 as a motor speed signal 21. The position sensor 32 may be represented as ω.m The motor speed is measured, calculated, or a combination of measurement and calculation. For example, the motor speed ω m is calculated as the change in motor position θ measured by the position sensor 32 over a specified time interval. For example, it can be calculated according to the equation ω m =Δθ / ΔtThe motor speed ω m Determined as the derivative of the motor position θ, where Δt is the sampling time and Δθ is the change in position during the sampling interval. Alternatively, the motor speed can be derived from the motor position based on the rate of change of position with respect to time. It will be appreciated that there are many well-known methods for performing the function of the derivative.

[0028] As the steering wheel 26 is turned, the torque sensor 28 senses the torque applied to the steering wheel 26 by the vehicle operator. The torque sensor 28 may include a torsion bar (not shown) and a variable resistor type sensor (also not shown) that outputs a torque signal 18 to the controller 16 that is related to the amount of twist on the torsion bar. Although this is one type of torque sensor, any other suitable torque sensing device used with known signal processing techniques will suffice. In response to various inputs, the controller sends a command 22 to the motor 19, which provides torque assistance to the steering system through the worm 47 and worm gear 48, thereby providing torque assistance for vehicle steering.

[0029] It should be noted that while the disclosed embodiments are described with reference to motor control for electric steering applications, it will be understood that such references are illustrative only, and the disclosed embodiments may be applied to any motor control application employing an electric motor, e.g., steering, valve control, etc. In addition, the references and descriptions herein may be applicable to various forms of parameter sensors, including but not limited to torque, position, speed, etc. It should also be noted that hereinafter, for the sake of brevity and simplicity, references herein to electric machines, including but not limited to motors, will only refer to motors without limitation.

[0030] In the control system 24 as depicted, the controller 16 uses torque, position, speed, etc. to calculate (one or more) commands to deliver the required output power. The controller 16 is arranged to communicate with various systems and sensors of the motor control system. The controller 16 receives signals from each system sensor, quantifies the received information, and provides (one or more) output command signals in response thereto, in this case, for example, to the motor 19. The controller 16 is configured to develop (one or more) corresponding voltages output from an inverter (not shown), which can be optionally combined with the controller 16 and will be referred to as the controller 16 herein, so that when (one or more) corresponding voltages are applied to the motor 19, the desired torque or position is generated. In one or more examples, the controller 16 operates as a current regulator in a feedback control mode to generate the command 22. Alternatively, in one or more examples, the controller 16 operates in a feedforward control mode to generate the command 22. Because these voltages are related to the position and speed of the motor 19 and the desired torque, the position and / or speed of the rotor and the torque applied by the operator are determined. A position encoder is connected to the steering shaft 51 to detect the angular position θ. The encoder can sense the rotational position based on optical detection, magnetic field changes, or other methods. Typical position sensors include potentiometers, resolvers, synchronizers, encoders, etc. The position encoder outputs a position signal 20, which indicates the angular position of the steering shaft 51 and thereby indicates the angular position of the motor 19.

[0031] The desired torque may be determined by one or more torque sensors 28 transmitting a torque signal 18 indicative of the applied torque. Such torque sensors 28 and the torque signal(s) 18 therefrom may be responsive to a flexible torsion bar, T-bar, spring, or similar device (not shown) configured to provide a response indicative of the applied torque.

[0032] Position signal 20, motor speed signal 21, and (one or more) torque signal 18 are applied to controller 16. Controller 16 processes all input signals to generate values ​​corresponding to each signal, thereby obtaining rotor position values, motor speed values, and torque values ​​that can be used for processing in the algorithm specified in this article. It is usually also desirable to linearize, compensate, and filter the measurement signals such as those described above to enhance the characteristics of the acquired signal or eliminate undesirable characteristics of the acquired signal. For example, the signal can be linearized to increase the processing speed or to solve the large dynamic range of the signal. In addition, frequency or time-based compensation and filtering can be used to eliminate noise or avoid undesirable spectral characteristics.

[0033] In order to perform the specified functions and the desired processing, and the calculations therefor (e.g., identification of motor parameters, (one or more) control algorithms, etc.), the controller 16 may include, but is not limited to, (one or more) processors, (one or more) computers, (one or more) DSPs, memories, storage devices, (one or more) registers, timing, (one or more) interrupts, (one or more) communication interfaces, and input / output signal interfaces, etc., and combinations including at least one of the foregoing. For example, the controller 16 may include input signal processing and filtering to enable accurate sampling and conversion or acquisition of such signals from the vehicle's communication interface.

[0034] like Figure 2 Controller 16 may include any suitable controller as generally shown in FIG. 1 . Controller 16 may be configured to control, for example, various aspects of the vehicle (e.g., various aspects of the electric power steering system and / or other suitable features or components of the vehicle). Controller 16 may include a processor 60 and a memory 62.

[0035] The processor 60 may include any suitable processor, such as those described herein. Additionally or alternatively, the controller 16 may include any suitable number of processors in addition to or in addition to the processor 60. The memory 62 may include a single disk or multiple disks (e.g., a hard drive) and include a storage management module that manages one or more partitions within the memory 62. In some embodiments, the memory 62 may include flash memory, semiconductor (solid-state) memory, etc. The memory 62 may include random access memory (RAM), read-only memory (ROM), or a combination thereof. The memory 62 may include instructions that, when executed by the processor 60, cause the processor 60 to at least control various functions of the vehicle.

[0036] In some embodiments, the controller 16 can be configured to control various aspects of the motor (eg, the motor control system 200), such as Figure 3 . In some embodiments, as generally shown, the motor control system 200 may include a three-phase PMSM controller. However, the motor control system 200 may include any suitable number of phases. Additionally or alternatively, although the motor control system 200 is generally shown and described as being associated with a vehicle and its systems, the motor control system 200 may be configured to control any suitable application or be operatively associated with any suitable application in addition to (or in addition to) controlling the vehicle (e.g., the motor 19 may be used in any suitable application other than a vehicle, and the principles of the present disclosure may apply accordingly).

[0037] The present disclosure provides a motor control system 200 for controlling the operation of an electric machine (e.g., motor 19). However, the principles of the present disclosure may be applied to control other types of synchronous machines. The principles of the present disclosure may be used to control salient pole machines and / or non-salient pole machines. The principles of the present disclosure may be used to control wound rotor synchronous machines.

[0038] The current reference calculator 202 converts the torque command T c Converted into d / q current reference I dqc , the d / q current reference I dqc It is then sent to the current controller 206. The current controller 206 can be a feedback regulator that uses the current measurement, or a feed-forward compensator. The temperature T can be fed to the parameter compensator 204 to adjust the PMSM electrical parameters as needed. The current controller 206 then generates a d / q voltage command, which is equivalent to the commanded modulation index m i and phase advance angle δ. m i and δ are converted into equivalent duty cycle signals d for each of the three phases a, b, c by the duty cycle generator 210 of the power converter switching module 208. a ,d b ,d c .

[0039] Once the equivalent duty cycle signal d is generated for each phase a ,d b ,d c , the pulse width modulator 212 generates corresponding on-times t for different switches (eg, FETs) in the phase arms of the power converter (eg, the inverter 216). a ,t b ,t c . Duty cycle signal d a ,d b ,d c Can be collectively labeled as d a,b,c , and the conduction time t a ,t b ,t c Can be collectively labeled as t a,b,c The inverter 216 powered by the power supply 214 then supplies the desired voltage to the motor (eg, motor 19), which generates a phase current I a ,I b ,I c and electromagnetic torque T e The inverter 216 is connected to the power supply 214 via a direct current (DC) bus 215. The position θ is then measured. r and phase current I a ,I b ,I cThe current is fed back to the position sensor 220 and the current sensor 222 of the control system to close the control loop. a ,I b ,I c Can be collectively labeled as I a,b,c The measured position θ m Used together with the phase current to calculate the measured d / q current I dqm , which is used for closed-loop current control. Voltage source inverters (VSI) are commonly used as power converters in PMSM-based electric drives. Each phase of the motor 19 is connected to a corresponding phase arm of the inverter 216, and each phase arm may have two or more switches.

[0040] Although the actual machine design and construction are different for three-phase PMSM and multi-phase (greater than three-phase) PMSM, for all these machines the same principles of vector control in a synchronous or d / q reference frame are possible by using appropriate transformation matrices to convert the phase currents and voltages into equivalent DC quantities in the synchronous coordinate frame.

[0041] Figure 4 1 is a block diagram of an example algorithm 300 for controlling an electric machine according to aspects of the present disclosure. Specifically, the example algorithm 300 includes a torque arbitration block 302 configured to determine an arbitrated torque limit T based on several inputs. Arb , the input may include one or more of the following: voltage-based torque limit T Vltg ; Torque limit based on motor current T MotCurr ; Torque limit based on supply current T CurSply ; Torque limit T based on voltage and supply current VltgSply ; Torque limit T based on regenerative current and motor current RegenMotCurr ; and torque limit T based on regenerative current and supply voltage RegenVltg .

[0042] The example algorithm 300 includes a voltage-based torque block 304 that is configured to constrain the voltage V of the DC bus 215 based on the voltage V DC To determine the voltage-based torque limit T Vltg . Voltage Constraint V DC The voltage constraint V DC The voltage at which the DC bus 215 is rated to operate may be included. The DC bus 215 is constrained by a voltage V DCOperating at voltages other than 200V may have adverse consequences, such as equipment failure and / or damage to hardware connected to the DC bus 215. In some embodiments, the voltage-based torque block 304 may use the following equation (1) (also referred to as the voltage equation) to determine the voltage-based torque limit T Vltg and / or voltage-based direct-axis current I dVltg Either or both of .

[0043]

[0044] The example algorithm 300 includes a motor current based torque block 306 configured to determine a torque limit T based on the motor current. MotCurr , the torque limit based on the motor current T MotCurr Corresponding to satisfying the motor current limit The motor current I supplied by the inverter 216 to the motor 19 m . Motor current limit This may include current limiting of the motor 19 and / or current limiting of the inverter 216. Motor Current Limiting The current limit of the motor 19 and the current limit of the inverter 216 may be the smaller one. In some embodiments, the motor current based torque block 306 may determine the motor current based torque limit T using the following equation (2) (also referred to as the motor current equation): MotCurr .

[0045]

[0046] The example algorithm 300 includes a torque based on supply current block 308 configured to determine a torque limit T based on supply current. CurSply , the torque limit based on the supply current T CurSply Corresponding to satisfying the supply current limit I slim The supply current I supplied from the DC bus 215 to the inverter 216 (which may also be referred to as the supply rated value) s . Supply current limit I slim It may be the amount of current that the DC bus 215 is able to supply to the inverter 216 .

[0047] In some embodiments, the torque limit based on the supply current block 308 may determine the torque limit based on the supply current T using the following equation (3): CurSply .

[0048]

[0049] The example algorithm 300 also includes a voltage and supply current based torque block 310 configured to determine a torque that satisfies the voltage constraint V of the DC bus 215.DC Torque limit T based on voltage and supply current VltgSply , and wherein the supply current I supplied from the DC bus 215 to the inverter 216 s Meet the supply current limit I slim In some embodiments, the voltage and supply current based torque block 310 may determine a voltage constraint V that satisfies the DC bus 215 based on the intersection of the d-axis current and the q-axis current. DC and supply current limit I slim The torque limit T of each of the VltgSply .

[0050] The example algorithm 300 also includes a voltage and motor current based torque block 312 configured to determine a torque that satisfies the voltage constraint V of the DC bus 215. DC Torque limit T based on voltage and motor current VltgMotCurr , and wherein the motor current I between the inverter 216 and the motor 19 m Meet the motor current limit In some embodiments, the torque block 312 based on voltage and motor current can determine the voltage constraint V that satisfies the DC bus 215 based on the intersection of the d-axis current and the q-axis current. DC and motor current limit The torque limit T based on the voltage and motor current of each VltgMotCurr .

[0051] The example algorithm 300 also includes a regeneration current based torque block 314 configured to determine a torque limit T based on the regeneration current and the motor current. RegenMotCurr and / or torque limit T based on regenerative current and supply voltage RegenVltg One or both of the regenerated current based torque block 314 can also determine the maximum d-axis current I dmax and the d-axis current I used to generate peak torque dpeakTq , each of which satisfies the regenerative current requirement. The regenerative current requirement may include a regenerative current limit I Regen , which can also be called the acceptance rating. Regenerative current limit I Regen may be the amount of current that the DC bus 215 is able to receive from the inverter 216 .

[0052] In some embodiments, the regenerative current based torque block 314 may determine the maximum d-axis current I using the following equation (4): dmax , d-axis current I used to generate peak torque dpeakTq , Torque limit T based on regenerative current and motor current RegenMotCurr and / or torque limit T based on regenerative current and supply voltageRegenVltg One or more of .

[0053]

[0054] Among them, V d and I d are the d-axis voltage and d-axis current, V q and I q are the q-axis voltage and q-axis current, V dc is the voltage of the DC bus 215, I r is the regenerative current supplied from the inverter 216 to the DC bus 215, and R dc is the effective resistance of the DC bus 215 .

[0055] The example algorithm 300 also includes a torque limit block 320 that is based on the commanded torque T Cmd and the arbitrated torque limit T from the torque arbitration block 302 Arb Determine the limited command torque T CmdLmtd The torque limit block 320 may be configured to limit the command torque T CmdLmtd Set to the commanded torque T Cmd and arbitration torque limit T Arb The smaller one.

[0056] The example algorithm 300 also includes a maximum torque per ampere block 322 , which may be based on the limited command torque T CmdLmtd Determine the preliminary motor current value I′ dq . Preliminary motor current value I′ dq The optimization may be performed based on the maximum torque per ampere determination, which may include performing one or more calculations and / or other methods. The optimized motor current value I′ dq The preliminary d-axis current I′ may be included d and the preliminary q-axis current I′ q .

[0057] The example algorithm 300 also includes a d-axis current boost block 324, which may be configured to determine a minimum d-axis current I based on one or more of the following: dmin : Preliminary motor current value I′ dq , limited command torque T CmdLmtd , Maximum d-axis current I dmax and / or the d-axis current I used to generate peak torque dpeakTq .

[0058] The example algorithm 300 also includes a regeneration current search block 326, which may be configured to determine a modified motor current I″ dq , the modified motor current I″ dqIncluding the modified d-axis current I″ d and the modified q-axis current I″ q , which correspond to satisfying the regenerative current limit I of the DC bus 215 Regen The regenerative current search block 326 may determine the modified motor current I″ based on one or more of the following: dq : Minimum d-axis current I dmin , Regenerative current limit I Regen , limited command torque T CmdLmtd , Maximum d-axis current I dmax and / or the d-axis current I used to generate peak torque dpeakTq .

[0059] The example algorithm 300 also includes a maximum torque per voltage block 328, which may be configured to determine the d-axis current command I dCmd and q-axis current command I qCmd , the d-axis current command I dCmd and q-axis current command I qCmd The motor 19 can generate a command torque T that also satisfies the constraints CmdLmtd and regenerative current limit I Regen The maximum torque per voltage block 328 may determine the d-axis current command I based on one or more of the following: dCmd and / or q-axis current command I qCmd : Modified motor current I″ dq , limited command torque T CmdLmtd , Maximum d-axis current I dmax and / or the d-axis current I used to generate peak torque dpeakTq .

[0060] Used to ensure that the motor current limit is met and the voltage constraint V of the DC bus 215 DC Torque limit T based on voltage and motor current VltgMotCurr The mathematical expression of can include the following equation:

[0061] V d =RI d +ω e L q I q (5)

[0062] V q =RI q +K e ω m -ω e L d I d (6)

[0063]

[0064] Figures 5A-5D A graph is shown which generally illustrates a method for searching for a voltage that satisfies a DC bus voltage constraint V according to the principles of the present disclosure. DC and motor current limit constraints Four different I d ,I q Trajectory.

[0065] Specifically, Figure 5A A first plot 350 is included which shows the calculated current limit to meet the motor current limit. The d-axis current I d and q-axis current I q The first plot line 350 is in the d-axis current I d The first q-axis current I based on the motor current equals to the predetermined minimum value qi1 With the d-axis current I d The second q-axis current I based on the motor current is equal to the predetermined maximum value. qi2 The predetermined minimum value may be, for example, zero or a positive or negative value that is less than the predetermined maximum value. Figure 5A Also included is a second plot line 352 that shows the calculated voltage V that satisfies the DC bus 215. DC The d-axis current I d and q-axis current I q The second plot line 352 is the d-axis current I d The first voltage-limited q-axis current I qv1 With the d-axis current I d The second voltage-limited q-axis current I qv2 Extend between.

[0066] Figure 5A The plot lines 350, 352 are shown for all d-axis currents I d The values ​​all have positive q-axis current I q The first plotted line 350 always has a corresponding q-axis current I smaller than the second plotted line 352. q The value of the q-axis current I q Therefore, in this case, the torque block 312 based on voltage and motor current can set the torque limit T based on voltage and motor current to VltgMotCurr Set equal to the torque limit based on motor current

[0067] Figure 5BA first plot line 354 is included which shows the calculated current limit to meet the motor current limit. The d-axis current I d and q-axis current I q The first plotted line 354 is in the d-axis current I d The first q-axis current I based on the motor current equals to the predetermined minimum value qi1 With the d-axis current I d The second q-axis current I based on the motor current is equal to the predetermined maximum value. qi2 Extend between. Figure 5B Also included is a second plot line 356 which shows the calculated voltage V that satisfies the DC bus 215. DC The d-axis current I d and q-axis current I q The second plot line 356 is the d-axis current I d The first voltage-limited q-axis current I qv1 With the d-axis current I d The second voltage-limited q-axis current I qv2 Extend between.

[0068] Figure 5B It is shown that both plot lines 354 and 356 are plotted for all d-axis currents I d The values ​​all have positive q-axis current I q The second plot line 356 always has a corresponding q-axis current I smaller than the first plot line 354. q The value of the q-axis current I q Therefore, in this case, the torque block 312 based on voltage and motor current can set the torque limit T based on voltage and motor current to VltgMotCurr Set equal to the voltage-based torque limit T Vltg .

[0069] Figure 5C A first plot line 358 is included which shows the calculated current limit to meet the motor current limit. The d-axis current I d and q-axis current I q The first plot line 358 is the d-axis current I d The first q-axis current I based on the motor current equals to the predetermined minimum value qi1 With the d-axis current I d The second q-axis current I based on the motor current is equal to the predetermined maximum value. qi2 Extend between. Figure 5C Also included is a second plot line 360 ​​that shows the calculated voltage constraint V of the DC bus 215 being satisfied. DCThe d-axis current I d and q-axis current I q The second plot line 60 is the d-axis current I d The first voltage-limited q-axis current I qv1 With the d-axis current I d The second voltage-limited q-axis current I qv2 Extend between.

[0070] Figure 5C The depiction lines 358, 360 are shown in the region (I d ,I q Therefore, when the current-based curve and the voltage-based curve intersect, the final torque limit T pk The determination should be based on the intersection of the curves represented by the plot lines 358, 360. For example, the controller 16 may determine that the current limit corresponding to the motor current is The q-axis current is equal to the voltage constraint V corresponding to the DC bus 215 DC In the case of a q-axis current of (i.e., in the case where the plotted lines 358 and 360 intersect), the d-axis intersection current value I d_int The controller 16 can be based on the d-axis intersection current value I d_int To determine the final torque limit T pk For example, the controller 16 may determine the corresponding q-axis intersection current value I that satisfies the following two equations: q_int : used to meet the voltage constraint V of the DC bus 215 DC The voltage equation and the current limit for the motor The voltage equation may include the above equation (1); and the current equation may include the above equation (2). The corresponding q-axis intersection current value I q_int exist Figure 5C The controller 16 can then determine the d-axis intersection current value I based on the d-axis intersection current value I d_int The current value I intersecting the q axis q_int To determine the final torque limit T pk For example, the controller 16 can calculate the d-axis intersection current value I d_int The current value I intersecting the q axis q_int Substituting into the torque equation for calculating torque based on the d-axis current and the q-axis current to calculate the final torque limit T pk The torque equation may include equation (5) above.

[0071] Figure 5D A first plot line 362 is included which shows the calculated current limit to meet the motor current limit. The d-axis current Id and q-axis current I q The first plotted line 362 is the d-axis current I d The first q-axis current I based on the motor current equal to the predetermined minimum value qi1 With the d-axis current I d The second negative q-axis current (not shown) based on the motor current extends between 0 and 100° and is equal to the predetermined maximum value. Figure 5D Also included is a second plot line 364 which shows the calculated voltage V that satisfies the DC bus 215. DC The d-axis current I d and q-axis current I q The second plot line 364 is the d-axis current I d The first voltage-limited q-axis current equal to the predetermined minimum value and the d-axis current I d The second voltage-limited q-axis current I qv2 The first voltage-limited q-axis current has a negative value and is not shown in the figure.

[0072] Figure 5D It is shown that for any d-axis current I d There is no q-axis current I less than or equal to each of the plot lines 362 and 364. q The value of the q-axis current I q Therefore, in this case, the torque block 312 based on voltage and motor current can set the torque limit T based on voltage and motor current to VltgMotCurr In other words, in the absence of a direct relationship between the two curves represented by the plotted lines 362, 364, the final torque limit T pk Can be set to zero.

[0073] Figure 6 A block diagram generally illustrates a regenerative current control algorithm 400 that may be implemented in the regenerative current based torque block 314 in accordance with the principles of the present disclosure.

[0074] The regenerative current control algorithm 400 includes a regenerative current curve and voltage curve intersection block 402, which may be configured to determine a torque limit T based on the regenerative current and the supply voltage. RegenVltg , d-axis current I based on regenerative current and supply voltage dRegenVltg And the q-axis current I based on the regenerative current and supply voltage qRegenVltg The regenerative current curve and voltage curve intersection block 402 may be based on satisfying the regenerative current limit I of the DC bus 215. Regen and the voltage constraint V of the DC bus 215 DCThe torque limit T based on the regenerative current and supply voltage is determined by the intersection of the d-axis current and the q-axis current of each RegenVltg ,, d-axis current I based on regenerative current and supply voltage dRegenVltg and the q-axis current I based on the regenerative current and the supply voltage qRegenVltg The determination result can be similar to the above reference Figure 5C Describes the intersection of the d-axis current and the q-axis current.

[0075] The regenerative current control algorithm 400 also includes a motor current limit check block 404, which is configured to determine a current I based on the regenerative current and the supply voltage. dRegenVltg ,I qRegenVltg Whether the motor current limit of motor 19 is met The motor current limit check block 404 may use a current I based on the regenerated current and the supply voltage. dRegenVltg ,I qRegenVltg To calculate the motor current I m To determine the current I based on the regenerative current and supply voltage dRegenVltg ,I qRegenVltg Whether the motor current limit of motor 19 is met

[0076] The regenerative current control algorithm 400 further includes a regenerative current limit check block 406 configured to determine a direct-axis current I based on the voltage. dVltg Will the inverter 216 meet the regenerative current limit I Regen The regenerative current limit check block 406 may be configured to use the voltage equation and the voltage-based direct axis current I dVltg To solve for the q-axis current I q The regenerative current limit check block 406 may also be configured to determine the direct axis current I based on the voltage. dVltg and q-axis current I q Will the combination of Regen .

[0077] The regenerative current control algorithm 400 further includes a first AND block 410 configured to set a regenerative voltage intersection valid flag FLAG if both the motor current limit check block 404 and the regenerative current limit check block 406 indicate a positive result. RegenVltgInterscnVld In other words, the first AND block 410 may set the regeneration voltage intersection valid flag FLAG in the following case: RegenVltgInterscnVld :If and only if the current I based on the regenerative voltage dRegenVltg ,I qRegenVltg Meet the motor current limit of motor 19 And the direct axis current I based on the voltagedVltg and q-axis current I q The inverter 216 will meet the regenerative current limit I Regen The first AND block 410 is used to check whether there is an actual intersection point between the regeneration current curve and the voltage curve. The first AND block 410 can be used to check whether there is an actual intersection point between the regeneration current curve and the voltage curve by setting the regeneration voltage intersection valid flag FLAG RegenVltgInterscnVld To indicate the existence of a valid intersection of the regenerative current curve and the voltage curve.

[0078] The regenerative current control algorithm 400 includes a regenerative current curve and motor current curve intersection block 412, which can be configured to determine a torque limit T based on the regenerative current and the motor current. RegenMotCurr , d-axis current I based on regenerative current and motor current dRegenMotCurr And the q-axis current I based on the regenerative current and the motor current qRegenMotCurr The regenerative current curve and motor current curve intersection block 412 may be based on satisfying the regenerative current limit I of the DC bus 215. Regen and the combined current limit I ilim The torque limit T based on the regenerative current and the motor current is determined by the intersection of the d-axis current and the q-axis current of each RegenMotCurr , d-axis current I based on regenerative current and motor current dRegenMotCurr And the q-axis current I based on the regenerative current and the motor current qRegenMotCurr . Current I based on regenerative current dRegenMotCurr ,I qRegenMotCurr The d-axis current and the q-axis current corresponding to the intersection between the regenerative current curve and the motor current curve can be represented by . RegenMotCurr It may also correspond to the intersection point between the regenerative current curve and the motor current curve.

[0079] The regenerative current control algorithm 400 further includes a regenerative voltage check block 414 configured to determine a current I based on the regenerative current and the motor current when the inverter 216 operates in the regenerative mode to supply power to the DC bus 215. dRegenMotCurr ,I qRegenMotCurr Whether the voltage constraint V of the DC bus 215 is met DC The regeneration voltage check block 414 may use the voltage equation to use the current I based on the regeneration current and the motor current. dRegenMotCurr ,I qRegenMotCurr The voltage generated by the inverter 216 is calculated and compared with the voltage constraint V of the DC bus 215. DC A comparison is made to determine the current I based on the regenerative current and the motor current dRegenMotCurr ,I qRegenMotCurr Whether the voltage constraint V of the DC bus 215 is met DC.

[0080] The regenerative current control algorithm 400 also includes a regeneration enable block 416 for determining whether the inverter 216 can operate in a regenerative mode (i.e., whether it is operating in a regenerative mode). The regeneration enable block 416 can determine whether the motor speed of the motor 19 is greater than zero. If the motor speed is greater than zero, the regeneration enable block 416 can set an output Boolean value based on determining: If the motor speed is not greater than zero, the regeneration enable block 416 may set an output Boolean value based on determining: The first y-intercept and the second y-intercept of the regeneration curve are the zero crossing points of the regeneration current limit curve on the dq axis. The first y-intercept of the regeneration curve is the zero crossing point on the positive axis, and the second y-intercept of the regeneration curve is the zero crossing point on the negative axis.

[0081] The regeneration current control algorithm 400 also includes a second AND block 418 configured to determine whether there is a valid intersection of the regeneration current curve and the motor current curve. The second AND block 418 may indicate the presence of such a valid intersection by setting the regeneration motor current intersection valid flag FLAG if both the regeneration voltage check block 414 and the regeneration permission block 416 indicate a positive result. RegenMotCurrInterscnVld In other words, the second AND block 418 may set the regenerative motor current intersection valid flag FLAG in the following cases: RegenMotCurrInterscnVld :If and only if the current I based on the regenerative current dRegenMotCurr ,I qRegenMotCurr Satisfy the voltage constraint V of the DC bus 215 DC , and the output Boolean value of the regeneration voltage check block 414 is set.

[0082] The regenerative current control algorithm 400 further includes an intersection calculation block 420 configured to determine the d-axis intersection current I dInterScn and the intersection torque T InterScn The intersection calculation block 420 can use the regeneration voltage intersection valid flag FLAG RegenVltgInterscnVld Intersection valid flag of regenerative motor current RegenMotCurrInterscnVld To determine the d-axis intersection current I dInterScn and / or intersection torque T InterScn When there are both motor current limit and regeneration current limit as constraints, the d-axis intersection current I dInterScn and the intersection torque T InterScn The torque limit T Arb .

[0083] According to the principles of the present disclosure, the intersection calculation algorithm can be used by the intersection calculation block 420 to determine the d-axis intersection current I dInterScn and the intersection torque T InterScn The intersection calculation algorithm may include:

[0084]

[0085] Among them, MIN and MAX provide the minimum and maximum values ​​respectively, and ~ represents logical negation.

[0086] Figure 7 A flow chart is shown that generally illustrates a method 500 for controlling operation of an electric machine. The method 500 can prioritize satisfying a regenerative current limit of a DC bus over achieving a torque command. At 502, the method 500 determines a voltage-based torque limit based on a voltage constraint of a DC bus that supplies power to an inverter to power the electric machine. For example, the processor 102 can execute instructions that implement the voltage-based torque block 304.

[0087] At 504 , method 500 determines a motor current based torque limit based on the motor current limit. For example, processor 102 may execute instructions that implement motor current based torque block 306 .

[0088] At 506 , the method 500 determines a supply current based torque limit based on a supply rating of the DC bus for supplying current to the inverter. For example, the processor 102 may execute instructions that implement the supply current based torque block 308 .

[0089] At 508 , the method 500 determines a regenerative current based torque limit based on a received rating of the DC bus for receiving current from the inverter. For example, the processor 102 may execute instructions that implement the regenerative current based torque block 314 .

[0090] At 510 , the method 500 determines a final torque limit based on: a voltage-based torque limit, a motor current-based torque limit, a supply current-based torque limit, and a regeneration current-based torque limit. For example, the processor 102 may execute instructions that implement the torque arbitration block 302 .

[0091] At 512 , method 500 determines a limited command torque based on the torque command and the torque limit. For example, processor 102 may execute instructions implementing torque limit block 320 to determine a limited command torque based on the commanded torque T c and arbitration torque limit T Arb Determine the limited command torque T CmdLmtd More specifically, the torque limit block 320 can limit the command torque T CmdLmtd Set to be limited not to exceed the arbitration torque limit TArb The command torque T c .

[0092] At 514, method 500 calculates a current command based at least on the limited command torque. For example, processor 102 may execute instructions implementing a combination of one or more of blocks 322-328 to determine a d-axis current command I for controlling operation of inverter 216. dCmd and q-axis current command I qCmd More specifically, a combination of one or more of blocks 322 - 328 may be based on the limited command torque T CmdLmtd , using the current command I for optimizing torque generation dCmd ,I qCmd The maximum torque per ampere is determined and / or used to optimize the current command I for the voltage to be applied to the motor 19 dCmd ,I qCmd The maximum torque per voltage is determined to calculate the d-axis current command I dCmd and q-axis current command I qCmd .

[0093] A method of controlling operation of an electric motor includes: determining a voltage-based torque limit based on a voltage constraint of a direct current (DC) bus supplying power to an inverter to power the electric motor; determining a motor current-based torque limit based on a motor current limit; determining a supply current-based torque limit based on a supply rating of the DC bus for supplying current to the inverter; determining a regenerative current-based torque limit based on a receiving rating of the DC bus for receiving current from the inverter; determining a final torque limit based on: a voltage-based torque limit, a motor current-based torque limit, a supply current-based torque limit, and a regenerative current-based torque limit; determining a limited command torque based on a torque command and a final torque limit; and calculating at least one current command based on at least the limited command torque. The method may prioritize satisfying the regenerative current limit of the DC bus over achieving the torque command.

[0094] In some embodiments, the method further includes selectively controlling a plurality of switches within the inverter based on the at least one current command to cause the inverter to supply current to the motor.

[0095] In some embodiments, the motor current limit is the lesser of a current limit of the motor and a current limit of the inverter.

[0096] In some embodiments, determining the final torque limit further includes arbitrating between a voltage-based torque limit and a motor current-based torque limit.

[0097] In some embodiments, arbitrating between the voltage-based torque limit and the motor-current-based torque limit further includes: determining a first motor-current-based q-axis current corresponding to a d-axis current having a predetermined minimum value and corresponding to the motor current limit; determining a second motor-current-based q-axis current corresponding to a d-axis current having a predetermined maximum value and corresponding to the motor current limit; determining a first voltage-limit-based q-axis current corresponding to a d-axis current having a predetermined minimum value and corresponding to a voltage constraint of a DC bus; determining a second voltage-limit-based q-axis current corresponding to a d-axis current having a predetermined maximum value and corresponding to a voltage constraint of the DC bus; determining one of the first motor-current-based q-axis current and the first voltage-limit-based q-axis current as a smaller value; determining one of the second motor-current-based q-axis current and the second voltage-limit-based q-axis current as a smaller value; and selecting one of the motor-current-based torque limit and the voltage-based torque limit based on one of the first motor-current-based q-axis current and the first voltage-limit-based q-axis current as a smaller value and based on one of the second motor-current-based q-axis current and the second voltage-limit-based q-axis current as a smaller value.

[0098] In some embodiments, selecting one of a motor current-based torque limit and a voltage-based torque limit further includes: selecting the motor current-based torque limit as the final torque limit in response to determining that a first motor current-based q-axis current is less than a first voltage-limited q-axis current and a second motor current-based q-axis current is less than a second voltage-limited q-axis current; and selecting the voltage-based torque limit as the final torque limit in response to determining that the first voltage-limited q-axis current is less than the first motor current-based q-axis current and the second voltage-limited q-axis current is less than the second motor current-based q-axis current.

[0099] In some embodiments, arbitrating between the voltage-based torque limit and the motor current-based torque limit further includes: determining a first motor current-based q-axis current corresponding to a d-axis current having a predetermined minimum value and corresponding to the motor current limit; determining a second motor current-based q-axis current corresponding to a d-axis current having a predetermined maximum value and corresponding to the motor current limit; determining a first voltage-limited q-axis current corresponding to a d-axis current having a predetermined minimum value and corresponding to a voltage constraint of a DC bus; determining a second voltage-limited q-axis current corresponding to a d-axis current having a predetermined maximum value and corresponding to a voltage constraint of a DC bus; determining the first motor current-based q-axis current and the first voltage-limited q-axis current. flow as a smaller value; determining a second motor current-based q-axis current and a second voltage limit-based q-axis current as a smaller value; determining that the second motor current-based q-axis current and the second voltage limit-based q-axis current as a smaller value correspond to a different constraint than the first motor current-based q-axis current and the first voltage limit-based q-axis current as a smaller value; determining a d-axis intersection current value at which the q-axis current corresponding to the motor current limit is equal to the q-axis current corresponding to the voltage constraint of the DC bus; and determining a final torque limit based on the d-axis intersection current value and based on the q-axis current corresponding to each of the motor current limit and the voltage constraint of the DC bus.

[0100] In some embodiments, determining the torque limit based on the regenerative current includes determining the torque limit based on the regenerative current and the motor current based on the intersection of the d-axis current and the q-axis current that satisfies each of the received rated value and the motor current limit. For example, the torque based on the regenerative current block 314 and / or the regenerative current curve and motor current curve intersection block 412 can perform these functions.

[0101] In some embodiments, the method further includes: calculating a voltage generated by the inverter based on a current limit based on the regenerative current and the motor current; and determining whether the voltage generated by the inverter based on a current limit based on the regenerative current and the motor current satisfies a voltage constraint of the DC bus to verify an intersection of the d-axis current and the q-axis current that satisfies each of the received rated value and the motor current limit. For example, the regenerative voltage check block 414 and / or the second and block 418 can perform these functions.

[0102] In some embodiments, the method further includes: calculating a first y-intercept of a line plotting the relationship between the d-axis current and the q-axis current, wherein both the d-axis current and the q-axis current correspond to an inverter that meets the received ratings; calculating a second y-intercept of a line plotting the relationship between the d-axis current and the q-axis current, wherein both the d-axis current and the q-axis current correspond to an inverter that meets the received ratings; and determining whether the motor can be operated in a regenerative mode while meeting the motor current limit, which includes performing one of the following based on the speed of the motor: a) determining whether the motor current limit is greater than the value of the line plotting the relationship between the d-axis current and the q-axis current; The method further comprises determining whether the motor current limit is less than the first y-intercept of the plotting line of the d-axis current and the q-axis current, and whether the first y-intercept of the plotting line of the relationship between the d-axis current and the q-axis current is greater than the negation of the motor current limit, and whether the negation of the motor current limit is greater than the second y-intercept of the plotting line of the relationship between the d-axis current and the q-axis current; and b) determining whether the motor current limit is less than the first y-intercept of the plotting line of the relationship between the d-axis current and the q-axis current, and whether the motor current limit is greater than the second y-intercept of the plotting line of the relationship between the d-axis current and the q-axis current, and whether the negative of the motor current limit is less than the second y-intercept of the plotting line of the relationship between the d-axis current and the q-axis current. In some embodiments, step a) may be performed if the speed of the motor is greater than zero, and step b) may be performed if the speed of the motor is less than or equal to zero. For example, the regeneration permission block 416 and / or the second and block 418 may perform these functions.

[0103] In some embodiments, a control system for controlling operation of an electric motor includes a processor and a memory. The memory includes instructions that, when executed by the processor, cause the processor to: determine a voltage-based torque limit based on a voltage constraint of a direct current (DC) bus that supplies power to an inverter to power the electric motor; determine a motor current-based torque limit based on a motor current limit; determine a supply current-based torque limit based on a supply rating of the DC bus for supplying current to the inverter; determine a regenerative current-based torque limit based on a receiving rating of the DC bus for receiving current from the inverter; determine a final torque limit based on: a voltage-based torque limit, a motor current-based torque limit, a supply current-based torque limit, and a regenerative current-based torque limit; determine a limited command torque based on a torque command and a final torque limit; and calculate at least one current command based on at least the limited command torque.

[0104] In some embodiments, the instructions further cause the processor to: selectively control a plurality of switches within the inverter based on the at least one current command to cause the inverter to supply current to the motor.

[0105] In some embodiments, the motor current limit is the lesser of a current limit of the motor and a current limit of the inverter.

[0106] In some embodiments, determining the final torque limit further includes arbitrating between a voltage-based torque limit and a motor current-based torque limit.

[0107] In some embodiments, arbitrating between a voltage-based torque limit and a motor-current-based torque limit further includes instructions causing the processor to: determine a first motor-current-based q-axis current corresponding to a d-axis current having a predetermined minimum value and corresponding to a motor current limit; determine a second motor-current-based q-axis current corresponding to a d-axis current having a predetermined maximum value and corresponding to the motor current limit; determine a first voltage-limit-based q-axis current corresponding to a d-axis current having a predetermined minimum value and corresponding to a voltage constraint of a DC bus; determine a second voltage-limit-based q-axis current corresponding to a d-axis current having a predetermined maximum value and corresponding to a voltage constraint of the DC bus; determine one of the first motor-current-based q-axis current and the first voltage-limit-based q-axis current as a smaller value; determine one of the second motor-current-based q-axis current and the second voltage-limit-based q-axis current as a smaller value; and select one of the motor-current-based torque limit and the voltage-based torque limit based on one of the first motor-current-based q-axis current and the first voltage-limit-based q-axis current as a smaller value and based on one of the second motor-current-based q-axis current and the second voltage-limit-based q-axis current as a smaller value.

[0108] In some embodiments, selecting one of a motor current-based torque limit and a voltage-based torque limit also includes instructions causing the processor to: select the motor current-based torque limit as the final torque limit in response to determining that a first motor current-based q-axis current is less than a first voltage-limited q-axis current and a second motor current-based q-axis current is less than a second voltage-limited q-axis current, and select the voltage-based torque limit as the final torque limit in response to determining that the first voltage-limited q-axis current is less than the first motor current-based q-axis current and the second voltage-limited q-axis current is less than the second motor current-based q-axis current.

[0109] In some embodiments, arbitrating between a voltage-based torque limit and a motor current-based torque limit further includes instructions causing the processor to: determine a first motor current-based q-axis current corresponding to a d-axis current having a predetermined minimum value and corresponding to the motor current limit; determine a second motor current-based q-axis current corresponding to a d-axis current having a predetermined maximum value and corresponding to the motor current limit; determine a first voltage-limited q-axis current corresponding to a d-axis current having a predetermined minimum value and corresponding to a voltage constraint of a DC bus; determine a second voltage-limited q-axis current corresponding to a d-axis current having a predetermined maximum value and corresponding to a voltage constraint of a DC bus; determine a first motor current-based q-axis current and a first voltage-limited q-axis current corresponding to a d-axis current having a predetermined maximum value and corresponding to a voltage constraint of a DC bus; determine a first motor current-based q-axis current and a first voltage-limited q-axis current corresponding to a d-axis current having a predetermined maximum value and corresponding to a voltage constraint of a DC bus; determine a first motor current-based q-axis current and a first voltage-limited q-axis current corresponding to a d-axis current having a predetermined maximum value and corresponding to a voltage constraint of a DC bus; determine a first motor current-based q-axis current and a second motor current-based ... determining one of the second motor-current-based q-axis current and the second voltage-limit-based q-axis current as the smaller value; determining one of the second motor-current-based q-axis current and the second voltage-limit-based q-axis current as the smaller value to correspond to a different constraint than the first motor-current-based q-axis current and the first voltage-limit-based q-axis current as the smaller value; determining a d-axis intersection current value at which the q-axis current corresponding to the motor current limit is equal to the q-axis current corresponding to the voltage constraint of the DC bus; and determining a final torque limit based on the d-axis intersection current value and based on the q-axis current corresponding to each of the motor current limit and the voltage constraint of the DC bus.

[0110] In some embodiments, determining the torque limit based on the regenerative current further includes instructions for causing the processor to determine the torque limit based on the regenerative current and the motor current based on the intersection of the d-axis current and the q-axis current that satisfies each of the received rated value and the motor current limit. For example, the instructions may include a torque based on regenerative current block 314 and / or a regenerative current curve and motor current curve intersection block 412 for performing these functions.

[0111] In some embodiments, the instructions further cause the processor to: calculate the voltage generated by the inverter based on the current limit based on the regenerative current and the motor current; and determine whether the voltage generated by the inverter based on the current limit based on the regenerative current and the motor current satisfies the voltage constraint of the DC bus to verify the intersection of the d-axis current and the q-axis current that satisfies each of the received rated value and the motor current limit. For example, the instructions may include a regenerative voltage check block 414 and / or a second AND block 418 for performing these functions.

[0112] In some embodiments, the instructions further cause the processor to: calculate a first y-intercept of a line plotting the relationship between the d-axis current and the q-axis current, wherein both the d-axis current and the q-axis current correspond to an inverter that meets the received ratings; calculate a second y-intercept of a line plotting the relationship between the d-axis current and the q-axis current, wherein both the d-axis current and the q-axis current correspond to an inverter that meets the received ratings; and determine whether the motor can be operated in a regenerative mode while meeting the motor current limit, which includes performing one of the following based on the speed of the motor: a) determining whether the motor current limit is greater than the relationship between the d-axis current and the q-axis current The method further comprises determining a) a first y-intercept of a plot of the relationship between the d-axis current and the q-axis current, and determining whether the first y-intercept of the plot of the relationship between the d-axis current and the q-axis current is greater than the negative of the motor current limit, and whether the negative of the motor current limit is greater than the second y-intercept of the plot of the relationship between the d-axis current and the q-axis current; and b) determining whether the motor current limit is less than the first y-intercept of the plot of the relationship between the d-axis current and the q-axis current, and whether the motor current limit is greater than the second y-intercept of the plot of the relationship between the d-axis current and the q-axis current, and whether the negative of the motor current limit is less than the second y-intercept of the plot of the relationship between the d-axis current and the q-axis current. In some embodiments, step a) may be performed if the speed of the motor is greater than zero, and step b) may be performed if the speed of the motor is less than or equal to zero. For example, the instructions may include a regeneration permission block 416 and / or a second and block 418 for performing these functions.

[0113] The above discussion is intended to illustrate the principles and various embodiments of the present disclosure. Once the above disclosure is fully understood, many changes and modifications will become apparent to those skilled in the art. It is intended that the following claims be interpreted to include all such changes and modifications.

[0114] The word "example" is used herein to mean used as an example, instance or illustration. Any aspect or design described herein as an "example" is not necessarily to be interpreted as being more preferred or advantageous than other aspects or designs. On the contrary, the use of the word "example" is intended to present the concept in a specific way. As used in this application, the term "or" is intended to represent an inclusive "or" rather than an exclusive "or". That is, unless otherwise specified or clearly seen from the context, "X includes A or B" is intended to represent any natural inclusive arrangement. That is, if X includes A; X includes B; or X includes both A and B, then "X includes A or B" is satisfied in any of the foregoing cases. In addition, the article "a / an" used in this application and the appended claims should generally be interpreted as meaning "one or more", unless otherwise specified or clearly pointed to the singular form from the context. In addition, unless so described, the use of the term "embodiment" or "one embodiment" throughout the text is not intended to represent the same embodiment or embodiment.

[0115] The systems, algorithms, methods, instructions, etc. described herein may be implemented in hardware, software, or any combination thereof. Hardware may include, for example, a computer, an intellectual property (IP) core, an application specific integrated circuit (ASIC), a programmable logic array, an optical processor, a programmable logic controller, microcode, a microcontroller, a server, a microprocessor, a digital signal processor, or any other suitable circuit. In the claims, the term "processor" shall be understood to include any of the foregoing hardware, alone or in combination. The terms "signal" and "data" may be used interchangeably.

[0116] As used herein, the term module may include a packaged functional hardware unit designed for use with other components, a set of instructions executable by a controller (e.g., a processor executing software or firmware), a processing circuit configured to perform a specific function, and a self-contained hardware or software component that interfaces with a larger system. For example, a module may include an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), an electrical circuit, a digital logic circuit, an analog circuit, a combination of discrete circuits, gate circuits, and other types of hardware, or a combination thereof. In other embodiments, a module may include a memory that stores instructions executable by a controller to implement the features of the module.

[0117] Furthermore, in one aspect, for example, the systems described herein may be implemented using a general purpose computer or general purpose processor with a computer program that, when executed, performs any corresponding method, algorithm, and / or instruction described herein. Additionally or alternatively, for example, a special purpose computer / processor may be utilized that may include other hardware for performing any method, algorithm, or instruction described herein.

[0118] In addition, all or part of the implementation of the present disclosure may take the form of a computer program product accessible from, for example, a computer usable or computer readable medium. A computer usable or computer readable medium may be, for example, any device that can tangibly contain, store, communicate, or transport a program for use by or in conjunction with any processor. The medium may be, for example, an electronic, magnetic, optical, electromagnetic device, or a semiconductor device. Other suitable media may also be used.

[0119] The above embodiments, implementations and aspects have been described to allow easy understanding of the present disclosure and are not intended to limit the present disclosure. On the contrary, the present disclosure is intended to cover various modifications and equivalent arrangements included within the scope of the appended claims, which scope should be given the broadest interpretation to cover all such modifications and equivalent structures permitted by law.

Claims

1. A method of controlling the operation of a motor, comprising: determining a voltage-based torque limit based on a voltage constraint of a direct current (DC) bus supplying power to an inverter for powering the motor; determining a motor current-based torque limit based on the motor current limit; determining a supply current-based torque limit based on a supply rating of the DC bus for supplying current to the inverter; determining a torque limit based on the regenerative current based on a receiving rating of the DC bus for receiving current from the inverter; determining a final torque limit based on: the voltage-based torque limit, the motor current-based torque limit, the supply current-based torque limit, and the regeneration current-based torque limit; determining a limited command torque based on the torque command and the final torque limit; as well as calculating at least one current command based at least on the limited commanded torque; in Determining the final torque limit includes arbitrating between one or more of the following: said voltage-based torque limitation; The torque limit based on the motor current; The torque limitation based on the supply current; the voltage-based torque limit and the supply current-based torque limit; the regenerative current based torque limit and the motor current based torque limit; and The torque limit based on the regenerative current and the torque limit based on the voltage.

2. The method according to claim 1, further comprising: A plurality of switches within the inverter are selectively controlled based on the at least one current command to cause the inverter to supply current to the motor.

3. The method according to claim 1, wherein: The motor current limit is the lesser of a current limit of the electric machine and a current limit of the inverter.

4. The method according to claim 1, wherein: Determining the final torque limit further includes arbitrating between the voltage-based torque limit and the motor current-based torque limit.

5. The method according to claim 4, wherein: Arbitrating between the voltage-based torque limit and the motor current-based torque limit further includes: determining a first motor-current-based q-axis current corresponding to the d-axis current having a predetermined minimum value and corresponding to the motor current limit; determining a second motor-current-based q-axis current corresponding to the d-axis current having a predetermined maximum value and corresponding to the motor current limit; determining a first voltage-limited based q-axis current corresponding to a d-axis current having a predetermined minimum value and corresponding to a voltage constraint of the DC bus; determining a second voltage-limited based q-axis current corresponding to the d-axis current having a predetermined maximum value and corresponding to a voltage constraint of the DC bus; determining one of the first motor current-based q-axis current and the first voltage limit-based q-axis current as a smaller value; determining one of the second motor current-based q-axis current and the second voltage limit-based q-axis current as a smaller value; and One of the motor current-based torque limit and the voltage-based torque limit is selected based on the smaller one of the first motor current-based q-axis current and the first voltage-limit-based q-axis current and based on the smaller one of the second motor current-based q-axis current and the second voltage-limit-based q-axis current.

6. The method according to claim 5, wherein: Selecting one of the motor current based torque limit and the voltage based torque limit further comprises: selecting the motor current-based torque limit as the final torque limit in response to determining that the first motor current-based q-axis current is less than the first voltage-limit-based q-axis current and the second motor current-based q-axis current is less than the second voltage-limit-based q-axis current; and In response to determining that the first voltage-limited q-axis current is less than the first motor-current-based q-axis current and the second voltage-limited q-axis current is less than the second motor-current-based q-axis current, the voltage-based torque limit is selected as the final torque limit.

7. The method according to claim 4, wherein: Arbitrating between the voltage-based torque limit and the motor current-based torque limit further includes: determining a first motor-current-based q-axis current corresponding to the d-axis current having a predetermined minimum value and corresponding to the motor current limit; determining a second motor-current-based q-axis current corresponding to the d-axis current having a predetermined maximum value and corresponding to the motor current limit; determining a first voltage-limited based q-axis current corresponding to a d-axis current having a predetermined minimum value and corresponding to a voltage constraint of the DC bus; determining a second voltage-limited based q-axis current corresponding to the d-axis current having a predetermined maximum value and corresponding to a voltage constraint of the DC bus; determining one of the first motor current-based q-axis current and the first voltage limit-based q-axis current as a smaller value; determining one of the second motor current-based q-axis current and the second voltage limit-based q-axis current as a smaller value; determining that the smaller one of the second motor current-based q-axis current and the second voltage limit-based q-axis current corresponds to a different constraint than the smaller one of the first motor current-based q-axis current and the first voltage limit-based q-axis current; determining a d-axis intersection current value at which a q-axis current corresponding to the motor current limit is equal to a q-axis current corresponding to a voltage constraint of the DC bus; and The final torque limit is determined based on the d-axis intersecting current value and based on a q-axis current corresponding to each of a motor current limit and a voltage constraint of a DC bus.

8. The method according to claim 1, wherein: Determining the regenerative current-based torque limit includes determining the regenerative current- and motor current-based torque limit based on an intersection of a d-axis current and a q-axis current that satisfies each of the received rated value and the motor current limit.

9. The method according to claim 8, further comprising: calculating a voltage generated by the inverter based on the current limit based on the regenerative current and the motor current; as well as Determining whether a voltage generated by the inverter based on the current limit based on the regenerative current and the motor current satisfies a voltage constraint of a DC bus to verify an intersection of a d-axis current and a q-axis current that satisfies each of the received rating and the motor current limit.

10. The method according to claim 1, further comprising: calculating a first y-intercept of a line plotting a relationship between a d-axis current and a q-axis current, wherein the d-axis current and the q-axis current both correspond to an inverter meeting the acceptance rating; calculating a second y-intercept of a line plotting a relationship between a d-axis current and a q-axis current, wherein the d-axis current and the q-axis current both correspond to an inverter meeting the acceptance rating; as well as Determining whether the electric machine can operate in a regeneration mode while satisfying the motor current limit includes performing one of the following based on a speed of the electric machine: determining whether the motor current limit is greater than a first y-intercept of a line plotting d-axis current versus q-axis current, and whether the first y-intercept of the line plotting d-axis current versus q-axis current is greater than a negative of the motor current limit, and whether the negative of the motor current limit is greater than a second y-intercept of the line plotting d-axis current versus q-axis current; as well as Determine whether the motor current limit is less than a first y-intercept of a line plotting the d-axis current versus the q-axis current, and whether the motor current limit is greater than a second y-intercept of a line plotting the d-axis current versus the q-axis current, and whether the negative of the motor current limit is less than the second y-intercept of the line plotting the d-axis current versus the q-axis current.

11. A control system for controlling the operation of an electric motor, comprising: processor; as well as a memory comprising instructions which, when executed by the processor, cause the processor to: determining a voltage-based torque limit based on a voltage constraint of a direct current (DC) bus supplying power to an inverter for powering the motor; determining a motor current-based torque limit based on the motor current limit; determining a supply current-based torque limit based on a supply rating of the DC bus for supplying current to the inverter; determining a torque limit based on the regenerative current based on a receiving rating of the DC bus for receiving current from the inverter; determining a final torque limit based on: the voltage-based torque limit, the motor current-based torque limit, the supply current-based torque limit, and the regeneration current-based torque limit; determining a limited command torque based on the torque command and the final torque limit; as well as calculating at least one current command based at least on the limited commanded torque; wherein the processor is caused to arbitrate between one or more of: said voltage-based torque limitation; The torque limit based on the motor current; The torque limitation based on the supply current; the voltage-based torque limit and the supply current-based torque limit; the regenerative current based torque limit and the motor current based torque limit; and The torque limit based on the regenerative current and the torque limit based on the voltage.

12. The control system according to claim 11, wherein: The instructions further cause the processor to selectively control a plurality of switches within the inverter based on the at least one current command to cause the inverter to supply current to the motor.

13. The control system according to claim 11, wherein: The motor current limit is the lesser of a current limit of the electric machine and a current limit of the inverter.

14. The control system according to claim 11, wherein: Determining a final torque limit further includes arbitrating between the voltage-based torque limit and the motor current-based torque limit.

15. The control system according to claim 14, wherein: Arbitrating between the voltage-based torque limit and the motor current-based torque limit further comprises the instructions causing the processor to: determining a first motor-current-based q-axis current corresponding to the d-axis current having a predetermined minimum value and corresponding to the motor current limit; determining a second motor-current-based q-axis current corresponding to the d-axis current having a predetermined maximum value and corresponding to the motor current limit; determining a first voltage-limited based q-axis current corresponding to a d-axis current having a predetermined minimum value and corresponding to a voltage constraint of the DC bus; determining a second voltage-limited based q-axis current corresponding to the d-axis current having a predetermined maximum value and corresponding to a voltage constraint of the DC bus; determining one of the first motor current-based q-axis current and the first voltage limit-based q-axis current as a smaller value; determining one of the second motor current-based q-axis current and the second voltage limit-based q-axis current as a smaller value; as well as One of the motor current-based torque limit and the voltage-based torque limit is selected based on the smaller one of the first motor current-based q-axis current and the first voltage-limit-based q-axis current and based on the smaller one of the second motor current-based q-axis current and the second voltage-limit-based q-axis current.

16. The control system according to claim 15, wherein: Selecting one of the motor current based torque limit and the voltage based torque limit further comprises the instructions causing the processor to: selecting the motor current-based torque limit as the final torque limit in response to determining that the first motor current-based q-axis current is less than the first voltage-limit-based q-axis current and the second motor current-based q-axis current is less than the second voltage-limit-based q-axis current; as well as In response to determining that the first voltage-limited q-axis current is less than the first motor-current-based q-axis current and the second voltage-limited q-axis current is less than the second motor-current-based q-axis current, the voltage-based torque limit is selected as the final torque limit.

17. The control system according to claim 14, wherein: Arbitrating between the voltage-based torque limit and the motor current-based torque limit further comprises the instructions causing the processor to: determining a first motor-current-based q-axis current corresponding to the d-axis current having a predetermined minimum value and corresponding to the motor current limit; determining a second motor-current-based q-axis current corresponding to the d-axis current having a predetermined maximum value and corresponding to the motor current limit; determining a first voltage-limited based q-axis current corresponding to a d-axis current having a predetermined minimum value and corresponding to a voltage constraint of the DC bus; determining a second voltage-limited based q-axis current corresponding to the d-axis current having a predetermined maximum value and corresponding to a voltage constraint of the DC bus; determining one of the first motor current-based q-axis current and the first voltage limit-based q-axis current as a smaller value; determining one of the second motor current-based q-axis current and the second voltage limit-based q-axis current as a smaller value; determining that the smaller one of the second motor current-based q-axis current and the second voltage limit-based q-axis current corresponds to a different constraint than the smaller one of the first motor current-based q-axis current and the first voltage limit-based q-axis current; determining a d-axis intersection current value at which a q-axis current corresponding to the motor current limit is equal to a q-axis current corresponding to a voltage constraint of the DC bus; as well as The final torque limit is determined based on the d-axis intersecting current value and based on a q-axis current corresponding to each of a motor current limit and a voltage constraint of a DC bus.

18. The control system according to claim 11, wherein: Determining the regenerative current based torque limit further includes the instructions causing the processor to determine the regenerative current and motor current based on an intersection of d-axis current and q-axis current that satisfies each of the received rated value and the motor current limit.

19. The control system of claim 18, further comprising the instructions causing the processor to: calculating a voltage generated by the inverter based on the current limit based on the regenerative current and the motor current; and Determining whether a voltage generated by the inverter based on the current limit based on the regenerative current and the motor current satisfies a voltage constraint of a DC bus to verify an intersection of a d-axis current and a q-axis current that satisfies each of the received rating and the motor current limit.

20. The control system of claim 11, further comprising the instructions causing the processor to: calculating a first y-intercept of a line plotting a relationship between a d-axis current and a q-axis current, wherein the d-axis current and the q-axis current both correspond to an inverter meeting the acceptance rating; calculating a second y-intercept of a line plotting a relationship between a d-axis current and a q-axis current, wherein the d-axis current and the q-axis current both correspond to an inverter meeting the acceptance rating; as well as Determining whether the electric machine can operate in a regeneration mode while satisfying the motor current limit includes performing one of the following based on a speed of the electric machine: determining whether the motor current limit is greater than a first y-intercept of a line plotting d-axis current versus q-axis current, and whether the first y-intercept of the line plotting d-axis current versus q-axis current is greater than a negative of the motor current limit, and whether the negative of the motor current limit is greater than a second y-intercept of the line plotting d-axis current versus q-axis current; as well as Determine whether the motor current limit is less than a first y-intercept of a line plotting the d-axis current versus the q-axis current, and whether the motor current limit is greater than a second y-intercept of a line plotting the d-axis current versus the q-axis current, and whether the negative of the motor current limit is less than the second y-intercept of the line plotting the d-axis current versus the q-axis current.

Citation Information

Patent Citations

  • Power management in permanent magnet synchronous motor drives

    CN109768740A

  • Method and system for torque control in permanent magnet machines

    US20080303475A1