Motor control method and related equipment
By setting the voltage distortion suppression strategy in the motor controller in segments and selecting a suitable control strategy based on the torque range of the motor, the torque pulsation problem caused by the dead zone effect in the motor drive circuit is solved, and the stability and control reliability of the motor are improved.
Patent Information
- Application Number
- CN202411950748.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-27
- Publication Date
- 2025-03-28
AI Technical Summary
The existing motor driving circuits produce voltage distortion due to the dead zone effect during the modulation period, resulting in the output current having a harmonic component and torque pulsation, which affects the stability of the motor, especially when it is accelerated and decelerated.
By setting voltage distortion suppression strategies in the motor controller in segments, selecting appropriate voltage distortion suppression strategies based on the motor's torque range, including adopting different control strategies when the torque is in different intervals, adjusting the control signal to reduce vibration noise, and suppressing torque pulsation through voltage compensation and dead time optimization.
It effectively solves the torque pulsation problem caused by the motor within a larger torque range, improves the reliability and safety of motor control, and reduces noise and vibration.
Smart Images

Figure CN119727501A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of motors, and in particular to a motor control method and related equipment. Background Art
[0002] In the motor drive circuit, in order to prevent the upper and lower switches of the bridge arm from short-circuiting and ensure the normal operation of the drive circuit, it is necessary to set a dead time when the switch is turned on and off to ensure that one switch is turned off before another switch is turned on. However, due to the dead time effect, the drive circuit may have slight voltage distortion during the modulation cycle. And after the accumulation of multiple modulation cycles, this voltage distortion will eventually cause the current output by the drive circuit to have harmonic components, thereby generating torque pulsation and affecting the stability of the motor.
[0003] For example, under transient conditions such as sudden acceleration and deceleration, the sudden change in the motor output torque causes a large voltage distortion in the drive circuit, and the torque transmitted by each shaft in the transmission system will oscillate greatly, causing low-frequency jitter in the vehicle speed and generating noise in the transmission, affecting the smoothness of the vehicle.
[0004] The voltage compensation strategy can suppress the torque pulsation of the motor. However, the voltage distortion generated by the motor at different torques is different, and the voltage compensation strategy is usually effective for a smaller torque range. For torque pulsation generated in a larger torque range, a single voltage compensation strategy is difficult to effectively suppress. Summary of the invention
[0005] In order to solve the problems in the prior art, the present application provides a motor control method and related equipment to reduce torque pulsation in the motor.
[0006] The present application provides a motor control method, which is applied to a motor controller. The motor controller includes a control circuit and a drive circuit. The drive circuit is used to be electrically connected to the motor; the control circuit is used to output a control signal to the drive circuit; the motor control method includes: Obtaining the torque of the motor; If the torque of the motor is in a first interval, adjusting the control signal based on the vibration noise value of the motor; If the torque of the motor is in a second interval, voltage compensation is performed on the control signal based on the torque of the motor; wherein a minimum value of the second interval is greater than or equal to a maximum value of the first interval.
[0007] In one embodiment, adjusting the control signal based on the vibration noise value of the motor includes: Obtaining a vibration noise value of the motor; If the vibration noise value is greater than a preset noise value, the vector current value of the motor is adjusted, and the control signal is adjusted according to the vector current value of the motor.
[0008] In one embodiment, performing voltage compensation on the control signal based on the torque of the motor includes: determining a dead time of the drive circuit based on the torque of the motor; determining a first compensation voltage value of the control signal based on the dead time; The control signal is voltage compensated based on the first compensation voltage value.
[0009] In one embodiment, determining the dead time of the driving circuit based on the torque of the motor includes: Obtaining the dead time corresponding to when the vibration noise value of the motor is less than the preset noise value under different torques, and generating a dead time preset table; The dead time of the driving circuit is determined based on the torque of the motor and the dead time preset table.
[0010] Alternatively, the dead time corresponding to when the vibration noise value of the motor is less than a preset noise value at different speeds and different torques is obtained, and a preset dead time table is generated; The dead time of the driving circuit is determined based on the rotation speed of the motor, the torque of the motor and the dead time preset table.
[0011] In one embodiment, determining the first compensation voltage value of the control signal based on the dead time includes: Determining a second compensation voltage value of the motor in a stationary two-phase coordinate system based on the dead time; A first compensation voltage value of each phase control signal in the driving circuit is determined based on the second compensation voltage value.
[0012] In one embodiment, the first interval includes [0, 10)N·m; and the second interval includes [10, 50]N·m.
[0013] In one embodiment, the motor control method further includes: If the operating parameters of the motor do not meet the preset conditions, no voltage compensation is performed on the control signal; the preset conditions include at least one of the torque of the motor being less than or equal to the maximum value of the second interval, the speed of the motor being less than or equal to the preset speed, the voltage utilization rate of the control signal being less than the preset utilization rate, and the current of the control signal being greater than or equal to the preset current.
[0014] In one embodiment, the motor control method further includes: If the torque of the motor is in a third interval, a harmonic current is injected based on the vibration noise value of the motor; wherein the minimum value of the third interval is greater than the maximum value of the second interval.
[0015] The present application also proposes a motor controller, comprising a control circuit, a drive circuit and a memory; the control circuit is used to control the operation of the drive circuit; the memory stores computer instructions, and when the computer instructions run on the control circuit, the control circuit executes the above-mentioned motor control method.
[0016] The present application also proposes a vehicle, comprising a motor and the above-mentioned motor controller; the motor controller is used to control the operation of the motor.
[0017] The present application performs noise suppression processing on the motor in different torque ranges and implements different voltage distortion suppression strategies according to the voltage distortion characteristics of the motor in different torque ranges, thereby effectively solving the torque pulsation problem generated by the motor in a larger torque range and improving the reliability and safety of motor control. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] Figure 1 This is a schematic diagram of the module structure of an embodiment of a motor controller of the present application.
[0019] Figure 2 It is a schematic structural diagram of an embodiment of a driving circuit of the present application.
[0020] Figure 3 This is a current map diagram optimized for the first torque range in an embodiment of the present application.
[0021] Figure 4 This is a current map diagram optimized for the full torque range in an embodiment of the present application.
[0022] Figure 5 This is a diagram showing the switching state changes of a switch tube in one embodiment of the present application.
[0023] Figure 6 This is a flow chart of a motor control method according to an embodiment of the present application.
[0024] Figure 7 This is a flow chart of adjusting a control signal when the motor torque is in a first interval according to an embodiment of the present application.
[0025] Figure 8 This is a flow chart of performing voltage compensation when the motor torque is in the second interval according to an embodiment of the present application.
[0026] Fig. 9 The present invention is a flowchart of determining a first compensation voltage value according to an embodiment of the present invention.
[0027] Fig.10This is a flow chart of determining dead time according to an embodiment of the present application.
[0028] Fig.11 This is a flow chart of determining dead time according to another embodiment of the present application.
[0029] Fig.12 This is a flow chart of a motor control method according to another embodiment of the present application.
[0030] Description of the main component symbols: motor controller-100; control circuit-110; drive circuit-120; first switch tube-Q1; second switch tube-Q2; third switch tube-Q3; fourth switch tube-Q4; fifth switch tube-Q5; sixth switch tube-Q6; motor-200.
[0031] The following specific implementation methods will further illustrate the present application in conjunction with the above-mentioned drawings. DETAILED DESCRIPTION
[0032] The following description will refer to the accompanying drawings to more fully describe the content of the present application. Shown in the accompanying drawings are exemplary embodiments of the present application. However, the present application can be implemented in many different forms and should not be construed as being limited to the exemplary embodiments set forth herein. These exemplary embodiments are provided to make the present application thorough and complete, and to fully convey the scope of the present application to those skilled in the art. Similar reference numerals represent identical or similar components.
[0033] The terms used herein are only used for the purpose of describing specific exemplary embodiments and are not intended to limit the present application. As used herein, unless the context clearly indicates otherwise, the singular forms "a", "an" and "the" are intended to also include the plural forms. In addition, when used herein, "including" and / or "comprising" and / or "having", integers, steps, operations, components and / or components, but do not exclude the existence or addition of one or more other features, regions, integers, steps, operations, components and / or groups thereof.
[0034] Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by those of ordinary skill in the art to which this application belongs. In addition, unless explicitly defined herein, terms such as those defined in general dictionaries should be interpreted as having a meaning consistent with their meaning in the relevant technology and the content of this application, and will not be interpreted as an idealized or overly formal meaning.
[0035] The following will describe exemplary embodiments in conjunction with the accompanying drawings. It should be noted that the components depicted in the reference drawings are not necessarily shown to scale; and the same or similar components will be given the same or similar reference numerals or similar technical terms.
[0036] Reference Figure 1 , the present application proposes a motor controller 100. The motor controller 100 includes a control circuit 110 and a drive circuit 120. The control circuit 110 can output a control signal with a preset duty cycle to control the switch tube in the drive circuit 120 to be turned on and off, thereby outputting a corresponding drive signal to drive the motor 200 to rotate. Among them, the control circuit 110 can be implemented by a chip with control function such as an ECU (electronic control unit), a microprocessor, or an FPGA (Field Programmable Gate Array).
[0037] Reference Figure 2 In one embodiment, the driving circuit 120 includes an A-phase bridge arm, a B-phase bridge arm, and a C-phase bridge arm. The A-phase bridge arm includes a first switch tube Q1 and a second switch tube Q2, the B-phase bridge arm includes a third switch tube Q3 and a fourth switch tube Q4, and the C-phase bridge arm includes a fifth switch tube Q5 and a sixth switch tube Q6. The control circuit 110 can output a first control signal to control the first switch tube Q1 to be turned on / off and the second switch tube Q2 to be turned on / off, thereby outputting a first drive signal to the A-phase coil of the motor 200. Similarly, the control circuit 110 can also output a second control signal and a third control signal to the B-phase bridge arm and the C-phase bridge arm, respectively, so that the B-phase bridge arm and the C-phase bridge arm respectively output a second drive signal and a third drive signal to the B-phase coil and the C-phase coil of the motor 200. In this way, the three-phase coils of the motor 200 form a rotating magnetic field after being energized, and the rotor of the motor 200 generates an electromagnetic force under the action of the rotating magnetic field, driving the motor 200 to rotate.
[0038] In one embodiment, the motor controller 100 can be applied to various electric devices such as vehicles (such as electric vehicles, airplanes, ships, etc.), household appliances (such as washing machines, refrigerators, vacuum cleaners, etc.), industrial tools (electric scissors, electric chain saws, etc.), etc., and the present application embodiment does not limit this. For example, the motor controller 100 is applied to the transmission system of a vehicle to control the motor 200 in the transmission system to work, thereby driving the wheels of the vehicle to rotate.
[0039] In the drive circuit 120, in order to prevent the upper and lower switch tubes of the bridge arm from being short-circuited and to ensure the normal operation of the drive circuit 120, it is necessary to set a dead time when the switch tube is turned on and off to ensure that one switch tube is turned off before another switch tube is turned on. However, due to the dead time effect, the drive circuit 120 may have slight voltage distortion during the modulation cycle. And after the accumulation of multiple modulation cycles, this voltage distortion will eventually cause the current output by the drive circuit 120 to have harmonic components, thereby generating torque pulsation, generating noise in the transmission system, and affecting the smoothness of the vehicle.
[0040] In order to solve the above problems, an embodiment of the present application sets the voltage distortion suppression strategy in segments, selects a suitable voltage distortion suppression strategy according to the torque of the motor 200, and effectively suppresses torque pulsation and vibration noise.
[0041] In one embodiment, if the torque of the motor 200 is in the first interval, the control circuit 110 adjusts the control signal based on the vibration noise value of the motor 200. The torque of the motor 200 can be measured and determined by an encoder, a force sensor, etc., or determined according to the set torque of the motor controller 100. The vibration noise value of the motor 200 can be determined by performing a vibration noise test on the motor 200. The control signal can be a PWM signal. If the vibration noise value of the motor 200 is greater than the preset noise value, the control circuit 110 can adjust the duty cycle of the control signal to reduce the vibration noise value of the motor 200. If the vibration noise value of the motor 200 is less than or equal to the preset noise value, the control circuit 110 can continue to output the current control signal to control the motor 200 to work. The preset noise value can be set according to the actual application, for example, it can be determined by measuring the noise value of the motor 200 during normal operation to ensure the stable operation of the motor 200.
[0042] In one embodiment, if the torque of the motor 200 is in the first interval and the vibration noise value is greater than a preset noise value, the vector current value of the motor 200 is adjusted, and the control signal is adjusted according to the vector current value of the motor 200 to reduce the vibration noise. The preset noise value can be set according to the NVH (Noise, Vibration, Harshness) standard.
[0043] In the control of the motor 200, a rotating coordinate system can be used to describe the operating state of the motor 200. The rotating coordinate system rotates synchronously with the rotor of the motor 200, and its origin is located at the center of the rotor. The rotating coordinate system includes a d-axis (Direct Axis, also known as the flux axis) and a q-axis (Quadrature Axis, also known as the torque axis). By controlling the d-axis current, the magnetic flux of the motor 200 can be controlled. By controlling the q-axis current, the torque output of the motor 200 can be controlled.
[0044] In vector control, the vibration noise value of the motor 200 can be adjusted by adjusting the d-axis current and the q-axis current to perform current map optimization. For example, if the vibration noise value of the motor 200 is greater than 40dB, the d-axis current value and the q-axis current value are reduced, and a control signal with a corresponding duty cycle is generated based on the reduced d-axis current value and the q-axis current value until the vibration noise value of the motor 200 is less than or equal to 40dB. In a smaller torque range, the current distortion generated by the current map optimization is smaller. Figure 3As shown, when the torque is in the first relatively small interval, the current map optimization with a relatively simple adjustment method can be used to quickly and effectively suppress the torque pulsation.
[0045] However, in transient conditions such as rapid acceleration and deceleration, the voltage distortion is large due to the sudden change in the output torque of the motor 200. If the current map is optimized for the full torque range, a point-sweeping multi-objective optimization is required. Figure 4 As shown, the difficulty of fitting affects the actual control effect and also leads to problems such as excessive current distortion.
[0046] For example, when the vehicle is accelerating and starting, the torque of the motor 200 changes suddenly from 0 to 50 N·m in a short time. When the torque of the motor 200 is between 10 and 50 N·m, the voltage distortion is large. At this time, current map optimization will cause current distortion and fail to effectively suppress torque pulsation.
[0047] Therefore, the control circuit 110 can adopt different control strategies when the torque is in different intervals, and effectively suppress torque pulsation within a larger torque range.
[0048] In one embodiment, if the torque of the motor 200 is in a second interval, the control circuit 110 performs voltage compensation on the control signal based on the torque of the motor 200 ; wherein the minimum value of the second interval is greater than or equal to the maximum value of the first interval.
[0049] In this embodiment, the control circuit 110 can compensate for the voltage distortion caused by the dead zone effect according to the torque of the motor 200, and output a corresponding control signal according to the compensated voltage, thereby suppressing torque pulsation.
[0050] In one embodiment, if the torque of the motor 200 is in the second interval, the control circuit 110 determines the dead time of the drive circuit 120 based on the torque of the motor 200; determines the first compensation voltage value of the control signal based on the dead time; and performs voltage compensation on the control signal based on the first compensation voltage value.
[0051] Taking the A-phase bridge arm as an example, during the dead time, the switch device in the first switch tube Q1 and the switch device in the second switch tube Q2 both stop conducting, and one of the diode in the first switch tube Q1 and the diode in the second switch tube Q2 stops conducting and the other starts conducting. Assuming that when the current polarity is positive, the diode of the second switch tube Q2 starts conducting; when the current polarity is negative, the diode of the first switch tube Q1 starts conducting. The switching states and output voltages of the first switch tube Q1 and the second switch tube Q2 are shown in Figure 1. Figure 5As shown. According to the above analysis, the voltage loss caused by the dead zone effect is related to the current direction. Since the on / off time of the switch tube is negligible compared with the dead zone time, the on / off time of the switch tube will be ignored in the subsequent description.
[0052] In actual applications, after receiving the control signal, the switch tube will delay the dead time and then change the on / off state to ensure that the two switch tubes are not turned on at the same time, but at the same time, voltage distortion will also be generated due to the dead time.
[0053] The voltage distortion caused by the dead time is: , >0, , <0 (1).
[0054] in, is the dead time, To control the cycle, is the bus voltage, is the current polarity.
[0055] In this way, the voltage distortion can be determined based on the dead time , thereby determining the first compensation voltage value.
[0056] In one embodiment, the control circuit 110 determines a second compensation voltage value of the motor 200 in a stationary two-phase coordinate system based on the dead time; and determines a first compensation voltage value of each phase control signal in the driving circuit 120 based on the second compensation voltage value.
[0057] In the control of the motor 200, the α-β axis coordinate system (also called the two-phase stationary two-phase coordinate system) is a transformation from a three-phase coordinate system to a two-phase coordinate system. The α axis coincides with the A phase and represents the component of the stator current in the α axis direction. The β axis leads the α axis by 90 degrees and represents the component of the stator current in the β axis direction. This embodiment determines the compensation voltage value of each phase in the drive circuit 120 by calculating the voltage loss on the α axis and the β axis of the motor 200 in the stationary two-phase coordinate system.
[0058] definition: (2), where The compensation voltage is calculated based on the dead time.
[0059] According to Clarke transformation, the voltage compensation of α axis and β-axis voltage compensation They are: , (3).
[0060] Afterwards, the compensation voltage is converted from the stationary two-phase coordinate system to the stationary three-phase coordinate system through the inverse Clarke transformation: (4).
[0061] in, is the voltage loss of phase A due to the dead time (i.e. the third compensation voltage of phase A), is the voltage loss of phase B due to the dead time (i.e., the third compensation voltage of phase B), is the C-phase voltage loss caused by the dead time (ie, the third compensation voltage of the C-phase).
[0062] Finally, the voltage of each phase is determined according to the voltage loss of each phase, and the corresponding control signal is generated: (5).
[0063] in, is the phase A voltage, is the B phase voltage, is the C phase voltage.
[0064] In this way, by performing voltage compensation on the control signal, voltage distortion caused by the dead time can be suppressed, thereby suppressing torque pulsation caused by voltage distortion.
[0065] In one embodiment, the control circuit 110 is used to obtain the dead time of the motor 200 at different speeds and different torques to satisfy the vibration noise value less than the preset noise value, and generate a dead time preset table, and determine the dead time of the drive circuit 120 based on the speed of the motor 200, the torque of the motor 200 and the dead time preset table.
[0066] In this embodiment, the dead time preset table can be obtained by pre-testing. For example, the motor 200 is set to the first torque, the vibration noise value of the motor 200 is tested at different dead times, and the minimum dead time and the maximum dead time when the vibration noise value is less than the preset noise value are recorded to obtain the dead time range. Afterwards, the first torque is changed to obtain the dead time range of the motor 200 under different torques to meet the vibration noise value less than the preset noise value. In this embodiment, the motor speed does not affect the dead time, and the dead time corresponding to different motor speeds under the same torque remains consistent. For example, when the torque of the motor 200 is 10N·m, the dead time can be set to 0.01±0.005s; when the torque of the motor 200 is 40 N·m, the dead time can be set to 0.02±0.01s. Afterwards, the dead time preset table is generated according to the dead time range that meets the vibration noise value less than the preset noise value under different torques, as shown in Table 1.
[0067] Table 1 In this way, the control circuit 110 can determine the dead time of the motor 200 at the current torque through the dead time preset table, so as to perform voltage compensation on the control signal according to the dead time. If the torque of the motor 200 is between two torque values in the dead time preset table, the control signal can be voltage compensated according to the dead time corresponding to the previous torque value. For example, if the torque of the motor 200 is 15 N·m, the control signal can be voltage compensated according to the dead time 0.01s corresponding to the torque of the motor 200 of 10 N·m in the dead time preset table.
[0068] In one embodiment, the control circuit 110 is also used to obtain the dead time of the motor 200 at different speeds and different torques to satisfy the vibration noise value less than the preset noise value, and generate a dead time preset table, and determine the dead time of the drive circuit 120 based on the speed of the motor 200, the torque of the motor 200 and the dead time preset table.
[0069] In this embodiment, when the output power of the motor 200 remains unchanged, the speed and torque of the motor 200 are inversely proportional. However, during the operation of the vehicle, the output power of the motor 200 may change with the road conditions. For example, when the vehicle is in a state of rapid acceleration, the torque and speed of the motor 200 both increase suddenly in a short period of time, resulting in a large voltage distortion of the drive circuit 120. Therefore, in this embodiment, a more accurate dead time can be determined according to the speed and torque of the motor 200, so as to more effectively suppress voltage distortion according to the dead time.
[0070] In this embodiment, the dead time preset table can be obtained by pre-testing. For example, the motor 200 is set to the first speed and the first torque, the vibration noise value of the motor 200 at different dead times is tested, and the minimum dead time and the maximum dead time when the vibration noise value is less than the preset noise value are recorded to obtain the dead time range. Afterwards, the first speed and / or the first torque are changed to obtain the dead time range of the motor 200 at different speeds and different torques to meet the vibration noise value less than the preset noise value. For example, when the torque of the motor 200 is 10N·m and the speed is 2200rpm, the dead time is 0.01s±0.005; when the torque of the motor 200 is 50 N·m and the speed is 2300rpm, the dead time is 0.02±0.01s. Afterwards, the dead time preset table is generated according to the dead time range that satisfies the vibration noise value less than the preset noise value at different speeds and different torques, as shown in Table 2.
[0071] Table 2 The dead time unit shown in the above table is seconds (s). If the torque of the motor 200 is between two torque values in the dead time preset table, or the speed of the motor 200 is between two speed values in the dead time preset table, the control signal can be voltage compensated according to the dead time corresponding to the previous torque value. For example, if the torque of the motor 200 is 15 N·m and the speed of the motor 200 is 2250 rpm, the control signal can be voltage compensated according to the dead time 0.01s corresponding to the motor torque of 10 N·m and the speed of 2250 rpm in the dead time preset table.
[0072] The different torque and speed values shown in Tables 1 and 2 are provided as examples. The actual adjacent torque differences need to be determined according to the accuracy of the control system to ensure the accuracy and efficiency of the motor operation. In the actual establishment of the dead time preset table, a larger torque range can be selected as the reference value for the test, and the dead time in the middle area can be calculated by interpolation, which can be more flexibly adapted to different working conditions and requirements. This flexible control strategy can improve the response speed and adjustment accuracy of the system, reduce errors in motor operation, and thus improve overall energy efficiency and performance.
[0073] In one embodiment, the first interval may include [0, 10) N·m; the second interval may include [10, 50] N·m. In addition, the first interval and the second interval may also be set to other numerical ranges according to actual applications to suppress torque pulsation and reduce noise.
[0074] In one embodiment, if the operating parameters of the motor 200 do not meet the preset conditions, the control circuit 110 may not perform voltage compensation on the control signal; the preset conditions include at least one of the torque of the motor 200 being less than or equal to the maximum value of the second interval, the speed of the motor 200 being less than or equal to the preset speed, the voltage utilization rate of the control signal being less than the preset utilization rate, and the current of the control signal being greater than or equal to the preset current.
[0075] In this embodiment, when the torque of the motor 200 is greater than the maximum value of the second interval, the speed of the motor 200 is greater than the preset speed, or the voltage utilization rate of the control signal is greater than the preset utilization rate, the voltage distortion generated by the drive circuit 120 is large, and voltage compensation may not be able to effectively suppress it. Therefore, the voltage compensation of the control signal can be stopped, or torque pulsation can be suppressed by current map optimization, harmonic injection, etc.
[0076] When the current of the control signal is less than the preset current, the voltage distortion generated by the drive circuit 120 is small, and the voltage compensation of the control signal can be stopped, or the current map optimization can be used to suppress the torque pulsation.
[0077] In one embodiment, if the torque of the motor 200 is in a third interval, the control circuit 110 is further configured to inject harmonic current based on the vibration noise value of the motor 200 ; wherein the minimum value of the third interval is greater than the maximum value of the second interval.
[0078] In this embodiment, the original harmonic current is offset by injecting harmonic current of opposite phase into the motor 200, thereby reducing vibration and noise. The injected harmonic current can be determined according to the vibration noise value of the motor 200, for example, the harmonic current required to be injected when the vibration noise value of the test motor 200 is less than the preset noise value at different torques. The third interval can be set according to the actual application, for example, it can be set to (50,100] N·m.
[0079] The present application performs noise suppression processing on the motor 200 in different torque intervals, and implements different voltage distortion suppression strategies according to the voltage distortion characteristics of the motor 200 in different torque intervals, thereby effectively solving the torque pulsation problem generated by the motor 200 in a larger torque range and improving the reliability and safety of the motor 200 control.
[0080] The present application also provides a vehicle, wherein the vehicle includes the motor controller 100 described above.
[0081] The detailed structure of the motor controller 100 can be referred to the above-mentioned embodiment, which will not be described in detail here; it can be understood that since the above-mentioned motor controller 100 is used in the vehicle of the present application, the embodiments of the vehicle of the present application include all technical solutions of all embodiments of the above-mentioned motor controller 100, and the technical effects achieved are also exactly the same, which will not be described in detail here.
[0082] Reference Figure 6 The present application also proposes a motor control method, which is applied to the motor controller 100. The motor control method includes: S1: Obtaining the torque of the motor 200 .
[0083] The torque of the motor 200 may be determined by measuring with an encoder, a force sensor, etc., or may be determined according to a set torque of the motor controller 100 .
[0084] S2: If the torque of the motor 200 is in the first interval, adjust the control signal based on the vibration noise value of the motor 200 .
[0085] In this embodiment, the motor controller 100 can be applied to various electric devices such as vehicles (such as electric vehicles, airplanes, ships, etc.), household appliances (such as washing machines, refrigerators, vacuum cleaners, etc.), industrial tools (electric scissors, electric chain saws, etc.). For example, the motor controller 100 is applied to the transmission system of a vehicle to control the motor 200 in the transmission system to work, thereby driving the wheels of the vehicle to rotate.
[0086] In the drive circuit 120, in order to prevent the upper and lower switch tubes of the bridge arm from being short-circuited and to ensure the normal operation of the drive circuit 120, it is necessary to set a dead time when the switch tube is turned on and off to ensure that one switch tube is turned off before another switch tube is turned on. However, due to the dead time effect, the drive circuit 120 may have slight voltage distortion during the modulation cycle. And after the accumulation of multiple modulation cycles, this voltage distortion will eventually cause the current output by the drive circuit 120 to have harmonic components, thereby generating torque pulsation, generating noise in the transmission system, and affecting the smoothness of the vehicle.
[0087] If the torque of the motor 200 is in the first interval, the control circuit 110 adjusts the control signal based on the vibration noise value of the motor 200. The vibration noise value of the motor 200 can be determined by performing a vibration noise test on the motor 200. The control signal can be a PWM signal. If the vibration noise value of the motor 200 is greater than the preset noise value, the control circuit 110 can adjust the duty cycle of the control signal to reduce the vibration noise value of the motor 200. If the vibration noise value of the motor 200 is less than or equal to the preset noise value, the control circuit 110 can continue to output the current control signal to control the motor 200 to work. The preset noise value can be set according to the actual application, for example, it can be determined by measuring the noise value of the motor 200 during normal operation to ensure the stable operation of the motor 200.
[0088] Reference Figure 7 In one embodiment, step S2 includes: S21: Acquire the vibration noise value of the motor 200.
[0089] S22: If the vibration noise value is greater than a preset noise value, adjust the vector current value of the motor 200, and adjust the control signal according to the vector current value of the motor 200. The preset noise value may be set according to an NVH (Noise, Vibration, Harshness) standard.
[0090] In the control of the motor 200, a rotating coordinate system can be used to describe the operating state of the motor 200. The rotating coordinate system rotates synchronously with the rotor of the motor 200, and its origin is located at the center of the rotor. The rotating coordinate system includes a d-axis (Direct Axis, also known as the flux axis) and a q-axis (Quadrature Axis, also known as the torque axis). By controlling the d-axis current, the magnetic flux of the motor 200 can be controlled. By controlling the q-axis current, the torque output of the motor 200 can be controlled.
[0091] In vector control, the vibration noise value of the motor 200 can be adjusted by adjusting the d-axis current and the q-axis current to perform current map optimization. For example, if the vibration noise value of the motor 200 is greater than 40dB, the d-axis current value and the q-axis current value are reduced, and a control signal with a corresponding duty cycle is generated based on the reduced d-axis current value and the q-axis current value until the vibration noise value of the motor 200 is less than or equal to 40dB. In a smaller torque range, the current distortion generated by the current map optimization is smaller. Therefore, when the torque is in a smaller first range, the current map optimization with a simpler adjustment method is used to quickly and effectively suppress torque pulsation.
[0092] However, in transient conditions such as rapid acceleration and deceleration, the voltage distortion is large due to the sudden change in the output torque of the motor 200. If the current map optimization is performed over the entire torque range, a sweep point multi-objective optimization is required. In this case, the difficulty of fitting affects the actual control effect, and it also causes problems such as excessive current distortion, such as Figure 3 shown.
[0093] For example, when the vehicle is accelerating and starting, the torque of the motor 200 changes suddenly from 0 to 50 N·m in a short time. When the torque of the motor 200 is between 10 and 50 N·m, the voltage distortion is large. At this time, current map optimization will cause current distortion and fail to effectively suppress torque pulsation.
[0094] Therefore, the control circuit 110 can adopt different control strategies when the torque is in different intervals, and effectively suppress torque pulsation within a larger torque range.
[0095] S3: If the torque of the motor 200 is in a second interval, voltage compensation is performed on the control signal based on the torque of the motor 200; wherein the minimum value of the second interval is greater than or equal to the maximum value of the first interval.
[0096] In this embodiment, the control circuit 110 can compensate for the voltage distortion caused by the dead zone effect according to the rotation speed of the motor 200 and the torque of the motor 200, and output a corresponding control signal according to the compensated voltage, thereby suppressing torque pulsation.
[0097] Reference Figure 8In one embodiment, step S3 includes: S31 : determining the dead time of the driving circuit 120 based on the torque of the motor 200 .
[0098] S32: Determine a first compensation voltage value of the control signal based on the dead time.
[0099] S33: Perform voltage compensation on the control signal based on the first compensation voltage value.
[0100] Taking the A-phase bridge arm as an example, during the dead time, the switch device in the first switch tube Q1 and the switch device in the second switch tube Q2 both stop conducting, and one of the diode in the first switch tube Q1 and the diode in the second switch tube Q2 stops conducting and the other starts conducting. Assuming that when the current polarity is positive, the diode of the second switch tube Q2 starts conducting; when the current polarity is negative, the diode of the first switch tube Q1 starts conducting. The switching states and output voltages of the first switch tube Q1 and the second switch tube Q2 are shown in Figure 1. Figure 5 As shown. According to the above analysis, the voltage loss caused by the dead zone effect is related to the current direction. Since the on / off time of the switch tube is negligible compared with the dead zone time, the on / off time of the switch tube will be ignored in the subsequent description.
[0101] In actual applications, after receiving the control signal, the switch tube will delay the dead time before changing the on / off state to ensure that the two switch tubes are not turned on at the same time, but at the same time, voltage distortion will be generated due to the dead time. The calculation of voltage distortion can refer to formula (1). In this way, the voltage distortion can be determined according to the dead time, thereby determining the first compensation voltage value.
[0102] Reference Fig. 9 In one embodiment, step S32 includes: S321: Determine a second compensation voltage value of the motor 200 in a stationary two-phase coordinate system based on the dead time.
[0103] S322: Determine a first compensation voltage value of each phase control signal in the driving circuit 120 based on the second compensation voltage value.
[0104] In the control of the motor 200, the α-β axis coordinate system (also called the two-phase stationary two-phase coordinate system) is a transformation from a three-phase coordinate system to a two-phase coordinate system. The α axis coincides with the A phase and represents the component of the stator current in the α axis direction. The β axis leads the α axis by 90 degrees and represents the component of the stator current in the β axis direction. This embodiment determines the compensation voltage value of each phase of the drive circuit 120 by calculating the voltage loss on the α axis and the β axis of the motor 200 in the stationary two-phase coordinate system. The compensation voltage value calculation can refer to formulas (2) to (5).
[0105] In this way, by performing voltage compensation on the control signal, voltage distortion caused by the dead time can be suppressed, thereby suppressing torque pulsation caused by voltage distortion.
[0106] Reference Fig.10 In one embodiment, step S31 includes: S311: Obtain the dead time of the motor 200 at different speeds and different torques to ensure that the vibration noise value is less than the preset noise value, and generate a dead time preset table.
[0107] S312: Determine the dead time based on the rotation speed of the motor 200, the torque of the motor 200 and the dead time preset table.
[0108] In this embodiment, the dead time preset table can be obtained by pre-testing. For example, the motor 200 is set to the first torque, the vibration noise value of the motor 200 is tested at different dead times, and the minimum dead time and the maximum dead time when the vibration noise value is less than the preset noise value are recorded to obtain the dead time range. Afterwards, the first torque is changed to obtain the dead time range of the motor 200 under different torques to meet the vibration noise value less than the preset noise value. For example, when the torque of the motor 200 is 10 N·m, the dead time can be set to 0.01±0.005s; when the torque of the motor 200 is 40 N·m, the dead time can be set to 0.02±0.01s. Afterwards, a dead time preset schedule is generated according to the dead time range that satisfies the vibration noise value less than the preset noise value under different torques, as shown in Table 1.
[0109] In this way, the control circuit 110 can determine the dead time of the motor 200 at the current torque through the dead time preset table, so as to perform voltage compensation on the control signal according to the dead time. If the torque of the motor 200 is between two torque values in the dead time preset table, the control signal can be voltage compensated according to the dead time corresponding to the previous torque value. For example, if the torque of the motor 200 is 15 N·m, the control signal can be voltage compensated according to the dead time 0.01s corresponding to the torque of the motor 200 of 10 N·m in the dead time preset table.
[0110] Reference Fig.11 In one embodiment, step S31 includes: S313: Obtain the dead time of the motor 200 at different speeds and different torques to ensure that the vibration noise value is less than the preset noise value, and generate a dead time preset table.
[0111] S314: Determine the dead time of the driving circuit 120 based on the rotation speed of the motor 200, the torque of the motor 200 and the dead time preset table.
[0112] In this embodiment, when the output power of the motor 200 remains unchanged, the speed and torque of the motor 200 are inversely proportional. However, during the operation of the vehicle, the output power of the motor 200 may change with the road conditions. For example, when the vehicle is in a state of rapid acceleration, the torque and speed of the motor 200 both increase suddenly in a short period of time, resulting in a large voltage distortion of the drive circuit 120. Therefore, in this embodiment, a more accurate dead time can be determined according to the speed and torque of the motor 200, so as to more effectively suppress voltage distortion according to the dead time.
[0113] In this embodiment, the dead time preset table can be obtained by pre-testing. For example, the motor 200 is set to the first speed and the first torque, the vibration noise value of the motor 200 at different dead times is tested, and the minimum dead time and the maximum dead time when the vibration noise value is less than the preset noise value are recorded to obtain the dead time range. Afterwards, the first speed and / or the first torque are changed to obtain the dead time range of the motor 200 at different speeds and different torques to meet the vibration noise value less than the preset noise value. For example, when the torque of the motor 200 is 10N·m and the speed is 2200rpm, the dead time is 0.01s±0.005; when the torque of the motor 200 is 50 N·m and the speed is 2300rpm, the dead time is 0.02±0.01s. Afterwards, the dead time preset table is generated according to the dead time range that satisfies the vibration noise value less than the preset noise value at different speeds and different torques, as shown in Table 2.
[0114] If the torque of the motor 200 is between two torque values in the dead time preset table, or the speed of the motor 200 is between two speed values in the dead time preset table, the control signal can be voltage compensated according to the dead time corresponding to the previous torque value. For example, if the torque of the motor 200 is 15 N·m and the speed of the motor 200 is 2250rpm, the control signal can be voltage compensated according to the dead time 0.01s corresponding to the motor torque of 10 N·m and the speed of 2250rpm in the dead time preset table.
[0115] In one embodiment, the first interval includes [0, 10) N·m; the second interval includes [10, 50] N·m. In addition, the first interval and the second interval can also be set to other numerical ranges according to actual applications to suppress torque pulsation and reduce noise.
[0116] In one embodiment, the motor control method further includes: S4: If the operating parameters of the motor 200 do not meet the preset conditions, the control signal is not voltage compensated; the preset conditions include at least one of the torque of the motor 200 being less than or equal to the maximum value of the second interval, the speed of the motor 200 being less than or equal to the preset speed, the voltage utilization rate of the control signal being less than the preset utilization rate, and the current of the control signal being greater than or equal to the preset current.
[0117] In this embodiment, when the torque of the motor 200 is greater than the maximum value of the second interval, the speed of the motor 200 is greater than the preset speed, or the voltage utilization rate of the control signal is greater than the preset utilization rate, the voltage distortion generated by the drive circuit 120 is large, and voltage compensation may not be able to effectively suppress it, so the voltage compensation of the control signal can be stopped. When the current of the control signal is less than the preset current, the voltage distortion generated by the drive circuit 120 is small, and the voltage compensation of the control signal can be stopped, or torque pulsation can be suppressed by current map optimization, harmonic injection, etc.
[0118] Reference Fig.12 In one embodiment, the motor control method further includes: S5: If the torque of the motor 200 is in a third interval, injecting harmonic current based on the vibration noise value of the motor 200; wherein the minimum value of the third interval is greater than the maximum value of the second interval.
[0119] In this embodiment, the original harmonic current is offset by injecting harmonic current of opposite phase into the motor 200, thereby reducing vibration and noise. The injected harmonic current can be determined according to the vibration noise value of the motor 200, for example, the harmonic current required to be injected when the vibration noise value of the test motor 200 is less than the preset noise value at different torques. The third interval can be set according to the actual application, for example, it can be set to (50,100] N·m.
[0120] The present application performs noise suppression processing on the motor 200 in different torque intervals, and implements different voltage distortion suppression strategies according to the voltage distortion characteristics of the motor 200 in different torque intervals, thereby effectively solving the torque pulsation problem generated by the motor 200 in a larger torque range and improving the reliability and safety of the motor 200 control.
[0121] In the above, the specific implementation of the present application is described with reference to the accompanying drawings. However, those skilled in the art will appreciate that various changes and substitutions may be made to the specific implementation of the present application without departing from the spirit and scope of the present application. These changes and substitutions are all within the scope defined by the present application.
Claims
1. A motor control method, applied to a motor controller, wherein the motor controller comprises a control circuit and a drive circuit, wherein the drive circuit is electrically connected to the motor; The control circuit is used to output a control signal to the drive circuit; it is characterized in that: The motor control method comprises: Obtaining the torque of the motor; If the torque of the motor is in a first interval, adjusting the control signal based on the vibration noise value of the motor; If the torque of the motor is in a second interval, voltage compensation is performed on the control signal based on the torque of the motor; wherein a minimum value of the second interval is greater than or equal to a maximum value of the first interval.
2. The motor control method according to claim 1, characterized in that: The adjusting the control signal based on the vibration noise value of the motor comprises: Obtaining a vibration noise value of the motor; If the vibration noise value is greater than a preset noise value, the vector current value of the motor is adjusted, and the control signal is adjusted according to the vector current value of the motor.
3. The motor control method according to claim 1, characterized in that: The voltage compensation of the control signal based on the torque of the motor includes: determining a dead time of the drive circuit based on the torque of the motor; determining a first compensation voltage value of the control signal based on the dead time; The control signal is voltage compensated based on the first compensation voltage value.
4. The motor control method according to claim 3, characterized in that: The step of determining the dead time of the driving circuit based on the torque of the motor comprises: Obtaining the dead time corresponding to when the vibration noise value of the motor is less than the preset noise value under different torques, and generating a dead time preset table; Determining the dead time of the drive circuit based on the torque of the motor and the dead time preset table; Alternatively, the dead time corresponding to when the vibration noise value of the motor is less than a preset noise value at different speeds and different torques is obtained, and a preset dead time table is generated; The dead time of the driving circuit is determined based on the rotation speed of the motor, the torque of the motor and the dead time preset table.
5. The motor control method according to claim 3, characterized in that: The determining the first compensation voltage value of the control signal based on the dead time comprises: Determining a second compensation voltage value of the motor in a stationary two-phase coordinate system based on the dead time; A first compensation voltage value of each phase control signal in the driving circuit is determined based on the second compensation voltage value.
6. The motor control method according to claim 1, characterized in that: The first interval includes [0, 10)N·m; the second interval includes [10, 50]N·m.
7. The motor control method according to any one of claims 1 to 6, characterized in that: The motor control method further comprises: If the operating parameters of the motor do not meet the preset conditions, no voltage compensation is performed on the control signal; the preset conditions include at least one of the torque of the motor being less than or equal to the maximum value of the second interval, the speed of the motor being less than or equal to the preset speed, the voltage utilization rate of the control signal being less than the preset utilization rate, and the current of the control signal being greater than or equal to the preset current.
8. The motor control method according to claim 1, characterized in that: The motor control method further comprises: If the torque of the motor is in a third interval, a harmonic current is injected based on the vibration noise value of the motor; wherein the minimum value of the third interval is greater than the maximum value of the second interval.
9. A motor controller, characterized in that: It comprises a control circuit, a drive circuit and a memory; the control circuit is used to control the operation of the drive circuit; the memory stores computer instructions, and when the computer instructions are executed on the control circuit, the control circuit executes the motor control method as described in any one of claims 1 to 8.
10. A vehicle, characterized in that: It comprises a motor and a motor controller as claimed in claim 9; the motor controller is used to control the operation of the motor.