System and method for air gap and eccentricity detection of electric motor
By designing an eccentricity detection system, the comprehensive analysis of vibration, inductance and voltage commands is used to solve the problem of air gap and eccentricity error detection in the motor, and the fault detection with high accuracy and reliability is achieved, extending the service life of the motor.
Patent Information
- Application Number
- CN202311750569.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2023-10-20
- Filing Date
- 2023-12-19
- Publication Date
- 2025-04-22
AI Technical Summary
The prior art is difficult to effectively detect and diagnose air gap and eccentricity errors in motors, resulting in vibration, noise and early failure problems.
An eccentricity detection system is designed, including a vibration eccentricity module, an inductive eccentricity module and a fault module. By measuring the vibration and incremental inductance curve of the motor, combined with voltage commands, we can determine whether there is an eccentricity fault in the motor.
Accurate detection of motor eccentricity faults is achieved, errors are reduced, detection accuracy and reliability are improved, and the service life of the motor is extended.
Smart Images

Figure CN119860738A_ABST
Abstract
Description
Technical Field
[0001] The information provided in this section is for the purpose of generally presenting the background of the present disclosure. To the extent described in this section, the work of the presently named inventors, and aspects that may otherwise not qualify as prior art at the time of filing, are neither explicitly nor implicitly admitted to be prior art to the present disclosure.
[0002] The present disclosure relates to electric motors, and more particularly, to systems and methods for detecting air gap and eccentricity errors in an electric motor, such as a vehicle. Background Art
[0003] Some types of vehicles include only an internal combustion engine that generates propulsion torque. Electric vehicles may not include an internal combustion engine, and may rely on one or more electric motors for propulsion.
[0004] A hybrid vehicle includes both an internal combustion engine and one or more electric motors. Some types of hybrid vehicles utilize both an electric motor and an internal combustion engine in an effort to achieve greater fuel efficiency than using only the internal combustion engine. Some types of hybrid vehicles utilize both an electric motor and an internal combustion engine to achieve greater torque output than the internal combustion engine alone can achieve.
[0005] Some example types of hybrid vehicles include parallel hybrid vehicles, series hybrid vehicles, and other types of hybrid vehicles. In a parallel hybrid vehicle, the electric motor works in parallel with the engine to combine the power and range advantages of the engine with the efficiency and regenerative braking advantages of the electric motor. In a series hybrid vehicle, the engine drives a generator to produce electricity for the electric motor, and the electric motor drives the transmission. This allows the electric motor to take on some of the power responsibilities of the engine, which can allow the use of a smaller and potentially more efficient engine. Summary of the invention
[0006] In one feature, an eccentricity detection system includes: a vibration eccentricity module configured to determine a vibration eccentricity of a motor based on vibration of the motor measured during operation of the motor; an inductance eccentricity module configured to determine the inductance eccentricity of the motor based on an incremental inductance curve of the motor; and a fault module configured to indicate whether the motor includes an eccentricity fault based on both (a) the vibration eccentricity of the motor and (b) the inductance eccentricity of the motor.
[0007] In further features, the fault module is configured to selectively indicate that the motor has an eccentricity fault when the vibration eccentricity is greater than a predetermined value.
[0008] In further features, the fault module is configured to selectively indicate that the motor has an eccentricity fault when the inductance eccentricity is greater than a predetermined value.
[0009] In further features, the voltage eccentricity module is configured to determine a voltage eccentricity of the motor based on a voltage command for the motor, wherein the fault module is configured to indicate whether the motor includes an eccentricity fault further based on the voltage eccentricity.
[0010] In further features, the fault module is configured to selectively indicate that the motor has an eccentricity fault when the voltage eccentricity is greater than a predetermined value.
[0011] In further features, the voltage command is a d-axis voltage command.
[0012] In further features, the voltage command is a q-axis voltage command.
[0013] In further features, the voltage eccentricity module is configured to determine a voltage eccentricity of the motor when the motor is operating at a predetermined speed.
[0014] In further features, the voltage eccentricity module is configured to determine a voltage eccentricity of the motor when the motor is operating at a predetermined torque.
[0015] In further features, the vibration eccentricity module is configured to determine the vibration eccentricity of the motor when the motor is operating at a predetermined speed.
[0016] In further features, the vibration eccentricity module is configured to determine the vibration eccentricity of the motor based on a vibration amplitude of the motor at a predetermined frequency.
[0017] In further features, the inductance eccentricity module is configured to determine the inductance eccentricity of the motor based on a d-axis current of the motor at a predetermined point on an incremental inductance curve of the motor.
[0018] In further features, the predetermined point is a peak of the incremental inductance curve.
[0019] In a further feature, the peak value is a second highest peak value of the incremental inductance curve.
[0020] In further features, the inductance eccentricity module is configured to determine the inductance eccentricity of the motor when a d-axis current of the motor is set to a predetermined maximum current.
[0021] In further features, the fault module is configured to indicate that the motor includes an eccentricity fault when both: (a) a vibration eccentricity of the motor is greater than a predetermined value and (b) an inductance eccentricity of the motor is less than a second predetermined value.
[0022] In further features, the fault module is configured to selectively indicate that the motor includes an eccentricity fault when a vibration eccentricity of the motor is greater than a predetermined value and an inductance eccentricity of the motor is greater than a second predetermined value.
[0023] In further features, the fault module is configured to selectively indicate that the motor includes an eccentricity fault when an inductance eccentricity of the motor is greater than a predetermined value and a vibration eccentricity of the motor is less than a second predetermined value.
[0024] In further features, the fault module is configured to selectively indicate that the motor includes an eccentricity fault when the inductance eccentricity of the motor is greater than a predetermined value, the vibration eccentricity of the motor is less than a second predetermined value, and the vibration amplitude at a certain frequency is less than a third value.
[0025] In one feature, an eccentricity detection method includes: determining a vibration eccentricity of a motor based on vibration of the motor measured during operation of the motor; determining an inductance eccentricity of the motor based on an incremental inductance curve of the motor; and indicating whether the motor includes an eccentricity fault based on both (a) the vibration eccentricity of the motor and (b) the inductance eccentricity of the motor.
[0026] The following solutions are disclosed:
[0027] 1. An eccentricity detection system, comprising:
[0028] a vibration eccentricity module configured to determine a vibration eccentricity of the motor based on vibrations of the motor measured during operation of the motor;
[0029] an inductance eccentricity module configured to determine an inductance eccentricity of the motor based on a delta inductance curve of the motor; and
[0030] A fault module is configured to indicate whether the motor includes an eccentricity fault based on both (a) a vibration eccentricity of the motor and (b) an inductance eccentricity of the motor.
[0031] 2. The eccentricity detection system according to claim 1, wherein the fault module is configured to selectively indicate that the motor has an eccentricity fault when the vibration eccentricity is greater than a predetermined value.
[0032] 3. The eccentricity detection system according to claim 1, wherein the fault module is configured to selectively indicate that the motor has an eccentricity fault when the inductance eccentricity is greater than a predetermined value.
[0033] 4. The eccentricity detection system according to claim 1, further comprising a voltage eccentricity module configured to determine a voltage eccentricity of the motor based on a voltage command for the motor,
[0034] Wherein the fault module is configured to indicate whether the electric motor includes an eccentricity fault further based on the voltage eccentricity.
[0035] 5. The eccentricity detection system according to claim 4, wherein the fault module is configured to selectively indicate that the motor has an eccentricity fault when the voltage eccentricity is greater than a predetermined value.
[0036] 6. The eccentricity detection system according to Option 4, wherein the voltage command is a d-axis voltage command.
[0037] 7. The eccentricity detection system according to Option 4, wherein the voltage command is a q-axis voltage command.
[0038] 8. The eccentricity detection system according to claim 4, wherein the voltage eccentricity module is configured to determine the voltage eccentricity of the motor when the motor is operating at a predetermined speed.
[0039] 9. The eccentricity detection system according to claim 4, wherein the voltage eccentricity module is configured to determine the voltage eccentricity of the motor when the motor is operating at a predetermined torque.
[0040] 10. The eccentricity detection system according to claim 1, wherein the vibration eccentricity module is configured to determine the vibration eccentricity of the motor when the motor is operating at a predetermined speed.
[0041] 11. The eccentricity detection system according to claim 1, wherein the vibration eccentricity module is configured to determine the vibration eccentricity of the motor based on a vibration amplitude of the motor at a predetermined frequency.
[0042] 12. The eccentricity detection system according to claim 1, wherein the inductance eccentricity module is configured to determine the inductance eccentricity of the motor based on a d-axis current of the motor at a predetermined point on an incremental inductance curve of the motor.
[0043] 13. The eccentricity detection system according to claim 12, wherein the predetermined point is a peak value of the incremental inductance curve.
[0044] 14. The eccentricity detection system according to claim 13, wherein the peak value is the second highest peak value of the incremental inductance curve.
[0045] 15. The eccentricity detection system according to claim 1, wherein the inductance eccentricity module is configured to determine the inductance eccentricity of the motor when the d-axis current of the motor is set to a predetermined maximum current.
[0046] 16. An eccentricity detection system according to Option 1, wherein the fault module is configured to indicate that the motor includes an eccentricity fault when both of the following occur: (a) the vibration eccentricity of the motor is greater than a predetermined value and (b) the inductance eccentricity of the motor is less than a second predetermined value.
[0047] 17. The eccentricity detection system according to claim 1, wherein the fault module is configured to selectively indicate that the motor includes an eccentricity fault when the vibration eccentricity of the motor is greater than a predetermined value and the inductance eccentricity of the motor is greater than a second predetermined value.
[0048] 18. The eccentricity detection system according to claim 1, wherein the fault module is configured to selectively indicate that the motor includes an eccentricity fault when an inductance eccentricity of the motor is greater than a predetermined value and a vibration eccentricity of the motor is less than a second predetermined value.
[0049] 19. An eccentricity detection system according to Scheme 18, wherein the fault module is configured to selectively indicate that the motor includes an eccentricity fault when the inductance eccentricity of the motor is greater than a predetermined value, the vibration eccentricity of the motor is less than a second predetermined value, and the vibration amplitude at a certain frequency is less than a third value.
[0050] 20. A method for detecting eccentricity, comprising:
[0051] determining a vibration eccentricity of the motor based on vibrations of the motor measured during operation of the motor;
[0052] determining an inductance eccentricity of the motor based on an incremental inductance curve of the motor; and
[0053] Whether the motor includes an eccentricity fault is indicated based on both (a) the vibration eccentricity of the motor and (b) the inductance eccentricity of the motor.
[0054] Further areas of applicability of the present disclosure will become apparent from the detailed description, claims and drawings.The detailed description and specific examples are intended for purposes of illustration only and are not intended to limit the scope of the present disclosure. BRIEF DESCRIPTION OF THE DRAWINGS
[0055] The present disclosure will become more fully understood from the detailed description and accompanying drawings, in which:
[0056] Figure 1 is a functional block diagram of an example vehicle system;
[0057] Figure 2 is a functional block diagram of an example propulsion control system;
[0058] Figure 3 Included are schematic diagrams of example implementations including power control systems;
[0059] Figure 4 A schematic diagram of an example implementation including an inverter module;
[0060] Figure 5 A functional block diagram of an example motor control module is included;
[0061] Figure 6 It is the functional block diagram of the fault detection system;
[0062] Figure 7 is a functional block diagram of an example implementation of a fault detection module;
[0063] Figure 8-10 is a flow chart depicting an example method of detecting an electric motor eccentricity fault; and
[0064] Fig.11 Included are example graphs of incremental inductance versus d-axis current for a motor with different eccentricity levels.
[0065] In the drawings, reference numerals may be repeated to identify similar and / or identical elements. DETAILED DESCRIPTION
[0066] An inverter module for a vehicle includes switching branches that regulate current (a) from a battery to an electric motor and (b) from the electric motor to the battery. A direct current (DC) bus capacitor may be connected between the inverter module and the battery. A pulse width modulation (PWM) signal is used to control the switching of the branches.
[0067] There are various different types of faults that can occur with electric motors. One type of fault is an eccentricity fault. For example, an eccentricity fault may occur due to manufacturing and / or assembly tolerances. An eccentricity fault may generate an unbalanced magnetic field that may cause vibration, noise, and increased forces in one or more of the motor's bearings, which may result in increased wear, early failures, and increased losses. Over time, the eccentricity may increase further and cause the rotor and stator of the motor to contact.
[0068] The present application relates to a fault detection module that detects an eccentricity fault of an electric motor based on vibration and incremental inductance of the electric motor. In various implementations, the detection of the eccentricity fault can be further based on a voltage command to the electric motor. In a vehicle, such detection can be performed before the vehicle is sold. The use of vibration and incremental inductance (and in some examples, voltage command) is a more robust measurement of eccentricity, which limits the possibility of false detection and increases the accuracy of detecting an eccentricity fault of the electric motor.
[0069] Reference now Figure 1 , presents a functional block diagram of an example vehicle system. Although a vehicle system for a hybrid vehicle is shown and will be described, the present disclosure is also applicable to electric vehicles (including pure electric vehicles) that do not include an internal combustion engine, fuel cell vehicles, autonomous vehicles, semi-autonomous vehicles, non-autonomous vehicles, and other types of vehicles. In addition, although an example of a vehicle is provided, the present application is also applicable to non-vehicle implementations.
[0070] The engine 102 can combust an air / fuel mixture to generate drive torque. An engine control module (ECM) 114 controls the engine 102. For example, the ECM 114 can control actuation of engine actuators such as a throttle, one or more spark plugs, one or more fuel injectors, a valve actuator, a camshaft phaser, an exhaust gas recirculation (EGR) valve, one or more supercharging devices, and other suitable engine actuators. In some types of vehicles (e.g., electric vehicles), the engine 102 can be omitted.
[0071] The engine 102 may output torque to a transmission 195. A transmission control module (TCM) 194 controls operation of the transmission 195. For example, the TCM 194 may control gear selection within the transmission 195 and one or more torque transmitting devices (eg, a torque converter, one or more clutches, etc.).
[0072] The vehicle system includes one or more electric motors, such as motor 198. At a given time, the electric motor can act as a generator, or as a motor. When acting as a generator, the electric motor converts mechanical energy into electrical energy. The electrical energy can be used, for example, to charge battery 199. When acting as a motor, the electric motor generates torque that can be used, for example, for vehicle propulsion. Although an example of an electric motor is provided, a vehicle can include more than one electric motor.
[0073] The motor control module 196 controls the power flow from the battery 199 to the motor 198 and from the motor 198 to the battery 199. The motor control module 196 applies the electric power from the battery 199 to the motor 198 so that the motor 198 outputs positive torque, such as for vehicle propulsion. The battery 199 may include, for example, one or more batteries and / or battery packs.
[0074] The motor 198 can output torque, for example, to an input shaft of the transmission 195 or to an output shaft of the transmission 195. The clutch 200 can be engaged to couple the motor 198 to the transmission 195, and disengaged to decouple the motor 198 from the transmission 195. One or more gear devices can be implemented between the output of the clutch 200 and the input of the transmission 195 to provide a predetermined ratio between the rotation of the motor 198 and the rotation of the input of the transmission 195.
[0075] The motor control module 196 can also selectively convert the mechanical energy of the vehicle into electrical energy. More specifically, when the motor 198 is being driven by the transmission 195 and the motor control module 196 is not applying power to the motor 198 from the battery 199, the motor 198 generates and outputs power through the back EMF. The motor control module 196 can charge the battery 199 through the power output by the motor 198.
[0076] Reference now Figure 2 , presents a functional block diagram of an example propulsion control system. The driver torque module 204 determines the driver torque request 208 based on the driver input 212. The driver input 212 may include, for example, an accelerator pedal position (APP), a brake pedal position (BPP), a cruise control input, and / or an autonomous input. In various implementations, the cruise control input may be provided by an adaptive cruise control system that attempts to maintain at least a predetermined distance between the vehicle and an object in the vehicle's path. The autonomous input may be provided by an autonomous driving system that controls the movement of the vehicle between locations while avoiding objects and other vehicles. The driver torque module 204 may determine the driver torque request 208 using one or more lookup tables or equations that relate the driver input to the driver torque request. The APP and BPP may be measured using one or more APP sensors and BPP sensors, respectively.
[0077] The driver torque request 208 may be an axle torque request. Axle torque (including axle torque requests) refers to torque at the wheels. As discussed further below, propulsion torque (including propulsion torque requests) is different from axle torque because propulsion torque may refer to torque at the transmission input shaft.
[0078] The axle torque arbitration module 216 arbitrates between the driver torque request 208 and other axle torque requests 220. Axle torque (torque at the wheels) may be generated by various sources, including the engine 102 and / or one or more electric motors, such as the electric motor 198. Examples of other axle torque requests 220 include, but are not limited to, torque reductions requested by a traction control system when positive wheel slip is detected, torque increase requests to offset negative wheel slip, brake management requests to reduce axle torque to ensure that axle torque does not exceed the ability of the brakes to hold the vehicle when the vehicle is stopped, and vehicle overspeed torque requests to reduce axle torque to prevent the vehicle from exceeding a predetermined speed. The axle torque arbitration module 216 outputs one or more axle torque requests 224 based on the arbitration results between the received driver and axle torque requests 208 and 220, respectively.
[0079] In a hybrid vehicle, a hybrid module 228 can determine how much of the one or more axle torque requests 224 should be generated by the engine 102 and how much of the one or more axle torque requests 224 should be generated by the motor 198. For simplicity, the example of the motor 198 will continue, but multiple motors may be used. The hybrid module 228 outputs one or more engine torque requests 232 to a propulsion torque arbitration module 236. The engine torque request 232 indicates a requested torque output of the engine 102.
[0080] The hybrid module 228 also outputs a motor torque request 234 to the motor control module 196. The motor torque request 234 indicates a requested torque output (positive or negative) of the electric motor 198. In a vehicle where the engine 102 is omitted (e.g., an electric vehicle) or where the engine 102 is not connected to output propulsion torque for the vehicle, the axle torque arbitration module 216 may output an axle torque request, and the motor torque request 234 may be equal to the axle torque request.
[0081] In the example of an electric vehicle, the ECM 114 may be omitted, and the driver torque module 204 and the axle torque arbitration module 216 may be implemented within the motor control module 196. In an electric vehicle, the driver torque module 204 may input the driver torque request 208 to the motor control module 196, and components associated with controlling engine actuators may be omitted.
[0082] The propulsion torque arbitration module 236 converts the engine torque request 232 from the axle torque domain (torque at the wheels) to the propulsion torque domain (e.g., torque at the transmission input shaft). The propulsion torque arbitration module 236 arbitrates the converted torque request with other propulsion torque requests 240. Examples of other propulsion torque requests 240 include, but are not limited to, torque reductions for engine overspeed protection requests and torque increases for stall prevention requests. The propulsion torque arbitration module 236 may output one or more propulsion torque requests 244 as a result of the arbitration.
[0083] The actuator control module 248 controls actuators 252 of the engine 102 based on the propulsion torque request 244. For example, based on the propulsion torque request 244, the actuator control module 248 may control opening of a throttle, timing of spark provided by a spark plug, timing and amount of fuel injected by a fuel injector, cylinder activation / deactivation, intake and exhaust valve phasing, output of one or more boost devices (e.g., a turbocharger, a supercharger, etc.), opening of an EGR valve, and / or one or more other engine actuators. In various implementations, the propulsion torque request 244 may be adjusted or modified by the actuator control module 248 before use, for example to create a torque reserve.
[0084] The motor control module 196 controls the switching of the switches of the inverter module based on the motor torque request 234, as discussed further below. The inverter module converts direct current (DC) power into alternating current (AC) power. The inverter module applies the AC power to the motor 198. The switching of the inverter module controls the torque of the motor 198. The inverter module also converts the power generated by the motor 198 into DC power and outputs the DC power for the battery 199, for example, to charge the battery 199.
[0085] The inverter module includes a plurality of switches, for example, three switch branches. The motor control module switches the switches to apply alternating current (AC) power to the motor 198, thereby driving the motor 198. For example, the inverter module can generate n-phase AC power and apply the n-phase AC power to n stator windings (e.g., a, b, and c, or u, v, and w) of the motor 198. In various implementations, n is equal to 3. The magnetic flux generated by the current flowing through the stator winding drives the rotor of the motor 198. The rotor is connected to the output shaft of the motor 198 and drives it to rotate. The output shaft of the motor 198 is connected to one or more wheels of the vehicle.
[0086] In various implementations, one or more filters (e.g., capacitors) may be electrically connected between the inverter module and the battery 199. The one or more filters may be implemented, for example, to filter power flow to and from the battery 199. As an example, a filter including one or more capacitors and resistors may be electrically connected in parallel with the battery 199 and the inverter module.
[0087] Figure 3 Included is a schematic diagram of an example implementation of a power control system.As discussed above, battery 199 may also refer to or include a battery pack.
[0088] The high (positive, DC+) and low (negative, DC-) sides 304 and 308 are connected to the positive and negative terminals, respectively, of the battery 199. One or more capacitors, such as capacitor 312, are connected in parallel with the battery 199 between the high side 304 and the low side 308. The capacitors stabilize the DC bus and provide a low impedance voltage source to the inverter module since the battery 199 may have a higher impedance.
[0089] The inverter module 316 includes three branches, one branch connected to each phase of the motor 198. The inverter module 316 controls the current flowing to the branches / phases of the motor 198. The inverter module 316 converts the DC power from the high side 304 and the low side 308 into 3-phase AC power and outputs the AC power to the motor 198.
[0090] Figure 4 A schematic diagram of an example implementation of an inverter module 316 is included. The inverter module 316 includes three branches. One branch is connected to each phase of the motor 198.
[0091] The first branch 512 includes first and second switches 516 and 520. Each of the switches 516 and 520 includes a first terminal, a second terminal, and a control terminal. Each of the switches 516 and 520 can be an insulated gate bipolar transistor (IGBT), a field effect transistor (FET), such as a metal oxide semiconductor FET (MOSFET), or another suitable type of switch. In the examples of IGBTs and FETs, the control terminal is referred to as a gate.
[0092] A first terminal of the first switch 516 is connected to the high side 304. A second terminal of the first switch 516 is connected to the node 504. A second terminal of the second switch 520 may be connected to the low side 308. The node 504 is connected to the second terminal of the first switch 516, the first terminal of the second switch 520, and the first phase (e.g., c) of the motor 198.
[0093] The first branch 512 may include first and second diodes 524 and 528 connected in anti-parallel with the switches 516 and 520, respectively. In other words, the anode of the first diode 524 may be connected to the second terminal of the first switch 516, and the cathode of the first diode 524 may be connected to the first terminal of the first switch 516. The anode of the second diode 528 may be connected to the second terminal of the second switch 520, and the cathode of the second diode 528 may be connected to the first terminal of the second switch 520. The diodes 524 and 528 form one phase of a three-phase rectifier for converting power from the motor 198 into power for the battery 199. However, the diodes 524 and 528 may be omitted, for example, if the switches 516, 540, 556, 520, 544, and 560 are MOSFETs (with built-in diodes). The diodes 524 and 528 may be included if included with a power module of an IGBT.
[0094] The inverter module 316 also includes second and third branches 532 and 536. The second and third branches 532 and 536 can be similar or identical (in terms of circuit) to the first branch 512. In other words, the second and third branches 532 and 536 can each include corresponding switches and diodes, such as switches 516 and 520 and diodes 524 and 528, connected in the same manner as the first branch 512. For example, the second branch 532 includes switches 540 and 544 and anti-parallel diodes 548 and 552. Node 542 is connected to a first terminal of switch 544 and a second stator winding (e.g., b) of the motor 198. The third branch 536 includes switches 556 and 560, and anti-parallel diodes 564 and 568. Node 570 is connected to a first terminal of switch 560 and a third stator winding (e.g., a) of the motor 198. Like diodes 524 and 528, diodes 548, 552, 564, and 568 may be omitted.
[0095] The control terminals of the switches of the inverter module 316 are connected to the switch signals 576 from the motor control module 196. The motor control module 196 generates the switch signals 576 so that the high-side switch of the branch is turned on and the low-side switch of the branch is turned off, and vice versa. The motor control module 196 generates the switch signals 576 using pulse width modulation (PWM) control.
[0096] The control signals to the gates of the low-side switches 520 , 544 , and 560 may be inverted such that the control signals applied to the low-side switches 520 , 544 , and 560 are opposite in polarity to the control signals applied to the gates of the high-side switches 516 , 540 , and 556 .
[0097] Figure 5 is a functional block diagram of an example implementation of the motor control module 196. The switching module 604 controls the switching of the switches 516 and 520 using a pulse width modulation (PWM) signal. For example, the switching module 604 applies the PWM signal to the control terminals of the switches 516, 520, 540, 544, 556, and 560. When the high-side switch is turned on, power flows from the battery 199 to the motor 198 to drive the motor 198.
[0098] Given the inversion of the signal applied to the gate of low-side switch 520,544 and 560, the state of the high side and low-side switch of each phase is complementary (opposite). For example, when the high-side switch 516 of the first branch 512 is turned on, the low-side switch 520 of the first branch 512 is disconnected, and vice versa. When the high-side switch 540 of the second branch 532 is turned on, the low-side switch 544 of the second branch 532 is disconnected, and vice versa. When the high-side switch 556 of the third branch 536 is turned on, the low-side switch 560 of the third branch 536 is disconnected, and vice versa.
[0099] The PWM signals provided to the second and third branches 532 and 536 can be phase-shifted with each other and with the PWM signals provided to the switches 516 and 520 of the first branch 512. For example, the PWM signals for each branch can be phase-shifted by 120° relative to each other (360° / 3 branches = 120° phase shift per branch). In this way, the currents through the stator windings (phases) of the motor 198 can be phase-shifted by 120° with respect to each other. Different types of PWM schemes for three-phase voltage source inverters can be used, such as space vector modulation, sine-triangle modulation, third harmonic injection modulation, discontinuous modulation, or another suitable PWM scheme.
[0100] The current command module 608 determines a d-axis current command (Id command) and a q-axis current command (Iq command) for the motor 198 based on the motor torque request 234, a (mechanical) rotor speed 632 of the motor 198, and a DC bus voltage 610. The current command module 608 may determine the d-axis and q-axis current commands using one or more equations and / or lookup tables that relate the motor torque request, the rotor speed, and the DC bus voltage to the d-axis and q-axis current commands.
[0101] The d-axis current command and the q-axis current command are given by Figure 5 612 in. Voltage sensor 611 measures the DC bus voltage 610 between battery 199 and inverter module 316 (e.g., between high side 304 and low side 308), such as the voltage across the DC bus capacitor. The axis of the magnetic field or rotor winding magnetic field is called the rotor direct axis or d-axis. The axis 90 degrees after the d-axis is called the quadrature axis or q-axis.
[0102] The rotor speed 632 is the (mechanical) rotational speed of the rotor of the motor 198. For example, the rotor speed 632 may be measured using a rotor speed sensor 636. In various implementations, the rotor speed 632 may be determined by a rotor speed module based on one or more other parameters, such as a change in rotor position over time, where the position is determined based on the current 640 of the motor 198. In various implementations, the rotor speed sensor 636 may determine the position of the rotor, and the rotor speed sensor 636 (or a speed module, such as a speed module of the motor control module 196) may determine the rotor speed 632 based on the change in rotor position over time (e.g., using a mathematical derivative of the position with respect to time). The current sensor 642 may measure the phase current 640 (e.g., Ia, Ib, Ic), for example, measured in the corresponding branch of the inverter module 316. In various implementations, one or more phase currents 640 may be estimated.
[0103] The voltage command module 656 (which may be referred to as a current regulator) determines a voltage command for the motor 198 based on the d-axis current command, the q-axis current command, the d-axis current of the motor 198, and the q-axis current of the motor 198. The d-axis voltage command and the q-axis voltage command are Figure 5 660. In various implementations, the voltage command module 656 can generate the voltage command 660 based on the d-axis and q-axis currents 644 using closed-loop control, or generate the voltage command 660 using closed-loop control to adjust the d-axis and q-axis currents 644 toward or to the d-axis and q-axis current commands 612, respectively. The frame of reference (FOR) module 648 can transform the phase current 640 into the d-axis and q-axis currents 644 by applying a Clarke transform and a Park transform.
[0104] The switching module 604 determines the duty cycle of the PWM signal applied to the switches of the inverter module 316 based on the d-axis and q-axis voltage commands to generate voltages for the motor 198, respectively. For example, the switching module 604 can determine the PWM duty cycle using one or more schemes (e.g., algorithms) that utilize equations or lookup tables that relate voltage commands to PWM duty cycles. Example PWM schemes for three-phase voltage source inverters include, but are not limited to, space vector modulation, sine-triangle modulation, third harmonic injection modulation, and discontinuous modulation.
[0105] The switching module 604 switches the switches of the inverter module 316 based on the PWM duty cycle of each phase and the target switching frequency 670, respectively. The duty cycle of a phase corresponds to the period that the high-side switch of the phase is turned on (closed) during a period (period = 1 / target switching frequency) corresponding to the target switching frequency 670. The PWM scheme can have a fixed switching frequency with a modulated duty cycle.
[0106] The target frequency module 674 sets the target switching frequency 670. The target frequency module 674 can set the target switching frequency 670 for each phase. More specifically, the target frequency module 674 sets the target switching frequency of the first phase, the target switching frequency of the second phase, and the target switching frequency of the third phase of the inverter module 316. The target switching frequency of each phase can be the same. The switching module 604 switches the switches of each phase of the inverter module 316 based on the PWM duty cycle and the target switching frequency of each phase.
[0107] Figure 6 680 detects the presence of an eccentricity fault in the motor 198 based on vibration 682 of the motor 198 measured using a vibration sensor 684 and an incremental inductance of the motor determined based on d-axis and q-axis currents 644. The fault detection module 680 may further detect the presence of an eccentricity fault based on the voltage command 660.
[0108] The output shaft 686 of the motor 198 can be connected to a dynamometer 688 for detecting whether the motor 198 has an eccentricity fault. In various implementations, the dynamometer 688 can be omitted. If the dynamometer 388 is omitted, the eccentricity fault can be detected based on an analysis based on incremental inductance and vibration. When the motor 198 includes an eccentricity fault, the fault detection module 680 can visually display that the motor 198 has an eccentricity fault, such as by illuminating an indicator 690. When the motor 198 has an eccentricity fault, the fault detection module 680 can additionally or alternatively perform one or more other remedial actions, such as disabling the motor 198 via the motor control module 196. The eccentricity of the motor 198 can specify the degree to which the center of the rotor is aligned with the center of the rotor and the axis of the output shaft 686.
[0109] The eccentricity of the motor 198 can be expressed as a value between 0 and 100 or in another suitable manner. In the example of a value between 0 and 100, 0 can indicate that the center of the stator is aligned with both the center of the rotor and the axis of the output shaft (a line through the axis of the output shaft would extend through the center of the rotor and the center of the stator). 100 can indicate that the center of the stator is offset from the center of the rotor and the axis of the output shaft by at least a predetermined distance (e.g., a radial distance). Although this example will be described here, the present application is also applicable to other expressions of eccentricity.
[0110] Figure 7 6 is a functional block diagram of an example implementation of the fault detection module 680. The vibration eccentricity module 704 determines a vibration eccentricity 708 of the motor 198 based on the vibration 682 of the motor 198 of the vibration sensor 684. The vibration eccentricity module 704 can determine the vibration eccentricity 708 using a lookup table or equation that relates one or more characteristics of the vibration 682 to the vibration eccentricity. As discussed above, in an example, the vibration eccentricity 708 can be expressed as a value between 0 and 100. The motor control module 196 operates the motor 198 under predetermined operating conditions for determining the vibration eccentricity 708.
[0111] The voltage eccentricity module 712 determines a voltage eccentricity 716 of the motor 198 based on the one or more voltage commands 660 for the motor 198. The voltage eccentricity module 712 may determine the voltage eccentricity 716 using a lookup table or equation that relates the one or more voltage commands 660 to the voltage eccentricity. As discussed above, in an example, the voltage eccentricity 716 may be expressed as a value between 0 and 100. The motor control module 196 operates the motor 198 under predetermined operating conditions for determining the voltage eccentricity 716.
[0112] The inductance eccentricity module 720 determines the inductance eccentricity 724 of the motor 198 based on one or more points on the incremental inductance curve (profile) 728 of the motor 198. The inductance eccentricity module 720 can determine the inductance eccentricity 724 using a lookup table or equation that relates one or more characteristics of the incremental inductance curve 728 to the inductance eccentricity. As discussed above, in an example, the inductance eccentricity 724 can be expressed as a value between 0 and 100. The motor control module 196 operates the motor 198 under predetermined operating conditions for determining the incremental inductance curve 728.
[0113] The incremental inductance module 732 determines the incremental inductance curve 728 based on, for example, one or more of the d-axis and q-axis currents 644 of the motor 198 .
[0114] The fault module 736 determines whether the motor 198 has an eccentricity fault based on the vibration eccentricity 708 and the inductance eccentricity 724, as discussed further below. The fault module 736 may additionally determine whether the motor 198 has an eccentricity fault further based on the voltage eccentricity 716, as discussed further below.
[0115] When the motor 198 has an eccentricity fault, the fault module 736 can take one or more actions. For example, the fault module 736 can visually indicate an indicator that the motor 198 has an eccentricity fault, such as by turning on the indicator 690. Additionally or alternatively, the fault module 736 can command the motor control module 196 to disable the motor 198 and / or limit the torque output of the motor 198 to a predetermined fault torque.
[0116] Figure 8-10 is a flow chart depicting an example method of detecting an eccentricity fault of the motor 198 . Figure 8 is a flow chart depicting an example method of determining vibration eccentricity. Fig. 9 is a flow chart depicting an example method of determining inductance and voltage eccentricity. Fig.10 is a flow chart depicting an example method of determining whether the motor 198 has an eccentricity fault. Figure 8-10 Can be executed in a predetermined order.
[0117] Reference now Figure 8 , control begins at 804, where the motor control module 196 selects one or more operating parameters of the motor 198 for detecting eccentricity based on vibration. For example, the one or more operating parameters may include a predetermined speed of the motor 198 greater than zero, such as 1000 revolutions per minute or another suitable speed.
[0118] At 808, the motor control module 196 operates the motor 198 at the selected operating parameters (eg, a predetermined speed). At 812, the vibration sensor 684 measures vibrations of the motor 198 during operation of the motor 198 at the selected operating parameters.
[0119] At 816, the vibration eccentricity module 704 determines the amplitude and the predetermined frequency of the vibration, respectively, such as by applying a fast Fourier transform (FFT) to the vibration signal from the vibration sensor 684. At 820, the vibration eccentricity module 704 determines the vibration eccentricity 708 based on the one or more vibration amplitudes at the one or more frequencies, respectively. For example, the vibration eccentricity module 704 can determine the vibration eccentricity 708 using one or more equations and / or lookup tables that relate amplitude to vibration eccentricity.
[0120] At 824, the fault module 736 may determine whether the vibration eccentricity is greater than a predetermined value. The predetermined value may be, for example, 0.75 (75%) of the example value range described above, or another suitable value. If 824 is true, the fault module 736 may indicate at 832 that the motor 198 has an eccentricity fault, and control may continue at 836. At 836, the vibration eccentricity module 704 may determine the acceleration magnitude of the vibration of the motor 198 at a frequency. If 824 is false, at 828, the fault module 736 may indicate that the motor 198 does not have an eccentricity fault.
[0121] After 828 or 836, control can continue I( Fig. 9 ).
[0122] Reference now Fig. 9 , control may start from 904, where the motor control module 196 selects one or more operating parameters of the motor 198 based on the voltage command for detecting eccentricity. For example, the one or more operating parameters may include a predetermined speed of the motor 198 greater than zero, such as 1000 revolutions per minute or another suitable speed, and a predetermined torque greater than zero, such as 50 Newton meters or another suitable torque 0 or a predetermined negative torque. At 908, the motor control module 196 operates the motor 198 at the selected operating parameters.
[0123] At 912, the voltage eccentricity module 712 receives the voltage command 660 for operating the motor at selected operating parameters (e.g., a predetermined speed and a predetermined torque). At 916, the voltage eccentricity module 712 determines a voltage eccentricity 716 based on the voltage command 660. For example, the voltage eccentricity module 712 may determine the voltage eccentricity 716 using one or more equations and / or a lookup table that relates magnitude to voltage eccentricity.
[0124] At 920, the fault module 736 may determine whether the voltage eccentricity 716 is greater than a predetermined value. The predetermined value may be, for example, 0.75 (75%) of the example value range described above, or another suitable value. If 920 is false, at 924, the fault module 736 may indicate that the first eccentricity (A) of the motor 198 is healthy (no eccentricity fault), and control may continue with II ( Fig.10 ). If 920 is true, the fault module 736 may indicate at 928 that the motor 198 has an eccentricity of the first eccentricity (A) and control may continue with II.
[0125] 932-960 may be performed after or before 904-928. At 932, the motor control module 196 selects one or more operating parameters of the motor 198 based on the incremental inductance of the motor 198 for detecting eccentricity. For example, the one or more operating parameters may include a predetermined maximum d-axis current that saturates the motor 198. In various implementations, the one or more operating parameters include a predetermined range of d-axis currents. At 936, the motor control module 196 operates the motor 198 at the selected operating parameters.
[0126] At 940 , the incremental inductance module 732 determines the incremental inductance curve 728 of the motor 198 during operation of the motor 198 at the selected operating parameters, such as based on the d-axis current of the motor 198 . Fig.11 Included is an example graph of incremental inductance 1104 versus d-axis current 1108. Traces 1112, 1116, and 1120 are used to reduce (better) motor eccentricity.
[0127] At 944, the inductor eccentricity module 720 determines the d-axis current (e.g., 1108) at the second peak (peak) in the incremental inductance curve 728 and the incremental inductance (e.g., 1104) at the d-axis current, which may also be referred to as the height. For example, the inductor eccentricity module 720 may determine the height of the peak based on the piecewise linear trend of the curve to determine the eccentricity. There is a difference between the absolute peak and the curve peak from the piecewise linear trend of the curve. At 948, the inductor eccentricity module 720 determines the inductor eccentricity 724 based on the d-axis current and the incremental inductance determined at 944. For example, the inductor eccentricity module 720 may determine the inductor eccentricity 724 using one or more equations and / or lookup tables that relate the d-axis current and the incremental inductance to the inductor eccentricity.
[0128] At 952, the fault module 736 may determine whether the inductance eccentricity 724 is greater than a predetermined value. The predetermined value may be, for example, 0.75 (75%) of the example value range described above, or another suitable value. If 952 is false, at 956, the fault module 736 may indicate that the second eccentricity (B) of the motor 198 is healthy (no eccentricity fault), and control may continue with II ( Fig.10 If 952 is true, at 960 , the fault module 736 may indicate that the motor 198 has an eccentricity of the second eccentricity (B) and control may continue with II.
[0129] Reference now Fig.10At 1004, the fault module 736 determines whether both the first and second eccentricities (A and B) indicate that the motor 198 is healthy. If 1004 is true, then at 1008, the fault module 736 may output an indication that the motor 198 does not have an eccentricity fault, and control may end. If 1004 is false, control may transfer to 1012.
[0130] At 1012, the fault module 736 may determine whether the first eccentricity (A) indicates no eccentricity (healthy) and whether the inductance eccentricity value 724 is less than a second predetermined value. The second predetermined value may be less than or equal to the predetermined value compared to the inductance eccentricity value 724 at 952. If 1012 is true, control may continue with 1020. If 1012 is false, control may continue with 1016.
[0131] At 1016, the fault module 736 may determine whether the second eccentricity (B) indicates no eccentricity (healthy) and whether the voltage eccentricity value 716 is less than a second predetermined value. The second predetermined value may be less than or equal to the predetermined value compared to the voltage eccentricity value 716 at 920. If 1016 is true, control may continue with 1020. If 1016 is false, control may continue with 1024.
[0132] At 1020, the fault module 736 may determine whether the vibration amplitude (from 836) is less than a predetermined value. If 1020 is true, control continues to 1008, where the fault module 736 indicates that the motor 198 does not have an eccentricity fault. If 1020 is false, control continues to 1028. At 1028, the fault module 736 may output an indicator that the motor 198 has an eccentricity fault. One or more other remedial actions may be taken. For example, the fault module 736 may disable the motor 198 or limit the torque output of the motor 198. Before the vehicle leaves the factory, the motor 198 may be replaced with a non-faulty motor. At 1024, the fault module 736 may determine whether both the vibration eccentricity value 716 and the inductance eccentricity value 724 are greater than a second predetermined value. If 1024 is true, control continues to 1028. If 1024 is false, control may be transferred to 1020.
[0133] The foregoing description is merely illustrative in nature and is by no means intended to limit the present disclosure, its application or use. The broad teachings of the present disclosure can be implemented in various forms. Therefore, although the present disclosure includes specific examples, the true scope of the present disclosure should not be so limited, because after studying the drawings, the specification and the appended claims, other modifications will become apparent. It should be understood that one or more steps in the method can be performed in different orders (or simultaneously) without changing the principles of the present disclosure. In addition, although each embodiment is described above as having certain features, any one or more of those features described with respect to any embodiment of the present disclosure can be implemented in the features of any other embodiment and / or combined with the features of any other embodiment, even if the combination is not explicitly described. In other words, the described embodiments are not mutually exclusive, and the replacement of one or more embodiments with each other is still within the scope of the present disclosure.
[0134] Spatial and functional relationships between elements (e.g., between modules, circuit elements, semiconductor layers, etc.) are described using various terms, including "connected," "engaged," "coupled," "adjacent," "next to," "on top of," "above," "below," and "disposed." Unless explicitly described as "direct," when describing the relationship between a first and a second element in the above disclosure, the relationship can be a direct relationship between the first and second elements with no other intervening elements, but can also be an indirect relationship between the first and second elements with one or more intervening elements (spatially or functionally) present. As used herein, the phrase at least one of A, B, and C should be construed to mean a logical (A or B or C), using a non-exclusive logical or, and should not be construed to mean "at least one of A, at least one of B, and at least one of C."
[0135] In a diagram, the direction of the arrow indicated by the arrow generally indicates the flow of information (such as data or instructions) of interest to the diagram. For example, when component A and component B exchange various information, but the information transmitted from component A to component B is relevant to the diagram, the arrow may point from component A to component B. This one-way arrow does not mean that no other information is transmitted from component B to component A. In addition, for information sent from component A to component B, component B may send a request or a receipt confirmation of the information to component A.
[0136] In this application, including the definitions below, the term "module" or the term "controller" may be replaced with the term "circuit". The term "module" may refer to part of or include: an application specific integrated circuit (ASIC); a digital, analog or mixed analog / digital discrete circuit; a digital, analog or mixed analog / digital integrated circuit; a combinational logic circuit; a field programmable gate array (FPGA); a processor circuit (shared, dedicated or grouped) that executes code; a memory circuit (shared, dedicated or grouped) that stores code executed by the processor circuit; other suitable hardware components that provide the described functionality; or a combination of some or all of the above, such as in a system on a chip.
[0137] The module may include one or more interface circuits. In some examples, the interface circuit may include a wired or wireless interface connected to a local area network (LAN), the Internet, a wide area network (WAN), or a combination thereof. The functions of any given module of the present disclosure may be distributed between multiple modules connected by the interface circuit. For example, multiple modules may allow load balancing. In another example, a server (also referred to as a remote or cloud) module may perform some functions on behalf of a client module.
[0138] The term code used above may include software, firmware, and / or microcode, and may refer to programs, routines, functions, classes, data structures, and / or objects. The term shared processor circuit encompasses a single processor circuit that executes some or all code from multiple modules. The term group processor circuit encompasses such a processor circuit, which is combined with additional processor circuits, to execute some or all code from one or more modules. References to multiple processor circuits encompass multiple processor circuits on discrete dies, multiple processor circuits on a single die, multiple cores of a single processor circuit, multiple threads of a single processor circuit, or a combination of the above. The term shared memory circuit encompasses a single memory circuit that stores some or all code from multiple modules. The term group memory circuit encompasses such a memory circuit, which is combined with additional memory, to store some or all code from one or more modules.
[0139] The term memory circuit is a subset of the term computer-readable medium. The term computer-readable medium as used herein does not cover transient electrical or electromagnetic signals propagated through a medium (e.g., on a carrier wave); thus, the term computer-readable medium may be considered to be tangible and non-transitory. Non-limiting examples of non-transitory tangible computer-readable media are non-volatile memory circuits (e.g., flash memory circuits, erasable programmable read-only memory circuits, or mask read-only memory circuits), volatile memory circuits (e.g., static random access memory circuits or dynamic random access memory circuits), magnetic storage media (e.g., analog or digital magnetic tape or hard drive), and optical storage media (e.g., CD, DVD, or Blu-ray disc).
[0140] The apparatus and methods described in this application may be implemented in part or in whole by a special-purpose computer, which is created by configuring a general-purpose computer to perform one or more specific functions embodied in a computer program. The functional blocks, flow chart components and other elements described above act as software specifications, which can be translated into computer programs by the routine work of a skilled technician or programmer.
[0141] The computer program includes processor executable instructions stored on at least one non-transitory tangible computer readable medium. The computer program may also include or rely on stored data. The computer program may include a basic input / output system (BIOS) that interacts with the hardware of the special-purpose computer, device drivers that interact with specific devices of the special-purpose computer, one or more operating systems, user applications, background services, background applications, etc.
[0142] A computer program may include: (i) descriptive text to be parsed, such as HTML (Hypertext Markup Language), XML (Extensible Markup Language), or JSON (JavaScript Object Notation); (ii) assembly code; (iii) object code generated by a compiler from source code; (iv) source code executed by an interpreter; (v) source code compiled and executed by a real-time compiler, etc. By way of example only, the source code may be compiled using languages including C, C++, C#, Objective-C, Swift, Haskell, Go, SQL, R, Lisp, Fortran, Perl, Pascal, Curl, OCaml, HTML5 (Hypertext Markup Language Fifth Revision), Ada, ASP (Active Server Pages), PHP (PHP: Hypertext Preprocessor), Scala, Eiffel, Smalltalk, Erlang, Ruby, Visual Lua, MATLAB, SIMULINK, and The grammar of the language is used to write it.
Claims
1. An eccentricity detection system, comprising: a vibration eccentricity module configured to determine a vibration eccentricity of the motor based on vibrations of the motor measured during operation of the motor; an inductance eccentricity module configured to determine an inductance eccentricity of the motor based on an incremental inductance curve of the motor; as well as A fault module is configured to indicate whether the motor includes an eccentricity fault based on both (a) a vibration eccentricity of the motor and (b) an inductance eccentricity of the motor. 2 . The eccentricity detection system of claim 1 , wherein the fault module is configured to selectively indicate that the motor has an eccentricity fault when the vibration eccentricity is greater than a predetermined value. 3 . The eccentricity detection system of claim 1 , wherein the fault module is configured to selectively indicate that the motor has an eccentricity fault when the inductance eccentricity is greater than a predetermined value.
4. The eccentricity detection system according to claim 1, further comprising a voltage eccentricity module configured to determine a voltage eccentricity of the motor based on a voltage command for the motor, Wherein the fault module is configured to indicate whether the electric motor includes an eccentricity fault further based on the voltage eccentricity. 5 . The eccentricity detection system of claim 4 , wherein the fault module is configured to selectively indicate that the motor has an eccentricity fault when the voltage eccentricity is greater than a predetermined value. The eccentricity detection system according to claim 4 , wherein the voltage command is a d-axis voltage command. 7 . The eccentricity detection system according to claim 4 , wherein the voltage command is a q-axis voltage command. 8 . The eccentricity detection system of claim 4 , wherein the voltage eccentricity module is configured to determine the voltage eccentricity of the motor when the motor is operating at a predetermined speed. 9 . The eccentricity detection system of claim 4 , wherein the voltage eccentricity module is configured to determine the voltage eccentricity of the motor when the motor is operating at a predetermined torque. 10 . The eccentricity detection system of claim 1 , wherein the vibration eccentricity module is configured to determine the vibration eccentricity of the motor when the motor is operating at a predetermined speed.