User Stories
Newman-Haas Automates Spring-Testing Using MATLAB and the Data Acquisition Toolbox
Download this user story 951k
|
|
|
Newman Haas Racing (NHR) was formed in 1983 by actor and race driver Paul Newman and racing entrepreneur Carl Haas. Since then, NHR has won three championships, 57 race victories, and 62 pole positions. NHR driver, Michael Andretti, has more victories than any active Champ Car driver and has led more laps than any Champ Car driver in history.
Vital to successes like these is an optimal car setup, which includes specifications for such factors as spring rates, suspension geometry, and ride heights. To ensure that these specifications are quantifiable and reproducible, NHR has implemented a rigorous component testing program that employs a number of test and measurement systems. One such system, an automatic spring tester, was designed and implemented using MATLAB and the MATLAB Data Acquisition Toolbox .
| Primary springs must be stiff enough to prevent the chassis from touching the ground but soft enough to absorb the shock of road irregularities. |
|
Challenge
A good car setup depends primarily on optimal suspension design-one that provides the best tire adhesion possible under a variety of road conditions and turning maneuvers.
Primary springs are a vital component of the suspension system. They largely determine the wheel rate, roll rate, and load transfer responses to acceleration, braking, and turning forces. Springs can also strongly affect static cross-weight, or the distribution of load between the two diagonals-a key factor in vehicle performance.
Determining the Best Spring
Engineers need to find the right compromise between ride rate, ride height, roll rate, and other factors. Road surfaces are different for each race, and springs, like other vehicle components, must be selected, fitted, and installed as appropriate for these changing conditions.
Spring changes need to be made without affecting vehicle cross-weight, so that other variables can be adjusted independently. To ensure proper spring length and fit, engineers bias the strut length using a matching spacer at each corner. This is a major undertaking at Newman Haas, where there are over 600 springs to cover all five of their race cars.
Traditionally, these spacer lengths were determined manually using a press, a load cell, and calipers. This process rarely resulted in spacers of the right dimension, and the team was forced to "pre-fit" the springs between races, a lengthy and laborious process.
Automating the Testing
In 1999, NHR decided to build an automatic spring tester that would minimize measurement error, perform faster and more frequent testing, characterize both linear and non-linear springs, and enable unattended endurance testing.
They also decided to include the testing of additional devices, such as secondary and tertiary springs, bump rubbers, and push-rod load cells. These would add considerably more complexity to the tester.
"Using MATLAB with the Data Acquisition Toolbox gives you the best of both worlds: the speed of a rapid-prototyping tool and the power and flexibility of a GUI development environment."Michael Hegel
Newman Haas Racing
The Newman-Hass Racing spring tester
Solution
In previous data-acquisition projects, NHR developed test setups using Visual C++ and other high-level language development environments. For the new project, they selected MATLAB and the MATLAB Data Acquisition Toolbox.
The Data Acquisition Toolbox provided them with a seamless interface to a number of third-party data acquisition (DAQ) cards and allowed live data to be streamed into MATLAB for runtime analysis and visualization. Having all data collection and processing within the MATLAB environment enabled them to do more post-processing and to customize the graphic representation of results.
Creating the GUI
The NHR team created a graphical user interface (GUI) to facilitate running the same test and analysis on multiple springs. Using GUIDE, a MATLAB tool for creating GUIs, they designed custom interfaces to automate the entire spring tester process. Each spring test was archived into a relational database for recall and reporting. They created custom graphics in MATLAB to visualize the results of each test.
Setting Up a Test Run
To set up the spring-tester run, the NHR team created a series of GUIs that identified the spring, spring type, and testing parameters. Next, they configured a DAQ card for acquisition, using the analog input, analog output, and digital I/O objects in the Data Acquisition Toolbox.
The Data Acquisition Toolbox let them customize their data acquisition by, for example, acquiring a fixed number of samples and adding time and channel value-based triggering to acquire data before and after an event. They used a load- cell-driven state machine to determine the acquisition period. This was accomplished by setting the samples-per-trigger property to infinity to continuously acquire data. During data acquisition, the input to the state machine (coded in MATLAB) was fed using the peekdata function in the Data Acquisition Toolbox. The state machine did not need to run in real time as long as it met the load range criteria for the test. The length and load data was acquired in real time and simultaneously transferred into MATLAB for processing.
Analyzing the Output
The team then used MATLAB to create custom plots to view and analyze the output of the system. "Data analysis is made simple by the power and flexibility of the MATLAB language," comments Michael Hegel, R&D engineer at Newman- Haas; "plus, the toolbox provides simple and uniform card configuration, so that if the DAQ hardware must change, the software need not."
Hegel concludes, "Using MATLAB with the Data Acquisition Toolbox gives you the best of both worlds: the speed of a rapid-prototyping tool and the power and flexibility of a GUI development environment."
Archiving and Reporting
One additional benefit to NHR is MATLAB's support for Component Object Model (COM) interfaces, which allows engineers to access functionality outside the MATLAB environment. One such COM interface is the Microsoft data archiving service, ActiveX Data Objects (ADO). This enabled the spring tester to store results in a a structured fashion using a relational information model, greatly simplifying reporting and data mining.
MATLAB communicated with Excel through a Microsoft Excel COM interface to update data directly to a spreadsheet as each test was run.
|
Working in MATLAB, the NHR team developed custom plots to visualize the output of the spring tester (left) and to develop a series of GUIs (see sample, right) to automate the test procedure and the presentation of results. |
Results
- Fast and easy data acquisition and analysis. The Data Acquisition Toolbox is completely integrated with MATLAB, allowing the NHR team to collect and process its data within a single environment, using the MATLAB language.
- Better car setup and preparation. The spring tester machine has improved the NHR car preparation process to the extent that team engineers and mechanics no longer have to worry that a spring change will alter the balance of the car. The crew is thus free to focus on more pressing performance and reliability issues.
- Simplified testing and adjustment. The simplicity of the MATLAB-based technology allows the NHR team to store historical data and check the relaxation of springs frequently throughout the year. As each test is run, the team can check the data in a spreadsheet that is populated directly from MATLAB.
Store