Skip to content

Rotor Angle Tracking

Reed Streets edited this page Jun 13, 2023 · 1 revision

To make use of the Park transform I just described, we need the angle of the rotor relative to that stationary Alpha-Beta grid. There are many ways to go about this, but they all can be split into two groups: Sensored and Sensorless.

For the sensored method, you need a motor equipped with a position sensor. These sensors can be things like encoders or a set of three hall sensors. While this method allows for simple angle detection at any motor speed, it has its downsides. The sensors can add another failure point to the motor, and the resolution of the angle reading can also be lacking (i.e. the common set of three hall sensors have six different states, so the rotor angle is only known to be in a 60 degree sector).

Sensorless motor control, however, can provide a more continuous rotor angle approximation without adding extra hardware to the motor. Its downside is that it often cannot determine rotor position at low speeds or when stopped. Because of this, sensors are often used in combination with this method, providing rough angles at low speeds and switching to sensorless at higher speeds.

The sensorless motor control also adds some complexity to the control process. It is often done by tracking the back-emf of the motor, which increases in magnitude as the motor spins faster. Unfortunately, the back-emf is not an easily measured signal. In Figure 7 below, the Ra is the resistance of the windings, La is the inductance of the windings, and the e(t) function is the back-emf that we're interested in. Unfortunately, we only have access to Va(t) and ia(t), so we'll have to determine the back-emf from these values. This is often done by a complex control system known as an observer. In this project, I've chosen to use a Luenberger observer. I'll attempt to explain how this works in the next section.

Motor Equivalent Circuit

Figure 7. Equivalent Circuit of a Motor (Source)

Luenberger Observer

Luenberger Observer Form

Figure 8. Luenberger Observer Form (Source)

In Figure 8 above, you can find the general form of a Luenberger observer.

Luenberger Observer with Error

Figure 9. Luenberger Observer Form (Source)

Luenberger Observer Stability

Figure 10. Luenberger Observer Stability (Source)

Luenberger Observer Motor Equations

Figure 11. Motor Model Fit into Luenberger Observer Form (Source)