Carsim Educational User Refence Manual
Carsim Educational User Refence Manual
User Reference
Manual
July 1998
NOTICE
This manual describes the CarSim Educational software.
© 1996 - 1998, Mechanical Simulation Corporation
© 1995, The Regents of the University of Michigan. All Rights Reserved.
2. Database Organization............................................................................... 7
Introduction to the CarSimEd Database ...............................................................7
Data Screens...............................................................................................8
On-Line Help............................................................................................ 10
A Map of the CarSimEd Libraries and Screens..................................................... 10
i
4. The Simulation Solver Programs................................................................41
Overview of Program Operation...................................................................... 41
File Types................................................................................................ 42
5. The Animator..........................................................................................46
Updates................................................................................................... 46
Overview of Operation................................................................................. 46
Reference Frames....................................................................................... 47
Files....................................................................................................... 48
Units ...................................................................................................... 49
File Menu ................................................................................................ 49
Edit Menu................................................................................................ 51
Animation Menu ........................................................................................ 53
Coordinates Menu ...................................................................................... 53
Options Menu ........................................................................................... 55
Help Menu ............................................................................................... 58
Pop-Up Menu............................................................................................ 58
Time Control Slider .................................................................................... 59
Testing Animator Data Sets ........................................................................... 59
6. The Plotter..............................................................................................62
Updates................................................................................................... 62
Overview of Operation................................................................................. 62
Batch and Interactive Operation ...................................................................... 63
Zooming.................................................................................................. 64
Tool Bar.................................................................................................. 66
File Menu ................................................................................................ 66
Edit Menu................................................................................................ 68
Format Menu ............................................................................................ 70
Data Menu ............................................................................................... 76
View Menu .............................................................................................. 84
Windows Menu ......................................................................................... 86
Help Menu ............................................................................................... 88
ii
8. Alphabetical Library Screen Reference .................................................... 106
Conventions in This Chapter .........................................................................106
Animator Camera Setup ..............................................................................108
Animator Groups.......................................................................................111
Animator Reference Frames..........................................................................113
Animator Shapes.......................................................................................116
Animator Wheels ......................................................................................118
Calculator ...............................................................................................120
Cars ......................................................................................................126
CarSimEd Startup......................................................................................129
Computation Parameters..............................................................................133
Input: Braking ..........................................................................................136
Input: Road Profile ....................................................................................137
Input: Steering Wheel Angle .........................................................................139
Input: Wheel Height Above Ground ................................................................140
Library Editor ..........................................................................................141
Link Type Independent Suspension .................................................................143
Plot Format .............................................................................................145
Plot Setup: Batch.......................................................................................148
Plot Setup: Single ......................................................................................150
Plot Transforms ........................................................................................153
Runs .....................................................................................................154
Runs: Batch.............................................................................................161
Suspensions.............................................................................................163
Tires: CarSimEd “Classic” ...........................................................................166
Tires: Cornering Stiffness ............................................................................169
Tires: Pneumatic Trail.................................................................................171
iii
File Types...............................................................................................188
Keywords ...............................................................................................191
Data for the 3D Braking and Handling Model.....................................................191
Data for the 2D Ride Model..........................................................................196
Data for the 3D Suspension Kinematics Model ...................................................197
iv
1. Introduction
This chapter introduces the CarSim Educational software, called simply CarSimEd in this
manual. It provides an overview of what the software can do for you and how it works.
What CarSimEd Is
CarSimEd is a free software collection available from the web site of Mechanical
Simulation Corporation (MSC): www.trucksim.com
It is an easy-to-use software package for simulating and analyzing the braking and
handling behavior of vehicles with four-wheel independent suspensions. CarSimEd
performs virtual tests, replacing an instrumented test vehicle with a computer model. It
has several separate simulation programs. Each solves equations of motion numerically
for a mathematical model designed to predict vehicle behavior.
—1—
Chapter 1 Introduction
2D Ride Model
The ride model uses a subset of the input parameters required for the more detailed 3D
model. Information related to roll or yaw motion is ignored. This model can be used to
determine how basic ride parameters (wheelbase, mass center, spring and damper rates,
etc.) affect the behavior of a car going over bumps.
3D Suspension Model
The suspension model is of a 5-link design, as described in the IAVSD benchmark (M.
Hiller and S. Frik, “Five-Link Suspension,” from Multibody Computer Codes in Vehicle
System Dynamics, Supplement to Vehicle System Dynamics, vol 22, 1993. pp 254 - 262).
The model can simulate short-long-arm (SLA) wishbone suspension, and also the 5-link
rear suspensions used in some Daimler-Benz automobiles.
Vehicle Dynamics
Solver Programs
1. Data screens serve as your primary interface to CarSimEd. They contain vehicle
model parameters, control inputs, and run settings. The data screens are part of a
database that maintains libraries of related data sets.
2. Simulation programs numerically solve equations of motion (i.e., mathematical
vehicle models) to calculate output variables. The process of performing these
calculations is called making a “simulation run.”
3. An animator shows the computed vehicle motions using wire-frame shapes. You
can view the simulated motions, zoom in and out with a simulated camera, and
interactively move around the simulated vehicle to change your point of view.
4. The Windows Engineering Plotter (WinEP) creates plots of vehicle variables as
functions of time or as cross plots of output variables. Use this tool to view any of
the hundreds of variables computed by the simulation models. Plot any
combination of variables, and overlay plots from different runs.
Data set #3
Data set #2
Data set #1
Data Screen:
A view of one data set
though the graphical user
interface
Throughout this manual, the database is considered at four levels. Starting with what you
see on the screen, the levels are:
—7—
Chapter 2 Database Organization
1. Data screens. Any screen display in CarSimEd that has editable fields or other
forms of user settings is called a data screen.
2. Data sets. A data set is the information you provide and can edit in a data screen,
minus the screen itself. The data screen is a view of a data set as seen through the
SGUI (the CarSimEd graphical interface).
3. Libraries. A library is a collection of one or more data sets, plus the information
needed to provide a view in the user interface. The next figure shows the contents
of a library: multiple data sets, plus a graphical view of one data set at a time.
4. The CarSimEd database. CarSimEd includes about thirty libraries.
CarSimEd automatically handles the transfer of information between the libraries and
solver programs. Thus, you do not have to know where the libraries are or what they
contain. However, it is important to understand the distinction between data screens, data
sets, and libraries. Specifically, you should understand that:
• Each CarSimEd screen shows one data set from within one library.
• Changes made on a data screen affect the one data set, but all other data sets
in the library are unaffected.
• Data sets are used in a simulation run only if they are linked to the run.
• Links between data sets can be made and broken as you see fit, to rapidly
swap vehicles, components, inputs, etc.
• When a data set is changed, simulation results will be affected if the
simulation inputs include data sets that are linked to it directly or through a
series of links.
Data Screens
Figure 2.1 shows an example screen with some of the common elements in CarSimEd.
Each data screen has three kinds of elements that you use:
1. Yellow fields. These contain data that you can edit directly. For example, to
change the vehicle wheelbase, find the yellow field 3 with the current wheelbase
value, click on the field, and change the value using the mouse and keyboard.
2. Buttons. All of the library screens include buttons at the top to quickly navigate
through the data sets in the library, and to go to other libraries and programs in
CarSim (see the buttons near 2 ). In addition, some of the libraries have special
buttons for functions such as running a simulation, running an animation, etc.
3. Pull-down menus. Some of the buttons are marked with a triangle . This
indicates that if you click over the button with the left mouse button then a pull-
down menu will appear.
2
1
The yellow field in the upper-left corner of the screen is the title of the data set: Generic
1 . The title is simply text that you choose to identify this data set in the library. It has no
significance to the simulation.
Blue fields with adjacent triangle buttons are common in CarSimEd. Each represents a
link to another data set. The name of the data set is shown in the blue field, and the
triangle button is used to display a pull-down menu. For example, click the triangle
button 4 to view the following menu.
The menu can be used to select a different data set in the linked library (choose the data
set of interest from the list displayed at the bottom of the menu). It can also be used to go
to the linked data set (choose the menu option to Go To Data Set).
After using Go To Data Set to go to a different library, you can return to the previous
screen using the Back button located in the upper-right corner of each data screen.
The standard elements in a data screen, such as the ribbon bar at the top, and the blue
links, are described in more detail in Chapter 7.
On-Line Help
Every CarSimEd screen includes a status bar at the bottom of the screen. Move the cursor
over an object to read a 1-line description of its function in the status bar.
Post-Processing
Programs
Start Screen Animator
X-Y Plotter
Runs Screen:
Simulation Setup
Figure 2.3 shows a more detailed map of the various libraries (screens). The map is a
little complicated, because it shows the libraries for all three types of simulation (3D
braking/handling, 2D ride, 3D suspension). Libraries that are used for more than one of
the simulations are shown in italics.
Note: In order to create the detailed map at a reasonable size, the names
were shortened from the full screen titles.
For example, from the Startup screen, you can go “down” to one of three possible Runs
screens (one for each type of simulation). For any of the Runs screens, you select the
various inputs (brake, steer, etc.), the vehicle or suspension description, the plot and
animation setup, and the parameters that control the numerical solution methods used to
make a simulation.
CarSimEd Startup
Brake Input
Steer Input Cars Road Input Suspension data
Groups
Plot Setup Cameras
Spindle input
In the map, data sets from different libraries are connected with links. For example, here
is a link between a Runs library and a vehicle library:
Type of vehicle to be simulated
1 2 3
4
7 10
5 11
8 9
6
12
14
13
15
16
— 13 —
Chapter 3 How to Use CarSimEd
When Starting
1. Start CarSimEd to get to the Startup screen.
• Use the Windows Start menu, or
• open the file Startup.tbk
Choose a type of
simulation
Start Screen
Click Here to go
to a Runs screen
Runs Screen:
Simulation Setup
2. Use the triangle button next to the data set title in the ribbon bar to go to the start point
for the type of simulation you are interested in (see the figure below).
• 2D Ride, or
• 3D Braking and Steering, or
• 3D Suspension Kinematics
After Starting
All CarSimEd screens include a standard ribbon bar with navigation buttons. The GO
button displays a pull-down menu when clicked.
1. Click the GO button in the ribbon bar ( ) to display a pull-down menu.
1. Click the X box in the upper-right corner of the WinEP or Animator screen:
Notes: If the vehicle comes to a complete stop, or rolls over, the normal
settings cause the program to quit after updating all output files.
There are a few other occasions when the CarSimEd solver
program will not run, or will quit prematurely. Among them are:
1. The output file cannot be written if it is in use by the plotter or the
animator (this can happen if you are replacing a run, as described
in the next section).
10
11
15
14
13
15 16
17
17
17
18
18
3 5
2
Method
Start from the Runs screen (see Figure 3.1 on page 13).
1. Find an existing data set that involves the type of vehicle you are interested in. To
navigate through the Runs library, use the buttons 2 next to the Data Set (title) box 1 .
2. Go down to the linked vehicle data set.
3. Repeat step 2 as needed to go down to more detailed levels. To start, go down to the
linked data set for a vehicle. If you are interested in making a new component or
subsystem data set (tire, suspension, etc.), use the appropriate link to go down to it. As
indicated in the map shown in Figure 2.3 on page 12, it is possible to go down through
several levels of detail.
For the purpose of making changes, you are at the “bottom” when
• the current screen has no blue links, or
• the current screen has blue links, but the data sets available from the menus
associated with the links are not suitable for your purposes. In other words,
you do not have to modify or create any data sets that are further “down” in
the database.
4. Click the New button (in the ribbon bar) to copy the current data set.
5. Give the new data set an appropriate title in the yellow “Data Set” field 1 .
6. Modify the data set:
• Modify the values in the yellow fields as needed.
• Change the data sets in any blue links, using the adjacent pull-down menu.
Note: When you clicked the New button, you created a new data set that
is now available for use in CarSimEd. It is in the same library as
the original, and appears in pull-down menus that show the library
contents. However, it will not be used in any simulations until you
have linked to it from a higher-level data set.
7. Go back up one level, using the Back button in the ribbon bar.
8. Click the New button (in the ribbon bar) to copy the current data set.
9. Give the new data set an appropriate title (see the yellow field “Data Set” 1 ).
10. Go to the blue link that connects to the library in which you just added a data set, and
select the new data set.
11. Repeat steps 7 through 10 until you are back at the Runs screen. At this point, you can
make a new run or modify the current run. Either way, you will select the new vehicle
data set from the linked library of vehicles.
Example
Suppose you are going to change the spring in the front suspension of a vehicle. Starting
from the Runs screen, you would do the following:
a. Go down to the vehicle data set.
b. Go down to the front suspension data set.
c. Make a new suspension data set, and then change the spring rate.
d. Return to the vehicle data set. Make a new one, and change the suspension link to
use the data set created in step 3.
e. Return to the Runs data set. Make a new one, and change the vehicle link to use
the data set created in step 4.
f. Click the Run Simulation button.
The menu typically contains more items than will fit on a monitor with VGA resolution
(640 x 480). In this case, the first item in the menu is More. Highlight it to view more
menu items.
Notes: After using the GO menu, you can return to the previous library
using the Back button from the ribbon bar.
When you go to a library using the GO menu, CarSimEd shows
you the most recently viewed data set. This data set is not
necessarily one that is used in the most recently made run.
Different menus are created for the GO button when you start the software, depending on
the simulation type. For example, when you start with the 3D suspension kinematics
simulation, most of the vehicle data sets are not shown in the GO menu because they
cannot be used with that simulation.
To run with a GO menu that includes all data sets in CarSimEd, start with the data set
Install (in the Startup library).
Click here
Notes: When the box is checked, try to modify a blue link or a yellow
field. You will find that all pull-down menus next to blue links
allow only the navigation option to go to the data set. You will also
find that clicking on a yellow field brings up a message telling you
that the data set is locked.
At any time, you can unlock the data set by clicking the box again
to un-check it.
The locked box protects only the data shown on the screen. Data sets in linked libraries
are not affected. For example, you might lock a run data set. However you could still go
to the vehicle data linked to the run and change the vehicle data set if it is not locked.
2
1
5. Click the button Update All PAR Files 1 . Besides updating all PAR files, the Locked
buttons on every screen will be checked.
3. Click the New button 15 to create a new data set for your new combination of plots and
runs.
4. Using the Add 3 and Remove 4 buttons for the Data Files , put the name of the run of
interest into the field with Selected Data Files 6 .
5. Using the Add 9 and Remove 10 buttons for the Plots, put the name of all plots of
interest into the field named Selected Plots 13 .
6. Click the Make Plots button 14 . This starts the program WinEP and instructs it to make
one plot for each data set listed in the field Selected Plots 11 .
7. After viewing the plots, exit the plotter by clicking the button in the upper-right
corner of the screen.
15
16
1 7
3 4 5
9 10
12
6
13
11
14
1
6
2
7
7
3 4
6
5
8
7
Notes: You can view the results from the individual runs data sets, or use
the batch plot library.
If you specified any parameters or links in steps 5 and 6, then the
individual run data sets are modified such that the link with the
label Overriding Data (from Batch) is set to the batch data set.
That way, you can get back to this data set (batch run) to see what
parameters or links were applied when the run was made.
The echo files generated for each run show the model parameters
that were used in the run, regardless of whether they came from the
normal run data set or from the batch override.
1 2 9
5 8
4 7
2. Use the navigation buttons 1 in the ribbon bar to find a plot setup similar to what you
want.
3. Click the New button 2 to make a new data set.
4. Select a run from the library labeled Source of Plot Variables 6 . When you select a
run, the output ERD file associated with the run is scanned and all of the variables are
listed in fields 7 and 8 .
Notes: The run must have been made in order for the ERD file to exist.
It doesn’t matter which run you use to build the file description, so
long as the ERD file contains the variables that you want plotted.
This is because when you click the Plot button from the Run
screen, the file name is replaced with the file associated with the
current run. The only reason an existing run is used to build the
description is because it is more convenient to click on names in a
list than to type in the names.
(Hoewever, if you prefer to type, you can in fact type the names
directly into the yellow field 4 .)
If the ERD file has more than about 150 variables, only the short
names are shown in fields 7 and 8 . If it has fewer variables,
more information is shown.
5. Clear the field called Data to Plot 4 . (Select the contents of the field and then press the
delete key.)
6. Select X and Y channels of interest from fields 7 and 8 . Add them to the list of data to
plot 3 using the button 5 or by double-clicking in either field 7 or 8 .
7. Continue to build the list of data to plot 4 .
8. To make another plot setup, repeat steps 2 through 7.
9. When you are through making new plot descriptions, leave the library by clicking the
Back button 9 .
Control-Click here
This should bring up the following dialog box.
Font Size
The CarSimEd data screens look best when the system display properties are set for
Small Fonts. However, the screens should be readable for any setting.
Colors
The CarSimEd screens look best when 256 or more colors are supported. If your machine
is set to support 16 or fewer colors, CarSimEd has a setting to produce yellow and blue
fields using dot patterns rather than solid colors. A global setting is used to control
whether CarSimEd uses solid colors or patterns.
1. From any CarSimEd data screen, click the preferences button in the ribbon bar ( ) or
select the Preferences command from the Tools menu. This brings up the Preferences
dialog box.
2. If your machine is set up to support 256 or more colors, Check the box Have 256 or
more colors on monitor 1 . Otherwise, un-check the box.
3. Close the dialog by clicking the X 2 in the upper-right corner.
Runtime ToolBook
The CarSimEd database is managed by a program called Tb40run.exe, located in the
Tb40 folder in CarSimEd. As part of the CarSimEd installation, the Tb40run program
is registered with the file extension TBK. If you move the folder containing Tb40run,
then you must inform Windows of the new locations.
Your objective is to associate the file type TBK with the file Tb40run.exe. If you
know how to do this, go ahead and do it. If not, the following steps describe a method
that will work.
1. From the desktop or Windows Explorer, find the file Startup.tbk in the CarSim
folder. Double-click the file to try to open it. If CarSim launches, congratulations! No
work is needed.
However, more likely, Windows will not know how to open the file, and will bring up the
following dialog:
2. Click the button Other. This brings up the next dialog, to locate a file.
3. Locate the file TB40run.exe, in the folder Tb40 in CarSimEd. After selecting the file,
click the Open button to complete the selection and close the dialog box. The previous
dialog should now show the program.
4. Make sure the box “Always use this program to open this file” is checked.
5. Click the OK button to close the dialog.
You have now associated the file type TBK with the program Tb40run in its new
location.
3. Click the button Change Settings 2 . This will hide the CarSimEd logo and reveal more
buttons, including those shown in Figure 3.7.
4. Click OK. CarSimEd will copy each data set of the old library and paste the contents into
the new one. If a data set already exists with the same name, the copy is given a unique
name by appending a number.
Note: This method is reliable for libraries with only yellow data fields.
For libraries with blue links, the names of the linked data sets are
copied. However, if the data sets do not exist in the new CarSimEd
installation, then the links are not valid and must be reset by hand.
Click here
3. Paste the tabular data into the tabular data field 1 of the calculator data screen.
3 4
4. Type definitions for the transformed X and Y values into the definitions field 3 . The
definitions should have the form: A*X, B*Y where A and B are numerical scale factors.
For example, suppose the X values are in inches and Y values are in pounds. To convert
to a table where the X values are in millimeters and the Y values are in Newtons, use the
definition: 25.4*X, 4.4482216152605*Y.
5. Click the Transform Series button 4 to perform the conversion.
6. Click the Plot button 2 to confirm that the conversion was performed as you would
expect.
7. Optional. If the data should not be separated with commas, click the button Remove ‘,’.
8. Select the entire contents of the tabular data field. The menu command Select All, under
the Edit menu (Ctrl-A) is helpful for doing this.
9. Select the Copy command from the Edit menu (Ctrl-C).
10. Go to the data screen where the tabular data will be stored.
11. If a data set does not exist for the transformed data, create one using the New button and
give it a name.
12. Paste the clipboard contents into the field used to store the numbers.
See Chapter 8 for details on using the calculator data screen.
When the program starts, it creates a window in which text is displayed. The name of the
program file is typically shown as the window title.
— 41 —
Chapter 4 The Simulation Solver Programs
You can run the solver programs interactively or in batch mode. The mode is determined
by the existence of a batch control file with the name Simfile (created automatically by
CarSimEd): if this file exists, the program runs in batch mode; otherwise, it runs
interactively.
If the file Simfile does not exist (in the folder in which the program is located) then the
program runs in interactive mode. It prompts you for an input file, an output ERD file,
and two output echo files. After the last file is written, the program quits.
If the file Simfile does exist, then all filenames are read from it. It quits when the
Simfile is fully processed and the solver program writes the last output file.
Properties of the window created by the solver program can be adjusted by selecting the
solver program (extension EXE, found in the folder CarSimEd\Programs), right-
clicking to display a pop-up menu, and selecting Properties from the menu.
As installed, the solver programs close their windows when they finish. When the
window is closed, the most recently accessed program comes to the top. When run
normally from within CarSimEd, the most recent program is ToolBook, which was
showing the Runs screen from which the run was initiated. Therefore, the normal
behavior is that the Solver program brings up a window, runs for the time needed to
perform the simulation calculations, then quits and closes the window, leaving you back
at the Runs screen.
File Types
When run from the graphic interface in CarSimEd (i.e., by clicking the Run Simulation
button from a Runs screen), all files associated with a run have the same base name and
differ only in their extensions. The base name is the current ID number displayed in the
upper-right corner of the Runs screen.
Table 4.1 shows the files and their extensions.
Details of the six file types are provided in Appendix E, along with some examples. Short
summaries are provided below.
Simfile
As noted earlier, Simfile is a batch control file. Whenever you click the Run button, a
new Simfile is created in the same folder as the simulation program (by convention,
this is the folder Programs). If a file named Simfile already exists, it is overwritten.
Because Simfile is automatically re-generated before each run, it can be deleted at any
time without loss of information.
The Programs folder contains the Simfile used for the most recent run. Therefore, if
you run a solver program independently of CarSimEd, it will repeat the last run made.
To run a program in the interactive mode, you must delete or rename Simfile.
PAR Files
The PAR file lists the input parameters for the simulation program.
When you click the Run Simulation button, a new PAR file is created in the folder
containing the Runs library (e.g., Runs). The PAR file contains information from the
Runs screen such as the title of the run, and pathnames for the data sets linked to the run
(vehicle, steer input, etc.).
The PAR file also includes references to other PAR files. Every data screen in CarSimEd
has an associated PAR file, including the Runs screen. When the simulation program
runs, it read the PAR file generated from the Runs screen, and all other PAR files
referenced within it. The files can be thought of as forming a tree. The “tree” associated
with any screen in CarSimEd can be viewed by clicking the Parstree icon in the ribbon
bar: . Clicking the button launches a program called Parstree, using the PAR file
associated with the current data screen. Figure 4.1 shows an example display window
from the Parstree program. Note that most of the input lines start with the word
parsfile, and are followed by pathnames to other files with more data.
BIN files contain numerical data organized by channel number and sample number,
similar to test data recorded on a multi-track recorder. A companion file, with extension
ERD, describes the layout of the BIN file and also contains labeling information for each
variable. It also contains the information that would normally be put into a log sheet
summarizing the data, including text needed for preparing graphical plots of the data.
By itself, a BIN file is useless. It has no structure, and cannot be easily understood
without the layout information contained in the ERD header file.
By convention, ERD and BIN file pairs are simply called ERD files. The name ERD is
used because the Engineering Research Division at UMTRI designed the format.
Data processing programs for ERD files obtain most of the information needed from the
file itself. For example, the high level of automation in the animator and plotter exists
because both were designed to work with ERD files.
The format of an ERD file is described in Appendix B. Appendix G contains a list of all
of the variables in the ERD and BIN files for one of the CarSimEd models.
Log Files
The input parameter files (extensions = PAR) can reference other PAR files, much like an
INCLUDE directive in C or Fortran. As the simulation processes the parameter files, it
writes the names into a LOG file. The LOG fileprovides the same information as can be
obtained using the Parstree program.
Most users will never have occasion to look at the LOG files. They exist because they
can help to debug problems involving parameters not getting through, such as when
changes are made to the directory structure of the CarSimEd libraries.
Updates
The animator program is used in a number of software packages. The latest version is
always available from the Internet at:
http://www.trucksim.com/animator.html
If you download a newer version, simply replace the file Animator.exe in the
Animate folder in CarSimEd.
Overview of Operation
To help understand the animator, imagine that you are aiming a video camera at a vehicle
as it moves down the road. Thirty times per second, the camera records an image of the
vehicle and ground as seen from your point of view. By playing back those images at the
same rate (thirty times per second), you see the vehicle move relative to its surroundings.
If the camera has a zoom lens, you can zoom in to fill the screen with the vehicle. Or, you
can zoom out to shrink its apparent size.
What you see depends in part on where you are located. You could be standing on the
ground, in which case your position would not change. Or, you might be in another
vehicle that moves with the vehicle. In the animator, your location is defined as the
“camera point.”
Your view is also determined by how you aim the camera. You might have the camera
aimed at a fixed point in space. The vehicle would only be visible while it is in camera
view. More likely, you would move and aim the camera as needed to keep the vehicle in
view. In the animator, the camera is aimed directly at a “look point.”
Figure 5.1 shows the basic geometry and the relationships between the camera point, a
look point, the 3D system being animated, and the 2D image that is recorded.
The animator allows you, the user, to build and modify descriptions of the system to be
animated. In order to use the program effectively, it is helpful to understand the concept
of a moving reference frame.
— 46 —
Chapter 5 The Animator
Reference Frames
The animator creates images based on a set of visible objects that includes a grid, wheels,
and arbitrary wire-frame shapes defined by a sequence of connected lines. Some of the
wire-frame objects are organized into groups that move together (for example, the body
of the vehicle).
Origin of global
coordinate system
Look point
Origin of moving
coordinate system 2D projected image
Camera
point
Foc
al le
ngth
Figure 5.1. Geometry of the camera point and the look point.
A group of points and objects that maintains a fixed relationship (i.e., that constitute a
rigid body) is called a reference frame. Although the reference frame might move and
rotate, the spatial relationships between objects in the reference frame do not change
relative to each other. In the animator, all motions are associated with reference frames.
Each reference frame has a rectangular coordinate system that is used to describe 3D
locations of points within that reference frame. For example, Figure 5.1 shows the
origins and axes for two reference frames: a global non-moving frame, and a frame that
moves with a vehicle body.
In general, it is not possible to tell how many reference frames exist by looking at a single
image. However, by observing an animation, it is sometimes possible to visually see the
effects of all reference frames. For example, the system shown in Figure 5.1 includes six
reference frames:
• A fixed global reference frame is used to locate a fixed grid that shows the
ground plane. The three axes of a coordinate system fixed in this reference
frame are shown in the figure.
• A moving frame is associated with the vehicle body. The body is simply a
series of lines drawn in this reference frame. The three axes of a coordinate
system fixed in this reference frame are shown in the figure. Given that the
coordinate system is fixed in a moving reference frame, then it follows that
the coordinate system moves.
• Each of the four wheels is associated with a separate reference frame.
Wire-frame shapes are all defined using local X-Y-Z coordinates. The animator
transforms the local X-Y-Z values to global X-Y-Z values in order to draw the shape. To
perform the transformation, the animator must know the location and orientation of the
reference frame relative to the global reference frame. This is defined by six variables:
three coordinates (global X-Y-Z) and three rotation angles that are called Euler angles.
The six variables needed to locate and orient the reference frame for the vehicle bodies
and wheels are all computed as part of the simulation. It is also possible for you, the user,
to define new reference frames using combinations of the variables computed in the
simulations. Details for specifying reference frames are provided in Chapter 8 in the
section Animator Reference Frames. That section also provides more information about
Euler angles.
Files
When the animator is started from a CarSimEd Runs screen, the necessary files are
automatically opened. Therefore, it is not necessary to know the names of the input files.
However, an understanding of how the animator reads the necessary information from
files might be helpful in understanding its operation.
The animator program reads two kinds of input files (see Figure 5.2). As noted above, all
motion is due to movements of reference frames, as defined by up to six variables. Those
six variables are read from an ERD file, created by the simulation programs whenever a
run is made. Appendix B provides details of the ERD file format, and Appendix G shows
a list of variables contained in a typical CarSimEd ERD file.
Other information such as program settings, definitions of parts, shape information, etc. is
described with keyword-based text files, typically with the extension PAR. These files,
called PARSFILEs, have the same general design as the input files read by the simulation
programs. A single top-level PARSFILE contains the names of other PARSFILEs with
camera information, vehicle information, reference frames, etc.
Appendix D describes the keywords used in the animator PARSFILEs. The keywords are
also mentioned in the documentation for the six animator library screens contained in
Chapter 8.
Animator
Units
The animator requires all angles to be in degrees, and all coordinates to be in the same
units of length. CarSimEd uses meters for animation length units. The animator allows
user-defined scale factors for all coordinates and variables. This means that a mixture of
units can be accommodated. For example, if some coordinates have units of meters and
others millimeters, the values in millimeters can be associated with a scale factor of 0.001
to convert them to meters.
See the sections Animator Reference Frames, Animator Shapes, and Animator
Wheels in Chapter 8 for details on how to set scale factors.
File Menu
The file menu is used to read files, write files, and exit the program. Printing is not
functional in the current version. To print a graphic, you can (1) copy it to the clipboard
and paste it into another application (e.g., QLPad), and (2) print from the other
application.
Open Parsfile…
Select this command to open a PARSFILE (extension = PAR) with the Windows file
browse dialog. If you read a new PARSFILE, the animator will show the same motions
as before, using the new camera point of view, shape descriptions, etc. as defined in the
new PARSFILE. The keyboard command is Ctrl-O.
Save Parsfile As
Select this command to save most of the animator settings. The animator data from the
CarSimEd SGUI are spread over the six animator libraries described in Chapter 8.
Multiple shapes and reference frames are commonly used, which means that the animator
program might read 20 or more PARSFILEs when it runs. This menu command creates a
single PARSFILE with all of the information consolidated.
The PARSFILE can be used later as an input to the animator, to exactly recreate the
current settings. The file can also be viewed in a text editor to debug inputs that cause
problems, or to obtain camera and look-point coordinates that were set interactively using
the Coordinates menu.
When you select the command, it displays the following dialog box. The numbered items
in the dialog box are described below.
2 3
1
4
5
6
7
8
1 Pathname for file to be created. The default is echo.par, in the same folder as the
animator program. You can type a new pathname in this field or use the browse
button 2 .
2 Browse button. Click to bring up the Windows file browse dialog to search your
directory system for a suitable folder. If you select a folder using the browse dialog,
the resulting pathname is automatically entered into the file field 1
3 Save button. Click to create the Parsfile.
4 Cancel button. Click to exit the dialog without creating a file.
5 Check box for shape and frame definitions. If checked when you click the Save
button, all vehicle shape and frame data will be included in the file.
6 Check box for grid definitions. If checked when you click the Save button, the
current grid information will be included in the file.
7 Check box for Camera definitions. If checked when you click the Save button, the
current camera reference frame and point coordinates will be included in the file.
8 Check box for Look-point definitions. If checked when you click the Save button,
the current look-point reference frame and coordinates will be included in the file.
Exit — exits the animator program. To use the keyboard, type the Windows-standard
sequence: Alt-F, X. Ctrl-Q also works.
Edit Menu
The Edit menu exists to support the clipboard and to set preferences.
Image Copy
Select this command to copy the screen display to the clipboard as a bitmap. The
keyboard command is Ctrl-C.
Preferences...
Select this command to set a few options for the animator that are saved when you quit
the program. The preferences are stored in a file Prefs.txt, described in Appendix D.
1 6
2 7
3
Animation Menu
The animation menu exists mainly to remind you of keyboard commands that control
animation. Although the menu items are functional, you will usually find it quicker to
press the indicated keys.
Stop
Select this command to stop (pause). This is like being able to freeze time. While
stopped, you can still use the Coordinates menu to move the camera around, zoom in
and out, and change the look-point. The keyboard command is the space key.
Step Forward
Select this command to step forward one increment in time, like a frame advance on a
VCR. The keyboard command is the ‘s’ key.
Step Backward
Select this command to step backward one increment in time. The keyboard command is
Shift-S.
Coordinates Menu
This menu exists mainly to remind you of keyboard commands that control the camera
viewpoint. Although the menu items are functional, you will usually find it quicker to
press the indicated keys.
The first six items are used to change the position of either the camera point or the look
point, depending on which is checked further down in the menu. The currently affected
point is checked in the menu, and is written in the animator status bar (at the bottom of
the animator window).
The camera and look points are shown in Figure 5.1 on page 47. The camera point
defines where the camera is located, and the look point defines where the camera is
looking. For example, consider changing the Z coordinate (height) of either point.
Increasing the Z coordinate of the camera has the effect of raising the camera, as if you
are viewing the vehicle from a helicopter that rises. On the other hand, increasing the Z
coordinate of the look point has the effect looking up. When you look up, everything in
view shifts down.
X-Coordinate Plus
Select this command to increase the X coordinate of the camera or look point. The
keyboard command is the ‘x’ key.
X-Coordinate Minus
Select this command to decrease the X coordinate of the camera or look point. The
keyboard command is Shift-X.
Note: The keyboard commands are assigned so plain key commands
increase things, and using the shift key decreases things. For
example, 's' steps forward, Shift-S (S) steps backward; 'x' increases
an X coordinate, Shift-'x' (X) decreases it.
Y-Coordinate Plus
Select this command to increase the Y coordinate of the camera or look point. The
keyboard command is the ‘y’ key.
Y-Coordinate Minus
Select this command to decrease the Y coordinate of the camera or look point. The
keyboard command is Shift-Y.
Z-Coordinate Plus
Select this command to increase the Z coordinate of the camera or look point. The
keyboard command is the ‘z’ key.
Z-Coordinate Minus
Select this command to decrease the Z coordinate of the camera or look point. The
keyboard command is Shift-Z.
Camera Coordinates
Select this command to cause the camera position to be controlled by the first six menu
items. The keyboard command is the C key.
Look-Point Coordinates
Select this command to cause the loop point position to be controlled by the first six
menu items. The keyboard command is the L key.
Options Menu
This menu has commands for setting several options in the animator operation.
Grid On
Select this command to toggle the grid display.
Modify Grid
Select this command to display a dialog box for setting properties of the grid.
1 2
3 4
5
7 8
6
1 Maximum frame rate possible, given the data in the ERD file. The frame rate is the
reciprocal of the time step 2 .
2 Time interval between stored data points from the ERD file header. This value is
specified in line 2 of the header of the ERD file. This is the minimum time possible
between animation frames.
3 Target frame rate for animation. If the animation is running too slowly, you can
specify a lower frame rate to speed it up. Typically, frame rates of 10 to 30 frames
per second can run in real-time on Pentium computers. If the target frame rate is
very high (more than 100), the computer will not be able to refresh the screen in
real time and the animation will run in slow motion. If you change this value, the
animation time step 4 is automatically changed (the frame rate is the reciprocal of
the time step).
The default frame rate is specified under the Preferences option in the Edit menu
(see page 52).
4 Animation time step. If the animation is running too slowly, you can specify a
larger time step to speed it up. If you change this value, the animation frame rate
3 is automatically changed (the frame rate is the inverse of the time step).
Note: If you specify a time step that is smaller than the value in the file
2 , the value in the file is used. To run with the minimum time
step (show every frame possible), you can enter a value of 0 and
the animator will replace it with the value from the ERD file.
5 Check box for real time animation. If the animation is running too quickly, check
this box to slow it down to real-time. When this box is checked, the animator
accesses the computer clock and waits if necessary to avoid running the animation
faster than real time.
Notes: The process of checking the computer clock introduces a small
delay. The delay depends on the computer and how your system is
set up. It is because this delay exists that the check box is provided.
When you check the box, the delay is eliminated.
If the animation is already running slower than real-time, checking
the computer clock will slow it down even more. If the animation
is running slower than real time and you want to speed it up, you
must decrease the frame rate 3 or increase the time step 4 .
6 Check box for maximum speed animation. When checked, the animator does not
access the computer clock, allowing maximum display speed. Check this box if the
animation is running slower than real time.
7 OK button. Click to exit the dialog box and apply the new settings.
8 Cancel button. Click to exit the dialog box without changing the settings.
Superimpose Vehicle
Select this command to toggle an option to draw new images without erasing old ones.
This mode is useful with some configurations to show trajectories of vehicle motion, or
to show amplitudes of oscillations.
2
3
4 5
1 Focal length. This is the distance from the camera point to the 2D plane used to
project the 3D objects. See Figure 5.1 for the geometry.
2 X, Y, and Z coordinates of camera point, in its reference frame.
3 X, Y, and Z coordinates of look point, in its reference frame.
4 Cancel button. Click to exit the dialog box without changing the camera settings.
5 OK button. Click to exit the dialog box and apply the new settings.
Help Menu
This menu is standard in Windows for providing information about a program.
Pop-Up Menu
Click on mouse right button to display following menu. All items on this menu are copies
of items on the main menus and perform the same function when applied from the right-
click pop-up menu. The menu is provided so you don’t have to move the mouse as much
to perform common actions.
The top-level par file associated with the Runs screen includes references to other PAR
files. In fact, every blue link on the screen is represented in the PAR file with the
keyword PARSFILE followed by a full pathname to another PAR text file. If any of those
pathnames are not valid, the animator will generate an error message and quit without
showing an animation.
Bad pathnames can be quickly located by using the PARSTREE program in CarSimEd.
To run it, just click on the button with the tree icon: . Alternatively, go to the Tools
menu and select the item View Parstree. The PARSTREE program brings up a window
with two panes, similar to the Windows Explorer.
For the example shown in Figure 5.4, the file 211.par is marked to indicate an invalid
reference. The panel on the right displays the contents of the selected PAR file, 212.par.
From reading the PAR file that references the nonexistant file, it is seen to be in the
animator FRAMES folder. Inspection of the FRAMES library should reveal that one of
the data sets has been deleted or renamed, causing the bad link.
4. View the animation. When you are ready to modify the settings, stop the animation. Press
the space key or use the Stop command from the Animation menu.
5. Without quitting the animator, switch back to the CarSimEd Runs screen. (Use Alt-Tab
in Windows to switch between running programs.)
6. Within the ToolBook part of CarSimEd, navigate to the screen with the animator data to
be edited (e.g., an animator shape data set).
7. Edit the data in the CarSimEd data set. As soon as you modify any data, you will see a
red circle in the upper-right corner of the window.
Click Here
7. Click on the red circle in the upper-right corner. This causes CarSimEd to update the
PARSFILE using the new data from the screen.
Note: Normally, communication between the database and the animator
is transparent. All necessary files are properly updated when you
click the Animate button in the Runs screen. Here, you are
bypassing the normal operation, and must force the SGUI to
update the PARSFILE before it would normally do so.
8. Switch back to the animator (use Alt-Tab).
9. Select the menu item Reload Current Files under the File menu (or type Ctrl-R) to see
the effect of the new data.
10. Optionally switch back to the SGUI screen and repeat steps 6 through 9 as needed.
Updates
The plotting program is used in a number of software packages. The latest version is
always available from the Internet at:
http://www.trucksim.com/winep.html
If you download a newer version, replace the file winep.exe in the Plot folder in
CarSimEd.
Overview of Operation
WinEP has a workspace defined by a main window with a menu bar. The main window
contains plot windows, each showing plots made with a single set of X-Y axes. Figure
6.1 shows the main WinEP window with four example plot windows.
Each plot window contains a graphical representation of one or more X-Y data sets. An
X-Y data set is a series of X and Y values obtained from a data file. The X-Y data sets
can come from the same file or from different files. The X values in each data do not
have to be the same, and the data sets do not have to contain the same number of points.
WinEP reads the data from ERD and text files and has completely automated scaling,
formatting, and labeling capabilities. However, labeling options are limited for non-ERD
text files.
Note: If a file is not in ERD format, it can be converted by adding several
lines of text to the beginning of the file. A description of the ERD
file format is provided in Appendix B.
Once a plot window is created, the X-Y data sets can be transformed by subtracting
offsets or by applying high-pass or low-pass filters. However, the data sets cannot be
deleted or replaced. If you create a plot with different data sets, the new plot will have a
new window.
— 62 —
Chapter 6 The Plotter
In addition to the X-Y data, each plot window has a set of formatting attributes, such as
the colors of the lines, the size of the labeling text, the type of grid, etc. You can show the
data points with connecting lines, symbols, or both. You can use linear or log scaling and
you can choose from several axis types. The formatting can be set independently for each
plot, and changed interactively at any time.
You can copy the WinEP plots to the clipboard and send them to a printer.
There are no built-in limits to the number of active plot windows that can be maintained
by WinEP. The only limits are imposed by computer memory.
You can also run WinEP as a normal Windows application. Start in this mode by double-
clicking on the file Winep.exe. When started in this way, the WinEP workspace is
empty and you must use a menu command to define the data for the first plot. A better
way to start is by double-clicking on a file with the extension ERD. This starts the WinEP
program and automatically loads the selected ERD file. You must then pick X and Y
variables from the file to create the first plot.
Note: The file Winep.exe must be associated with the file type ERD if
you want to launch it by double-clicking on an ERD file. The
association is made automatically as part of the CarSimEd
installation. You would need to re-establish the association only if
you move the CarSimEd directory, or if you copy the WinEP
program to another computer that does not have CarSimEd on it.
Appendix C describes the batch control file for WinEP, created automatically by
CarSimEd, and the keywords that are recognized by WinEP.
The rest of this chapter covers the interactive use of WinEP.
Zooming
WinEP usually creates each plot window with the axes scaled to show all data points. To
zoom in, use the mouse to create a zoom rectangle. Press the left button to anchor one
corner at the current cursor location, then drag with the button still pressed to define the
rectangle. When the rectangle covers the desired range, release the button. WinEP will re-
draw the plot using the region of the rectangle as the new limits for the axes.
Figure 6.2 shows the appearance of a plot with a zoom rectangle drawn, just before the
mouse button is released. Figure 6.3 shows the same plot window immediately after the
button is released.
Note: WinEP rounds off the maximum and minimum values for the axes.
The new plot is drawn to include the full range of the rectangle you
drew with the mouse, plus some additional range to round off the
axes. For example, the maximum Y value from the zoom rectangle
shown in Figure 6.2 is about 3500. The maximum value in the
zoomed plot of Figure 6.3 is rounded up to 4000.
If you click in a plot window without drawing a rectangle, WinEP re-draws the screen
with the same scale as before.
Tool Bar
WinEP includes a toolbar with buttons for applying some of the most common
commands. Place the cursor over a button to read its function in a pop-up box and also in
the status bar.
All toolbar buttons provide actions that duplicate menu items. The actions are described
in the following descriptions of the menu items. When a menu item has an associated
toolbar button, the button is shown in the heading for the menu item.
File Menu
The file menu is used to read files, write files, print windows, and exit the program.
Print
Use this command to make a hard-copy of the active plot using the current Windows
printer. The keyboard command is Ctrl-P.
Print Preview
This command opens a window showing how the active plot would be printed using the
current print settings.
Print Setup
This command brings up the Windows dialog box for changing printer information.
Exit
Use this comand to exit WinEP. To use the keyboard, type the keyboard command Ctrl-
Q, or Alt-F4, or Alt-F, X.
Note: Alternatively, you can click the in the upper right hand corner
of this screen to return to the Runs screen.
Edit Menu
The Edit menu has commands to support the clipboard and to set preferences. When a
dialog box is in front, the Edit menu cannot be used with the mouse. However, the
keyboard commands are functional and can be used to cut, copy, and paste within text
fields
Undo
The keyboard command (Ctrl-Z) undoes the most recent entry in a dialog box.
Cut
The keyboard command (Ctrl-X) cuts currently selected text to the clipboard. This item is
only in effect when editing text in dialog boxes. Modification of the graphic display is not
supported.
Copy
This command copies the plot from the active plot window to the clipboard. The graphic
is copied as a bitmap. If a dialog box is active, this command copies currently selected
text to the clipboard. The keyboard command is Ctrl-C.
Paste
The keyboard command (Ctrl-V) pastes text from the clipboard into the current cursor
location. If text is selected, it is replaced by the contents of the clipboard. This item is
only in effect when editing text in dialog boxes.
Preferences
This command brings up the Preferences dialog box. When you quit WinEP, the settings
from this dialog box are automatically saved to a file named epprefs.txt, which
stores the settings.
1 3
2 4
Format Menu
This menu has commands for controlling the appearance of the plots made.
Log X Axis
Use this command to toggle between linear and log scaling for the X axis of the active
plot. If the log axis is selected, the menu item has a check mark. The keyboard command
is Ctrl-H.
Note: WinEP will ignore the X axis log option and revert to the linear
option if there are one or more zero or negative X values in the
data set. However, if you zoom in to exclude the zero values, the
log option can be used for the data shown.
Log Y Axis
Use this command to toggle between linear and log scaling for the Y axis of the active
plot. If the log axis is selected, the menu item has a check mark. The keyboard command
is Ctrl-G.
Note: WinEP will ignore the Y axis log option and revert to the linear
option if there are one or more zero or negative Y values in the
data set. However, if you zoom in to exclude the zero values, the
log option can be used for the data shown.
The first tab, Axes 1 , controls the scaling of the X and Y axes.
2 2
3 3
4 4
5 5
6 7 8 9
You can use this dialog box to type in the desired ranges of X and Y values in the next
plot.
2 X, Y axis type. These controls define whether the axis will be drawn with a linear
or log scale. They duplicate the Log X and Log Y menu commands.
3 Autoscaling (X and Y axes). Check to cause WinEP to scan the data and size the
axis to include the full range of data. This setting is recommended for routine use.
4 Manual scaling (X and Y axes). Check to scale the axis according to the range
specified in the adjacent fields 5 . This setting is provided for situations in which
you wish to make many plots with the same axes, regardless of the range covered
by the data.
5 Range of data covered by axis. Specify minimum and maximum values for scaling
the axis. These are used only when the manual scaling button 4 is selected.
6 OK button. Click to close this dialog box and apply the settings as displayed.
7 Cancel button. Click to close this dialog box and revert to the previous settings.
8 Apply button. Click to apply the current settings without closing the dialog box.
This button is not functional in the current release.
9 Help button. Click to display on-line help. This button is not functional in the
current release.
10
11
12 13
14
6 7 8 9
10 X-Y Data Set tab. Click to show the settings that control the display of a data set.
Note: An X-Y Data set is a set of X and Y values from a specific file.
Each data set is represented graphically in a plot. When multiple
data sets are shown in the same plot, they can be distinguished by
assigning them different display attributes.
11 X-Y Data set. Press the button to display a pull-down menu with the list of Y
variables for each data set. Select a data set to display and possibly edit its
attributes.
12 Symbol. This field shows the symbol currently associated with the data set 11 .
Press the button to display a pull-down menu of available symbols. Choose one
to change the current symbol.
13 Line type. This field shows the type of line currently associated with the data set
11 . Press the button to display a pull-down menu of permissable types, and
choose one to change the way connecting lines are drawn between the data points.
14 Color. This field shows the color currently associated with the data set 11 , in terms
of RGB values (24-bit color, composed of components of Red, Green, and Blue).
Press the button to display a palette of colors.
After selecting a color, click the OK button to return to the format dialog box. The
RGB values for the selected color will be shown.
15
16 18 20
19
17
21
6 7 8 9
15 Plot Layout tab. Click to show the settings that control the display of the axes,
frame, and grid.
16 Axes. Press the button to display a menu with the choices: Axes or No Axes. The
No Axes option doesn’t work unless you also select No Grid 18 and No Frame 20 .
17 Max digits for Y axis. This is the number of digits set aside for the tick labels of the
Y axis. For example, if set to 3, WinEP draws the Y axis of every plot with enough
space for 3-digit labels for the Y axis. If set to 0, WinEP determines the spacing
automatically.
A value of 0 is recommended unless you want all plots to be drawn in exactly the
same place relative to the left edge of the window.
18 Grid. Use this to choose between the options: No Grid, Course Grid (grid lines at
major tick marks), or Fine Grid (grid lines at minor tick marks).
19 Legend location. Use this to choose among five possible locations for the legend
used to identify the X-Y data sets in overlay plots. The options are Right of Plot, On
Plot Upper-Left, On Plot Upper-Right, On Plot Lower-Left, and On Plot Lower-
Right. The legend and other labels in the plot are shown below in Figure 6.4.
Title
Y axis label
Legend
20 Frame. Use this to determine whether the plot area has an enclosing rectangular
frame. The options are No Frame, Frame, and Frame with ticks. The No Frame
option doesn’t work unless you also select No Grid 18 .
21 Size limit for legend. When WinEP draws the legend for overlay plots to the right
of the plot area, it uses whatever space is needed. If the labels are lengthy, or if the
window is small, this can limit the horizontal space available for the plot. Use this
field to set a maximum amount of the window space that can be taken for the
legend.
This setting does not affect the plots unless: (1) there are at least two X-Y data sets
being overlaid, (2) the specified position 19 is “Right of Plot,” and (3) the length of
the longest label exceeds the specified percentage.
22
23
24
25
26
27
6 7 8 9
22 Font tab. Click to show the settings that control the text used to label the axes and
data in the plot. The four types of labels, controlled with items 23 - 26 , are shown
in Figure 6.5.
23 Plot title font attributes. Click the selector button to bring up a Windows font
selection dialog box, as shown in Figure 6.5. The properties selected in the box will
be applied to the plot title. After choosing the font properties, click the OK button to
make the change, or click the Cancel button to keep the original properties.
24 Axes labels. This is similar to the plot title button 23 , except that the settings made
using the Windows font dialog box (see Figure 6.5) are applied to the text used to
label the X and Y axes.
25 Tick labels. This is similar to the plot title button 23 , except that the settings made
using the Windows font dialog box (see Figure 6.5) are applied to the text
associated with the tick marks.
26 Legend labels. This is similar to the plot title button 23 , except that the settings
made using the Windows font dialog box (see Figure 6.5) are applied to the text
used to label the individual data sets in the legend.
27 Apply to all check box. When this is checked, changing font properties using any of
the buttons ( 23 24 25 26 ) will change all of the text in the plot.
Data Menu
The Data menu has commands that involve the numbers to be plotted and the associated
labels from the data files. The commands involve the selection of X-Y data sets, possible
transformation of the numbers, labels for the plot, and the viewing of the numerical
values using a cursor.
2
4 5 6 7
8
9
10
1 List of X-Y data sets to plot. This list shows the data sets that will be plotted. You
cannot edit it directly, but can modify it using the buttons below.
2 List of variables in the current ERD available for defining the Y coordinate in a
plot. To select a variable for plotting on the Y axis, click on its name. Double-
clicking in this list has the same effect as clicking the Add button 7 .
3 List of variables in the current ERD available for defining the X coordinate in a
plot. To select a variable for plotting on the X axis, click on its name. Double-
clicking in this list has the same effect as clicking the Add button 7 .
4 Delete button. Click this to delete a data set from the list of data to plot 1 . This
button has no effect unless a line is selected in the list 1 .
5 Clear button. Click this to delete all data sets from the list of data to plot 1 .
6 File button. Click this to bring up the Windows file browser dialog box to choose an
ERD file or text file with plot data. This button has the same effect as selecting the
command Open ERD File from the File menu.
Note: While the dialog box is displayed, the WinEP menus cannot be
used. Therefore, the File button is the only way to open a new file
from within this dialog box.
7 Add button. Click this to add a new X-Y data set to the list of data to plot 1 . The
new data set has the currently selected Y channel 2 , the currently selected X
channel 3 , and the currently open file (shown in 9 ).
8 Plot button. Click this to close the dialog box and make a new plot using the current
list of X-Y data sets 1 .
9 File name. This field shows the current data file. The name can be copied to the
clipboard, but there is not a reason to edit it directly. To change the file, you must
click the File button 6 .
10 Title. This field shows the title from the data file, if (1) the file is an ERD file, and
(2) the optional TITLE keyword is used in the ERD header. All ERD files created
by CarSimEd models show the title of the corresponding Runs data set.
Offsets…
Select this command to bring up the Data Offsets dialog box. Use this dialog box to
specify offsets for up to 20 data sets laterally (X) or vertically (Y). The values you enter
in these field will be subtracted from the values obtained from the data file. For any fields
left blank, no offset is applied.
When you are finished specifying the offsets, click the OK button. These offsets will be
applied to the active plot.
To apply the offsets to the original data (rather than the data as modified already), check
the boxes associated with each data set.
Filters…
Select this command to bring up the Filters dialog box. Use this dialog box to filter the Y
values in the data sets of the active plot using a moving average. The numbered items in
the dialog box are described below.
1
5
2
6
3
7
4
8 9 10
1 No filter button. When this button is selected the data are not modified.
2 High pass button. When this button is selected, the Y variables are processed with a
high-pass filter. The data are smoothed using the specified baselength 5 , and the
smoothed values are subtracted from the original. See the Help button 8 for details
on how the filter works.
3 Low pass button. When this button is selected, the Y variables are processed with a
low-pass filter. The data are smoothed using the specified baselength 6 . See the
Help button 8 for details on how the filter works.
4 Band pass button. When this button is selected, the Y variables are processed with a
band-pass filter. The data are processed by a high-pass filter using the high-pass
baselength 5 , and then by a low-pass filter using the low-pass baselength 6 . See
the Help button 8 for details on how the filter works.
5 High-pass baselength. This is a reference used to define the scope of a moving
average. It has the same units as the variable plotted on the X axis. For example, if
the X variable is time with units of seconds, the baselength is the number of
seconds covered by the moving average. This baselength is also used for band-pass
filtering.
6 Low-pass baselength. This is a reference used to define the scope of a moving
average. It has the same units as the variable plotted on the X axis. For example, if
the X variable is time with units of seconds, the baselength is the number of
seconds covered by the moving average. This baselength is also used for band-pass
filtering.
7 Check box: Filter using original data. When this box is checked, the specified filters
are applied to the original data — the values read from the file. When not checked,
the filters are applied to the data as modified by previous filtering. If this box is not
checked, the data are processed every time the filter dialog box is displayed and
exited with the OK button.
8 Help button. Click this to display the following information.
9 Cancel button. Click this button to exit the dialog box without changing the data in
the active plot.
10 OK button. Click this button to exit the dialog box and apply the specified filter to
all Y variables in the active plot.
Statistics…
Select this command to display a dialog box with simple statistics for the plotted
variables. The numbered items in the dialog box are described below.
3
1
1 X-Y data set name. Use the pull-down menu to pick the data set in the active plot
whose statistics will be displayed.
2 Statistics for specified data set. The field is sized to display the statistics for two
variables making up a single X-Y data set. If you choose to show the statistics for
all data sets in the plot, then the scroll bar can be used to view the statistics for the
data sets after the first.
3 OK button. Click this button to exist the dialog box.
4 Show All button. Click this button to display the statistics of all data sets in the
active plot.
Labels…
Use this command to display the Labels dialog box. Use this dialog box to edit the plot
title, Y axis, X axis, and legend labels for the active plot. Figure 6.7 shows the dialog box
along with the active plot. The circled numbers appear both in the plot and the dialog
box, to indicate the correspondence between the field in the dialog box and the plot.
3 1
5 6
2 7 8
1 Title. The title is shown in the top of the plot and also in the title bar of the plot
window. It can be edited in the dialog box.
2 X Label. This is the label written underneath the X axis. It can be edited in the
dialog box.
3 Y Label. This is the label written above the Y axis. It can be edited in the dialog
box.
4 Names list, used to identify the X-Y data sets in the legend. To change any of these
labels:
a. Select it from the Names list 5 .
6
b. Edit the name as it appears in the edit field .
c. Click the Set button 7 to apply the change.
5 Edit field used to change a name in the legend.
6 Set button. Click to set the name selected in the Names list 4 to match the text in
the edit field 5 .
7 OK button. Click to close the dialog and apply the new settings to the active plot.
8 Cancel button. Click to close the dialog without modifying the active plot.
Note: When there are multiple plot windows, the cursor and X-Y values
are always associated with the active window.
All of the functions on the sub menu are also available as buttons on the tool bar. The
buttons are dimmed unless the option to Show Data Points is enabled. This is indicated
visually in the toolbar by the button being “pushed in” as shown below.
Forward by 1 — use the right arrow key (→) to move one point forward, based on the
order the X values are stored in the file. When the cursor is on the last point in the file,
this command has no effect.
Forward by 10 — use the right arrow key (→) plus the Shift key to move 10 points
forward, based on the order the X values are stored in the file. When the cursor is on the
last point in the file, this command has no effect.
Forward by 30 — use the right arrow key (→) plus the Shift key plus the Control key to
move 30 points forward, based on the order the X values are stored in the file. When the
cursor is on the last point in the file, this command has no effect.
Backward by 1 — use the left arrow key (←) to move one point backward, based on the
order the X values are stored in the file. When the cursor is on the first point in the file,
this command has no effect.
Backward by 10 — use the left arrow key (←) plus the Shift key to move 10 points
backward, based on the order the X values are stored in the file. When the cursor is on the
first point in the file, this command has no effect.
Backward by 30 — use the left arrow key (←) plus the Shift key plus the Control key to
move 30 points backward, based on the order the X values are stored in the file. When
the cursor is on the first point in the file, this command has no effect.
Min Y Point — use the down arrow key (↓) to locate the point with the minimum Y
value for the points currently displayed.
Max Y Point — use the up arrow key (↑) to locate the point with the maximum Y value
for the points currently displayed.
Start of Data — use the Home key to find the first point. This is the same as pressing the
left arrow repeatedly.
End of Data — use the End key to find the last point. This is the same as pressing the
right arrow repeatedly.
Next Data Set — use the Tab key to move the cursor between currently displayed data
sets in overlay plots. If the active plot has only a single data set, then this command has
no effect.
View Menu
Use this menu to toggle the display of the status bar, the tool bar, and to generate
information about the data files.
Toolbar
Toggle this item to display or hide the toolbar.
Status Bar
Toggle this item to display or hide the status bar.
Show Numbers
Select this item to view the currently plotted data in tabular form. Numbers shown in the
window can be copied to the clipboard, and the entire contents can be saved to file.
If the plot includes many numbers, it can take some time for the window to appear.
Show Numbers
Select this item to view all variable names from the current ERD file. Unlike the short
names shown in the Channel Select dialog (see Figure 6.6), these names are longer and
include the units.
Text shown in the window can be copied to the clipboard, and the entire contents can be
saved to file.
Display Log
This displays an error message window sometimes used for debugging.
Windows Menu
Use this menu to control the appearance of the plot windows in WinEP.
New Window
Use this command to copy the active plot window, along with the data and all format
settings.
Cascade
Use this command to arrange all plot windows in a cascade, as shown below for two.
Tile Horz.
Use this command to tile the plot windows with horizontal divisions, as shown below for
two. If there are four or more windows, they are arranged in columns and rows.
Tile Vert.
Use this command to tile the plot windows with vertical divisions, as shown below for
two. If there are four or more windows, they are arranged in columns and rows.
Arrange Icons
Use this command to tidy any “iconized windows” in the WinEP workspace.
Next Window
Use this command change the active plot window (for cross-hair display). The keyboard
command is the PageDown key. If there are more than two plot windows, keep pressing
the PageDown key until the desired window becomes active.
Help Menu
This menu has a command to open the About WinEP dialog box. Use it to obtain the
version number and to obtain the current web site for updates.
3 4 5 6 7 8 9 23 24
1
22 25
2
10 11 12 13 14 15 16 17 18 19 20 21 26
Fields
1 Data Set field. This field shows text entered by you, the user, to name the current data set.
There are a few restrictions on titles: (1) each data set in the library must have a unique
title; (2) the title cannot include a comma (the software will automatically replace it with
a semicolon); and (3) the length of the title is limited to 32 characters.
Note: On the Runs screen this is where you give a unique name to the
run of a specific vehicle, maneuver, and simulation model. In a
vehicle screen, it typically serves to identify the vehicle and its
properties, and so on for other screens.
2 Category field. This field shows text you use to create a sub-menu for listing the contents
of the library. The Category field is provided as a convenience for you to divide large
numbers of data sets into logical groups in pull-down menus. If the category field is blank
then the title is shown in the top-level menu.
Data sets in different categories are still subject to the restriction that they cannot
have the same names.
— 89 —
Chapter 7 Design of CarSimEd Data Screens
Buttons
3 Library triangle button. Press this button to display a pull-down menu listing all of the
data sets in the library, grouped by categories.
4 Library Left button. The data sets in the library are ordered alphabetically first by
category and then by title. Click this button to go to the preceding data set. If the current
data set is the first one, this button takes you to the end (the ordering is circular).
5 Library Right button. The data sets in the library are ordered alphabetically first by
category and then by title. Click this button to go to the next data set. If the current data
set is the last one, this button takes you to the beginning (the ordering is circular).
6 New button. Click this button to make a full copy of the data set. The copy is identical to
the original, except that the name 1 will be different (usually it will have a number
appended to it). When the copy is made, the Data Set field will be highlighted to
encourage you to type a distinctive title for the new data set.
7 Delete button. Click this button to delete the data set.
When you click the Delete button, two things happen: (1) the current data set as
displayed on the screen is deleted, and (2) auxiliary files associated with the data set are
also deleted. Thus, CarSimEd automatically performs housecleaning.
If the library has only one data set, the Delete button cannot be used — there must always
be a minimum of one data set in a library. Also, the Delete button will not work on the
current data set if the Locked box 20 is checked.
There are two keyboard modifiers for the Delete button:
• Press the Ctrl key when clicking the button to avoid the confirmation
message.
• Press the Shift key when clicking the button to delete all data sets except
the current one. There will be a confirmation message, giving you a chance to
change your mind after clicking the button. Be aware that if you go ahead,
other data sets can be deleted even if their Locked boxes are checked. Use
this feature with care!
Note: When you position the cursor over the Delete button, the Status Bar
at the bottom of the window describes the above two keyboard
modifications.
8 GO button. Press this button to display a menu of all libraries in CarSimEd. Select a
library from this menu to leave the current library and go to the selected one.
The menu usually contains more items than will fit on a monitor with VGA resolution
(640 x 480). If this happens, the first item in the menu is More. Highlight it to view more
menu items.
9 Back button. Click this button to go back to the previous library. This is the library that
you came from by using a link, the GO menu, or the History dialog box.
10 Number Tools button. Click this button to go to the calculator screen. This is equivalent
to the Calculator command from the Tools menu. The calculator screen is used to create
and edit tabular data. Control-click to get a file browser to locate the library and establish
a link to it. The default is Sgui_lib\Calc.tbk.
11 Text Editor button. Click this button to go to a utility library used to create and edit
tabular data. This is equivalent to the Text Editor command from the Tools menu. This
can also be set to go to a text editor, such as the Windows Notepad program. Control-
click to get a file browser to locate an executable program file and establish a link to it.
The default link is Programs\QLPad.exe.
12 Library Editor button. Click this button to bring up a floating window that can be used
to edit libraries. This is equivalent to the Library Editor command from the Tools menu.
The current library is automatically loaded into the editor window.
13 Spectrum Analyzer button. Click this button to go to the Spectrum Setup library with
settings for a spectrum analyzer. This is equivalent to the Spectrum command from the
Tools menu. Control-click to get a file browser to make a different library the default.
Note: The spectrum analyzer and the settings screen are not present in
the standard CarSimEd package.
14 Batch Plot button. Click this button to go to the Plot Setup: Batch library. This is
equivalent to the Batch Plotting command from the Tools menu. Control-click to get a
file browser to make a different library the default. The default link is
Batch\Plot_bat\Plot_bat.tbk.
15 Plot Setup button. Click this button to go to the Plot Setup: Single library with plot
settings that define plot variables, formats, etc. This is equivalent to the EP Setup
command from the Tools menu. Control-click to get a file browser to make a different
library the default. The default link is Plot\Plot.tbk.
16 Batch Runs button. Click this button to go to the Runs: Batch library. Control-click to
get a file browser to make a different library the default. The default link is
Batch\Runs_bat\Runs_bat.tbk.
17 Runs button. Click this button to go to a Runs library with settings to make a single
simulation run. This is equivalent to the Runs command from the Tools menu. Control-
click to get a file browser to make a different library the default. The default link is
Runs_3d\Runs_3d.tbk.
18 Parstree button. Click this button to run the Parstree program for viewing the contents of
the PAR file associated with the current data set, plus the PAR files for all linked data
sets. For example, the figure below shows the display for a data set from the Runs
library. The file 39.par is selected in the left pane, and the contents of that file are shown
in the right pane.
Control-click to get a file browser to locate an executable program file and establish a
link to it. The default link is Programs\Parstree.exe.
19 Print button. Click this button to print a copy of the current screen display.
20 Preferences button. Click this button to bring up a floating window used to set global
preferences for CarSimEd. This is equivalent to the Preferences command from the
Tools menu.
30
27
28
29
27 Auto Lock. When checked, CarSimEd automatically locks every data screen when
you leave it. Otherwise, data sets are locked only when you click the locked boxes
20 manually.
28 Advanced Mode. When checked, you can change links to connect with different
libraries. When not checked, you must live with the links the way they are.
29 Have 256 or more colors on monitor. Check this box if your video display
supports 256 or more colors. Un-check it if your display is limited to 16 or fewer
colors.
30 Close. Click here to exit the Preferences window.
Check Boxes
21 Locked box. Click this box to check or un-check it. When checked, the data set is locked
and you cannot change text in any of the edit fields or any links. You also cannot delete
the data set using the Delete button.
22 Notes box. Click this box to check or un-check it. When checked, the Notes field is
displayed. Otherwise, it is hidden. The contents of a Notes field are strictly for your use
in documenting data. They are not sent to the simulation program.
This button hides the Notes field, but does nothing to the contents. You do not lose your
notes when you hide them.
When you create a copy of a data set using the New button 6 , the contents of the Notes
field are also copied, even if the box is not checked.
Data Links
Each CarSimEd screen contains a data set that is part of a relational database. Data sets
are linked together approximately in a top-down hierarchical fashion.
Runs
Suspensions Tires
• Data Set Names. All of the menu items after the dividing line are the names of
the data sets in the linked library. Change the link to a different data set by
selecting its name.
If the current screen has the Locked box checked, only the first item on the data link
menu is active. Other items that would involve a change in the data set are not allowed.
Tabular Data
Some of CarSimEd data sets involve tables of numbers. The values are plotted, to show
the functional relation graphically, and to help identify errors. Figure 7.2 shows an
example data set.
3 4
Note: For these data sets, the Notes field is often located on top of the
table of numbers. Therefore, to view the numbers in the table, the
Notes button must not be checked.
There are four standard items on each screen with tabular data.
1 Plot. The plot is based on the tabular data 2 , using the first number on each line for an X
value and the second number for a Y value. The axes are scaled automatically to include
the full range of numbers in the table.
When the mouse pointer is positioned over the plot, the corresponding X and Y values
are shown in the status bar. Clicking the left mouse button causes the currently displayed
X and Y values to be appended to the table. This feature can be used to rapidly build a
new data set. The new data points are not plotted until the Update Plot button 3 is
clicked.
2 Table field. Each line in this field should have an X value followed by a Y value. A
comma must separate the numbers. Additional information can be added after a second
comma. These numbers are passed to the simulation programs exactly as they appear in
the field.
Note: The table field requires at least two lines of data in order to create a
plot 1 . If you attempt to make a plot or leave the screen with only
one pair of X-Y points, an error message is generated.
The plot 1 shown on this type of screen covers only the range of data. In the simulation,
values might extend beyond the range shown. For example, if the simulation runs longer
than 3 seconds, the independent variable (time) would have a value outside the range
covered by the table.
The simulation programs in CarSimEd use flat-line extrapolation is used. If the
independent variable is less than the first value in the table, the first value of the
dependent value is used. If the independent variable is greater than the last (highest)
value in the table, then the last value of the dependent variable is used. For example, the
data shown in Figure 7.2 would cause a steer angle of 0.0 to be used for values of time
less than zero. For values of time greater than 10, the steer angle would be 5.
3 Update Plot button. Click this button to create a new plot of the data in the field 2 .
4 Tidy Table button. Click this button to “clean up” the appearance of the numbers in the
table field. A space is inserted after the comma, and additional information after a second
comma is removed. This operation is useful when tabular data are pasted into the edit
field from some other source, such as an echo file created by a CarSimEd solver program.
File Menu
The File menu contains commands pertaining to library TBK files. In CarSimEd, this
menu is not used as much as in most Windows programs, because the opening and saving
of files is handled automatically.
Open
Select this menu item to open an arbitrary TBK library file.
Save
Select this menu item to immediately save the current TBK file to disk. The files are
automatically saved whenever you move from one library to another, so this command is
used mainly when the machine stability is in doubt and a program crash is feared.
Print Setup
Select this menu item to select a Windows printer and possibly configure it.
Print Library
Select this menu item to print all data sets in the current library, using the data screen
layout.
Compact Library
This command causes ToolBook to compact the file, eliminating space that was used by
data sets that have been deleted.
Over time, the TBK library files can grow more than expected, because when you delete
data sets the file space is not recovered. Use this menu item if you notice that some of the
TBK files have gotten very large. Depending on the amount of graphic content, the
normal size of a TBK file can be as small as 70K, or as large as 700K.
Backup Library
Select this menu item to make a backup copy of the current TBK library file. The copy is
given the extension BAK.
Exit
Select this menu item or use the keyboard command Ctrl-Q to exit from CarSimEd.
Edit Menu
The Edit menu supports the clipboard and the Find command.
Undo
Select this menu item or type the keyboard command (Ctrl-Z) to undo the most recent
entry or change in a text field.
Cut
Select this menu item or type the keyboard command (Ctrl-X) to cut the currently
selected text to the clipboard.
Copy
Select this menu item or type the keyboard command (Ctrl-C) to copy the currently
selected text to the clipboard.
Paste
Select this menu item or type the keyboard command (Ctrl-V) to paste the clipboard to
the current cursor location. If text is currently selected, it is replaced by the contents of
the clipboard.
Clear
Select this menu item or type the keyboard command (delete key) to clear the currently
selected text.
Select All
Select this menu item or type the keyboard command (Ctrl+A) to select all text in the
field where the cursor is currently located.
Find
This command can be used by advanced users to locate information in CarSimEd data
fields.
WARNING: It is possible to trick the underlying ToolBook runtime system,
leading to errors that will corrupt your files. Use with caution.
Text Menu
The Text menu contains commands involving the display of text in edit fields and notes.
Although text formatting has no effect on how the simulations are run, you can control
the appearance of the text in notes and data fields if you wish.
Note: The items in the Text menu apply only to the currently selected
text in a single field.
Character
Select this menu item or type the keyboard command (Ctrl+D) to bring up a floating
window to change the character properties of the selected text (Font, Font Style, Size,
etc.).
Paragraph
Select this menu item or type the keyboard command (Ctrl+M) to bring up a floating
window to change the spacing (e.g., Alignment, Indentation, Spacing , etc.) of the
selected text.
Regular
Select this menu item or type the keyboard command (Ctrl+Space) to remove any special
character properties of the selected text, such as bold, underline, etc.
Bold
Select this menu item or type the keyboard command (Ctrl+B) to toggle the selected text
between bold and not bold.
Italic
Select this menu item or type the keyboard command (Ctrl+I) to toggle the selected text
between italic and not italic.
Underline
Select this menu item or type the keyboard command (Ctrl+I) to toggle the selected text
between underline and not underline.
Strikeout
Select this menu item or type the keyboard command (Ctrl+K) to toggle the selected text
between strikeout and not strikeout.
Superscript
Select this menu item or type the keyboard command (Ctrl+Shift+L) to toggle the
selected text between superscript and not superscript.
Subscript
Select this menu item or type the keyboard command (Ctrl+L) to toggle the selected text
between subscript and not subscript.
Page Menu
This menu offers access to previously viewed screens (pages), and also control of how
the current data screen is viewed.
History
Select this menu item to bring up the following floating window to see a list of the
libraries that you have visited during this session. From the window you can select a
library and go to it by double-clicking on it or clicking the OK button.
Size to Page
Select this menu item to set the CarSimEd window to its default size. If you happen to
click on the Windows zoom icon, Windows will fill your screen with the current window.
However, the window doesn’t show any more information. Use this menu item to restore
its appearance.
Tools Menu
Use the Tools menu as an alternative to the buttons in the ribbon bar.
The ribbon bar, s hown below, was described in more detail starting on page 89.
1 2 3 4 5 6 7 8 9 10
Calculator
Select this menu item to go to the calculator screen (same as 1 ).
Text Editor
Select this menu item to go to a utility library used to create and edit text files (same as
2 ).
Library Editor
Select this menu item to bring up a floating window used to edit existing libraries (same
as 3 ).
Plot Setup
Select this menu item to go to the Plot Setup: Single library with plot settings that define
plot variables, formats, etc. (same as 6 ).
Runs
Select this menu item to go to a Runs library with settings to make a single simulation
run (same as 8 ).
View Parstree
Select this menu item to run the Parstree program and view the tree of text files that starts
from the current data set (same as 9 ).
Batch Runs
Select this menu item to go to the Runs: Batch library (same as 7 ).
Batch Plotting
Select this menu item to go to the Plot Setup: Batch library (same as 5 ).
Spectrum
This item is reserved for the Spectrum Setup library (same as 4 ).
Note: The spectrum analyzer and the settings screen are intended to be
added to the next version of CarSimEd.
Preferences
Select this menu item to bring up a floating window used to set global preferences for
CarSimEd (same as 10 ).
Standard Objects
Standard objects that were described in Chapter 7 are not covered again in this chapter.
For example, the buttons at the top of the screen (New, Delete, etc.) are the same in every
library.
Keywords
Parameter values that are displayed in yellow fields will usually appear in the echo files
produced by the simulation programs. These echo files identify the parameters with
keywords and list them in alphabetical order (see Appendix F for an example). In this
chapter, along with the definitions for the parameters, the keywords are defined so you
will know where to look for them in the echo files. They are shown in parentheses in the
Courier font.
Many of the parameters in the CarSimEd models are applied both on the front and the
rear of the vehicle. For example, the vehicle has tire properties which can be separately
defined for both the front and the rear, and the same data screen is used to describe
properties of all tires.
Parameters that are repeated are called indexed parameters. In CarSimEd, tables are
defined with the keywords IAXLE (1 for front and 2 for rear. For example, the entry for
the table for tire cornering stiffness is: Tire Cornering Stiffness (keyword =
KFYA_TABLE (IAXLE)).
Indexed parameters that are fields are shown with numerical indices. For example, the
roll center height for the front suspension is HRC(1).
You can view the keywords in the PAR file directly by clicking the button in the
ribbon bar. For example, the next figure shows the keywords for the Cars data screen.
Location of Library
Each section ends with the location of the library, described from two points of view.
First is a list of the screens needed to reach the library using the user interface. For
example, to get to the Animator Camera screen, start with the CarSimEd Startup screen,
then click the Start button to go to the Runs screen, then follow a blue link to go to the
Animator Camera screen. This sequence is written at the end of the reference section as:
CarSimEd Startup
Runs
Animator Camera
Note: CarSimEd includes three runs libraries, named Runs_3d,
Runs_2d, and Runs_sus. In the location information subsection,
the generic name “Runs” is used to indicate any of these three.
In addition, a relative pathname is given for the library TBK file (e.g.,
Animate\Cameras\Cameras.tbk). Pathnames are relative to the root directory of
CarSimEd. For example, the absolute pathname would be something like
C:\Carsimed\Animate\Cameras\Cameras.tbk. The relative pathnames are
useful to know even if you are not looking for a file, because they appear in the pull-
down menu of the GO button (in the ribbon bar).
Discussion
Imagine you have a video camera and are viewing a vehicle as it moves down the road.
Your location (actually, the location of the camera you are holding) determines your
point of view. From that point, you can aim the camera anywhere. However, you will
probably pan the camera to keep the vehicle in view. If the camera has a zoom lens, you
might zoom in or out to control the size of the vehicle in the viewfinder.
In CarSimEd, there is no physical vehicle to look at. However, to go along with the
simulated vehicles, the animator program described in Chapter 5 simulates the motions
that you would view with a video camera. Use the Animator Camera Setup screen to
establish various camera positions and aiming strategies.
The parameters in this library are associated with two geometric points illustrated on the
screen: (1) the camera point, (2) and the look point. At each output time interval, the
animator generates a 2D image based on the relationships between the simulated vehicle
and the camera and look points (see the illustration on the data screen). The locations of
vehicle parts are determined by the simulation program. The camera and look points are
determined by the information provided in this data set.
Point locations are defined in 3D space with sets of X, Y, and Z coordinates. In order to
provide almost any imaginable view of the simulated vehicle motion, the animator
program allows both the camera and look points to be associated with any user-defined
reference frame. The reference frame can be fixed or it can be a vehicle part (e.g., a
sprung mass. It is even possible to define a new moving reference frame using variables
that are available in the simulation output files.
A grid can be drawn by the animator to represent the ground plane. The grid is oriented in
the global X and Y directions. The minimum and maximum X and Y global coordinates
for the grid can be specified. Different grid spacing can be used in the X and Y
directions. The grid can be turned off manually within the Animator, as described in
Chapter 5.
Notes: Chapter 5 explains reference frames. In addition, the section
Animator Reference Frames in this chapter describes how you
create them.
All of the numbers shown on this screen can be modified
interactively when the animator is running. See Chapter 5 for
details.
1
6
2 4 7
3 9
5
10
User Settings
1 Focal length of the simulated camera (keyword = set_focal_length). A large value
produces a telephoto lens effect and a small value produces a wide-angle lens effect.
Focal length has units of meters.
2 X, Y, and Z coordinates of the camera point (keywords = set_camera_x,
set_camera_y, set_camera_z). These coordinates have units of meters. The
coordinates apply to the reference frame specified in 3 .
3 Link to the reference frame in which the camera is located. The reference frame can be
fixed or moving. The camera must have its own named reference frame (in the example
above, it is Camera tracking X-Y).
Notes: The animator program requires each reference frame to have a
unique name. The reference frame used to define the camera
coordinates cannot be used anywhere else. If you want to locate the
camera in a vehicle reference frame (e.g., the sprung mass), then
create a copy of the reference frame of interest, give the copy a
new name, and link to the copy.
Although vehicle reference frames can be used for the camera, it is
more common to define a custom reference frame.
Location in CarSimEd
CarSimEd Startup
Runs
Animator Camera
File Location
Animate\Cameras\Cameras.tbk
Animator Groups
The Animator Groups screen is used to group shapes, wheels, reference frames, and
other groups. The library can be used for several purposes, due to the versatility of the
animator.
Discussion
The Animator draws three kinds of objects: a single grid, multiple shapes, and multiple
wheels. In order to build a detailed visual representation of a road or vehicle, groups of
shapes and wheels must be collected and associated with moving reference frames.
This screen is used to group other animator data sets together. Typically, the data sets
being grouped are reference frames, body shapes, wheels, and other groups that make up
the image of a vehicle or road.
As explained in Chapter 5, reference frames are used to define motions of vehicle parts.
As the inputs to the animator are processed, each shape or wheel is associated with a
reference frame.
There is always a single active reference frame. Each shape and wheel that is processed is
defined within this frame.
It is important to understand that all objects in a reference frame must be processed
together. For example, suppose there is a reference frame with the title sedan body.
The animator will not allow some shapes to be processed for sedan body, then process
shapes for another reference frame, and then switch back to sedan body. Once the
animator starts processing data for a particular reference frame, it is no longer possible to
add shapes or wheels to reference frames that were previously processed.
Although shapes and wheels are always associated with the active reference frame, the
camera and look-point coordinates are not. However, because the camera and look-point
data are contained in the library Animator Camera Settings, you should not have
occasion to deal with them in an Animation Groups data set.
Note: The reason that shapes and wheels are handled differently than
camera and look-point data is that shapes and wheels can be
duplicated. For example, the same wheel shape is usually linked to
every moving wheel reference frame. In contrast, there is only a
single camera point and a single look point.
An animator group can be set up several ways.
• It can group several shapes or wheels together without associating them with a
reference frame. For example, the body of a car is a group of many individual
shapes.
• It can group wheels or shapes together and associate them with a reference frame.
• It can group together other groups. For example, a whole vehicle group can be
assembled from a car body group plus information associated with the four
moving wheels.
When combining reference frames and other data sets, be aware that the data are sent to
the animator in the same order they are numbered on the screen: top to bottom, then left
to right. If one of the links is to a reference frame, it should be the first one (Link 1). That
becomes the “active reference frame” until another one is defined.
1 1 1
1
2 2
1
1 1
1
1 2 2
1
1 1
1
2 2
1
1 1 1
1 1 1
User Settings
1 Miscellaneous links. Links are used to include other groups, wheels, shapes, and
reference frames. A group, wheel, or shape appearing in one of these links is attached to
the reference frame link most immediately above it. If none of the links are made to a
reference frame, then all wheels and shapes are attached to the most recently introduced
reference frame. (That reference frame is defined in a data set above this one.)
2 Miscellaneous fields. Use these fields to assign values to arbitrary keywords. The format
is that each line has a keyword and value, separated with white space (at least a single
space). These keyword values apply to the previously read data, which is found from the
link immediately preceding the yellow field. These fields can be used to add to shape or
wheel data. For example, to mirror an object from the left to the right side, enter the
keyword set_scale_y followed by a value –1. All Y coordinates will be negated for
the current shape (using data from the preceding link).
Location in CarSimEd
Note: This library can be applied in different ways, which means there
may be links to it from libraries other than those shown below.
CarSimEd Startup
Runs
Cars
Animator Groups
File Location
Animate\Groups\Groups.tbk
Discussion
The animator in CarSimEd shows moving and stationary wire-frame figures. The lines
used to draw each wire-frame object may move relative to other objects, but the spatial
relationships between the lines in a single object are fixed.
When the relationships between a set of points does not ever change (i.e., they form a
rigid structure), they are said to exist in the same reference frame. Therefore, the
coordinates that are provided for shapes are constants when based on a coordinate system
fixed in the appropriate reference frame.
In order to draw the wire-frame shapes, the animator must convert relative coordinates in
a moving coordinate system to absolute coordinates in the global coordinate system. The
conversion is defined by the global position of the origin of the moving coordinate
system (its global X, Y, and Z coordinates), along with the orientations of its three axes.
The orientation of a reference frame is defined by three consecutive rotations that are
called Euler angles. For vehicles, the angles are commonly called yaw (rotation about the
Z axis), pitch (rotation about the Y axis), and roll (rotation about the X axis).
Starting such that the X, Y, and Z axes of the moving frame are parallel with those of the
global frame, the moving frame can be oriented by consecutive rotations about its axes.
For example, first rotate the frame about its Z axis by a yaw angle. After this is done, the
new Z direction is the same as the old, but the X and Y axes are pointed in new
directions, called X' and Y'. Next, rotate about the new Y axis, Y', by a pitch angle. After
the pitch rotation, the Y axis is still in the Y' direction, but the X and Z axes are pointed
in new directions, called X" and Z". Finally, rotate a third time, about the new X axis, X",
by the roll angle.
Although it might not be obvious at first if you are not experienced with 3D kinematics,
any conceivable orientation of a reference frame can be described with three Euler
angles. Note that the angles depend on the order of the rotations.
1 2 3
4 5 6
Overall, a reference frame is defined by six variables: three coordinates (X, Y, and Z),
and three Euler angles. The animator reads the required six variables from the output files
generated by the simulation programs. After reading the six variables, each coordinate
and Euler angle is calculated with a relationship of the form:
coordinate = Co + C*SFc (1)
angle = Ao + A*SFa (2)
where C and A are the coordinate and angle variables obtained from the ERD file, Co and
Ao are the constant offsets, and SFa and SFc are scale factors (gains).
User Settings
1 Names of coordinate variables for X, Y, and Z (keywords = set_x_name,
set_y_name, set_z_name). These are short names in the ERD files, associated with
the variable C in eq. 1. If no name is listed, then a constant value of 0.0 is used to
compute the coordinate. If the name is not found in the ERD file, then a value of 0.0 is
used.
2 Offsets for coordinate variables for X, Y, and Z (keywords = set_offset_var_x,
set_offset_var_y, set_offset_var_z). These values are numbers, used to
replace the symbol Co in eq. 1. If no number is entered, a value of 0.0 is used.
3 Scale factors for coordinate variables for X, Y, and Z (keywords = set_scale_var_x,
set_scale_var_y, set_scale_var_z). These values are numbers, used to replace
the symbol SFc in eq. 1. If no number is entered, a value of 1.0 is used.
4 Names of Euler angle variables for roll, pitch, and yaw (keywords = set_roll_name,
set_pitch_name, set_yaw_name). These are short names in the ERD files,
associated with the variable A in eq. 2. If no name is listed, then a constant value of 0.0 is
used. If the name is not found in the ERD file, then a value of 0.0 is used.
5 Offsets for Euler angle variables for roll, pitch, and yaw (keywords =
set_offset_var_roll, set_offset_var_pitch, set_offset_var_yaw).
These values are numbers, used to replace the symbol Ao in eq. 2. If no number is
entered, a value of 0.0 is used.
6 Scale factors for Euler angle variables for roll, pitch, and yaw (keywords =
set_scale_var_roll, set_scale_var_pitch, set_scale_var_yaw). These
values are numbers, used to replace the symbol SF a in eq. 2. If no number is entered, a
value of 1.0 is used.
7 Rotation sequence for Euler angles (keyword = set_euler_angles). There are
potentially 12 possible sequences of body-fixed orientation angle sets. A constraint is that
there cannot be two consecutive rotations about the same axis. Thus, there are 3 choices
for the first rotation, 2 for the second, and 2 for the third. However, only two sequences
are common for vehicle dynamics: yaw-pitch-roll (used for large body motions), and
yaw-roll-pitch, used for the spinning wheels.
For the animator in CarSimEd, the value must be either the text yaw_pitch_roll or
the text yaw_roll_pitch. These two options are selected from a pull-down menu.
Location in CarSimEd
Camera Setup
CarSimEd Startup
Runs
Camera Setup
Vehicle Definition
CarSimEd Startup
Runs
Cars
Animator Groups
Animator Reference Frames
File Location
Animate\Frames\Frames.tbk
Animator Shapes
This screen is used to define one or more wire-frame shapes that are drawn by the
animator.
Discussion
A shape is a set of points connected by straight lines. Each point is defined by a set of
three coordinates (X-Y-Z). The animator starts with the first point, and draws connecting
lines to each following point.
All coordinates are assumed to be in a local coordinate system, associated with the active
reference frame. (See the discussion on how shapes and reference frames are associated
in the section Animator Groups, on page 110.)
The animator also supports offsets and scale factors. All of the coordinates are calculated
using the equation:
coordinate = Co + C*SF (1)
where C is the original coordinate, Co is the offset, and SF is a scale factor (gain).
The offsets and scale factors allow the shapes to be relocated and resized without
requiring all of the coordinates to be changed by hand. Applying an offset has the effect
of relocating the shape within the reference frame. Scale factors can be used to change
the size of a shape. For example, to make a trailer body twice as long, enter an X scale
factor of 2.0.
Scale factors can also be used to mirror a shape. If the scale factor is negative, then all of
the corresponding coordinates are given the opposite sign. For example, a left fender can
be converted to a right fender by setting the Y scale factor to –1.
The shape library can handle two kinds of shape data:
1. A single shape is described, using the appropriately labeled fields.
2. Multiple shapes can be described, using the Miscellaneous field.
1 2
The second approach is useful if there are many shapes used to describe a complex body,
and they are unlikely to be used for any other purpose. By putting the many shapes into
one data set, fewer files are processed by the animator, and there is little likelihood of
accidentally modifying a group.
User Settings
1 Coordinates of points that are connected by lines in the animation (keywords =
set_coordinates, end_coordinates to indicate the start and end of the list).
Each line should have the three coordinates of a single point. The units are meters. The
syntax is that each of the values is separated by at least one space. Blank lines are not
allowed.
2 Coordinate Offsets (keywords = set_offset_x, set_offset_y,
set_offset_z). All coordinates in the shape are adjusted by these offsets according to
eq. 1. The units are meters. If not specified, the animator uses default values of 0.0.
3 Coordinate Scale Factors (keywords = set_scale_x, set_scale_y,
set_scale_z). All coordinates in the shape are adjusted by these scale factors
according to eq. 1. The scale factors should be dimensionless. If not specified, the
animator uses default values of 1.0.
4 Color (keyword = set_color). This sets the color of the lines drawn to connect the
points. Valid colors are provided in a pull-down menu.
5 Miscellaneous field. This field is for advanced users. It can be used to enter multiple
shapes. The format is that each line has a keyword and value, separated with white space
(at least a single space). The field should look like a portion of a PARSFILE that can be
processed by the animator. See Appendix E for the animator keywords and some example
files.
Location in CarSimEd
CarSimEd Startup
Runs
Cars
Animator Groups
Animator Shapes
File Location
Animate\Shapes\Shapes.tbk
Animator Wheels
The current version of the animator supports a single 3D graphic primitive—a cylinder. It
is typically used to draw vehicle wheels. This screen is used to define a wheel. It is also
used to define the rods in the five-link suspension model.
Discussion
The animator considers a wheel to be two polygons with a specified radius, separated by
a specified thickness. In addition, the corresponding nodes of the polygons are connected
by lines. The wheel is oriented such that its central axis is parallel to the Y axis of the
corresponding reference frame.
3
2
4
5
6 7
User Settings
1 Thickness (keyword = set_thickness). This should have units of meters.
2 Radius (keyword = set_radius). This should have units of meters.
3 Number of points used for polygon approximation of circle (keyword =
set_num_points).
4 Color of lines drawn by animator to show the wheel (keyword = set_color). Valid
colors are provided in a pull-down menu.
5 Radial line option (keyword = set_radial_line). This check-box determines
whether a line is drawn from the center of one of the polygons to the first node. The
single line is useful for determining when wheels lock up during braking simulations. The
values associated with the keyword (written into the text PAR file) are on and off.
6 Coordinates of center (keywords = set_offset_x, set_offset_y,
set_offset_z). These are the X, Y, and Z coordinates of the wheel center in the
reference frame with which the wheel is associated. The default values of 0.0 are used if
no values are provided.
Location in CarSimEd
CarSimEd Startup
Runs
Cars
Animator Groups
Animator Wheels
File Location
Animate\Wheels\Wheels.tbk
Calculator
Use this screen to create and edit tabular numerical data. It is available from a button on
the ribbon bar and from the Tools menu.
Discussion
This data screen is a tool supplied in CarSimEd because there are many times when
preparing CarSimEd inputs that simple calculations are needed. This screen can be used
to convert units for existing data, or to create tables from scratch. For example (explained
in detail later), the screen display shows how a series of X-Y coordinates are created for a
sinusoidal road input.
Note: This screen does not directly feed data to a simulation model. To
use the data, you must copy the numbers to the clipboard and then
paste them into an appropriate data screen.
The screen design is fairly complex, because the calculator tool has several capabilities:
• It plots tabular data for one or more pairs of X-Y data points.
• It performs simple calculations by evaluating a mathematical expression and
printing the numerical result.
• It evaluates mathematical expressions involving values in a 2D table, updating the
entire table with a single button click. For example, you can convert the units for
different columns in a table using different scale factors for each column.
• It creates tabular data from scratch, based on start and end conditions for a series.
1 2
5 6
3 4
14
11 12
7 8 9 10 13
16 19
15 17
18 20
After the settings are described, a few examples are provided to show how they are used.
the number of columns. The plot is not made automatically—you must click the Plot
button 10 to create it or update it after modifying the tabular data 1 .
3 Format button. Click to format the numbers in the tabular data field 1 according to the
format string 4 .
4 Format field. The text in this field specifies whether numbers are written with fixed
decimal places or in scientific notation. It also specifies how many digits are written to
the right of the decimal point. The format string has the form: X.X where the X’s
represent a series of place holders:
0 — place holder for a digit.
# — Same as 0 except the digit is not printed unless it is needed.
E+ or e+ — Scientific notation with sign always used for the exponent. The number
of digits in the exponent is determined by the number of place holders. If used,
you must put place holders (0 or #) before and after the E+ or E-.
If the format field is blank, then numbers are written to their full precision.
Following are some example format strings and the effect they have on three example
mathematical expressions.
The format field is applied when you click the Format button 3 , the Create Series
button 19 , or the Transform Series button 20 .
5 Insert ‘,’ button. Click to ensure that all numbers in a row are separated with commas. If
commas already exist, this has no effect except possibly to tidy the appearance of the
table 1 .
6 Remove ‘,’ button. Click to ensure that all numbers in a row are separated with white
space only. If commas exist, they are removed. If numbers are already separated only by
white space, this has no effect.
7 Flip Rows button. Click to reverse the order of the lines in the tabular data field 1 .
8 Flip Columns button. Click to reverse the order of the numbers in each line in the tabular
data field 1 .
9 Transpose button. Click to transpose the columns and rows in the tabular data field 1 .
For example:
1,2,3 Becomes 1,5
5,6,7 2,6
3,7
10 Plot button. Click this to update the graphic 2 based on the current contents of the
tabular data field 1 . The graphic is created by plotting values of columns 2 and higher
on the Y axis, against the values of column 1 on the X axis. Thus, the number of plots is
N-1 where N is the number of columns.
11 Calculator input field. Enter a mathematical expression, then click the “=” button 12 to
see the result in the calculator output field 13 . In addition to normal arithmetic
operations, the calculator has a number of built-in functions that are described in a later
subsection.
12 Calculate button. Click to evaluate the expression in the input field 11 and print the result
in the output field 13 .
13 Calculator output field. This displays the results of the calculation performed when you
click the “=” button 12 . The format can be specified using the format string 14 .
14 Calculator output format. This field contains a format string used to control the round-off
in the calculator output 13 . It is applied when you click the “=” button 12 . The syntax is
the same as the other format field 4 , described previously.
15 Mathematical definitions. This field is used to create or transform numbers in the tabular
data field 1 . The field is used for two distinctly different purposes:
1. It provides mathematical definitions of the numbers that will be calculated and
stored in the tabular data field when you click the Create Series button 19 . In this
case, all definitions must involve only numbers and a single variable X. X is
calculated automatically and given a value for each new row based on the three
fields 16 , 17 , and 18 .
2. It provides transforms of existing numbers that will be calculated when you click
the Transform Series button 20 . In this case, the definitions must involve
numbers and the variables X, Y, Y2, Y3, ..., where X is the first number in each
line of the tabular data field, Y is the second number, Y2 is the third, and so on.
In the first case, the field is cleared and all new numbers are put into it, based on the
series information ( 16 , 17 , and 18 ) and the mathematical definitions. In the second case,
the tabular data field is not cleared—the existing numbers are replaced.
In both cases, the tabular data field will have the same number of items as the
mathematical definitions field. Initially, items (numerical results of the calculations) are
separated by commas. (Use the Remove ‘,’ button 6 to remove the commas if needed.)
In both cases, the variable X can be included in the expressions. The meaning is not
always the same. In the first case, X is an arbitrary independent variable whose values are
defined by the range and interval specified in the fields 16 , 17 , and 18 . In the second
case, X is the first number in the tabular data field 1 .
The variables Y, Y2, etc. are recognized only in the second case. They should not be used
when generating new numbers with the Create Series button 19 .
The variables and function names used in this field are not sensitive to case: x and X refer
to the same variable.
Several examples are provided in the following Examples subsection to indicate how you
might use this field.
16 Start value. This is the value assigned to X for the first row of numbers created in the
tabular data field 1 when you click the Create Series button 19 .
17 End value. This is the value assigned to X for the last row of numbers created in the
tabular data field 1 when you click the Create Series button 19 .
18 Step. This is the interval used to calculate X for every row between the first and last in
the tabular data field 1 when you click the Create Series button 19 .
19 Create Series button. Click to replace the contents of the tabular data field 1 with rows
of numbers. Each row will have one number for each item in the mathematical definitions
field 15 . The number of rows is equal to (End – Start +1)/Step, where the values of Start,
End, and Step are obtained from the fields 16 , 17 , and 18 .
20 Transform Series button. Click to transform the contents of the tabular data field 1 .
When the transformation is complete, each row in the tabular data field will have one
number for each item in the mathematical definitions field 15 . The number of rows in the
tabular data field is not changed. The series Stop, End, and Step fields ( 16 , 17 , and 18 )
are not used in these calculations.
Examples
Generate a Sine Wave
To generate a set of X-Z values that define a sine wave with a period of 300 and an
amplitude of 1.65, do the following (see Figure 8.1):
1. Set Start X 16 to 0
2. Set End X 17 to 2000
3. Set Step DX 18 to 10 (this will create a table with 201 points)
4. Define the two variables in the mathematical definitions field 15 :
x, 1.65*sin(x*6.2832/300)
5. Set the format string 4 to: 0.###
6. Click the Create Series button 19 .
7. Check your work by clicking the Plot button 10 .
Available Functions
The compute button processes standard arithmetic operations (+, -, *, /). An exponential
is indicated with the carrot character: ^ (e.g., X^2). In addition, the compute button can
process the following functions:
abs(<number>) Absolute value of number.
acos(<number>) Arccosine (number in radians).
asin(<number>) Arcsine (number in radians).
atan(<number>) Arctangent (number in radians).
atan2(<number1>,<number2>) Arctangent of <number1> divided by <number2>
(numbers in radians).
average(<list of numbers>) Returns the sum divided by the number of items in the list
ceiling(<number>) Rounds up to nearest integer.
cos(<number>) Cosine (number in radians).
cosh(<number>) Hyperbolic Cosine (number in radians)
Location in CarSimEd
Accessed from the Tools menu or the ribbon bar with the button:
File Location
Sgui_lib\calc.tbk
Cars
This screen is used to define the dimensions, mass properties, and component properties
(links) for the vehicle used in both the 2D Ride and 3D Braking and Steering simulations.
Discussion
One of the useful features of CarSimEd is that you can develop a whole “fleet” of
vehicles but only have to define the characteristics of each particular component only
once. You can then use this particular component in a vehicle simply by linking to it with
this screen. Furthermore, this same vehicle can be used in both the 2D Ride and 3D
Braking and Steering simulations. The 2D Ride solver program simply ignores the
parameters associated with roll and yaw motion.
14
15
1
16
2
4 9
5 8 10 17
6 11
7
18
12 13
User Settings
1 Height of mass center of entire vehicle (keyword = HCG).
2 Wheelbase (keyword = LWB)
3 Vehicle mass supported by wheels (keyword = MF for front two wheels and MR for rear
two wheels). These are the masses supported by ground below both front wheels and both
rear wheels — as would be measured when the front and rear of the car are alternatively
driven over a scale.
4 Roll Moment of Inertia of entire vehicle (keyword = IXX).
5 Pitch Moment of Inertia of entire vehicle (keyword = IYY).
6 Yaw Moment of Inertia of entire vehicle (keyword = IZZ).
7 X-Z Product of Inertia of entire vehicle (keyword = IXZ).
8 Calculator buttons to calculate IXX, IYY, and IZZ from the radii of gyration RX, RY, and
RZ. Sometimes measured values for IXX, IYY, and IZZ are not available and it is fairly
easy to estimate RX, RY, and RZ. The radius of gyration is the square root of the moment
of inertia divided by the mass. If the mass is distributed in a ring about an axis, then the
radius of the ring is exactly equal to the radius of gyration. For solids, the radius is less
than half the size of the object.
9 Roll Radius of Gyration (not a parameter). This is usually a little less than half the track
width. The radius is not used directly by the simulation, but can be used together with the
vehicle mass and the corresponding button 10 to calculate IXX. (The calculated value of
IXX will be used by the simulation program.)
10 Pitch Radius of Gyration (not a parameter). Use if IYY is not available and RY can be
estimated. This is usually a little less than half the wheelbase. The radius is not used
directly by the simulation, but can be used together with the vehicle mass and the
corresponding button 10 to calculate IYY. (The calculated value of IYY will be used by
the simulation program.)
11 Yaw Radius of Gyration (not a parameter). This is usually a little less than half the
wheelbase. The radius is not used directly by the simulation, but can be used together
with the vehicle mass and the corresponding button 10 to calculate IYY. (The calculated
value of IYY will be used by the simulation program.)
12 Link to the screen for the suspension properties.
13 Link to the screen for the tire properties.
14 Link to an animator group data set. The animator group should be set to provide a wire-
frame matched to the vehicle.
Note: In the current version of CarSimEd, the animator groups must
differ for the 3D handling and 2D ride models because the 2D
model does not produce as many output variables for animation as
the 3D model. Therefore, if the same vehicle data set is used in
both simulation programs, it might be helpful to make two copies:
one linked to an animation group set up for the 3D model, and
another set up for the 2D model.
15 Steering gear ratio (keyword = RSW). This is the ratio defines as the steering wheel angle
divided by the road wheel angle.
16 Steering system compliance (keyword = CSMZF). This is the compliance in the steering
column and other places not accounted for by the suspension compliance. It is calculated
by measuring the steer at a road wheel due to applied steering torque, with the steering
wheel fixed. The effect due to suspension compliance is subtracted from that
measurement.
17 Brake gains (keywords = RMYBK(1), RMYBK(2)). These are the ratios between brake
torque (N-m) and brake input (MPa).
18 Driveline gains (keywords = RMYTH(1), RMYTH(2)). These are the ratios between
drive torque (N-m) and dimensionless throttle input.
Location in CarSimEd
CarSimEd Startup
Runs
Cars
File Location
Vehicles\Cars\Cars.tbk
CarSimEd Startup
This screen appears immediately after CarSimEd has been started. CarSimEd has three
possible entry points, and you use this screen to choose the type of simulation. After
selecting the desired starting point, click the Start button to go to a Runs screen.
1 2
Note: The CarSimEd Startup Screen has two possible appearances. The
above figure shows the simplest display.
Discussion
This screen provides a starting point for the software. It also includes settings that help
configure CarSimEd for your particular installation.
As installed, CarSimEd has four data sets. One, called Install, is required for the
automatic installation to work. The other three provide entry points to the three kinds of
simulation available in CarSimEd: 2D ride, 3D braking and handling, and 3D suspension
kinematics.
There are at least three reasons why you might someday want to modify the CarSimEd
settings or make a new Startup data set with different settings:
1. If you move the CarSimEd software to a new hard disk volume or folder, all of
the text files used to communicate between CarSimEd data screens and the
CarSimEd solver programs must be updated. Otherwise the solver programs will
give error messages about files not being found.
2. If you make many data sets in a library (e.g., a Runs library), you may want to
create a new folder and create a second library. If you add any folders to
CarSimEd, you should install them in the Startup library.
3. You may want to change the GO menu, to show fewer libraries.
On the other hand, you may never need to change the settings contained in this library.
16
4 6
7
8 10
9 11
12
13
14
15
1 2
Note: The above figure shows the CarSimEd Startup screen after the
Change Settings button 2 has been clicked.
and its folder, then delete all but one data set from the copy. Give it a new name and add
it to the system.
Click the button to bring up the Windows Find File browser dialog. TBK files selected
with the browser are added to the list 4 .
Note: You can add more than one file at a time. After you click OK, the
dialog re-appears. When you are through adding files, click the
Cancel button.
7 Remove Libraries From List button. Click to remove any selected lines from the list
4 . The actual files are not affected by this—only the list is altered.
8 Move to Top button. Click to move any selected lines in the list to the top. For example,
to make the 3D Runs library the first item on the GO menu, select the line
RUNS_3D\RUNS_3D.TBK in the list 4 and then click this button.
9 Move to Bottom button. Click to move any selected lines in the list to the bottom.
10 Select All button. Click to select all lines in the field 4 . The contents of the field usually
extend beyond the visible area, and can only be viewed by using the scroll bar. Clicking
this button causes all lines to be selected, even if they are not visible.
11 Deselect All button. Click to deselect all lines in the field 4 .
12 Ascending Order button. Click to alphabetically sort all lines in the field 4 .
13 Update All PAR Files button. Click to process all of the CarSimEd library files in the
field 4 , updating all text files. You should do this if you move CarSimEd or rename any
of the TBK files or folders.
Each data set in the CarSimEd library has an associated text file with extension PAR that
is used to communicate with the vehicle dynamics solver programs. These files have
absolute pathnames in them. If any changes have been made to the file system (say, you
moved CarSimEd from drive C to drive D), the old pathnames won’t work.
The operation initiated when you click this button will probably take a couple of minutes
to complete. The amount of time depends on the number of data sets in your CarSimEd
installation and the speed of your computer.
14 Data Set for Start Button link. This link defines what happens when you click the Start
button 3 . You can link to a library with no particular data set, or you can link to a
particular data set within a library. If you do not choose a data set, then clicking the Start
button takes you to the last data set visited in the library. This is the way CarSimEd is set
when initially installed. If you would like the Start button to always take you to a
specific data set, link to it here.
You might change this link if you move the Runs library, or if you create a new Runs
library in a different folder.
What if you have several Runs libraries? In that case, you can make several data sets in
the CarSimEd Startup library. Click the New button to make a new data set. Then, in
the new data set, link to a different Runs library.
15 Done button. Click to hide all the user settings and return to the simpler view with the
CarSimEd logo.
Location in CarSimEd
CarSimEd Startup
File Location
Startup
Computation Parameters
Use this screen to set parameters for the numerical integrator and to control the frequency
and format of output.
Discussion
The simulation programs operate by numerically integrating a set of nonlinear differential
equations over time. Over small time intervals, they approximate the integration using a
numerical integration algorithm.
This data screen contains parameters that have little to do with the vehicle model or its
inputs. Rather, they are related to the numerical solution method and to the form of the
output file used to store the computed results.
3 4
User Settings
1 Integration time step (keyword = STEP). The CarSimEd solver programs generate output
files by solving equations of motion in a mathematical model of the vehicle. They repeat
the calculations at small intervals of simulated time, where the interval is called a time
step. The time needed to run a simulation is inversely related to the time step. If you
increase the time step by a factor of two, the program runs about twice as fast because it
only makes half as many calculations. However, the calculation method is valid only for
time steps that are “sufficiently small.” For typical car models, “sufficiently small” means
about 0.002 seconds. If the springs are unusually stiff, a time step of 0.001 may be
required.
Notes: If you are making many runs with a few vehicle descriptions, you
may want to determine how small the time step needs to be. Make
several runs changing only the time step. For example, try using
values of 0.004, 0.002, 0.001, and 0.0005 second. If the runs are
valid, plots of the same variables should overlay perfectly. If the
results at a large time step differ from those made with a small
time step, the typical assumption is that the results made with the
large time step are in error.
2 Integration method (keyword = INTOPT). Models generated with AutoSim can have
several integration methods built in. All of the CarSimEd programs were designed to run
with a second-order fixed step Runge-Kutta, as shown in the figure.
3 Number of time steps between output printing (keyword = IPRINT). The time step 1
determines how often calculations are made. The time interval for the output files is the
product of the step and this interval (IPRINT). When the RK2 integration method
(number 2) is used, a print interval between 10 and 30 is recommended. When a variable
step method is used, you can sometimes set the step 1 to be the intended output interval
and set IPRINT = 1.
Notes: This parameter determines the resolution for plots and also the
speed for the animator. To make the animated motions runs faster,
use a larger value of IPRINT. To run in slow motion (say, to
accurately see wheel rotations) use a small value.
This parameter has only a minor effect on the speed of a simulation
run. However, it has a direct effect on the size of the output files
and the time needed to load them into the plotter or animator. Big
files take longer!
4 Output file format (keyword = FORMAT). It is a keyword selected from the pull-down
menu. The options are:
binary — the solver program creates a binary output file (extension = BIN) and
an ERD header file. This option is the most efficient, resulting in less time needed
to run the simulation and view output, together with less disk space being needed
to store information.
text — the solver program creates a simple text output file that can be imported
into other software packages such as spreadsheets (Excel, Lotus, etc.) and
mathematical analysis programs (MATLAB, etc.). The first line contains short
names for the output variables, separated by commas. The following lines contain
numbers separated by commas. Each row has all the values for a single point in
time. These files cannot be viewed with the animator. WinEP can read text files,
although the plots contain less information because the file has no title, no units,
etc.
erdtext — the solver program creates a text ERD file. It has all the labeling
information required by the animator and plotter, followed by the printed values
of all output variables. These files can be imported into other programs (with
some editing of the header information) and they can also be viewed within
CarSimEd using the standard CarSimEd controls.
Note: Text files are not recommended for routine use of CarSimEd. The
solver programs take longer to write them, and the plotter and
animator programs take significantly longer to read them. Also,
they occupy about three times more disk space than binary files.
Location in CarSimEd
CarSimEd Startup
Runs
Computation Parameters
File Location
Comp_par\Comp_par.tbk
Input: Braking
Use this screen to specify the braking application input to the brake system in terms of
control pressure as a function of time.
This input is only used for the 3D vehicle dynamics model. If referenced for a 2D ride
simulation or suspension kinematics run, the data are ignored.
Discussion
You can control braking by applying effort at the brake pedal. The brake pedal output is a
control, or application, pressure that is applied to the brake system. It is described via a
table look-up function of brake input pressure as a function of time.
User Settings
Note: User settings that are common for all tabular data screens are
described in Chapter 7, in the section Tabular Data.
1 Table field for brake input pressure (keyword = PBRAKE_TABLE). Each line should have
a value of time (seconds) followed by a corresponding value of braking input. The
normal units for brake input are MPa. However, the important thing is that the units on
this screen match those used for the brake system mechanical properties.
Location in CarSimEd
CarSimEd Startup
Runs
Input: Braking
File Location
Input\Braking\Braking.tbk
Discussion
This data screen is used both to specify the longitudinal profile for the ride model and
also to specify an optional wire-frame description for viewing the input.
2 3
User Settings
Note: User settings that are common for all tabular data screens are
described in Chapter 7, in the section Tabular Data.
1 Table field for profile (keyword = ROAD_PROFILE_TABLE). Each line should have a X
and Z coordinates for the road surface. The units are meters for both coordinates.
2 Link to an animation reference frame. This is typically the installed reference frame
Fixed.
3 Link to an animator shape file that shows the bump or road profile.
Location in CarSimEd
CarSimEd Startup
Runs
Input: Road Profile
File Location
Input\Braking\Braking.tbk
Discussion
The steering is controlled by defining steering wheel angle as a function of time. This
library contains open-loop time histories of steering wheel angle that can be used to
control vehicles. (Closed-loop control is not supported in CarSimEd, but is featured in the
commercial CarSim and TruckSim packages.)
User Settings
Note: User settings that are common for all tabular data screens are
described in Chapter 7, in the section Tabular Data.
1 Table of values of steering wheel angle as a function of time (keyword =
STEERSW_TABLE). Time is in seconds and the steering wheel angle is in degrees.
Location in CarSimEd
CarSimEd Startup
Runs
Input: Steering Wheel Angle
File Location
Input\Steering\Steering.tbk
Discussion
The 3D suspension model is called a kinematical model because it has zero dynamical
degrees of freedom. It has a single input—vertical position—that is specified as an
arbitrary function of time. In this case, the amount of time covered is not important. The
typical outputs of interest are cross-plots of motion variables as function of vertical
position.
User Settings
Note: User settings that are common for all tabular data screens are
described in Chapter 7, in the section Tabular Data.
1 Table field for vertical wheel height (keyword = BZ_TABLE). Each line should have a
value of time (seconds) followed by a corresponding height of the wheel center. Because
the simulation is not dynamic, the only purpose it has in the plot is to define a continuous
change in height. Two-point tables such as the one shown above are recommended that
simply specify the minimum and maximum ranges to be covered in the kinematical
simulation.
Location in CarSimEd
CarSimEd Startup
Runs
Input: Wheel Height Above Ground
File Location
Input\spindlez\spindlez.tbk
Library Editor
The Library editor is a tool built into CarSimEd to help you organize libraries by
performing batch delete and renaming operations.
Discussion
The Library editor is available from any CarSimEd library through the ribbon bar and the
Tools menu. When you bring it up, it automatically links to the current library. Use it to
delete a group of data sets from the library, lock and unlock multiple data sets, or to
organize data sets into categories.
1 2
3 4
5 6
Location in CarSimEd
Accessed from the Tools menu or the ribbon bar with the button:
File Location
This editor is not contained in a conventional CarSimEd library file. It is stored with
SGUI code in Sgui_lib\Bootfile.tbk.
Discussion
CarSimEd includes a simulation program to compute changes in steer and camber as
functions of vertical spindle position. In addition, the angles for all five links are
computed, as are the X and Y coordinates of the wheel center.
Example results for this model have been published, with the intention of providing a
benchmark for validating new simulation codes.
M. Hiller and S. Frik, “Five-Link Suspension,” from Multibody Computer Codes
in Vehicle System Dynamics, Supplement to Vehicle System Dynamics, vol. 22,
1993. pp 254 - 262.
4 5
User Settings
1 Link to an animator group data set. The animator group should be set to provide a wire-
frame matched to the suspension parts.
2 Y coordinate of point B, the wheel center (keyword = BY). The X coordinate is defined as
zero, and the Z coordinate is a variable that is varied during a run. The Y value changes
during a run: the specified coordinate applies when the points (X1 to X5) are at their
specified locations 5 .
3 Wheel spin orientation (keywords = BSY, BSZ). The orientation of the spin axis is
defined by a second point, BS, lying outboard of point B. The Y and Z coordinates of this
point determine how the spin axis is oriented when the points (X1 to X5) are at their
specified locations 5 .
4 Coordinates of points fixed in the body (keywords = PX(1) - PX(5), PY(1) - PY(5),
PZ(1) - PZ(5)).
5 Coordinates of points fixed in the spindle body (keywords = XX(1) - XX(5), XY(1) -
XY(5), XZ(1) - XZ(5)). These locations define a nominal configuration for the
system.
Location in CarSimEd
CarSimEd Startup
Runs
Link-Type Independent Suspension
File Location
Vehicles\Link_sus\Link_sus.tbk
Plot Format
The format screen determines the style and layout properties of a plot. The formats cover
line style, front properties, and size.
5
2
1
3 6
7
9
8
10
Discussion
The WinEP program supports a number of options for controlling the format of the
generated plots. As was described in Chapter 6, dialog boxes are used for setting all
options interactively, and those options can be stored in text files for future use.
This data screen is also used to specify plotting formats. Every user setting on this screen
can also be set interactively from within WinEP. However, when set here, the formatting
information is stored in the CarSimEd database and can be applied easily to any plots
initiated from within CarSimEd (clicking the Plot button from the Runs screen or the
Plot: Batch Setup screen).
User Settings
1 Lines and symbol specification (keywords = symbols, linestyle, colors).
Clicking on a number or line will bring up the Lines palette, shown in the next figure.
The palette applies to one line number, which will be highlighted. For example, line 2 is
selected in the following figure.
Choose the color, line style (dotted, thin, thick), and the symbol for the selected line. To
change a different line, click on a different line number, or use the up and down arrow
keys. To change all of the lines at once, hold down the control key when selecting the
style, color or symbol.
2 Axis selection. The button has a pull-down menu with two options: no axes or axes. The
current selection is shown in the white field.
3 Frame selection. The button has a pull-down menu with three options: no surrounding
frame, a rectangular frame, or a frame with tick marks. The current selection is shown in
the white field.
4 Grid selection. The button has a pull-down menu with three options: no grid, fine grid, or
course grid. The current selection is shown in the white field.
5 Change Fonts button. Press the button to display a pull-down menu for selecting font
properties for the title, legend, axes labels, and axis numbers. These parts of the plot are
identified in the next figure. A standard Windows dialog box for specifying font
properties then appears and is used to specify the font properties.
Title
Y axis label
Legend
Tick labels
X axis label
Labels in a plot.
6 Current font settings. The table shows the current font settings for the four types of labels
appearing in the plot. You cannot change the values shown directly — you must go
through the Change Fonts button 5 .
7 File identifier. The two options available from the pull-down menu are file name and file
title. Because most ERD files generated with CarSimEd have numbers assigned by the
database as their names, the title option is recommended.
8 Data set identifier. Variables overlaid in a plot are identified in a legend. Variables from
the same file can be identified by the criteria provided in the pull-down menu.
9 Legend location. The button has a pull-down menu with two possible locations for the
legend that identifies data sets in overlay plots. The choices are to the right of the plot, or
four locations within the plot area. The current selection is shown in the white field.
10 Legend size limit. When two or more data sets are overlaid, and the legend is located to
the right of the plot area, WinEP sizes the plot area to leave just enough room to print the
legend. In the event that at least one of the labels in the legend is long, or that the window
is not very wide, then little space is available for the plot. This field is used to set a
maximum amount of the total window width that will be used for the legend.
This setting has no effect unless three conditions are met:
1. At least two data sets are overlaid in the plot.
2. The legend is placed to the right of the plot (as specified in 9 ).
3. The length of the longest label in the legend exceeds the specified percentage of
the window width.
If the above three conditions are met, then the plot is sized giving the legend the specified
amount. For example, if the limit is set to 30%, then the plot area is size to leave exactly
30% of the width for the legend. The labels that are too long are truncated to fit.
Location in CarSimEd
CarSimEd Startup
Runs
Plot Setup: Single
Plot Format
File Location
Plot\Format\Format.tbk
Description
The standard Runs screen allows multiple plots to be specified, and multiple runs to be
overlaid. However, it is limited to four plot setups and three runs. If you want to trigger
more plots with one button click, or overlay data from more than three runs, you can do it
from this library.
15
16
1 7
3 4 5
9 10
12
6
13
11
14
3 The Add button. Click to add highlighted lines from the Runs list 2 to the Selected
Data Files list 6 . Shift-click to add all.
4 The Remove button. Click to remove highlighted data sets from the Selected Data Files
list 6 . Shift-click to remove all.
5 The Add ERD File button. Calls up a dialog box for you to select ERD files that are
added to the Selected Data Files list 6 . The dialog box will continue to request
selections until you click the Cancel button.
6 The Selected Data Files list. List of the selected data sets from the Runs list. These are
the data sets that will be plotted. Any line in brackets (<>) indicates a category heading.
Double-click on a line to remove from the list.
7 Plot Setup link. The pull-down menu has two options: (1) to go to the currently selected
library, or (2) to pick a new library. The linked library must contain plot setup
information. When you pick a new library, the field below is updated to show the names
of all of its data sets.
8 The Plot Setups list. List of all of the plot setups in the EP setup library. Any line in
brackets (<>) indicates a category heading. Double-click on a line to add to the Selected
Plots list 11 .
9 The Add button. Adds highlighted lines from the Plot Setups list 8 to the Selected
Plots list 11 . Shift-click to add all.
10 The Remove button. Removes highlighted data sets from the Selected Plots list 11 .
Shift-click to remove all.
11 The Selected Plots list. List of the selected plot setups in the EP setup library. These are
the plot setups that will be used for the plots. Any line in brackets (<>) indicates a
category heading. Double-click on a line to remove from the list.
12 The One Plot Per Data File button. Click to cause the next set of plots to be made with a
separate plot for each combination of a run and plot setup. The total number of plots will
be the number of data sets multiplied by the number of selected plots.
13 The One Plot For All Data Files button. Click to cause the next set of plots to be made
by overlaying all runs for each plot setup. The total number of plots will be the number of
selected plots.
14 The Make Plots button. Click to start the program WinEP and instruct it to make a series
of plots based upon the selected runs, plot setups, printing and overlay options selected.
Location in CarSimEd
Accessed with the Tools menu or the ribbon bar button: 16
File Location
Batch\Plot_bat\Plot_bat.tbk
Discussion
This data set is a template, used to specify what a plot should contain and how it should
look. The template is applied from the Runs screen and the Plot Setup: Batch screens.
CarSimEd comes with about 30 installed plot templates. You can modify any of these,
plus you can define new ones. Once a template is defined, it can be selected from the
Runs screen and applied routinely to all runs to generate plots.
1
4 5
2
10 10
8
11 11
9 12
memory limits can prevent the long names from being generated. (This won’t happen
with the models built into CarSimEd.)
4 Y Axis list of variables. This shows all the variables in the selected run or data file 7 .
Double click on a line to add it and the line highlighted in the X Axis list to the Data to
Plot list 1 .
5 X Axis list of variables This shows all the variables in the selected run or data file 7 .
Double click on a line to add it and the line highlighted in the Y axis list to the Data to
Plot list 1 .
6 Optional labels for the X and Y axes. Normally, the plotter labels the axes based on
keywords read from the header of the ERD files. However, you can override those labels
and specify your own. If any text appears in these fields, it will be used to label the axes
instead of the information from the ERD file.
7 Link to Runs library or ERD file. The blue field shows the title of the currently selected
run or ERD file. When a run is selected, the associated ERD output file is scanned for
labels that appear in the X and Y axis fields ( 4 and 5 ).
8 Format link. The linked data set determines the look and scale of a plot. For more
information about the Format library, see the section Plot Format Screen in this chapter.
9 Transform link. This is for applying a filter to the data for plotting. The available filters
are moving average high, low, and band pass.
10 X and Y Log Scaling check boxes. When one of these boxes is checked, the
corresponding axis is drawn with log scaling. Otherwise the scaling is linear.
Note: Log scaling is only used if the box is checked and the associated
values of the variables are all positive. If the data include zero or
negative values, linear scaling is used even if the Log box is
checked.
11 X and Y Manual Scaling check boxes. When one of these boxes is checked, the
corresponding axis is scaled to cover the minimum and maximum values specified below.
Otherwise scaling is performed automatically to include the full range.
12 Minimum and maximum values for the axes. These values are used only if the manual
scaling box is checked 11 . For the X axis, these field are hidden when the manual scaling
box is not checked. For the Y axis, they are always visible because in some versions of
CarSim the values are needed for plotting software other than WinEP.
Location in CarSimEd
This library is accessible from several places in CarSimEd.
• Accessed from the ribbon bar with the button:
• Accessed with the Tools menu.
• Accessed from the Plot Setup: Batch screen.
• CarSimEd Startup
Runs
Plot Setup: Single
File Location
Plot\Plot.tbk
Plot Transforms
This screen is used for setting up plots with smoothing (low pass filter) and unsmoothing
(high pass filter).
Discussion
Filtering is normally used to view measured data. It is not routinely applied to simulation
results generated by CarSimEd models. However, it is useful if you have occasion to
view experimental data with WinEP.
User Settings
1 Filter type. Press adjacent button to display pull-down menu with choice of LoPass,
HiPass, BandPass, or no filter. See the above screen for more details.
2 High-pass baselength. This is a baselength for a moving average when the filter type is
either high-pass or band-pass. For no filter or a low-pass, this field is hidden.
3 Low-pass baselength. This is a baselength for a moving average when the filter type is
either low-pass or band-pass. For no filter or a high-pass, this field is hidden.
Location in CarSimEd
CarSimEd Startup
Runs
Plot Setup: Single
Plot Transform
File Location
Plot\Transfrm\Transfrm.tbk
Runs
The Runs screen is the main part of user interface in CarSimEd. CarSimEd includes three
separate Runs screens, corresponding to three libraries used to manage simulation results
from the three kinds of models (3D handling, 2D ride, and suspension kinematics). The
files for the libraries are located in the folders: Runs_3d, Runs_2d, and Runs_sus.
The three runs screens have nearly identical layouts, and therefore a single section is
provided here for all three. Figure 8.2 shows the screen for the 3D handling program.
A Runs screen has two functions:
1. to set up simulation runs and make them, and
2. to run post-processing programs to view results
Note: The Runs Screen has several possible appearances depending on
whether various check boxes are checked. The first figure shows
the simplest display. The most complex is shown later, after the
basic controls have been described.
Discussion
The Runs screen controls all aspects of a CarSimEd simulation. Notice that the screen
image is divided into three regions
1. Model Parameters & Inputs — this has links to inputs to the computer model.
They include the vehicle and control inputs.
2. Run Control — here are parameters that control the extent of the run, and a
button to make the run.
3. Output & Post Processing — this has controls for viewing outputs generated by
the run.
3 8
1
9
2 4 5 6
10
2
7
11 12
2
13
14
14
14
14
15
The Runs screens are special within CarSimEd because they have several buttons that
cause other programs to run and do things (simulate a vehicle, animate results, show
graphs of output variables). However, like all the other screens covered in this chapter,
each screen defines a data set within a library. In this case, the data set defines the
conditions covered by a run.
Data in the left-most two regions do not have anything to do with outputs of a run. They
define the inputs and parameters that will be used in the computer model if and when a
run is made. In order to have an effect, changes must be made before a run is made. At
any time: (1) any of these inputs can be changed, and (2) a new run can be made. The
simulation program will always get its inputs using the current data from this screen.
On the other hand, settings in the right-most region have no use until after a run is made.
Linked data sets control the appearances of plots and animations. Changes in data in this
region do not affect a simulation. They only affect how the simulation results are viewed.
Notes: Figure 8.2 shows the layout of the Runs screens for the 3D vehicle
simulations. The screen for the 2D simulation lacks the friction
coefficient field 6 . The 3D suspension kinematics lacks yellow
fields for specifying speed 4 and friction 6 .
Although the settings in the right-most region of the screen are not
used when a simulation is run, the files are nonetheless scanned. If
the links are not valid (e.g., because a data set was deleted), an
error message might be generated when the simulation program
starts.
6 Friction coefficient (keyword = MU). This is a number used to scale forces from the tires
to match friction conditions that differ from the test condition that prevailed when the tire
data were measured. It is the ratio of the maximum shear force (Fx or Fy) to the vertical
force (Fz). Typical values for dry pavement are around 0.8. For wet pavement, values
would be lower, around 0.5. For ice and very slippery surfaces, friction levels can drop
below 0.3.
7 Computation Parameters link. The linked data set specifies the integration time step,
the print interval, the type of integration, and related parameters.
8 Animate button. Click to run the animator program and view motions of the vehicle as
predicted by the simulation. An error message will be printed if the output file does not
exist, which usually indicates that the run has not yet been made.
9 Camera Setup link. The linked data establishes the camera point of view and initial
location.
10 View Echo File (All Parameters) button. This button causes a text editor to run and
display an echo file produced by the simulation program.
The echo file has the extension LPF, and is similar to the file listed in Appendix D. If the
run has not yet been made, or if it aborted without writing the LPF file, then the text
editor will show a blank window.
If you click this button and get an error message or a file browser dialog, then CarSim
could not find the text editor.
The default text editor is a program called QLPad.exe, located in the Programs
directory. If you want to change the default text editor, you can Control-click the button
to bring up the file dialog and choose a different text editor.
11 Plot button. Click to view a plot of output variables calculated during the simulation run.
The plots are drawn by the WinEP program. An error message will be printed if the
output file does not exist (for example, if the run has not yet been made).
Up to four separate plots can be generated (each with many variables, taken from up to
three runs). In order to generate more than one plot, the Multiple Plots box 12 must be
checked.
12 Multiple Plots check box. This check box has two effects:
1. When checked it displays three plot setup links in addition to the first one 14 .
2. When checked, it allows up to four plots to be created with a single click of the
Plot button 11 .
If the box is not checked, the additional plot links are not cleared. They are just hidden.
13 Overlay Runs check box. This check box has two effects:
1. When checked it displays two links for other runs or ERD files.
2. When checked, it allows data from up to three files to be overlaid. (One file is the
output associated with the current Runs data set. The other two are specified with
the additional two links.)
If the box is not checked, the additional links are not cleared, they are just hidden.
14 Plot Setup link. The linked data controls what information will be extracted from the
output file and how that information will be displayed. Up to four plot setup links can be
set, to create four independent plots at a time.
Only the first link is displayed if the Multiple Plots box 12 is not checked.
15 Show More check box. This check box has a single effect: it shows more control objects,
as shown in Figure 8.3.
Note: Figure 8.3 shows the Runs screen with all three display boxes
checked ( 12 , 13 , and 15 ). All possible data fields and links are
displayed.
26
1 3 8
2 9
4 5 6
2 10
7 12
2 11
24 13
14
17
14
16
18
14
20 14
21
23
19
22 23
15
This link is provided for special applications. (Most users never need it.) A few cases
where you might consider using it are:
• to continue a run, perhaps after changing one or more model parameters;
• to make a run using a vehicle description whose parameter values have been
lost (the based on method reads from an LPF echo file, rather than the normal
PAR files associated with the SGUI screens); or
• for certain debugging operations, such as confirming that the parameters
specified in the screen are being processed by the solver program.
18 Overriding Data link. This link is used by the system when batch runs are made using
the Runs: Batch library. If a run is made under batch control, this link can be used to go
to the batch data set.
19 Excerpts from Output File. This field shows selected lines scanned from one of the
output files. It is updated whenever a run is made or when the Rescan button 22 is
clicked.
20 File extension. This determines which echo file is scanned when a run is made or the
Rescan File button is clicked. The normal values are LPF (scan the file made with final
conditions), or LPO (scan the file made with initial conditions).
21 Keywords field. Each line in this field is a keyword that will be used to scan an output
echo file whenever a run is made or when the Rescan button is clicked.
22 Rescan button. Click this button to cause CarSim to scan a file for lines beginning with
the keywords listed in the Keywords field 21 . Those lines are copied into the adjacent
white field 19 . The file that is scanned has a root name matching the ID of the current
data set and the specified extension 20 . This is done automatically when a new run is
made. However, you can click this button to force the program to scan the file
immediately. This is done mainly after changing the contents of the keywords field 21 .
23 Overlay Run links. These links are used to generate overlay plots, in which variables
from the current simulation run are plotted with the same variables from other files. To
overlay variables from two or three simulation runs, link to this library (Runs) and then
pick another run to plot with. To overlay variables with ERD files not from this library
(for example, measured test data), use the menu command to open an ERD file.
24 Simulation Type link. This shows the current type of simulation model. As shipped,
CarSim has a single type: Single-Unit Vehicle. (Custom versions may have modified or
extended models.)This single type is used with both solid-axle and all-independent
vehicle models. The software determines which solver program to use based on the type
of vehicle selected with the Vehicle link 1 .
The triangle button displays a pull-down menu with options for adding and deleting
simulation types, and for locating the simulation solver program (extension EXE). Unless
you add new solver programs, you should never use this menu. In fact, the menu is
disabled unless the check box for Advanced Users is checked in the Preferences screen.
Location in CarSimEd
The Runs screen for the 3D handling model can be accessed from the Tools menu and
the ribbon bar button: . The other two are accessed from the GO menu.
All three Runs screen are accessed from the CarSimEd Startup screen:
CarSimEd Startup
Runs
File Location
Runs_3d\Runs_3d.tbk
also,
Runs_2d\Runs_2d.tbk
also,
Runs_sus\Runs_sus.tbk
Runs: Batch
The batch runs screen is used to set up several runs ahead of time and make them all at
once. It also can be used to override parameters.
Discussion
This screen is used to set up a batch of runs. It is handy for redoing a group of runs, say,
because an error was made in a vehicle parameter value. It can also be used to change a
parameter such as test speed, and make a set of runs again using the new parameter.
The basic method is:
1. Create a list of runs to be made using existing data sets from the Runs library.
2. Define parameters and link to other data sets to override the conditions specified
in the Runs data sets.
3. Click the Make Runs button.
1
6
2
7
7
3 4
6
5
8
7
If no overriding data values or links are provided in step 2, the effect is exactly the same
as going to each of the data sets from the Runs library and making the run again.
However, if any parameters are specified or links are made, each data set in the Runs
library is modified to use the overriding data. A link called Overriding Data (from
Batch) is made to this data set. For example, in the figure above, the name of the data set
is Example, and one of the yellow fields is used to specify a speed of 20. If any runs
were made, each affected run would have the following link set automatically:
This link is made so you can get from the runs data set back to the batch data set and see
what parameters and links were used when the run was made.
6 Parameter Sets (1, 2, and 3). These lists hold overriding data. If used, each line typically
has a keyword followed by a value. For example, to set the speed, enter the line speed
60. See Appendix E for the keywords recognized by CarSimEd models.
Any parameters specified in these fields will be used instead of the ones referenced in the
Runs data set, or in data sets linked to the Runs data set.
This field should be left blank if you do not want to modify the input parameters or
model descriptions for the runs to be made.
7 Links (1, 2, and 3) . Use these links to apply data from any other CarSimEd library. If the
data in the library can be applied to different parts of the vehicle (for example, a tire
description can be applied to any of the axles on the vehicle), a reference to a part of the
vehicle must be specified in the preceding Parameter Set 6 .
8 The Make Runs button. Click to run all of the data sets listed in the Data Sets to Run
list 5 . Hold down the control key to interrupt the runs in progress.
Location in CarSimEd
Accessed from the Tools menu and the ribbon bar button:
File Location
Batch\Runs_bat\Runs_bat.tbk
Suspensions
Use this screen to define suspension properties for the vehicle models used in the 3D
braking and handling simulation. A few of the parameters are also used for the 2D ride
simulations.
Discussion
This screen shows parameters that characterize the most important properties of a
suspension, with respect to predicting ride, braking, and handling. All parameters are
used for the 3D simulations. For the 2D ride, only the spring and damper parameters are
used ( 10 - 13 ).
The kinematics of the suspension linkages are described in terms how a wheel moves
laterally and longitudinally as the suspension deflects vertically. The lateral movement
affects the transfer of tire lateral force to the body and the resulting body roll. The
longitudinal movement has a similar effect involving pitch due to longitudinal tire force.
Changes in steer due to compliance and suspension kinematics can drastically affect the
response of a vehicle to steer. This behavior is represented with several linear
coefficients.
10 11
2
3 12
13
14
7
8
9
4
5
6
User Settings
1 Unsprung mass for the suspension (keyword = MUS (IAXLE)). This mass should
include all parts that move relative to the body—wheels, tires, brakes, and portions of the
suspension links and driveline. The mass is for both wheels associated with the axle.
2 Track width (keyword = LTK (IAXLE)).
3 Height of axle roll center above ground at the simulation load condition (keyword = HRC
(IAXLE)). This is typically a value between 0 and 100 mm for independent suspension,
and around 300 - 500 mm for solid axle suspensions.
4 Wheelbase change per unit jounce (keyword = RAP (IAXLE)). This should be a
positive number for both front and rear suspensions, with a value between 0.05 and 0.25
mm/mm.
Note: The sign convention is designed such that a positive value means the
wheel moves away from the center of the vehicle as it moves up. In
the front, this is called anti-dive. In the rear, anti-squat.
5 Ratio of toe change per unit of suspension compression (keyword = RTOE (IAXLE)). As
shown in the figure, positive toe is steer to the inside (left steer for the right wheels, right
steer for the left wheels). Suspension kinematics normally cause toe to vary in a complex
way with suspension deflection. This coefficient should be selected to represent the linear
behavior near the nominal suspension compression.
6 Ratio of camber change per unit of suspension compression (keyword = RCAM
(IAXLE)). As shown in the figure, positive camber is when the wheel leans out at the top.
Suspension kinematics normally cause camber to decrease with suspension compression.
Thus, this value is often negative.
7 Coefficient for change of toe per change of tire longitudinal force (keyword = CTFX
(IAXLE)). A forward force (drive) often bends the suspension forward, steering the
wheel inward (positive toe) due to suspension compliance. Therefore this parameter is
likely to have a small but positive value.
8 Coefficient for change of steer angle per change of tire lateral force (keyword = CSFY
(IAXLE)). For wheels which can be steered, the steer axis is usually inclined to intersect
the ground in front of the center of tire contact. Thus, a positive lateral force (to the left),
acting behind the steer axis, usually causes some steer to the right (negative). This
coefficient is therefore likely to have a small negative value for a steered wheel. For rear
wheels, is should have a value close to zero.
9 Coefficient for change of steer angle per change of tire aligning torque (keyword = CSMZ
(IAXLE)). The suspension elements usually deflect when a steering torque is applied to
the wheel. Because the steer and moment have the same sign convention, the compliance
coefficient is nearly always positive.
Steering as a result of aligning torque is due both to compliance in the suspension, and to
compliance in the steering column. If equal and opposite steering torques are applied to
both the left and right road wheels, the resulting deflection is mainly due to the
suspension alone.
The suspension compliance is subtracted from the total steering compliance that would be
measured for one wheel, to determine the compliance for the steering column (specified
in the Cars data screen).
10 Ratio of spring jounce (compression) to jounce at wheel (keyword = RSPRING
(IAXLE)). This determines the mechanical advantage of the suspension with respect to
the spring. The value is typically between 0.5 (for some SLA suspensions) and 1.0 (for
some MacPherson strut suspensions).
11 Ratio of damper jounce to jounce at wheel (keyword = RDAMP (IAXLE)). This
determines the mechanical advantage of the suspension with respect to the shock
absorber. The value is typically between 0.5 (for some SLA suspensions) and 1.0 (for
some MacPherson strut suspensions).
12 Spring rate (keyword = KS (IAXLE)). This is the linear rate of a single suspension
spring. You can take the rate at the spring, rather than at the wheel, because an additional
parameter accounts for the mechanical advantage of the suspension 10 .
13 Spring rate (keyword = DS (IAXLE)). This is the linear rate of a single shock absorber.
You can take the rate of the isolated damper, rather than at the wheel, because an
additional parameter accounts for the mechanical advantage of the suspension 11 .
14 Auxiliary roll stiffness, including stabilizer bar (keyword = KAUX (IAXLE)). This
coefficient is provided to account for the difference between the overall roll stiffness and
the stiffness provided by the springs along. It is usually positive.
The overall roll stiffness of a suspension is the roll moment (N-m) needed to roll the
vehicle body one degree (with the other suspension disconnected). The springs provide a
certain amount of roll stiffness, based on the spring rate, the mechanical advantage of the
suspension, and the track width. The total roll stiffness may differ from the rate computed
for the springs alone. Additional stiffness is provided by anti-sway bars and by over-
constrained suspension linkages.
On the other hand, additional compliance can be introduced through soft attachment
points, leading to a negative value for auxiliary stiffness.
Location in CarSimEd
CarSimEd Startup
Runs
Cars
Suspensions
File Location
Vehicles\Susp_ed\Susp_ed.tbk
Discussion
This screen provides a location for you to enter a number of tire properties needed in the
simulation. Tire vertical stiffness determines how the load varies as the tire bounces on
the road. You can specify a vertical stiffness value here. If you are simulating the 2D
vehicle ride response, this is the only tire parameter that will be used.
For small amounts of slip (lateral or longitudinal), the tire produces forces and aligning
moment proportional to the slip. The coefficients are highly sensitive to load, and
therefore the screen has links to other data screens that define the load sensitivity in
tabular form.
For braking, the dynamics of the spinning wheels are not of great interest. Without ABS
simulation, the wheels generally reach a spin value in which the longitudinal tire force
just balances the applied brake torque. The model uses a single coefficient to relate
longitudinal slip to force.
For cornering, a quick equilibrium is not reached, and the relation between lateral slip
and lateral force has a strong influence on the handling behavior of the vehicle. The
CarSimEd tire model is described in Appendix F. It is based on an analysis of tire
mechanics from Chapter 14 of the book Race Car Vehicle Dynamics, Milkier & Milkier,
SAE, 1995.
When a tire experiences a slip angle, it does not immediately generate a lateral force, but
must roll some distance to generate the lateral deflection necessary to sustain a force.
Under a step steer the force builds up like a first-order lag in distance. You can input this
distance, known as the relaxation length, on this screen.
At low speeds the determination of tire forces can become erratic because of numerical
problems in calculating the slip conditions. In order to avoid these problems, you can
specify a cut-off speed below which such mechanisms as relaxation length are modified.
All properties are specified for one tire.
5 9
6 10
11
1
2
3
4
7
User Settings
1 Longitudinal stiffness (keyword = KFX(IAXLE)). This coefficient defines the
relationship between longitudinal slip and force for small amounts of slip. Although the
coefficient is in reality sensitive to load, a constant value is used in the model because no
matter what the stiffness is, the longitudinal force will balance the brake torque. The
stiffness determine the amount of slip that occurs during that balance, and the
longitudinal slip does affect the cornering behavior for combined slip (see Appendix F).
However, given that the tire model is not adjustable in its combined slip behavior, a
single value for Kfx is considered to be adequate for most conditions.
2 Camber thrust coefficient (keyword = KFYCAM(IAXLE)). This coefficient defines the
relationship between wheel inclination and side force. The sensitivity to inclination is an
order of magnitude less than the sensitivity to slip (steer). Even though the coefficient is
known to be sensitive to load, a constant value is used in the CarSimEd model due to its
relatively small overall contribution to the tire force.
With the ISO coordinate system used in CarSimEd (shown in the screen figure), positive
inclination (leaning to the right) causes negative lateral force (the force also goes to the
right). Therefore, this coefficient should be negative.
Note: With the SAE coordinate system this coefficient would be positive.
Therefore, check the sign if you are obtaining data from a source
where the SAE convention was used.
3 Link to cornering stiffness data. The linked data set specifies cornering stiffness as a
function of load.
4 Link to cornering pneumatic trail data. The linked data set specifies pneumatic trail as a
function of load.
5 Undeflected tire radius (keyword = HWC (IAXLE)). This parameter establishes the
relationship between forward speed and wheel spin.
6 Tire vertical stiffness (keyword = KT (IAXLE)).
7 Tire relaxation length (keyword = LRELAX (IAXLE)). This is about one-third the
distance that the tire must roll before side force due to slip angle builds up to its full
value. It can be thought of as a spatial version of a time constant.
8 Cutoff speed for tire relaxation equations (keyword = VLOW_ALPHA (IAXLE)). The
concept of relaxation length is valid for a range of speeds, but leads to strange behavior
as speeds approach zero because the time constant associated with the dynamic lag goes
to infinity. The time constant associated with relaxation is frozen when the speed drops
below this value.
9 Cutoff speed for longitudinal tire forces (keyword = VLOW_KAPPA (IAXLE)). The
classic model for predicting longitudinal force eliminates a direct dependency on speed
by using a normalized longitudinal slip. However, the definition of longitudinal slip is
singular at zero speed. At speeds approaching zero, the classic model can predict
maximum tractive force, oscillating in the forward and rearward directions. This behavior
is reduced in the CarSim model by attenuating the slip when the wheel is locked by the
brakes and the speed drops below the level specified in this field (see Appendix F for
details).
10 Cutoff speed for wheel spin acceleration (keyword = VLOW_SPINA (IAXLE)). Brake
torque is the result of friction, and therefore is always opposes the wheel spin. When the
wheel spin approaches zero (lock up), a numerical instability can occur due to the
reversal of the direction of the brake torque. To avoid numerical problems, the wheel spin
equation is modified when the effective speed (spin multiplied by rolling radius) drops
below the level specified in this field.
11 Spin moment of inertia of one wheel (keyword = IW (IAXLE)). This should include all
parts that rotates with the wheel as a single rigid body, including the tire, brake rotors,
and possibly driveline elements.
Location in CarSimEd
CarSimEd Startup
Runs
Cars
Tires: CarSim Educational Tire Model
File Location
Vehicles\Tires_ed\Tires_ed.tbk
Discussion
For small levels of lateral slip, tires produce lateral force that is proportional to the
negative of slip. The coefficient is called cornering stiffness. It is strongly dependent on
load. The CarSimEd model accounts for the load sensitivity with a tabular function.
For large slip angles, the CarSimEd model reduces the lateral force to account for friction
limits. Details are provided in Appendix F.
User Settings
Note: User settings that are common for all tabular data screens are
described in Chapter 7, in the section Tabular Data.
1 Table field for cornering stiffness (keyword = KFY_TABLE). Each line should have a
value of cornering stiffness (N) followed by a corresponding value of trail (N/deg).
Although lateral force and side slip have opposite signs, cornering stiffness is defined
CarSimEd as a positive quantity. Therefore, all numbers in the table should be positive.
Location in CarSimEd
CarSimEd Startup
Runs
Cars
Tires: CarSimEd Tire Model
Tires: Pneumatic Trail
File Location
Vehicles\Tires_ed\Kfy\Kfy.tbk
Discussion
The line of action for the shear force produced by a tire is generally not exactly through
the center of tire contact. For small lateral slip angles, the shear force usually acts behind
the center. This distance acts as a moment arm, producing a torque that opposes the
steering. It is called “self-aligning torque” or aligning moment.
The pneumatic trail is a function of the shape of the contact patch between the tire and
road. Therefore, pneumatic trail is sensitive to inflation pressure and vertical load. This
screen is used to describe the sensitivity to load.
User Settings
Note: User settings that are common for all tabular data screens are
described in Chapter 7, in the section Tabular Data.
1 Table field for pneumatic trail (keyword = TRAIL_TABLE). Each line should have a
value of load (N) followed by a corresponding value of trail (mm).
Location in CarSimEd
CarSimEd Startup
Runs
Cars
Tires: CarSimEd Tire Model
Tires: Pneumatic Trail
File Location
Vehicles\Tires_ed\Trail\Trail.tbk
The adjacent button has a pull-down menu that can be used to rapidly change the link to a
different data set. The menu can also be used to “follow the link” and go to the data set.
MATLAB™ — a software product from the MathWorks, Inc. that supports the
MATLAB language of technical computing. MATLAB includes extensive capabilities
for manipulating matrices and other mathematical constructs. It also includes equation
solvers, plotting, and an interactive environment.
MSC — Mechanical Simulation Corporation. The company that maintains CarSimEd.
Numerical integration — a computation method used to solve the differential equations
that define a mathematical model of vehicle dynamics. Output variables produced by the
models in CarSimEd are based on internal model variables that are calculated over time
using numerical integration.
Parameter — a value that you can change from a CarSimEd data screen. Parameters are
properties of the CarSimEd models that are constant during a computer run. Variables, on
the other hand, are computed by the simulation programs and cannot be viewed until after
a run is made.
PARSFILE (parameter file) — a keyword-based text file used to communicate between
various CarSimEd programs.
Plug and Play (PnP) Tire — an extension to CarSimEd that enables user-defined tire
models (described with symbolic equations and numerical values). Robertson and
Robertson Consultants, Inc. (RRCI) provide the PnP tire capability. For the latest
information about PnP Tire, see the RRCI web site: http://www.rrci.com.
QLPad — a text editor included with CarSimEd for editing and viewing text files.
Ribbon bar — the collection of buttons and user controls displayed at the top of nearly
every CarSimEd data screen.
Run — Shorthand for “run a simulated test” (e.g., “make a run”). Also used to refer to
the “outcome of a simulated test run” (e.g., “look at a run”).
Screen — shorthand for “screen layout associated with a library.” This manual has many
references to the act of going from one screen to another. “Changing the screen” means
the database program changes the view to show different data.
SGUI — Simulation Graphical User Interface. The architecture of CarSimEd (data
screens, plotter, simulation programs, animator) has been used for other software
packages. The generic architecture, created at UMTRI and further developed by MSC, is
called the SGUI.
SimuLink™ — a software product from the MathWorks, Inc. that adds a simulation
environment to the basic MATLAB package. SimuLink is often used to design and
evaluate control systems. Equations describing complex models can be provided through
external C-MEX files. A C-MEX version of the CarSimEd 3D handling model is
provided for use with SimuLink
The Header
The ERD file header consists of a series of conventional text lines that are human
readable. These lines contain the information used by post-processing tools to read the
numerical data.
Required Lines
As a minimum, the header contains three lines of text. The first line identifies the file as
following the ERD format. The second line describes the way that the numerical data are
stored in the data section of the file. The third required line is an END statement that
indicates the end of the header portion. Any number of optional lines can be included
between line #2 and the END line. Table B.1 summarizes the lines in an ERD file, and
describes the parameters used in line #2 to describe the numerical data.
The second line of the file shown in Listing B.1 shows that the file contains data for 2
channels, with 529 samples/channel, stored as 1 binary record consisting of 4232 bytes,
that the data storage format is type 1 (4-byte binary), that the interval between samples is
1.00, and that the status of the auxiliary numbers is -1.
Table B.1. Summary of records in an ERD file header.
Line No. Description
1 ERDFILEV2.00 — identifies file as having ERD format
2 NCHAN, NSAMP, NRECS, NBYTES, KEYNUM, STEP, KEYOPT —
use commas to separate numbers
NCHAN [integer] = Number of data channels
NSAMP [integer] = Number of samples for each channel. The total
number of sampled values in the data portion of the file is
NCHAN × NSAMP. (If unknown, use –1.)
NRECS [integer] = Number of records of data. (record ≈ line)
Ignored for text data (KEYNUM = 5. ) (If unknown, use –1.)
NBYTES [integer]
binary data: Number of bytes per record. If KEYNUM=0,1, or
5, this should be chosen such that each record begins with
channel 1: that is, NBYTES = K × NCHAN × B, where K is
an integer and B is the number of bytes/number (B=2 for
integer, B=4 for floating-point). If KEYNUM=10,11,or 15,
this should be NSAMP × B.
text data: Number of samples per record. Thus each record
contains NBYTES × NCHAN numbers (for KEYNUM=5).
KEYNUM[integer] Indicates how the data are stored.
0, 10 = 2-byte integer (binary),
1, 11 = 4-byte floating point (binary),
5, 15 = Formatted floating-point (text). The format must
be specified using the FORMAT keyword.
For KEYNUM=0,1, and 5, the data are stored with all channels
for the first sample together, then all channels for the second
sample, etc.
For KEYNUM=10,11, and 15, the data are stored with all
samples for the first channel together, then all samples for
the second channel, etc.
STEP [real] = sample interval (e.g., time step)
KEYOPT [integer] = auxiliary number used by some programs
• Optional records. Each record begins with an 8-character keyword,
followed by information associated with that keyword.
Table B.2 lists keywords that have been used to date.
last line END — indicates the end of the header
Listing B.1. Short Header for an ERD File with Binary Data.
ERDFILEV2.00
2, 529, 1, 4232, 1, 1.00000, -1,
TITLE 1993 RPUG Study, Dipstick, Section 1, Measurement 1
SHORTNAMLElev. RElev.
UNITSNAMft ft
XLABEL Distance
XUNITS ft
END
Listing B.2 shows a longer header for a file with its data in text form. Note that the data
begin immediately after the END line of the header.
Listing B.2. Typical Header for an ERD File with Text Data.
ERDFILEV2.00
2, 529, 1, 4232, 1, 1.00000, -1,
TITLE 1993 RPUG Study, Dipstick, Section 1, Measurement 1
SHORTNAMLElev. RElev.
LONGNAMELeft Elevation Right Elevation
UNITSNAMft ft
GENNAME Profile Elevation Profile Elevation
XLABEL Distance
XUNITS ft
FORMAT (2G14.6)
PROFINSTDipstick
HISTORY Converted to ERD format at 23:46, Oct. 23, 1994
END
0.000000 0.000000
0.416667E-03 -0.141667E-02
0.416667E-03 0.583333E-03
0.666667E-03 0.916667E-03
0.133333E-02 0.133333E-02
0.750000E-03 -0.166667E-02
-0.300000E-02 -0.458333E-02
-0.558333E-02 -0.500000E-02
-0.625000E-02 -0.658333E-02
-0.775000E-02 -0.825000E-02
Table B.2 lists common keywords recognized by most post-processing tools. The use of
some of these keywords is demonstrated in Listing B.1 and Listing B.2.
Usually, names associated with a keyword are shorter than the space allowed. When
several names are on the same line, the names are padded with blanks as needed so that
following names begin at the correct column positions. For example, the header shown in
Listing B.1 includes names of the units for each channel, as identified with the keyword
UNITSNAM. The name of units for the first channel, ft, has only two characters. Thus, it
is followed by six spaces so that the name for the second channel, ft, begins in the correct
column position.
Text Data
The text format can be used for transporting data in ERD files between different
computers, and sometimes even for reading the same file with different programs on the
same computer. It is also convenient when numbers are typed in manually, or when
numbers are to be edited using a text editor. There are penalties for using text
representations of numbers, however. First and foremost, the computer must work hard to
translate the text numbers into binary form. It takes about 10 times longer to read a text
file than a binary equivalent. A second penalty is that text files take up much more disk
storage than binary files.
When data are stored in text form, the numbers are kept in the same file as the header,
with the numbers beginning immediately after the header. The ERD file in Listing B.2
shows an example of numerical data in text form.
Another option is available when the numbers are always separated by delimiters such as
spaces or commas. This occurs when the numbers are obtained by a commercial analysis
program or when they are "captured" from another computer. The file of numbers can be
made into an ERD file by inserting a 3-line header at the beginning of the file.
If the header of the ERD file does not contain a line with the FORMAT keyword, it is the
same as if the FORMAT is a blank. When this occurs for a text file, the file is assumed to
contain numbers in free form. The only restriction on free format numbers is that adjacent
numbers must be separated. For example, the following line is valid for representing 5
numbers 1.2, 3, 4, -.0201, 14.3: 1.2000 3 4 -2.01E-01 14.3
The following line is not, because the third and fourth numbers touch.
1.2000 3.0000 4.0000-2.01E-01 14.3000
Numbers may be separated by one or more spaces, the tab character, or a comma.
Binary Data
Reading and writing binary data is very efficient, because the computer does not need to
perform any conversions or transformations as the data values are moved between the file
and the computer memory. When a binary format is used, the data portion of an ERD file
is a direct copy of a portion of the computer memory, corresponding to a two-
dimensional array having dimensions sized to the number of channels and the number of
samples. As indicated in Table B.1, two forms of binary data are presently supported: 2-
byte integer and 4-byte floating point. 2-byte integer data are typically obtained by data-
acquisition systems. Each integer value is a sampled reading obtained from a digitizer
during a test. For most engineering applications, data are stored (in the computer
memory) in 4-byte floating point format, also known as single-precision floating point.
The 4-byte floating point format is commonly used for data generated by computer. The
maximum efficiency for data processing is usually obtained when the 4-byte floating
point format is used.
The ERD file format is used on a variety of computer systems and for a variety of mass
storage media. On some systems, binary data are stored in discrete records. A computer
program reading such a file needs to know how many bytes each record contains, and
how many records are in the file. Thus, the header contains these two parameters.
Disk files on workstations and desktop computers are not structured: a binary file is
simply a continuous stream of bytes that continues to the end of the file. Thus, technically
correct parameter values for the header could be one record, containing all of the bytes
for the file. Also, there is a certain amount of overhead associated with reading a record.
The time needed to read the data for a file is minimized if a single read operation is
performed for the entire file.
On the other hand, if the file is large, the memory needed to read the entire file in one
chunk may not be available with some programs. A second problem can occur if the true
number of bytes in the file is less than the number as inferred by the parameters nbytes
and nrecs (i.e., the total size of the file should be NBYTES x NRECS). The last "record"
is not read, resulting in a loss of data. If the records are large, this loss could be
significant. These problems are reduced if a value of NBYTES is specified such that it
divides the data into NRECS records of smaller chunks of data.
FILENAME C:\CARSIMED\RUNS\491.ERD
FILENAME C:\CARSIMED\RUNS\430.erd
PARSFILE C:\CARSIMED\PLOT\428.par
RUN Screen
FILENAME C:\CARSIMED\RUNS\491.ERD
FILENAME C:\CARSIMED\RUNS\430.erd
PARSFILE C:\CARSIMED\PLOT\433.par
RUN Screen
FILENAME C:\CARSIMED\RUNS\491.ERD
FILENAME C:\CARSIMED\RUNS\430.erd
PARSFILE C:\CARSIMED\PLOT\439.par
RUN Screen
END
The lines in the PLT file are grouped into plot sets, separated by lines beginning with the
RUN keyword. Lines within a plot set can be arranged in any order.
information from the data base to the simulation solver programs, and have the extension
PAR. Listing C.2 shows an example PARSFILE with information to define a plot.
PARSFILE C:\CARSIMED\PLOT\FORMAT\1.par
PARSFILE C:\CARSIMED\PLOT\transfrm\63.par
PTITLE Ay -- lat. accel. of CG's
END
TICLABELFONTSTYLE style Style of the axis number font ( Regular, Italic, etc.)
LEGENDLABEL b1, b2, b3, Names to use in creating the legend. Values are 0 (do
b4, b5, b6 not use) or 1 (use). The sequence is: b1= shortname,
b2 = longname, b3 = genname, b4 = rigidbody name,
b5 = file title, b6 = file name.
LEGENDLOCATION name Location in plot window for legend. Options are
RightOfPlot, OnPlotUpperLeft,
OnPlotUpperRight, OnPlotLowerLeft, and
OnPlotLowerRight
GRID type Type of grid. Options are NoGrid, CourseGrid, and
FineGrid.
COLORS c1,c2,c3,...,c20 Color for each channel. There must be a total of 20
colors indicated. Color key:
0 = Black
1 = Maroon
2 = Red
3 = Green
4 = Bright Green
5 = Dark Blue
6 = Light Gray
7 = Light Blue
8 = Blue
9 = Muddy Yellow
10 = Yellow
11 = Gray
12 = Purple
13 = Teal
14 = Bright Purple
parsfile pathname
Through the use of the parsfile links, data for each object can be contained in a
separate parsfile. For example, each part data set can be placed in a separate file. The
data set for a reference-frame can be in a file that contains a parsfile link to
each part associated with the frame. The entire animation data can be just a set of
parsfile links to the non-moving parts, followed by the data sets for the moving
reference frames.
At the top level, the animation shape data should be organized by reference frame. When
a shape is introduced, it must be associated with a specific reference frame. After a new
reference frame is introduces, all following inputs are said to fall within the scope of that
reference frame. For example, a shape is in the scope of a reference frame if its
coordinates are defined by the animator as being fixed in that reference frame.
Overall, the animation input data should be organized as follows:
parsfile
<info for fixed frame>
add_reference_frame {name1}
<info for first moving reference frame>
add_reference_frame {name2}
<info for second moving reference frame>
add_reference_frame {name3}
<info for third moving reference frame>
end
Reference Frame
Listing D.1 shows an example reference_frame description.
Listing D.1. Data file for a vehicle body.
parsfile
set_euler_angles yaw_pitch_roll
; Set 6 names of variables in ERD file with XYZ, Roll, Pitch, Yaw
set_x_name Xo
set_y_name Yo
set_z_name Zo
set_pitch_name Pitch
set_roll_name Roll
set_yaw_name Yaw
The keyword add_reference_frame has the dual effect of starting the scope of a
new reference frame and ending the scope of the previous one. Until the first occurrence,
inputs associated with a reference frame will have unpredictable results. It also assigns a
name to the frame. In the example, the name is vehicle sprung mass.
Each reference frame must have a unique name.
The keyword set_euler_angles is used to specify the type of transformation used.
There are two options: yaw_pitch_roll (used for vehicle sprung mass reference
frames) and yaw_roll_pitch (used for rolling wheel reference frames).
The next six keywords in Listing D.1 are used to specify ERD file short names, and
therefore their values are strings of text. White space between the keyword and the short
name is ignored by the animator, and then the next eight characters are taken literally,
including spaces. However, if the line ends before eight characters are read, the animator
pads the short name with spaces until it is eight characters long. The 6 variables from the
ERD file define the position and orientation of the reference frame. All six are optional.
If not specified, the animator uses a value of zero for that variable.
Within the scope of each moving frame, you should specify one or more objects. The
keywords add_wheel and add_part have the effect of starting the scope of a new
object. They also have the effect of ending the scope of the previous object. However,
they do not affect the scope of the current moving reference frame. In the example listing,
descriptions of parts and wheels are contained in other PARSFILEs, identified with
pathnames following the parsfile keyword.
Parts
There are four properties that can be set for a part: a name, a list of XYZ coordinates,
line thickness, and color. Listing D.2 shows an example PARSFILE containing a
complete part description.
Listing D.2. Part data description
parsfile
add_part hood
set_Color blue
set_coordinates
-0.6273 -0.7344 0.8721
-0.5355 -0.4131 0.8874
-0.4896 -0.0000 0.9027
-0.5355 0.4131 0.8874
-0.6273 0.7344 0.8721
0.0000 0.7191 0.7803
0.5202 0.6579 0.6732
0.6426 0.2601 0.6885
0.6579 -0.0000 0.6885
0.6579 -0.2601 0.6885
0.4590 -0.6885 0.7038
0.0000 -0.7191 0.7803
-0.6273 -0.7344 0.8721
end_coordinates
set_scale_x 1
set_scale_y 1
set_scale_z 1
set_offset_x 0
set_offset_y 0
set_offset_z 0
end
It is sometimes convenient to use the same part in more than one reference frame.
Therefore, the name is not necessarily unique. The part name is used only to make the
PARSFILE more readable, and possibly to provide more detailed error messages in
future versions.
The color and line thickness default to values of black and 1, respectively. Therefore, the
commands set-line-thickness and set_color are optional. There is no default
set of coordinates, so the list must be provided. The list of coordinates begins with a line
containing the keyword set_coordinates. Each following line should contain an X,
Y, and Z coordinate, separated by white space, until the list ends with a line containing
Wheels
For a wheel, there are six properties that can be set: name, radius, thickness, line-
thickness, and color. All properties except the name have a default value, and therefore,
the commands shown below add_wheel are optional. It is likely that the same wheel
definition will be used several times, and therefore, the name is not necessarily unique.
Listing D.3. Wheel data set.
parsfile
add_wheel Black wheel with 0.3 m radius
set_color black
set_num_points 10
set_radius 0.3
set_thickness 0.2
end
The six keywords for setting offsets and scale factors can also be specified for a wheel. A
common application for vehicle animation is to use the set_offset_y keyword to
locate wheels laterally on an axle.
Grid
The animator will draw a grid fixed in the global reference frame. If not specified, then
there is no grid. It is added with the command add_grid, as shown in Listing D.4.
set_min_y 0
set_max_y 500
set_interval_x 10
set_interval_y 5
end
Camera View
The viewing of a scene is controlled by the locations of two points: the camera and look
point. Listing D.5 shows how the camera view is set.
Listing D.5. Camera data set.
parsfile
set_focal_length 0.05
set_camera_reference_frame global
set_camera_point_x 100
set_camera_point_y 10
set_camera_point_z 1
set_focal_length 0.05
set_look_point_x -2
set_look_point_y 0
set_look_point_z 1
end
File Types
Every time a new run is made from the Runs screen, six files are created.
Table E.1. Standard files created when a simulation is run.
Name Location Creator Description
Simfile Programs SGUI Batch control file.
<id>.PAR Runs SGUI List of parameters, read as input by program.
<id>.LPO Runs Program List of parameters, written as output by program.
Also contains initial conditions. Can be used to
repeat a run.
<id>.LPF Runs Program List of parameters and final conditions, written
as output by program. Can be used to continue a
run.
<id>.ERD Runs Program Header for ERD file, needed by plotter and
animator programs.
<id>.BIN Runs Program Numerical values of output variables, stored in
binary form.
One file always has the same name, Simfile, and the other five all have the same base
name— the current ID number displayed in the upper-corner of the Runs screen.
Simfile
Simfile is a batch control file. When a simulation program starts, it looks for the
existence of Simfile. If the file is not found, the program will prompt you for an input
file name. If the file is found, the program obtains all necessary input and output file
names from Simfile. An example Simfile is shown below.
Although it is a convention in CarSimEd to use the same root name for all files, the
individual simulation programs are capable of creating any names allowable under the
file operating system.
Notice that the names in Simfile are full pathnames. The individual files can be located
anywhere on the computer.
Whenever you click the Run button, a new Simfile is created in the same folder as the
simulation program (by convention, this is the folder Programs). If a file with that name
already exists, it is overwritten.
PAR Files
The PAR file lists the input parameters for the simulation program.
When you click the Run button, a new PAR file is created in the folder containing the
Runs library (i.e., the Runs.tbk file). The PAR file contains information from the Runs
screen. As shown in the following example, the file is relatively short.
Listing E.2. Example PAR file.
PARSFILE
parsfile C:\CARSIMED\VEHICLES\COMBOS\8.par
parsfile C:\CARSIMED\INPUT\PATH\28.par
parsfile C:\CARSIMED\INPUT\BRAKING\58.par
parsfile C:\CARSIMED\PLOT\428.par
parsfile C:\CARSIMED\PLOT\433.par
parsfile C:\CARSIMED\PLOT\439.par
parsfile C:\CARSIMED\comp_par\9.par
stopt 12
speed 100
testid 430
title Lane change (3a/2a combo) F
END
Each link seen in the Runs screen is represented with a full pathname to an existing data
file. In the above example, the data from the selected vehicle is contained in the file 8.par,
in the directory C:\CARSIMED\VEHICLES\COMBOS.
Keywords
The files read by the simulation programs in CarSimEd are scanned for input data.
Parameters are identified by keywords.
Indexed Keywords
Many of the parameters in the CarSimEd models are applied twice, for the front and rear
axles. For example, the same data screen is used to describe a tire, no matter where it is
located in the vehicle. The location of the tire is specified with the additional keyword
IAXLE.
Parameter values such as an axle mass are written in the PARSFILE with numerical
indices, e.g., MUS(2) indicates the unsprung mass of axle 2. Tabular data are written
with keywords in front of the table to indicate which axle is associated with the table.
* PARAMETER VALUES
* FINAL CONDITIONS
END
* PARAMETER VALUES
* FINAL CONDITIONS
END
TITLE Suspension
* PARAMETER VALUES
* FINAL CONDITIONS
END
Introduction
It is often said that an automobile is controlled by forces developed in just four small
patches, each the size of a man’s hand, where the tires contact the road. In the 1940’s and
1950’s, researchers such as Lanchester, Olley, Rieckert and Schunk, Rocard, and Segel
developed an understanding of how tire forces are generated and affect the steering and
braking behavior of the vehicle [1]. Segel and other early researchers in the 1950’s
developed linear equations by hand, and solved them using frequency-domain analysis
[2]. Segel’s classic model reduced the vehicle behavior to its essence, with a minimal
number of parameters and variables and just three degrees of freedom (DOF).
From the 1960’s to the early 1980’s, the proliferation and improvement of analog and
then digital computers led to a new phase of vehicle modeling, in which many
automotive simulation programs were developed and refined by research engineers. The
new computer models were more complex, typically with 10 to 20 DOF [3, 4]. The
additional complexity accounted for nonlinearity and more detailed suspension
kinematics. Equations were still formulated by hand, and coded by hand in computer
language for numerical solution in specialized programs. The more detailed models
involved many years of development, not counting the efforts spent in validation and
verification.
Starting with the mid-1980’s, engineers started using newly available multibody
simulation programs to describe the model geometrically, “assembling” the system model
from components [5, 6]. Modelers no longer had to derive equations, and therefore, the
efforts and potential errors associated with deriving equations and coding them were
nearly eliminated.
Automotive manufacturers and many others now use multibody programs to perform
simulations of automotive handling and braking behavior [7]. The tendency has been to
include nearly all moving parts in the suspensions and steering systems. Inputs include
coordinates of most joints between parts, and mass properties of individual parts. In
contrast, the earlier custom programs were more systems-oriented, involving generalized
movements of wheels relative to the body, or, even more simply, movements of the body
relative to the ground. The advantage of the detailed multibody programs for
development engineers is that they can fine-tune designs by modifying component-level
— 204 —
Appendix F 3D Vehicle Handling Model
details. However, the detailed models also have some disadvantages. Engineers who do
not work for car manufacturers may not have access to the geometric design data. Even
when the full set of input parameters is assembled, the programs run slower than custom
programs that are less complex. (With some multibody programs, the run-time
performance is much slower even for comparable models. For models with a complexity
similar to the one presented in this appendix, a numerical multibody programs might be
50 times slower than a hand-written program specialized for a specific vehicle dynamics
model.)
The creation of CarSimEd was motivated in part by the thought that something has been
lost during the evolution from the older models to the newer. The insight and expertise
that underlay the old hand-written models are often lacking in modern multibody models.
Although the modern models are often highly detailed, their accuracy in predicting
vehicle response to steering and braking inputs is sometimes not as good as that obtained
40 years ago. This appendix is intended to convey some of the ideas and concepts used in
earlier vehicle models for applications using modern multibody programs.
The model that will be described was implemented using the AutoSim multibody code
generator [7, 8]. AutoSim generates equations symbolically, performs coding
optimizations, and generates a custom simulation program. The simulation program
obtained by AutoSim has run-time performance comparable with (and usually better
than) that of a hand-coded program based on the same model.
Nomenclature
Symbols and unconventional functions that are used in this appendix are listed below.
Subscripts for wheels and suspensions are ommited when an equation applies to a single
wheel. Vectors are shown in bold face characters.
The global inertial frame is denoted by N (for Newtonian frame) and has unit vectors nX,
nY and nZ. The convention of ISO 8855 is followed, in which nZ is “up” (opposite to the
direction of gravity) [2].
The terms nominal and nominal configuration refer to a state of the multibody system in
which all position state variables are zero.
The abbreviation DOF refers to the term degree of freedom or degrees of freedom,
depending on the context.
When a body is added to the multibody system, its allowable motion is defined relative to
a body already in the model. (N is considered a body for this purpose.) The new body is
said to be a child of the previously existing body, and the previously existing body is said
to be the parent of the new body.
Symbols
α dynamic lateral slip angle with delay due to relaxation length (rad)
CTC center of tire contact (point)
Multibody Functions
dir(r) direction of vector r: r/|r|
pos(P1, P2) position vector going from point P2 to point P1
f2 f1 dV
x • ∑f i = x • M dt
dV
dV
r2 dt
r1 y • ∑f i = y • M dt
dω
y dω
f4
r4 r3 f3 dt z • ∑ ri × f i = z • I zz
mass dt
center
x
Figure 1. Primary factors influencing vehicle system motions.
A vehicle is also subject to aligning moments in the tire contact patches. The aligning
moment has a negligible direct effect on the vehicle yaw, but, due to steering compliance,
it can be a significant factor in determining the all-important shear forces. Another
behavior that influences the vehicle response involves the rotary motion of the car body
in roll and pitch. Mechanical energy is transfered as the vehicle pitches and rolls, and
these motions contribute to the vehicle transient response.
Besides the tire/road interactions, the only forces and moments acting on the vehicle are
due to aerodynamic effects. They have a secondary influence, but are relatively easy to
add to multibody models.
WCLR
WCRR W0LR
z WCLF
W0RR y
x WCRF W0LF
W0RF
z
Direction of suspension travel
y
Lwb Ltk
z
Hwc,r x Hwc,f Hrc
Ignoring, for the moment, the influence of compliances in the suspension and steering
system linkages, each wheel center of a real vehicle follows a trajectory through 3D
space, relative to the car body, as the suspension moves up and down. Due to the
kinematics of the suspension, the trajectory is usually not purely vertical. For most
vehicles, the wheels move out laterally as the suspensions are compressed, such that track
width increases with suspension compression. The wheels also move out longitudinally,
such that wheelbase increases with suspension compression.
The direction of the wheel trajectory (relative to the main body) determines how tire
shear forces in the ground plane are transmitted to the vehicle body through reaction
forces in the suspension linkages. In hand-written equations, roll and pitch moments due
to suspension reaction forces have been written with coefficients with names such as anti-
roll, anti-pitch, anti-dive, anti-squat, and jacking [3,4].
The multibody model accounts for the interaction between tire shear forces and roll and
pitch moments so long as the movement is constrained to follow the proper path. A
simple approximation is to assume the movement is in a straight line, as shown in Figure
2. Using an axis system based in the vehicle sprung mass (s x, sy, sz), the directions of the
movements of the four wheels are:
2Hrc,f 2H
left-front: dir(s z + Ltk,f sy + R p,f sx)right-front: dir(s z – L rc,f sy + Rp,f sx)
tk,f
2H 2H
left-rear: dir(sz + L rc,r sy – Rp,r sx)right-rear: dir(s z – L rc,r sy – Rp,r sx) (1)
tk,r tk,r
where secondary subscripts f and r indicate parameters for the front and rear.
In the basic suspension analyses, the roll kinematics are analyzed to define a point called
a roll center [9]. For compatibility with this convention, the inclination of the wheel
movement in the roll direction is defined by the ratio of the roll center height to the half-
track distance. For pitch, a single coefficient (Rp) is used.
where Rs is a coefficient that defines the mechanical advantage of the spring relative to
the wheel. The spring exerts a force Fs on the lower control arm. Some of the force is
reacted at the connection to the body, and some is reacted at the wheel by the vertical tire
force, as shown in the figure. Conservation of work requires that the change in force at
the wheel center multiplied by its movement must be equal to the change in spring force,
multiplied by its change in compression. Thus, the effect of the spring at the wheel is Rs
Fs. A similar analysis can be made for the damper, using a different ratio Rd.
spring force = Fs
displacement at
spring = Rs ∆
non-working
reacton force displacement
at wheel = ∆
working force at
wheel = Rs Fs
Figure 3. Mechanical advantage of suspension component.
AutoSim, the force is added with a command called add-line-force, with arguments
shown in Table 1 for the spring force.
A similar treatment is made for the shock absorber, using the derivative of the suspension
displacement, the damper mechanical advantage Rd, and a functional relation between
damper force and stroke rate. In general, different geometric ratios are needed for the
suspension spring, the damper, and the bump stop. Different ratios are also used for front
and rear, but the same ratios are used between left and right wheel on the same axle.
Table 1. Adding a spring force to the model.
Property Value Description
Point 1 P1: Point on sprung mass Point on which force acts
Point 2 P2: Point on wheel Point in body taking the reaction force
Direction sz Direction of force vector
Magnitude Rs Fs(Rs sz • pos(P1, P2)) Magnitude of force vector
The effect of the anti-sway bar is modeled with a linear spring between the two wheels
linked by the bar. The two points in the add-line-force command are on the two
wheels, the direction of the force is sz, and the magnitude is a spring rate multiplied by
the vertical movement difference between the two points.
Tires
The primary challenge in developing a valid vehicle simulation model is to accurately
predict the tire forces. Although the multibody program handles the kinematics and
dynamics of the rigid bodies in the system, it is usually necessary to use an external
(user-defined) routine to compute tires forces and moments based on kinematic inputs.
Many tire models (algorithms) exist for calculating tire forces [10], and most require the
same inputs: vertical load (F z), longitudinal slip (κ), lateral slip (α), and inclination angle
(γ). (Some models also require surface friction and wheel speed.) As outputs, they
calculate longitudinal force (Fx), lateral force (Fy), and aligning moment (Mz).
To properly determine the tire forces and factor them into the vehicle model, it is
necessary to (1) define a point where the tire forces act on the multibody model; (2)
determine an expression for the vertical tire force F z that is required as an input for the
tire model; (3) establish the vector directions for the X and Y components of the tire
shear force relative to the vehicle model; (4) determine expressions for the kinematical
inputs required by most tire models (longitudinal slip, lateral slip, and inclination angle);
and (5) use a tire model to determine the magnitudes of F x, Fy, and Mz.
delay of the forces is primarily linked to the spatial distance covered by the tire [11]. The
earliest approximation of this behavior was to treat the delay as a first-order lag. The
characteristic parameter is called relaxation length, and is similar to a time constant,
except that it has units of length rather than time. The response to steering is delayed
sufficiently that the lag interacts with the dynamics of the vehicle system at low speed
[12]. The lag for longitudinal slip is usually neglected.
Two methods are commonly used for including the tire lag in a vehicle model: (1) use a
tire model with the dynamics built in, or (2) use a static (steady state) tire model with a
separate filter to account for the lag. The second approach is preferable because it offers
two practical advantages. First, it allows us to use any static tire model from the
literature, independently of the method used to introduce lag. Second, it simplifies the
calculation of the kinematical variables used as inputs to the tire model. Thus, we will
introduce lag into the slip angle, such that the instant response calculated for the lagged
slip angle yields the lagged side force and aligning moment.
wz
γ
WC
rz
R W0
CTC vy
VC vx
tz = rz
Fx Fy
Mz tx ty
Fz
Due to the simplified suspension kinematics described earlier, the rigid bodies
representing the wheels do not steer or incline relative to the main vehicle body. Thus,
they have the same roll and pitch angles relative to the ground as the main body. The
coordinate system origin is such that the coordinates of point CTC are nominally zero.
However, for an arbitrary vehicle configuration, the coordinates are:
Xc = θ R Yc = 0 Zc = Hwc – R (3)
where the index in M i indicates either the mass supported by the front or rear tires. This
definition of F z establishes the force to be the equilibrium value Mi g/2 when the vehicle
is in the nominal configuration. The use of the max function prevents the magnitude of
the force from going below zero.
Tire Axes
The tire X and Y axes, lie in the plane of the road and are parallel to unit-vectors tx and ty
shown in Figure 4. In our multibody model, we do not have the true wheel orientation
because of the simplified suspension kinematics. Thus, the tire X and Y axis directions
are defined as:
tx' = s y × rz ty' = rz × t x' (5)
where δ, the steer angle of the wheel plane relative to the vehicle body, is defined as:
δ = δs + δ k + δ c (7)
The first term, δs, accounts for the input of the driver and is typically defined with an
equation such as the following:
δ
δs = str(Rsw ) (8)
sg
where str is a table-lookup function that calculates steering angle as a nonlinear function
of geared-down steering input. Different functions would typically be used for the left
and right sides, to account for Ackerman geometry.
Note: The CarSimEd version of this model uses a simple gear ratio to
determine steer of the road wheel due to driver input:
δ
δs = Rsw
sg
The second term in eq. 7, δk, sometimes called bump steer, accounts for steer due to
suspension kinematics. It would typically be calculated using a nonlinear table-function
relating toe to suspension compression. Toe is defined as positive with the wheels
steering inward. Therefore, δκ equals toe for the wheels on the right-hand side of the
vehicle, and δk equals negative toe on the left side. The third term in eq. 7, δc, accounts
for compliance in the suspension and steering system. It is typically calculated using
measured linear coefficients that define the amount of steer caused by unit changes in Fx,
Fy, and Mz.
Note: In CarSimEd, toe and compliance effects are handled with linear
coefficients. Table lookups are used in the more comprehensive
commercial CarSim models.
ω R – vx
κ= s v (10)
x
Under this definition of longitudinal slip, κ goes from –1 at full braking lock-up, to zero
for the free-rolling condition, to +∞ for spinning the wheel when the vehicle is at rest or
moving sideways (vx = 0). To avoid numerical problems, κ can be calculated with a
hand-written function that checks for conditions of vx approaching zero.
The wheel spin, ωs, is an auxiliary state variable whose derivative is defined as:
ωs
Mdy –Mby(pin) – R Fx
dωs |ωs|
dt = (11)
Is
(In AutoSim, the commands add-state-variable and add-equation are used to
insert auxiliary equations such as eq. 11.) The sign of ωs is used to ensure that the
braking torque (Mby) always opposes the wheel spin. The brake torque itself is a table-
lookup function (Mby) of a variable, pin, that is the input from the brake pedal. To avoid a
divide-by-zero error, the computer function sign is actually used in the model, rather
than the ratio of ωs/|ωs|.
α = tan–1(τ) (12)
Recall that tire relaxation length adds a lag to the lateral slip angle. A method described
by Bernard [13] is used, in which a state variable is added for each wheel and defined
with a first-order differential equation:
dτ |vx| vy 1
dt = Lrelax [ |vx| – τ ] = Lrelax [vy – |vx| τ] (13)
The absolute value of vx is used in eq. 13 to maintain continuity in case the vehicle spins
out and vx assumes a negative value.
Inclination of the wheel plane relative to the ground is the sum of the roll (relative to the
ground at point CTC) and the roll of the wheel relative to the vehicle:
γ = sin–1(sy • rz) + φk + φc (14)
The kinematical term, φk, is typically a table-lookup function of camber vs. suspension
compression for each axle. Camber is defined as positive when the wheels lean out at the
top. Thus, for wheels on the right-hand side, φk equals camber, and on the left side, φk
equals negative camber. The compliance term, φc, can usually be neglected. If not, it is
defined by a linear compliance coefficient that relates change in wheel inclination to a
unit change in Fy.
(K ) + (K κ )
2 2
T
Fy eff Fx
K= (19)
µFZ
Fy = –ν Teff F F0
Sequence of Calculations
The vehicle simulation is run by numerically integrating a set of ordinary differential
equations. The model described above has 18 degrees of freedom (DOF): ten for the five
rigid bodies (six for the main body, and one for each wheel), and the other eight for the
auxiliary state varialbes ωs and τ that are added for each wheel. At the beginning of each
time step, the values of all of the state variables are known, including the ωs and τ
variables. The tire factors for the four wheels are then calculated in the following
sequence:
1. Compute terms that depend only on the state variables: Fz, γ, and κ. If camber
compliance is included, use the tire forces from the previous time step to compute
γ.
2. Compute Fx, Fy, and Mz with a static tire model.
3. Compute wheel steer, including the effect of steer compliances coupled with tire
actions Fx, Fy, and Mz.
4. Determine the directions of the tire X and Y axes.
5. Calculate terms that depend on knowledge of the directions of the tire axes:
a. Apply forces Fx and Fy to the multibody model at the point CTC.
b. Calculate derivatives of ωs and τ.
Figure 5 compares time histories for a step-steer input at three vehicle speeds, as
described in the benchmark. The runs start at -3 seconds with the vehicle in its nominal
configuration. The first plot shows how both models bounce a little as they go into static
equilibrium. The other three plots cover the range of 0 to 5 seconds. The lateral
acceleration and yaw rate plots show close agreement between the detailed and 18-DOF
models, but the plot of roll angles shows a difference of 0.1° at the steady state. This is
perhaps due to the difference between the full kinematical representation of the
suspension in the detailed model and the simplified one in the 18-DOF model.
-2
1.2x10 -1
-2 Front
10 -2
-3
8x10 -3
10 m/s
-3
6x10 -4
Rear
-3
20 m/s
4x10 -5
-3
2x10 -6 30 m/s
0 -7
-3 -2 -1 0 0 1 2 3 4 5
Time - sec Time - sec
Vehicle lateral acceleration - g's Roll - deg
0 0
-.2
-1.5 30 m/s 18 DOF
-.25 30 m/s 18 DOF
Detailed Detailed
-.3 -2
0 1 2 3 4 5 0 1 2 3 4 5
Time - sec Time - sec
Closure
An 18-DOF model was presented that is intended to capture the essential braking and
handling behavior of an automobile with independent suspensions on a flat surface. It
was described for the engineer who has a multibody program and wants a working
vehicle dynamics model. Unlike many other vehicle multibody models, this has a simple
generic representation of suspension kinematics that can represent almost any kind of
independent suspension. A known benchmark vehicle model was run with the 18-DOF
model and shown to provide nearly identical results in comparison with the fully detailed
multibody description.
Although the Iltis model description provides a valuable resource for verifying new
computer models, it lacks two important features of real vehicles: (1) steering compliance
(due to bushings and bending of metal), and (2) tire relaxation length.
References
1. Segel, L., “Keynote Address: Some Reflections on Early Efforts to Investigate the
Directional Stability and Control of the Motor Car,” Transportation Systems, ASME
Publication AMD, Vol. 108, 1990.
2. Segel, L., “Theoretical Prediction and Experimental Substantiation of the Response of the
Automobile to Steering Control,” The Institute of Mechanical Engineers, London, 1956.
3. Jindra, F. “Mathematical Model of Four-Wheeled Vehicle for Hybrid Computer Vehicle
Handling Program,” National Highway Traffic Safety Administration, DOT HS 801800,
1976
4. Wade Allen, Henry T. Szostak et. al., Vehicle Dynamic Stability and Rollover, National
Highway Traffic Safety Administration, DOT HS 807 956, June 1992.
5. Orlandea, N. and M.A. Chace, “Simulation Of A Vehicle Suspension With The Adams
Computer Program,” SAE Paper No. 770053, 1977.
6. Antoun, R. J. et. al., “Vehicle Dynamic Handling Computer Simulation – Model
Development, Correlation, and Application Using ADAMS,” SAE Paper No. 860574,
1986
7. Kortüm,W. Sharp, R.S., eds., Multibody Computer Codes in Vehicle System Dynamics,
Lisse, Swetz and Zeitlinger, 1993.
8. Sayers, M.W., “Symbolic Vector/Dyadic Multibody Formalism for Tree-Topology
Systems.” Journal of Guidance, Control, and Dynamics, Vol. 14, No. 6, Nov/Dec 1991,
1240-1250.
9. Gillespie, T. D., Fundamentals of Vehicle Dynamics, SAE, Warrendale, PA, 1992
10. Pacejka, H., Sharp, R.S. “Shear Force development by Pneumatic Tyres in Steady State
Conditions: A Review of Modelling Aspects” Vehicle System Dynamics, 20 (1991), pp.
121-176, Eqs. 88-93.
11. Von Schlippe, B., Dietrich, R., “Das Flatten Eines Pepneuten Rades (Shimmying of a
Pneumatic Wheel),” Bericht 140 der Lilienthal–Gesellschaft fur Luftfahrtforschung
(Translated in NACA TM 1365).
12. Loeb, J.S. et. al., “Lateral Stiffness, Cornering Stiffness and Relaxation Length of the
Pneumatic Tire,” SAE Paper No. 900129, 1990.
13. Bernard, J. E., Clover, C. L., “Tire Modeling for Low–speed and High–speed
Calculations,” SAE Paper No. 950311, 1995
14. Sayers, M.W., and Mink, C., “A Simulation Graphical User Interface for Vehicle
Dynamics Models,” SAE Paper No. 950169, 1995.
15. H. Radt, “Tire Data Treatment,” Chapter 14 of Race Car Vehicle Dynamics, W.F.
Milliken and D.L. Milliken, SAE, 1995. pp. 473-487.
Channel Names
0. Time : Time - sec
1. AAy_LF : LF wheel angular acceleration - rev/s2
2. AAy_LR : LR wheel angular acceleration - rev/s2
3. AAy_RF : RF wheel angular acceleration - rev/s2
4. AAy_RR : RR wheel angular acceleration - rev/s2
5. Alpha_LF: LF wheel slip angle, without lag - deg
6. Alpha_LR: LR wheel slip angle, without lag - deg
7. Alpha_RF: RF wheel slip angle, without lag - deg
8. Alpha_RR: RR wheel slip angle, without lag - deg
9. AVx : Body roll rate - deg/s
10. AVy : Body pitch rate - deg/s
11. AVy_LF : LF wheel angular velocity - rev/s
12. AVy_LR : LR wheel angular velocity - rev/s
13. AVy_RF : RF wheel angular velocity - rev/s
14. AVy_RR : RR wheel angular velocity - rev/s
15. AVz : Vehicle yaw rate - deg/s
— 223 —
Appendix G Model Output Variables
Channel Names
0. Time : Time - sec
1. AVy : Body pitch rate - deg/s
2. Az : Vehicle vertical acceleration - g's
3. Fd_LF : LF damping force - N
4. Fd_LR : LR damping force - N
5. Fs_LF : LF spring force - N
6. Fs_LR : LR spring force - N
7. Fz_LF : LF tire vertical load - N
8. Fz_LR : LR tire vertical load - N
9. Pitch : Body pitch - deg
10. Vz : Vehicle vertical velocity - km/h
11. Xo : X position of car origin - m
12. X_CG : X position of vehicle CG - m
13. X_WLF : X coordinate of LF wheel center - m
14. X_WLR : X coordinate of LR wheel center - m
15. Zo : Z position of car origin - m
16. Zroad : Zroad - m
17. Z_CG : Z position of vehicle CG - m
18. Z_WLF : Z coordinate of LF wheel center - m
19. Z_WLR : Z coordinate of LR wheel center - m
Channel Names
0. Time : Time - sec
1. Bx : X movement of wheel center - mm
2. By : Y movement of wheel center - mm
3. Bz : Z movement of wheel center - mm
4. Gamma(L): Inclination angle (L. side) - deg
5. Steer(L): Steer angle (L. side) - deg
6. Q(1) : Abs. X rot. of R1p - deg
7. Q(2) : Z rot. of R1 rel. to R1p - deg
8. Q(3) : X rot. of WCpp rel. to R1 - deg
9. Q(4) : Y rot. of WCp rel. to WCpp - deg
10. Q(5) : Z rot. of WC rel. to WCp - deg
11. Q(6) : Abs. X rot. of R2p - deg