TECHNICAL UPDATES
 
Products Updates
 

New Product- The New Simulink® HDL Coder 1.0 -
Simulink HDL Coder generates bit-true, cycle-accurate, synthesizable Verilog and VHDL code from Simulink models and Stateflow1 diagrams. The automatically generated HDL code is target independent. Hence, it can be easily synthesized and mapped it into field-programmable gate arrays (FPGAs) or application-specific integrated circuits (ASICs) using industry-standard tools from EDA vendors.

You can use the automatically generated HDL code to verify existing HDL code using formal or functional verification tools as well.

Simulink HDL Coder also generates test benches, enabling rapid verification of the generated HDL code using HDL simulation tools.

 
Insert image here.
 
What can you do with Simulink® HDL Coder?
Generates synthesizable HDL code from Simulink models
Generates synthesizable HDL code from Stateflow diagrams for finite-state machines and control logic implementation
Generates VHDL code that is IEEE 1076 compliant and Verilog code that is IEEE 1364-2001 compliant
Creates bit-true and cycle-accurate models that match your Simulink design specifications
Generates simulation and synthesis scripts
Enables you to reuse existing IP HDL code (with Link for ModelSim2 available separately)
 

For more information about Simulink® HDL Coder, please visit the following URL:
http://www.mathworks.com/products/slhdlcoder/

¹For more information about Stateflow®, please visit the following URL:
http://www.mathworks.com/products/stateflow/

²For more information about Link for ModelSim®, please visit the following URL:
http://www.mathworks.com/products/modelsim/

 
 

Major updates - Filter Design Toolbox 4.0
The Filter Design Toolbox is a collection of tools that provide advanced techniques for designing, simulating, and analyzing digital filters.

The New FilterBuilder GUI
With the latest release of Filter Design Toolbox 4.0, users have an option to design single and multirate filters in both floating-point and fixed-point using the new FilterBuilder GUI instead of previous FDATool.


The figure above shows the new FilterBuilder interface

FilterBuilder facilitates a systematic specifications-based filter design approach whereby users specify their desired filter type, response characteristics and constraints. Then, FilterBuilder will suggest the available design methods that will satisfy the given specifications. This greatly simplifies the process of finding the best design method.

 
What can you do with Filter Design Toolbox?
Design, analyze and implement FIR filters, IIR filters, Farrow filters, adaptive filters and Multirate, multistage filters
Perform analysis and implementation of digital filters in single-precision floating-point and fixed-point arithmetic
Perform FIR and IIR filter transformations such as lowpass to lowpass, lowpass to highpass, and lowpass to multiband
Generate C code header file from filter designs in FDATool
Generate VHDL and Verilog code for fixed-point filters with Filter Design HDL Coder
 

For more information about Filter Design Toolbox, please visit the following URL:
http://www.mathworks.com/products/filterdesign/index.html

To learn more about Filter Design Toolbox through the following online demo, please visit the following URL:
Designing Lowpass FIR Filters


This demo shows the new filter design approach on how a lowpass FIR filter is designed by providing the necessary requirements.
To view the demo, click here.

 
 
Tips and Techniques
 

Debugging MATLAB M-files from the MATLAB Command Prompt
This section is intended for anyone writing codes in MATLB who would like to learn how to use MATLAB's tools to find and eliminate bugs within their programs.

What Debugging Tools Are Available at the MATLAB Command Prompt?
This section describes how to make use of functions to debug programs from the MATLAB command prompt. There are altogether seven topics and in this e-newsletter issue, we will look at the first topic. The rest of the topics will be covered in subsequent e-newsletter issues.

Topics
1. Setting, Clearing, and Querying Breakpoints
2. Moving from Workspace to Workspace
3. Executing Your Code Using the DBSTEP Function
4. Displaying Status Messages Periodically
5. Using the TRY/CATCH Block to Capture Errors
6. Using the ERROR Function with the LASTERR and RETHROW Functions
7. The WHICH Function

Topic 1 - Setting, Clearing, and Querying Breakpoints
The file buggy.m, which is used to illustrate the debug functions, consists of three lines.

Example 1 - Stop at First Executable Line

Example 2 - Stop if Error

Example 3 - Stop if InfNaN

For more information on the DBSTOP, DBCLEAR and DBSTATUS functions, please visit the following links:

DBSTOP:
http://www.mathworks.com/access/helpdesk/help/techdoc/ref/index.html?/access/helpdesk/
help/techdoc/ref/dbstop.html

DBCLEAR:
http://www.mathworks.com/access/helpdesk/help/techdoc/ref/index.html?/access/helpdesk/
help/techdoc/ref/dbclear.html

