Self Profiling, Sensorless, FOC System Revolutionizes Motor Control
Field-oriented-control is not a new motor control topic. It is just a difficult one. Essentially a system needs to adjust the power to the motor based on the position of the rotor. The position of the rotor can be obtained using sensors or feedback from the drive electronics (sensorless). The change in the phases to the motor adjust the speed and torque (Fig. 1).
Sensor-based solutions tend to be simpler to implement but require additional hardware. There is also the issue such as sensors moving out of alignment. The sensorless approach is more robust but computationally heavy so it is often augmented with hardware. The advantage is lower cost and higher reliability because there are no sensors to wear out or align.
The challenge for motor control designers is working with the code that determines the rotor position as well as how to change the power going to the motor to get the desired rotation. This sounds easy but is actually very complex because the feedback mechanism is usually non-linear and it is also a function of load and speed. Motor vendors often provide hundreds of characterization parameters that can be utilized. The shear number of variables often deters most designers and proper utilization of the information is key to delivering software that will operate across the range of speeds, torque and acceleration needed to address many applications.
TI's InstaSpin software addresses these issues in two ways. First, there is a component that is in ROM on select TI microcontrollers including the F2806x that is part of the Piccolo family of digital signal controllers (see “Playing With Floating Point and Low Cost DSPs”). This is the “secret sauce” from TI that handles the motor. It is called FAST (Flux, Angle, Speed, Torque). There is also a runtime library for code that will go into the microcontroller's flash memory and host-based software for configuration and tuning.To start with, a designer would hook up an InstaSpin system with a motor. An analysis application is downloaded to the microcontroller. This application, along with a host-based application, analyzes the motor attached to the system generating a profile that is then used by the software to control the motor (Fig. 2). The profiling takes about five minutes. Only the maximum voltage and current are needed. The results are a system that can control the motor from a static position to any speed within the specifications.
Once the system has been profiled the developer can control the motor using a logical interface instead of having to deal with low level hardware. They can also utilize information from the motor to address issues such as stalls and overloads. This can improve the safety of a system. For example, if an overload is detected then the motor could be turned off to prevent damage. Designers can also examine the characteristics of the system and the motor (Fig. 3).
The motor can also be controlled in torque mode (Fig. 4) and that can be useful for many applications. The torque measurements are obtained like the other sensorless information. That is, the torque is actually an estimate based on the feedback from the motor as well as the power and how it is being applied to the motor.
Designers can tune the results from InstaSpin if desired (Fig. 5). This allows adjustments across the operating conditions that will be encountered as well as addressing issues such as mechanical inertia. Designers can also modify any of the software except that contained in the ROM.
Designers can also take advantage of TI's PowerWarp software that is designed to improve system efficiency. It takes advantage of the FAST encoder to track the rotor flux angle. It helps reduce power requirements when torque demand is low by adjusting the current of the induction motor. This is the first time an algorithm has been used to reduce motor copper losses in both the stator and rotor.
Designers have been switching to BLDC (brushless DC) motors because they are easy to control using today's microcontrollers. They are more efficient that simply turning a motor on or off but not as efficient as a three-phase motor would be. These have been used with more advanced controllers when the cost could be justified. That cost just went way down with InstaSpin. Compared to basic triac controllers, InstaSpin could shave off 80% of the power requirements.
One of the reasons TI was able to build InstaSpin-FOC was the support within their microcontrollers. The voltage and current filtering cleans up input samples. It allows the system to handle offset compensation. Zero speed start up can deliver over 100% rated torque.
The object-oriented software APIs are provided with TI's MotorWare software package. It will be supporting other TI parts in addition to the Piccolo family.
TI's solution could radically change the way designers look at motors and motor control. It opens the use of more efficient motors to a wider range of designers that, prior to InstaSpin-FOC, could not reliably create a motor control system.
About the Author
William G. Wong
Senior Content Director - Electronic Design and Microwaves & RF
I am Editor of Electronic Design focusing on embedded, software, and systems. As Senior Content Director, I also manage Microwaves & RF and I work with a great team of editors to provide engineers, programmers, developers and technical managers with interesting and useful articles and videos on a regular basis. Check out our free newsletters to see the latest content.
You can send press releases for new products for possible coverage on the website. I am also interested in receiving contributed articles for publishing on our website. Use our template and send to me along with a signed release form.
Check out my blog, AltEmbedded on Electronic Design, as well as his latest articles on this site that are listed below.
You can visit my social media via these links:
- AltEmbedded on Electronic Design
- Bill Wong on Facebook
- @AltEmbedded on Twitter
- Bill Wong on LinkedIn
I earned a Bachelor of Electrical Engineering at the Georgia Institute of Technology and a Masters in Computer Science from Rutgers University. I still do a bit of programming using everything from C and C++ to Rust and Ada/SPARK. I do a bit of PHP programming for Drupal websites. I have posted a few Drupal modules.
I still get a hand on software and electronic hardware. Some of this can be found on our Kit Close-Up video series. You can also see me on many of our TechXchange Talk videos. I am interested in a range of projects from robotics to artificial intelligence.