In May, I posted a blog about the decisions behind choosing a fixed function controller or a real-time controller with an FPGA. In this post, created with input from Nate Holmes of National Instruments, we’ll look at specific machine applications for which real-time controllers using FPGAs are most suitable.
Let’s begin with functions requiring specialized control algorithms. For example, replacing a common velocity or position loop with a loop running closed-loop force control. This replacement is usually done to allow for testing of material strength, measuring button quality, or simulating a finger press on a touch panel. A modular design, using a real-time controller, allows you to use the control algorithm of your choice and supports integration of a force sensor as well as any necessary signal conditioning.
Other examples like this one, where an FPGA-based real-time controller is more suitable than a fixed function controller, include replacing hall-effect sensors with a custom startup routine for a brushless motor, or replacing a standard PID function with a more advanced control algorithm.
“Using a real-time controller, a modular design allows a developer to program his own inverse kinematics equations for non-standard coordinate spaces in addition to using the traditional trajectory generator,” Holmes says.
Another good case for real-time controllers is in applications using advanced synchronization with I/O and vision. Implementing motion on a platform with modular I/O means that you can mix and match specific I/O to meet system requirements without necessarily having to incur the cost of integrating a separate tool chain for the measurement I/O. A programmable FPGA in the controller allows for custom hardware level triggering and signal analysis beyond what is capable on standard motion and automation platforms.
Holmes adds that the most common benefit an FPGA provides in this architecture is “the ability to define custom triggering based on information from the motion controller. For example, imagine trying to precisely trigger a large collection of valves for precise durations at specific positions—features that would be required when implementing a printer-like application. Once you combine modular I/O with a high-speed FPGA that is aware of current position, the problem becomes relatively easy to solve.”
A growing use-case for this type of synchronization with real-time processors is vision-guided motion. The real-time processor can process image data, calculate positions and command those positions to motors configured in a coordinate space.
Watch a video where Holmes describes several examples, including the ones included in this post, to illustrate where fixed-function controllers are a good choice as well as examples where a reconfigurable motion control architecture using FPGAs, real-time controllers, and modular I/O is more suitable and why.
This video is housed on a special website—http://www.automationworld.com/nipac—Automation World has created with National Instruments to address several facets of advanced controls options for machine designers.