DBSTATUS:
http://www.mathworks.com/access/helpdesk/help/techdoc/ref/index.html?/access/helpdesk/
help/techdoc/ref/dbstatus.html

 

Converting and distributing your applications
The MATLAB Compiler lets you automatically convert your own MATLAB programs into self-contained applications and software components and share them with end-users. Applications and components created with the Compiler do not require MATLAB to run.

As of Version 4.5, part of Release 2006b, MATLAB Compiler (http://www.mathworks.com/products/compiler/) includes the new Deployment Tool graphical user interface for creating and building projects. This saves from recalling the command and switches necessary to convert your m-files into executable applications.

How to use the Deployment Tool
The new Deployment Tool can be accessed by typing 'deploytool' in the command window or through the MATLAB Start button.

Use the Deployment Tool as follows to create and package either a standalone application or a shared library:

1.Create a new project.

2. Add files that you want to compile.

3. Set properties for building and packaging.
You can include the MCRInstaller in the package for deployment to users who do not already have it installed.

4. Save the project. Build the component.

5. Edit and rebuild as necessary.

6. Package the component for distribution to programmers or end users.

To learn more on using the deploytool GUI to create and package a deployable component:
http://www.mathworks.com/access/helpdesk/help/toolbox/compiler/bqrw8n2-1.html

 
 
 EVENTS & TRAINING
 

Learn and do more with MATLAB & Simulink

'Data Analysis with MATLAB' Training Course
by Dr Richard Johnson, Developer of the Data Visualization Toolbox

8-9 Jan 2007, Kuala Lumpur
11-12 Jan 2007, Singapore

This 2-day hands-on workshop in effective and efficient methods for modern data analysis in the MATLAB environment provides engineers, researchers, and statisticians a practical and organized approach to using MATLAB for data analysis. It provides a solid foundation for development of analysis skills. The presentation and examples stress the best ways to analyze real data and present the results. This course follows Visual Data Analysis by William Cleveland.

Topics include data input and output, handling large data sets, computing descriptive statistics, statistical plotting and visualization, statistical process control, clustering, and data mining. The workshop includes many examples and exercises that cover a cross-section of application areas in science and engineering.

Dr Richard Johnson is the developer of the Data Visualization Toolbox for MATLAB, the author of the MATLAB Programming Style Guide, and an independent MATLAB instructor for over 6 years. He teaches and develops software for technical data analysis and visualization. As a former Associate Professor at Oregon State University, he has taught both university and industrial courses. He has a B.S. in Mathematics from Purdue University and a Ph.D. In Engineering Science from UCSD.

 

'Object-Oriented Programming with MATLAB' Training Course
by Mr Pang Tee How, Co-founder for 1000 Miles Network (Asia Pacific) Pte Ltd and Professional Trainer

27-28 Nov 2006, Kuala Lumpur
11-12 Dec 2006, Singapore

In today's fast paced and fiercely competitive world, companies are increasingly facing deadlines, greater stakes and little margin for error. In this competitive environment, development team needs to leverage on advanced object-oriented technologies in MATLAB to provide their organizations with flexible architectures to quickly adapt to changing business needs.

This comprehensive 2-day hands-on course provides participants with rudimentary knowledge and structure of object-oriented programming. This expert-led course explains the principles and concepts of objectorientation using MATLAB in an interactive format with high hands-on content. It is developed for existing MATLAB programmers who wish to upgrade their programming skills in object-oriented concept and management techniques.

 
 
Visit www.activemedia.com.sg or Contact us at:
Singapore:
(65) 6742 8173
enquiry@activemedia.com.sg
Malaysia:
(60) 3 7880 8522
enquiry@activemedia.com.my
Thailand:
(66) 2 612 9390-1
info@activemedia.in.th
 
 
User Stories
 

UC Davis Students Develop an Environmentally Friendly Sport Utility Vehicle Using Simulink

To confront students with real-world engineering experiences by challenging them to modify an SUV to achieve lower emissions and fuel consumption without sacrificing vehicle performance
Use MATLAB and Simulink to model strategies for the powertrain control system for a hybrid electric vehicle
• Accurate simulation of vehicle operation
• A fuel-efficient SUV with no emissions
• Valuable experience for a career in engineering
 

The University of California at Davis (UC Davis) was among 15 North American universities to participate in the 2001 FutureTruck Competition. This competition gives students an opportunity to apply skills learned in school to a real-world engineering project: Participants must reengineer a sport utility vehicle so as to reduce emissions and fuel consumption without sacrificing vehicle performance or safety. As a FutureTruck sponsor, The MathWorks provided its software for students to use throughout the competition.


UC Davis graduate student Rob Schurhoff working on the hybrid electric vehicle's control system.
 

UC Davis won the 2001 FutureTruck championship and the MathWorks Vehicle Modeling & Dynamics award. Their "plug-in" hybrid electric version of a conventional 2000 Chevrolet Suburban was judged to have the best combination of low tailpipe emissions, high fuel economy, low global warming gases, and good powertrain performance.

The team used MATLAB, Simulink, and a Simulink based vehicle modeling program called PSAT to develop the powertrain strategy for their vehicle. "I feel that our vehicle won because we had the best success in implementing our hybrid powertrain and control strategy, and MATLAB and Simulink played a very important role," says UC Davis Future Truck advisor Dr. Mark Duvall. "Using Simulink, thestudents could develop systems models that were both accurate and easy to modify."

Challenge

Each team needed to develop a hybrid electric vehicle powertrain control strategy to determine how the vehicle's engine and transmission should react to driver inputs. The strategy had to balance three objectives: reduce fuel cycle greenhouse gas emissions by 66%, reduce the fuel consumption to half that of the standard Suburban, and meet California's Super Ultra Low Emissions Vehicle standards. Students were also evaluated on the completeness of their representation of the vehicle model.

"MATLAB and Simulink allowed the students to construct mathematically complex simulations quickly and easily."

Dr. Mark Duvall
University of California, Davis
 

Solution

The UC Davis team developed a comprehensive vehicle model based on PSAT (Partnership for a New Generation of Vehicles Systems Analysis Toolkit), a Simulink based modeling program developed by Argonne National Laboratory. They simulated their Suburban's four-wheel-drive powertrain to determine a control strategy, settling on a combination of charge-depletion and charge-sustaining strategies. In charge-sustaining vehicles, the onboard battery is recharged by the combustion engine while the vehicle is being driven. During charge-depletion, electric energy from the battery powers the vehicle. The vehicle is recharged when the driver returns home that night.

Since the PSAT powertrain control strategy is intended for charge-sustaining vehicles only, the team had to rewrite many of the model's control algorithms. Because PSAT is based on Simulink, this was easy to do: "One of the strengths of Simulink is the open source nature of the program," Duvall says. "The students can go into the Simulink code for PSAT and make improvements or modifications that better suit their objectives."

The UC Davis team embedded portions of the vehicle control software directly in the PSAT simulation. They imported the Suburban's C-language microcontroller code into PSAT using a Simulink S-function. This allowed them to accurately simulate several modes of operation. They improved the control algorithms and simulated the changes in PSAT. Once the simulation results met their targets, they transferred the final algorithms directly to the vehicle controller for immediate use in the vehicle.

"The students could have developed models using C, but they would have expended more effort developing the software," Duvall says. "With MATLAB and Simulink, they could dedicate more time to developing the vehicle models and optimizing the designs." The students acquired engineering experience that cannot be taught in a classroom. They worked with software tools used by engineers in industry and learned firsthand how to apply these tools to problems in the real world. As a result of their work on FutureTruck, the team has been awarded several patents for hybrid vehicle control strategies.

 

Results

  • Accurate simulation of vehicle operation. Using an S-function in Simulink, the team was able to insert the C code that ran the powertrain controller directly into the PSAT model to simulate how the vehicle actually responds. Once the simulation results met their targets, they could reinsert the code into the vehicle powertrain controller and immediately begin driving the vehicle.
     
  • A fuel-efficient SUV with no emissions. In electric mode, the SUV can achieve the equivalent of 70 mpg and produces no emissions, dramatically reducing the truck's effect on the environment. In hybrid mode, it achieves the equivalent of 49 mpg, reducing driving costs for a regular Suburban by about 66%. The hybrid vehicle performs as well as a conventional Suburban with a V8 engine.
     
  • Valuable experience for a career in engineering. Many students from the UC Davis team have been hired by leading automotive and other engineering companies. "Typically these students are much more capable than students who haven't participated in this kind of event, and they dig right in when we bring them on board," says Mark Maher, a spokesperson for General Motors.

Products Used

Simulink®

 
 

Ford Motor Company Develops and Deploys Sound-Quality Metrics with MATLAB

To develop and deploy sound quality metrics that correlate well with subjective impressions of sound
Use the MATLAB product family to develop a sound quality analysis tool and deploy SQ metrics to the company and its worldwide suppliers
• Improved quality of Ford products
• Development time reduced by six months
• Source code control
 

Reducing noise-from road, wind, and engine, as well as from power seat adjusters, power mirrors, and other components-has become a key automotive design requirement. Until recently, noise-reduction efforts focused on the overall sound level. Engineers now recognize that other attributes, including sharpness, loudness, and fluctuation, affect perceptions of sound quality.


GUI for spark knock detector
 

To ensure an acceptable acoustic environment without conducting expensive and time-consuming listening studies, engineers must obtain objective sound-quality (SQ) metrics that correlate with subjective impressions of sounds.

Ford's research and advanced engineering and product development groups generate reliable SQ metrics for the company and its worldwide suppliers with a suite of SQ analysis tools developed in MATLAB. In fewer than three weeks, Ford turns metrics developed with MATLAB into stand-alone applications using the MATLAB Compiler so that relatively novice users can execute the applications without any programming.

Challenge

The only metric with an implementation standard-ISO532B-is stationary loudness. All other SQ metrics are vendor-specific: they vary depending on the vendor's particular implementation techniques.

Ford set out to develop an easy-to-use, scalable measurement and analysis tool that would be inexpensive to distribute with SQ metrics that could interface as plug-ins with third-party analysis systems. The stand-alone version of the tool had to provide basic functionality for recording, playing, and editing; working with databases; analyzing signals; and producing SQ metrics that correlated well with subjective impressions of sound quality.

 

Solution

Ford chose the MATLAB product family as their software platform to rapidly develop algorithms, acquire and analyze data, and build and deploy applications. Using MATLAB with the MATLAB Compiler, they deployed their SQ metrics to different third-party analysis systems using a single version of the MATLAB source code.

Using MATLAB and the MATLAB Compiler, Ford integrates with supplier's third-party analysis systems by generating MATLAB based DLLs. Third-party SQ analysis systems written in other languages pass signals and data among systems to the generated DLLs. Moreover, Ford used MATLAB to develop a GUI front end for the Simple Sound Quality Tool (SSQT), which they compiled with the MATLAB Compiler before distributing it to their suppliers as a stand-alone application.

With this approach, Ford has saved up to six months in development time by avoiding the process of rewriting the MATLAB application to another language or making the application available to run outside of MATLAB. This approach also enabled them to simplify application maintenance by requiring them to only update the original MATLAB application. They distributed MATLAB based stand-alone application plug-ins to more than 25 worldwide suppliers, enabling them to use their third-party systems for data acquisition and to analyze data using the SSQT metrics.

Using the Signal Processing and Statistics toolboxes, engineers developed versions of SQ metrics for loudness, sharpness, and fluctuation strength, which objectively measure perceived volume, spectral density, and modulation. They use the metrics to evaluate the sound quality of electric motors for seats, pedals, and mirrors as well as switches, wipers, and other interior features.

Engineers also developed algorithms to process several types of time-varying sound, including wind gusting, impulsive engine noise, and spark knock, which are difficult to characterize using standard objective SQ metrics. They used MATLAB development tools and the MATLAB Compiler to develop and run these sound metrics as stand-alone applications.

Ford also uses the Data Acquisition Toolbox to run their spark knock detector and analyzer application in "real time." Unlike other SQ metrics that are first saved to a file and analyzed at a later time, Ford's spark knock application uses the Data Acquisition Toolbox so that sound acquired from a standard PC sound card can be analyzed in MATLAB while the acquisition is still in progress. This application enables engine calibrators to detect spark knock while adjusting engine calibration parameters. It is through advanced spark timing that Ford maximizes engine torque output and minimizes fuel consumption.

MATLAB continues to be widely used to develop Ford's SQ metrics, while the MATLAB Compiler eases the process of turning these metrics into user-friendly applications.

 

Results

  • Improved quality of Ford products. The SSQT enables suppliers to meet SQ requirements for Ford products, since they both now use the same metrics and eliminate inconsistencies.
     
  • Development time reduced by six months. Ford found deploying their metrics with the MATLAB Compiler to be straightforward, while reducing development time by six months. Without the MATLAB Compiler, plug-ins to some third-party analysis systems would require special versions of the third-party software or much more effort to convert the SQ algorithms into C code.
     
  • Source code control. The MATLAB environment makes it easy for engineers to control source code since only a set of MATLAB files needs to be maintained. The stand-alone application and the plug-ins are all generated from the same code, ensuring that all implementations deliver the same result.

Products Used

Data Acquisition Toolbox
MATLAB®
MATLAB® Compiler
Signal Processing Toolbox
Statistics Toolbox