On Mon, 2005-08-29 at 23:44 +0000, thormj wrote: > Are these "Space Vector" PWM signals similar to Don Lancaster's > "Magic > Sinewaves" (http://www.tinaja.com/magsn01.asp)? > -Thor Johnson No, not the same thing at all. Space vectors involve complex vector algebra, to computer 6 "vectros" around the circle of rotation, within which current magnitudes can be preduicted with precision. By using the processor to compute these magnitudes, and the PWM capabilities to produce them in the windings of the motor at the appropriate times, you can control the speed of the motor while maintaining (relatively) constant torque at the motor output shaft (by relaively, we mean that while the torgque will or course, flutuate as the armature turns, as it doesn in any electric motor, it will, if measured over a time realtivelylong in comparison to the rotational speed of the shaft appear "constant," as opposed to simple volatge/current amplitude control of motor speeds, which results in much lower torque being available at the output shaft at lower speeds. All Don's "Magic Sines" really are is a lookup-table based approach to generating sine values without having to have the processor arithmetically compute them (there was a time, not so long ago, when an 8 bit processor would have been very hard pressed indeed to compute such values at all, much less to do so fast enough to be useful in control applications). Magic sines are still an exellent approach, when one deosn't need sinces for anything smaller than integral degree values. A lookup table of just 90 values (scaled appropriately, of course) is all one needs. I have computed sine tables for the first 90 degrees of a circle for 10 bit, 16 bit and 32 bit scaled sines. 10 and 16 bit tables, of course, require 180 bytes of data, and 32 bit tables, of course, require 360- bytes of data for storage, so you don't want to scale any higher than you need to to achieve your purpose, as "data" space on small controllers like AVRs (most of them, anyway) is at a premium. not to mention the tim e penalties involved in dealing with extra bytes of data, especially if you don't need the resolution they provide. Remember, in microcontroller programming, we are constantly having to keep in mind code size, and how it is affected by the resoltuon of what we need to do, as a result of limited memory resources. Often, we have to trade off some resolution to achiecve needed code/data density. Tom Keller (apologies tothose who already know all this stuff. Many here don't, and it behooves all of us to educate each other)
Message
Re: [AVR-Chat] Re: Space Vector PWM application
2005-08-30 by Thomas Keller
Attachments
- No local attachments were found for this message.