Simulate Your Embedded System
Video games simulate characters, environment, and storylines of many movies to maximize revenue related to your latest cinema experience. These include "Finding Nemo" and "The Matrix," among many others. Software applications simulate the controls and manufacturing environments of projects to maximize revenue connected with your latest automation experience.
Video games simulate characters, environment, and storylines of many movies to maximize revenue related to your latest cinema experience. These include “Finding Nemo” and “The Matrix,” among many others.
Software applications simulate the controls and manufacturing environments of projects to maximize revenue connected with your latest automation experience. In the embedded space, these include The MathWorks and Visual Solutions, among many others.
Applications that model, simulate, test, and write code for automation, controls, and instrumentation rival video games’ visualization and ease of use. While simulation software can be fun to use, doing so saves serious time and money by testing, identifying, and correcting design problems earlier in the product lifecycle. It also streamlines design, implementation, start-up, and modifications with pre-existing libraries of information (software objects), user-group support, and information about related component elements. To learn about concepts under the hood of computer-based simulation, see “Test Your Control System with Simulation” in this issue.
Touching on all of simulation would take a book (actually, more than 100 books, if you search on www.controleng.com/bookstore ). Even simply looking at a few examples of embedded control simulation software can show the range of advantages. Applications automate repetitive tasks and catch things sooner, rather than later, in the product design lifecycle. Generating code from a simulated model avoids the slower method of translating code from design to simulation/testing to a runtime environment. A variety of blocks, or objects of compiled code, allow users to create programming without previous software-writing skills. Software also makes the lives of code-crunching experts easier.
Optimize as you go
Real-Time Workshop from The MathWorks generates ANSI C code from Simulink models. The code runs on PCs, digital signal processors (DSPs), and boards with a variety of operating systems and prototyping targets. The software optimizes code for memory and fast execution as it is created.
For real-time prototype testing, calibration, and validation “xPC Target” from The MathWorks has a real-time kernel, device drivers, and support software to create a rapid control prototyping system for full software testing and validation. Related hardware is also available. “Real-Time Workshop Embedded Coder” tailors the embedded software to specific hardware or software targets and incorporates appropriate formats, interfaces, and drivers. Targeting packages allows transfer of code to several hardware and software environments.
Like The MathWorks, Visual Solutions offerings cover embedded applications, among others. For example, VisSim/C-Code software generates ANSI C code from VisSim diagrams, to run on a PC or an embedded system. (Compiled code increases simulation speed.) It also can create a standalone executable DLL to run as a VisSim block or a “simObject.”
VisSim/Embedded Controls Developer, another Visual Solutions application, enables prototyping and development of embedded control systems. The software creates, models, and simulates code for the Texas Instruments C2000 DSP; generates C-code automatically with analog and digital I/O addresses; compiles, links, and downloads code to the chip; and debugs and verifies the DSP algorithm interactively.
Among features, “VisSim/Fixed Point” block set simulates and generates code for fixed-point operations, showing overflow and precision loss effects during simulation. Peripheral blocks generate code for on-chip devices. It supports CAN bus and motion control: ac induction, brushless dc, and permanent-magnet synchronous motors.
A plug-in for VisSim/ Code Composer Studio integrates compiled code with other user-generated code. For instance, code-generating tools from National Instruments—such as LabView DSP Test Integration Toolkit or LabView Real-Time—can be used to create Virtual Instrument scripts to connect to models from other simulation software.
Benefits from using these tools include:
Carco Electronics six-degrees-of-freedom motion test (see robot photo) with Real-Time Workshop from The MathWorks runs up to 1,000 Hz; advanced test systems run at just 60-100 Hz. Development costs dropped 30%, according to the Software Engineering Institute at Carnegie Mellon University.
Motorola Wireless Subscriber Systems Group using Simulink, Matlab, and Real-Time Workshop from The MathWorks reduced simulation time for a 100-microsecond test from two hours to 1.2 minutes.
Lidkiping Machine Tools (LMT) designed controls for a TI C32 DSP, including closed-loop adaptive filtering and control activation modules. A prototype was running in two days; download to the chip came on the third day, without prior training or exposure to Visual Solutions VisSim/DSP.
Don’t take my word for it; see for yourself. Related Web sites offer free trial software, datasheets, case histories, tips, training, and even animation to see how the software works.
Simulation software: Everybody’s game
It seems everyone’s game for simulation software. Software can simulate nearly every element of control engineering and all related electronics and schematics. In addition to design, modeling simulation, and testing, some software provides run-time software code, bills of material, and even purchase orders for system components.
In the Control Engineering Buyer’s Guide, more than 80 companies selected the subcategory of simulation under the software category. More than 25 companies selected the “Simulators/simulation hardware” category.
In the Control Engineering Automation Integrator Guide, more than 165 system integrators consider “modeling/simulation” a specialty.