Introduction to the current loop of the control principle of
the drive motor of new energy vehicles

In new energy vehicles, the motor controller (MCU) realizes the torque and speed control of the drive motor (such as permanent magnet synchronous motor, PMSM). Its common control strategies are:
• Vector control (Field Oriented Control, FOC): This strategy is the most common control method in current vehicle applications. It can independently control the excitation magnetic field of the motor (the excitation magnetic field of the permanent magnet synchronous motor is provided by the permanent magnet, and no additional excitation current is required to establish the magnetic field. Here it refers to maintaining the stability of the magnetic flux linkage through Id) and the torque magnetic field, thereby achieving precise control of torque and speed.
• Direct Torque Control (Direct Torque Control, DTC): This method does not require complex coordinate transformation, but achieves the control target by directly measuring and controlling the electromagnetic torque and stator flux linkage of the motor.
Here, taking the current loop control in the vector control strategy as an example, the control process of the drive motor is summarized as follows:
1. Motor rotor position and speed measurement
The MCU obtains the position and speed information of the motor rotor from the rotary encoder installed at one end of the motor shaft or integrated inside the motor, and connected to the motor shaft through a coupling to ensure that they can rotate coaxially.
There are mainly two types of rotary encoders: absolute encoders and incremental encoders. Taking the application of incremental encoders as an example, it usually consists of two pulse sequences of A and B with a phase difference of 90°, and the reference position is marked by the Z phase pulse, which is usually called the zero position or origin signal.
When the motor rotates, phase A and phase B will alternately output square wave pulses. At this time, the MCU can determine the rotation direction of the motor by comparing the 90° phase difference between the two phases, and determine the angle or distance the motor has rotated by recording the number of pulses and the change in the number of pulses per unit time, and calculate the speed of the motor. Through the obtained rotor position and speed information, the MCU can perform further control such as current loop or speed loop.
For example, when the motor rotates a certain angle, the encoder will generate a corresponding number of pulses. The direction of rotation of the motor is determined by comparing the order of the A-phase and B-phase pulses, and the speed is calculated based on the number of pulses per unit time. Assuming that the MCU receives 10,000 pulses in 1 second, and the encoder only generates 1,000 pulses per revolution, the motor speed is 10rpm/s (motor speed ω).
The encoder generates a Z-phase pulse for each revolution. When the MCU receives the Z-phase pulse for the first time, it uses this position as the zero reference point, and then counts the number of A-phase pulses to determine the position of the motor rotor relative to the zero position. If 300 A-phase pulses are detected, the angular position of the motor rotor relative to the zero position will be 300/1000 revolutions or 108° (converted to radians θ=3π/5).






