0
\$\begingroup\$

I have studied several application notes and technical literature regarding field oriented control of three phase induction motors. Based on that I have encountered that there are two main approaches as far as timing of the control software.

One approach that I have found is that the free running timer periodically starts A/D conversions of two phase currents and dc bus voltage. The frequency of the A/D conversions is several times greater then the pwm frequency. The interrupt service routine associated with the end of conversion then contains whole current control loop and at the end updates the duty cycles for the pwm.

Another approach that I have found is that the A/D conversions of two phase currents and dc bus voltage are synchronized with the pwm duty cycle reload events. The frequency of the A/D conversions was usually one half of the pwm frequency. Again the interrupt service routine related to the end of converstion contains the current control loop. This approach repeated in more cases then the first one.

In my opinion the first approach is better because it reduces the transport delay of the control loop and ultimately increases phase margin of the control loop. Thus I do not understand why the second approach is more frequent. I have probably missed something. Does anybody know the answer?

\$\endgroup\$
0
3
\$\begingroup\$

Well...the first approach seems rather messy doesn't it? Not only are you sampling at unpredictable positions in the cycle, but you are increasing the processing load by having more samples to deal with.

Plus you are probably only going to be updating once per PWM cycle at most anyways...so is your latency really any better? What good is all that extra sensory information if you're not going to act on it and it's all out of date when the time comes to take action?

I am actually rather suspicious about the first method as you described it. I am fairly confident you aren't describing it correctly because saying the following:

The frequency of the A/D conversions is several times greater then the pwm frequency. The interrupt service routine associated with the end of conversion then contains whole current control loop and at the end updates the duty cycles for the PWM.

implies the PWM is being updated several times in the middle of each PWM cycle which doesn't make any sense.

And even if we ignore the fact that updating more than once per PWM cycle unpredictable updates of PWM in general cause things like harmonics and other unpredictable frequency content. Hell, it can even be an issue in PWM updates that are synchronized (think of edge aligned PWM where the trailing edge position changes from cycle-to-cycle while the leading edge position does not causing the pulses to dance around relative to each other as their duty cycles get adjusted versus center-aligned PWM where the two edges change symmetrically so the center of the pulse is always the same time away from the center of the previous and next pulse).

\$\endgroup\$
2
  • \$\begingroup\$ Thank you for your reaction DKNguyen. As far as I understand correctly your response you think that the A/D conversion has to be synchronized with PWM time base in all cases. Is that correct? Have you ever met anything similar as I have decribed as the first approach? Thanks. \$\endgroup\$ – Steve Apr 20 '20 at 13:31
  • \$\begingroup\$ @Steve It doesn't have to be, but I don't see any benefit in making it not synchronized. It just seems to achieve decreased performance with increased complication. \$\endgroup\$ – DKNguyen Apr 20 '20 at 15:03

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.