DriveElectrical Machines

PMSM motor rotor position offset value

Question:

PMSM motor, if the offset on the motor nameplate is incorrect, how to determine the correct initial angle value?

This article explains the basic principles of PMSM motor control and the method of obtaining the motor position offset value, which provides some help for those who are new to PMSM motor control.

PMSM, the full English name is Permanent-magnet Synchronous Motor, which literally means permanent magnet synchronous motor.

 

  • It needs to meet several characteristics:

    1) The three-phase stator is connected to an AC voltage with a phase sequence difference of 120 degrees to generate a rotating stator magnetic field.

    2) The rotor is excited by permanent magnets, regardless of whether its excitation material is AlNiCo, ferrite or NdFeB; regardless of whether it is installed internally or surface mounted, through the special stator and rotor shape design, a sinusoidally arranged NS magnetic field is ultimately presented in the air gap space.

    3) Based on the above two points, the back EMF must be a sinusoidal wave, which is the biggest difference between PMSM and BLDC (back EMF trapezoidal wave).

    PMSM motor rotor position offset value

    Since the rotor of PMSM is already solidified, the question of how to control the motor can be very simply simplified as follows:

    In what way can the rotor shaft of a motor produce a certain torque?

    1) If I were from an ancient time and unfortunately traveled through time to the modern era, the knowledge I had in my time was this: magnets have two polarities, N and S, like poles repel each other, and opposite poles attract each other; so I would think that if I take another magnet close to the rotor, and then let the magnet in my hand draw circles around the stator, then a force will be generated between the magnet and the rotor, causing the rotor to rotate.

    2) If I came from a slightly more recent era, when the great Mr. Oersted and Mr. Ampere had already discovered that electricity can generate magnetism, and that sinusoidal alternating current can produce a circular magnetic field moving in space (isn’t this the same effect as when I drew circles with a magnet before), then my job would be simple. I would just need to arrange the stator coil around the rotor and pass an alternating current through the stator coil to make the rotor move due to the force of the magnetic field.

    3) If I were from a more recent era, the smart Mr. Park and Mr. Clark had already started to do scientific research. They found a problem: the three-phase alternating current with a constant speed standard and a phase difference of 120° has only two degrees of freedom. If you observe the three-phase voltage from the perspective of the moving magnetic field generated by the three-phase voltage, you will find that the projection generated in the direction perpendicular to the magnetic field does not change with time, which greatly facilitates the solution of control.

    This is a bit long-winded, but anyway, (2) and (3) both use the motor angle to generate alternating stator voltage.

    The standard and simplest permanent magnet synchronous motor control algorithm block diagram is as follows:

    PMSM motor rotor position offset value

    This control algorithm block diagram looks complicated, but its purpose can be described in the following sentences:

    1) Because there is a moving magnetic field in the air gap, the stator coil will generate back electromotive force when the rotor rotates.

    2) The easiest way to establish the stator magnetic field is to define a voltage with the same phase angle as the back electromotive force through the inverter. After overcoming the back electromotive force, the stator magnetic field generated by the stator current interacts with the rotor magnetic field to perform work externally.

    To put it simply, the so-called motor control algorithm is nothing more than generating three stator voltages. The algorithm requires that the generated sinusoidal voltage be in phase with the back electromotive force generated by the stator cutting the magnetic lines of force.

    (Why do I say “easiest”? Because the differential equation for motor control actually has infinite solutions, and what we often use in engineering is just one of its special solutions. It’s too complicated. To put it simply, there are actually countless combinations of given voltages on the stator coils that can achieve the effect of making the rotor output the same torque at a constant speed. The method used in engineering applications is just the easiest one.)

    So there are several ways to determine the initial position angle of the motor controller:

    1) Back EMF method

    a) The motor phase line is not connected to the ECU, and the motor position signal is connected to the ECU. The software in the ECU only needs the angle calculation software, and no other control software is required.

    b) Turn the motor shaft by hand. The motor angle signal observed in the software should change from 0 to 360 degrees.

    c) Use a servo motor or other equipment to drag the motor under test to rotate at a constant speed and measure its back EMF. The back EMF and the motor rotation angle processed by the software should have the following corresponding relationship (0 degrees corresponds to the back EMF of A crossing from positive 0 to negative 0, 120 degrees corresponds to the back EMF of B from positive 0 to negative 0, and 240 degrees corresponds to the back EMF of C from positive 0 to negative 0).

    PMSM motor rotor position offset value

    d) If the corresponding relationship between the back EMF and the motor rotation angle is not satisfied, the following means should be used to make it meet the relationship:

    i. Adjust the motor position angle Offset in the software

    ii. Change the definition of motor ABC phase (change the wiring sequence)

2) Rotor dragging method

 

a) According to the diagram configuration software: The ECU connects to the motor encoder and position sensor, with the motor idle. In the software, the position signal used for motor control and the motor speed are set to 0, and the angular position from the position sensor is only used as an observation signal.

b) Provide a specified motor torque command (for example, 10% of the motor’s rated torque). The motor will not rotate under the software’s control, but due to the angle of 0 set in the control software, the shaft will stop at the real angular position of 0 for motor A. Record the observed motor angular position as Angle_A.

c) Offset = -Angle_A

 

PMSM motor rotor position offset value

 3) Torque calibration method

 

  • Test dynamometer and force angle closed-loop software. Provide a constant q-axis current command. Use the calibration tool to set the Offset value, and record the motor torque value output by the test dynamometer. The Offset corresponding to the maximum torque value is the correct offset.
  • From a theoretical perspective, Method 1 is closest to the physical meaning of obtaining the Offset. However, due to the difficulty of collecting synchronous feedback voltage signals and output angular signals at the same time, only developers of low-level motor control software are proficient in using this method.
  • Method 2, from a theoretical perspective, is an explanation of the D-Q axis in physical terms, and it is suitable for developers who are tuning the motor control software applications.

This method is suitable for clients who are users of the controller but are not equipped with the ability to modify the low-level motor control software. However, developers of control applications or general debugging personnel will typically provide a designated value or offset for further tuning. Using this method might result in errors if the offset setting is incorrect, which could lead to overheating of the motor, reverse torque feedback, or other undesirable phenomena. Caution is advised.

Related Articles

Check Also
Close
Back to top button

Adblock Detected

Please consider supporting us by disabling your ad blocker