Quote:
Originally Posted by MPP2007
Hi
Checking aplication notes from Atmel/Microchip or NXP, I found some ways to control PMSM motors, by PMSM I mean DC motor with sinosuidal back EMF.
1. way is to use SVM, with 3 Hall sensors and sine table - AVR447: Sinusoidal driving of three-phase permanent magnet motor using ATmega48/88/168
2. way is to use SVM but with Clark/Park transforms
Which way to go to run my Lexus 50kW MGR ?
|
Hi
I don't have access to the source code from work (where I'm reading this) ... so this is all from memory (which is not that great, and I didn't understand all of what Paul was doing when he did explain it)
With that disclaimer ... here is what I remember
Paul Holmes uses an encoder for rotor position. It is closer to your option 2. The encoder position is used to figure out where the rotor is with relation to the position of the stator flux. Getting them to the same units so that they can be compared requires 2 sets of calculations. The Park transform is one of them. Another ... 2 equations? .. to take the error in rotor position and reflect that back to a torque current setpoint, and from there combined with the magnetizing current to get a voltage setpoint and the PWM timing.
The hall sensors are likely more accurate than a separate external encoder. But I don't have information on which of your 2 options would be easier, or which would give you better control