• No results found

IPG_CarMaker Reference Manual

N/A
N/A
Protected

Academic year: 2021

Share "IPG_CarMaker Reference Manual"

Copied!
325
0
0

Loading.... (view fulltext now)

Full text

(1)

Cover

Reference Manual

Version 2.1

(2)

The information in this document is furnished for informational use only, may be revised from time to time, and should not be construed as a commitment by IPG Automotive GmbH. IPG Automotive GmbH assumes no responsibility or liability for any errors or inaccuracies that may appear in this document.

This document contains proprietary and copyrighted information and may not be copied, reproduced, translated, or reduced to any electronic medium without prior consent, in writ-ing, from IPG Automotive GmbH.

© 1999 - 2006 by IPG Automotive GmbH – www.ipg-automotive.com All rights reserved.

FailSafeTester, CAR, CONTROL, DRIVER, ENGINE, GRAPH, IPG-KINEMATICS, IPG-LOCK, IPG-MOTORCYCLE, IPG-MOVIE, IPG-ROAD, IPG-ROADDA-TA, IPG-TIRE, IPG-TRAILER, IPG-TRUCK are trademarks of IPG Automotive GmbH.

(3)

Contents

1

Introduction

9

1.1 General Remarks . . . 9

1.2 CarMaker Axis Systems . . . 10

1.3 CarMaker Geometry Input . . . 12

Conventions defining CarMaker Objects . . . 12

Guidelines defining CarMaker Objects . . . 12

1.4 CarMaker Naming Conventions . . . 14

CarMaker Subsystems . . . 14

Classification of Quantities . . . 15

Meaning of Abbreviations . . . 16

1.5 CarMaker Directory Structure . . . 18

1.6 About Parameter Files and Datasets . . . 20

Database Syntax . . . 20

FileIdent, Description and FileCreator . . . 20

Model Kind . . . 21

CarMaker Configuration Files . . . 21

1.7 ‘SimParameters’ File . . . 22

Application Parameters of CarMaker/HIL . . . 22

CarMaker Environment Parameters . . . 23

Data Storage . . . 23

Maneuver Control . . . 24

(4)

End of test run . . . 26

1.8 ‘ECUParameters’ File . . . 27

1.9 ‘OutputQuantities’ File . . . 28

1.10 General Parameters for TestRun Files . . . 29

1.11 Software Interfaces . . . 30

2

Driving Maneuvers

32

2.1 Overview . . . 32

2.2 Longitudinal Dynamics Maneuvers . . . 34

Speed Control (VelControl) . . . 34

2.3 Lateral Dynamics Maneuvers . . . 35

2.4 Special Maneuvers . . . 36

The first Mini Maneuver (Duration 0 Seconds) . . . 36

The last Mini Maneuver (Duration 0 Seconds) . . . 36

2.5 User Accessible Quantities . . . 37

3

Vehicle Body

38

3.1 Overview . . . 38

Configuration of the vehicle model . . . 39

Finding the equilibrium state . . . 39

Vehicle Interface . . . 40

Interaction with other modules . . . 40

3.2 General Parameters . . . 41

3.3 Mass Geometry . . . 43

Overview . . . 43

Parameters . . . 43

3.4 User Accessible Quantities for Vehicle Body . . . 45

4

Suspension Force Elements

46

4.1 External Suspension Forces . . . 47

4.2 Springs . . . 48

4.3 Dampers . . . 50

4.4 Buffers / Bumpers . . . 53

(5)

68

5.2 Kinematics and Compliance . . . 70

5.3 Kinematics Models . . . 72

“Linear” and “Linear2D” . . . 72

“MapNL” . . . 74

“SetZero” . . . 76

5.4 Compliance Models . . . 77

“CoeffConstFr1” and “CoeffConstFr2” . . . 77

“SetZero” . . . 79

“CoeffLin1DFr1” and “CoeffLin1DFr2” . . . 80

“DisplaceLinFr1” and “DisplaceLinFr2” . . . 81

Example: Compliance . . . 83

6

Aerodynamics

84

6.1 Overview . . . 84 6.2 General Parameters . . . 86 6.3 Models . . . 87 ‘Coeff6x1’ . . . 87

7

Steering System

88

7.1 Overview . . . 88 Steer by Angle . . . 90 Steer by Torque . . . 91

7.2 Steering System Parameters . . . 92

General Steering System Parameters . . . 92

Steering System ’Classic’ Parameters . . . 92

7.3 User Accessible Quantities for Steering Systems . . . 93

7.4 Steering System Software Interface . . . 94

8

PowerTrain

95

8.1 Overview . . . 95

Interface Powertrain – Vehicle . . . 95

PowerTrain Subsystems . . . 96

Interfaces of Powertrain Subsystems . . . 97

General Parameters . . . 98

8.2 Powertrain ’Generic’ . . . 99

Overview . . . 99

General Parameters . . . 103

(6)

Model ‘Generic’ Coupling Parameters . . . 108

8.3 Engine Torque . . . 110

Engine Torque Model ‘Mapping’ . . . 111

Engine Torque Model ‘Linear’ . . . 117

Engine Torque Model ‘DVA’ . . . 118

Engine Model Software Interfaces . . . 119

8.4 Clutch . . . 120

Clutch Model ‘Manual’ . . . 121

Clutch Model ‘Converter’ . . . 124

Clutch Model ‘DVA’ . . . 127

8.5 Gear Box . . . 128

GearBox Model ‘Manual’ . . . 129

GearBox Model ‘DVA’ . . . 130

8.6 User Accessible Quantities for PowerTrain . . . 131

8.7 Powertrain Software Interface . . . 132

9

Brake System

135

9.1 Overview . . . 135

Brake Interface . . . 136

9.2 Brake System Software Interface . . . 137

9.3 General Brake System Parameters . . . 138

9.4 User Accessible Quantities . . . 140

General User Accessible Quantities for Brake Systems . . . . 140

9.5 Brake System PresDistrib . . . 142

Overview . . . 142

Brake System PresDistrib Parameters . . . 143

9.6 Brake System HydESP . . . 144

Overview . . . 144

Brake circuit configuration . . . 147

Brake booster . . . 149

Master Cylinder . . . 156

Wheel brakes . . . 158

(7)

Proportional Solenoid Valves . . . 172

Dynamic Solenoid Valves . . . 174

Inlet Valves with check valve . . . 175

Pilot valve with check valve and pressure limiting valve . . . 179

Suction valve . . . 181

Check Valve of the Low Pressure Accumulator . . . 182

User Accessible Quantities for Brake Module ‘HydESP’ . . . . 186

10

Tire

188

10.1 Overview . . . 188

Tire Interface . . . 190

Tire load (normal force) . . . 191

Tire Model Computations . . . 192

10.2 General Tire Parameters . . . 193

10.3 Tire Model RT-Tire . . . 194

Rolling Resistance . . . 196

Importing Tire Measurements . . . 196

10.4 Tire Model Magic Formula . . . 197

The basics of Magic Formula . . . 197

Tire Description . . . 199

Scale factors . . . 200

Effective tire rolling radius . . . 204

Slip computation . . . 206

Longitudinal force (pure longitudinal slip): . . . 207

Lateral force (pure side slip): . . . 210

Aligning Torque (pure side slip) . . . 213

Longitudinal Force (combined slip) . . . 218

Lateral force (combined slip) . . . 220

Aligning Torque (combined slip) . . . 223

Overturning Couple . . . 225

Rolling Resistance Moment . . . 226

Transient Behavior . . . 227

Gyroscopic couple . . . 228

Friction coefficient . . . 230

11

Trailer Model

232

11.1 Overview . . . 232

11.2 General Trailer Parameters . . . 233

(8)

Overview . . . 234

Parameters . . . 235

11.4 Suspension Force Elements . . . 237

Spring . . . 237

Damper . . . 237

Stabilizer . . . 238

11.5 Suspension Kinematics and Compliance . . . 239

Overview . . . 239

Sleeve Axle . . . 239

Crank Axle . . . 240

Semi Trailing Arm Axle . . . 241

General Suspension Model Parameters . . . 242

Additional Parameters for Suspension Model “Sleeve” . . . 243

Additional Parameters for Suspension Model “Crank” . . . 243

Additional Parameters for Suspension Model “SemiTrailingArm” . . 244 Compliance . . . 245

11.6 Hitch . . . 247

Overview . . . 247

Additional Parameters for Hitch “Ball” . . . 249

Additional Parameters for Hitch “Trapez” . . . 249

Additional Parameters for Hitch “BallFric” . . . 250

Additional Parameters for Hitch “BallDamp” . . . 250

11.7 Brake System . . . 251

Overview . . . 251

Parameters . . . 251

Additional Parameters for Brake Model “Overrun” . . . 251

Additional Parameters for Brake Model “Overrun1” . . . 252

11.8 Aerodynamics . . . 253

11.9 User Accessible Quantities for Trailer . . . 254

General User Accessible Quantities: Trailer . . . 254

(9)

User Accessible Quantities: Car . . . 262

12.3 User Accessible Quantities: Power Train . . . 268

User Accessible Quantities for PowerTrain . . . 268

User Accessible Quantities for PowerTrain ‘Generic’ . . . 268

User Accessible Quantities for Module ‘Engine’ . . . 269

User Accessible Quantities for Module ‘Clutch’ . . . 269

User Accessible Quantities for Module ‘GearBox’ . . . 270

12.4 User Accessible Quantities: Steering Systems . . . 271

General User Accessible Quantities: Steering Systems . . . . 271

12.5 User Accessible Quantities: Brake System . . . 272

General User Accessible Quantities for Brake Systems . . . . 272

User Accessible Quantities for Brake Module ‘HydESP’ . . . . 274

12.6 User Accessible Quantities: Trailer . . . 275

General User Accessible Quantities: Trailer . . . 275

12.7 UAQ´s changed from CM 2.0 to CM 2.1 . . . 278

Appendix

281

A

Mini-Maneuver Command Language

282

A.1 Syntax . . . 282

A.2 Driving Maneuver Commands . . . 284

A.3 Direct Variable Access Commands . . . 285

A.4 Action Commands . . . 287

A.5 Logging Commands . . . 288

A.6 FailSafeTester Commands . . . 290

B

Traffic-Obstacles

291

B.1 Parameters and Quantities . . . 294

Motion of an Obstacle . . . 296

Output Quantities . . . 298

B.2 Functions, Types and Variables . . . 299

Obsts_New() - create a new obstacle management . . . 300

Obsts_ObstclNew() - create an new obstacle . . . 300

Obsts_iGetObstcl() - get obstacle from infofile . . . 300

Obsts_ObstclAdd() - add a new obstacle . . . 300

Obsts_ObstclGetInfo()-getsinformationaboutdefinedobstacle 301 Obsts_ObstclDelete() - delete an obstacle . . . 301

Obsts_EndOfInput() - no additional obstacles . . . 301

(10)

Obsts_Calc() - calculate the obstacle module . . . 303

Obsts_GetObstsAbs() - get absolute obstacle states . . . . 303

Obsts_GetObstsRel() - get relative obstacle states . . . 304

Obsts_ObstVecDelete() - free obstacle output vector . . . 304

Obsts_Delete() - free obstacle management . . . 304

Example: Using Obstalces “by Hand” . . . 305

B.3 CarMaker Interface . . . 306

Variables . . . 306

Obstacles_Init() - initailizes obstacle module . . . 306

Obstacles_New() - create obstalces . . . 306

Obstacles_Calc () - calculate obstacles . . . 306

Obstacles_Delete () - delete obstacles . . . 306

Obstacles_Cleanup() - cleanup obstacle module . . . 307

Examples: Using Obstacles by CarMaker . . . 308

B.4 Obstacle Utilityobstutil . . . 309

C

IPG-MOVIE

310

C.1 IPG-MOVIE-INFO – Meta Information in Geometry Files . . . . 310

D

Start Conditions

312

D.1 Overview . . . 312

E

Road-Obstacles and Markers

313

E.1 Description of Road-Obstacles . . . 313

Cylinders . . . 314

Beams . . . 315

Waves . . . 316

Cones . . . 317

E.2 Description of Markers . . . 318

Pylons . . . 319

Velocity Signs . . . 320

SideWind . . . 321

(11)

General Remarks

Chapter 1

Introduction

This is the CarMaker Reference Manual. It contains definitive informations about the usage of the different tools and modules bundled in the CarMaker software package.

1.1

General Remarks

CarMaker tries to keep as close as possible to conventions and naming of ISO 8855 1991, modified (or US English DIN 70000).

This applies amongst other issues to axis systems, kinematics of the sprung mass, forces and moments, suspension, vehicle response and wheels and tires.

All parameters and quantities are specified in SI-quantities unless otherwise stated: Table 1.1: SI Units used with CarMaker

Quantity Name Symbol

Time second s

Length meter m

Angle radian (one turn = 2*π) rad

Mass kilogram kg

Inertia kilogram meter sqared kg*m2

Force newton N

Torque newton meter Nm

Stiffness newton per meter N/m

(12)

CarMaker Axis Systems

1.2

CarMaker Axis Systems

In the virtual world of CarMaker different axis systems for different purposes are used. They are used to simplify calculation and parametrization for CarMaker objects (including signals and variables) and to be able to represent different points of views for CarMaker objects.

Frame Fr0

The CarMaker inertial axis system is calledFr0(pronounced: frame zero). This is the earth fixed origin of the ‘virtual world’.

Fr0 is defined as follows:

• (O) is the origin, (X), (Y), (Z) are the 3 axis. • (O, X, Y) is the horizontal driving plane (road). • (Z) is directed upwards (mathematically: ).

• The position of any point, if not mentioned explicitly otherwise, is expressed in Fr0.

Frame Fr1

Moving objects in the virtual world are based on their own accompanied axis system which is calledFr1. This axis system is fixed to the moving object. This means that the axis system

performs all movements of the attached object like translations and rotations.

Figure 1.1: CarMaker Coordinate systems x y z x y z x y z x y z

Fr2

x y z

Fr0

Fr1

x y z

Fr2

Fr2

Fr2

Mnt

fr

Mnt

fl

Mnt

rl

Mnt

rr f q( 0,q1) f q( 0,q1) f q( 0,q1) f q( 0,q1) f t( ) X ( )×( )Y

(13)

CarMaker Axis Systems

In case of a trailer no part of the outer skin is situated before the (O, Y, Z)-plane. (see section 1.3)

Frame Fr2 (carrier axis system)

For every wheel there is a mountpoint (Mnt) defined within the Fr1 system. This is the center of reference of aFr2axis system attached to this mount-point. Mount-points are pure trans-lations (X,Y,Z) from the Fr1 axis system. They are fixed to the Fr1 system.

There are functional dependencies (suspension kinematics and compliance) howFr2is ori-entated relatively to its mount-point. There are two generalized coordinates for the movement of eachFr2axis system. Usually stands for compression and for steer influence.

Fr2 is defined as follows:

• Rules apply to any of the wheel carriers

• (O) is the center of the wheel. It is in the wheel plane. • (X) points in forward driving direction.

• (Y) is along the wheel spin axis. Vector points to the left. • (Z) is directed upwards (mathematically: ).

• Initially (all coordinates ofFr2 are zero)Fr2 is parallel toFr1. • (O, X, Z) is the wheel plane.

Frame FrX

The frameFrX(pronounced: cross frame) represents a road surface axis system. The (O, X, Y) -plane approximately describes the current orientation of the road surface. LikeFr1 this is a accompanied axis system as well and moves uniformly toFr1.

FrX is defined as follows:

• (O) is located in the middle between the two road surface contact points of the rear wheels.

• (X) is orientated from (O) to the middle of the two road surface points of the front wheels.

• (Y) is orientated along the connection from the rear left to the rear right road surface contact point.

• (Z) is oriented upwards (mathematically: ).

Frame FrD

TheFrD(pronounced: design-frame) is a parallel axis system to Fr1 with different origin. It is used to specify geometry input coordinates which are based on a different origin thanFr1 without recomputing them. Seesection 1.3.2 ’Guidelines defining CarMaker Objects’ on page 12.

FrD is defined as follows: • (O) is arbitrary

• (X) is parallel toFr1 (X) axis. • (Y) is parallel toFr1 (Y) axis. • (Z) is parallel toFr1 (Z) axis. q0q1 ( , ) q0 q1 X ( )×( )Y X ( )×( )Y

(14)

CarMaker Geometry Input

1.3

CarMaker Geometry Input

To define new objects (vehicles, trailers) a good understanding of the CarMaker principles and conventions is needed to obtain the expected results. The information provided in this section is very useful for this task.

1.3.1

Conventions defining CarMaker Objects

As a convention CarMaker objects have to be defined with their origin of Fr1 at designated positions. This is important because CarMaker assumes the origin at those designated places for every object. The following table shows the conventions where the origin for which objects has to be:.

1.3.2

Guidelines defining CarMaker Objects

To define a new CarMaker object geometry data has to be provided. Geometry data e. g. is needed for body mass, mount-points for (carrier-)frames, and additional loads (inclusive trimloads and engine mass).

Table 1.2: Origins of CarMaker Fr1 Objects

Type of Fr1 Origin

Vehicle Origin for the vehicles Fr1 is the hindmost point of the vehicle projected on road level.

Trailer Origin for the trailers Fr1 is the hitch point (foremost point) of the trailer projected on road level. (Trailer objects have negative X-coordinates).

engine

vehicle body

Fr0

CoM

Fr1

Mnt

FrontRight

Mnt

RearRight

Fr2

RearRight

Fr2

FrontRight

trimloads

FrD

loads

origin F r1

Fr2

RearLeft

Fr2

FrontLeft

(15)

CarMaker Geometry Input

In the special case where FrD ≡Fr1 the link vector is the zero vector.

(16)

CarMaker Naming Conventions

1.4

CarMaker Naming Conventions

To ensure maximum readability, it is tried to keep the notation as consistent and self-explan-atory as possible.

1.4.1

CarMaker Subsystems

The following rules to name CarMaker subsystems apply:

Model Abbrev. Description

Ambient Ambient constants Brake Brake subsystem

Car Car subsystem

DM Maneuver control subsystem (DrivMan)

FST FailSaveTester

IO IO subsystem

Log Log subsystem

PT Powertrain subsystem

Sensor Vehicle body sensors Steer Steering subsystem

TC Task commands (Minimaneuvers) TCPU Monitoring of CPU time consumption

Time CarMaker timer

Tr Trailer subsystem

(17)

CarMaker Naming Conventions

1.4.2

Classification of Quantities

With the following classifications groups of quantities are denoted. Those groups denote points of interests like the center of mass of components or single components and their significant quantities.

The letters ... in general stand for

Aero Aerodynamic related quantities

Buffer, Buf Suspension buffer/bumper related quantities C Carrier related quantities

Camber Camber (wheel) related quantities Clutch Clutch related quantities

Con Quantities related to connected body: center of mass of the rigid vehicle body including vehicle body, engine, trimloads and loads

Damp Damper (shock absorber) related quantities DL Driveline related quantities

Engine Engine related quantities

Fr0, Fr1, Fr2, FrX

Quantities related to this Frame (= axis system) Gearbox Gearbox related quantities

Gen Quantities related to the generalized body: center of mass of generalized body including all masses of the connected body including masses of wheel carriers and wheels. (“Car.Gen”, “Tr.Gen”)

Gen Powertrain Generic related quantities (“PT.Gen”) Hitch Trailer hitch related quantities

HydESP HydESP brake model related quantities (“Brake.HydESP”) Jack Jack related quantities

Load Extra loads of the vehicle

PoI Point of interest related quantities Spring Suspension spring related quantities Stabi Anti-Roll-Bar stabilisator related quantities Steer Steer subsystem related quantities Valve Brake hydraulic valves related quantities Virtual Virtual forces and torques related quantities W Wheel related quantities

(18)

CarMaker Naming Conventions

1.4.3

Meaning of Abbreviations

CarMaker uses the following abbreviations for the naming of quantities.

The letters ... in general stand for

0, 1, 2, 3,.. Numbering

_0, _1, _2 Postfix for quantity expressed inFr0,Fr1,Fr2

_ext External

_tot Total

a Acceleration

Align Aligning movement

Axle Suspension left, right, front, back

C Center

Diff Differential Distance, Dist Distance

DL Driveline

F Front

FL, FR, RL, RR Front left, front right, rear left, rear right

Frc Force

Hori projection of a quantity to the O,X,Y plane

l Length

l Lateral

LongSlip Long slip (tangential) of wheel

Man Maneuver

MC Master brake cylinder muRoad Friction coefficient

No Number

P Tire contact point with track

p Pressure q Flow (hydraulic) q, q0, q1 Generalized coordinates r Rotation R Rear Radius Radius

Rate Angular velocity

res Resultant

rot Rotation angle

(19)

CarMaker Naming Conventions

T Temperature

T, Time Time

tau Angle of attack of wind

Trq Torque

v, vel Velocity

WB Wheel brake

x, y, z Coordinate directions

(20)

CarMaker Directory Structure

1.5

CarMaker Directory Structure

Project Directory

Below is the directory structure of a typical project directory.

• The bin directory contains the CarMaker executable or executables. It might also con-tain custom applications or tools that were created specifically for the project.

• The doc directory would contain documentation that would apply to the project. CarMaker documentation, e.g this document, does not reside in the doc directory but is included in the CarMaker installation directory along with library files and most of the CIT applications.

• The src directory includes the C source files that can be modified by the user. By mak-Listing 1.1:

<project directory path> |

|-bin Real-time program, user specific

| GUIs, like e. g. Instruments

|

|-doc Online Docu to simulator

|

|-src Development environment

|-Data Data basis

| |

| |- Vehicle Vehicle data

| |- Chassis Kinematics and Compiance of axles | |

| |-Config Configuration of the test bed: ECUParameters, SimParameters,

| | OutputQuantities

| |

| |-Misc Misc., e.g. parameters for the hydraulic | |

| |-Pic Views of vehicles (for GUI)

| |-Road Measured road definitions (RoadData) | |-TestScript ScriptControl test-scripts

| |-TestRun Test runs

| |-Tire Tire data

| |-Trailer Trailer data |

|-Movie Animation, movie

| Vehicle and road geometry files

|

|-SimInput Data for Input_From_File |-SimOutput Results of simulations | |-Offline

| |-rt1 | | |-Log | | |-YYYYMMDD

(21)

CarMaker Directory Structure

• The SimInput directory contains simulation data files that are used when CarMaker runs by using file input.

• The SimOutput directory contains the simulation results that are optionally saved when a testrun is performed.

Installation Directory

It also might be useful to show the CarMaker installation directory, i.e. where the CarMaker tools have been installed, along with the CarMaker libraries and documentation. Shown below is an example of the installation directory of the LynxOS or realtime version of CarMaker, installed in the unix environment.

Listing 1.2:

<installation directory path> |

|-bin Programs like Instruments,

| User interface HIL

|

|-doc Online documentation

|-Examples Example projects and files

|-GUI Graphical User Interface scripts, executables, etc. |-include Include-files

|-lib Libraries

|-lynx_rt LynxOS runtime environment

|-Matlab Support package for Matlab/Simulink |-Setup Template and definition files

(22)

About Parameter Files and Datasets

1.6

About Parameter Files and Datasets

The CarMaker application needs parameter files and datasets. For this purpose CarMaker uses keyword oriented parameter files called Infofiles. They are plain ascii text files but a specific syntax is used.

1.6.1

Database Syntax

Infofiles use keywords which can be followed by

• a ‘=’ character and several values up to the end of line,

a ‘:’ character and a multi line entry in the following lines. Each line must start with a <tab> character.

1.6.2

FileIdent, Description and FileCreator

To recognize any changes and incompatibilities of parameters format and norm (e. g. using a new CarMaker version with out of date datasets) a identification key for each file is used. The identification key shows the model class, the submodel class and the current version. This identification key is called “FileIdent” and has to be specified in the first line of a param-eter file.

FileIdentt = CarMaker-KindString [ VersionId ]

Example FileIdent = CarMaker-PowerTrain.ET-4WD 2

Current FileIdents Currently Carmaker supports the following Fileidents:

Syntax CarMaker-<ModelClass>[-<Kind>] <Version ID>

<ModelClass> Tire, Brake, Car, TestRun,...

<Kind> Optional, for submodels with referenced parameters, e.g. separate files for brake model parameters or engine torque diagram.

<VersionID> Version of parameter file, whole-numbered, positive

Infofile FileIdent

TestRun CarMaker-TestRun <VersionID> TestSeries CarMaker-TestSeries <VersionID> Tire CarMaker-Tire-<Kind> <VersionID> Car CarMaker-Car <VersionID>

Suspension (kinematics and compliance)

(23)

About Parameter Files and Datasets

Description : DescriptionText

Description, displayed in parameter browsers

FileCreator = String

This entry answers the question: Which tool creates this parameter set? How can it be char-acterized?

1.6.3

Model Kind

The kind key is used to specify a submodel (e. g. a specific powertrain model). Prefix.Kind = KindStr [ VersionId ]

KindStr is the characteristic name of submodel, or variation of submodel. VersionId is

optional. It is used to support different versions of parameter sets for the same model (com-patibility, parameter convertion etc.).

Example PowerTrain.ET.Kind = Mapping 2

1.6.4

CarMaker Configuration Files

CarMaker knows the following configuration files:

The files are searched in the sub directoryData/Config/<file>[.hostname].

Example Data/Config/SimParameters Data/Config/ECUParameters.rt1

If a file with hostname matches it has priority over a file without a specific hostname.

File Purpose

SimParameters All parameters influencing the simulation flow.

ECUParameters Parameters and calibration settings for ECU´s used with a test stand.

(24)

‘SimParameters’ File

1.7

‘SimParameters’ File

InSimParametersall “global” (test run, vehicle, ... independent) simulation specific param-eters are given in different subsections decribed below.

1.7.1

Application Parameters of CarMaker/HIL

Cycle.dtLimitHigh = DeltaT Optional. Default 0.002 s. Cycle.dtLimitLow = DeltaT Optional. Default 0.0001 s. Cycle.tCTViolationWarn = DeltaT Optional. Default 0.0015 s. Cycle.tCTViolationErr = DeltaT Optional. Default 0.003 s. Cycle.maxtCTViolation = DeltaT Optional.

(25)

‘SimParameters’ File

1.7.2

CarMaker

Environment Parameters

FirstInit.TestRun = TestRunName

Test-run to initialize the application the first time, before a test run is started. Default: ““ to use internal defaults.

TestRunEnd.DVA_ReleaseAll = DoIt

At the end of a test run, all active direct variable write access can be closed. Default: 0, don’t release all, keep write access active.

1.7.3

Data Storage

DStore.dtFile = deltaT

Optional. Time step between two data vectors for storage. Default 0.02 s.

DStore.OutQuantFName = OutQuantFilename

Optional, Configuration file for selecting quantities to be written to file. Filename relative to Data/Config/<HostName>. Default “OutputQuantities”.

DStore.OutSubDir = DirectoryName

Optional. Directory to store simulation results. IfDirectoryName is empty, the directory name is created by current date, formatted as <year><month><day>. Default ““.

DStore.OutFNameWithTime = WithTime

Optional. Append simulation start time to the result file name. Default 1.

DStore.BufSize_kB = Size_in_kBytes

(26)

‘SimParameters’ File

1.7.4

Maneuver Control

DrivMan.Engine.AutoStart = AutoStart

Optional, default 1.

DrivMan.Engine.tWaitAfterEngineOn =deltaT

Optional, default 2.0 s, see alsosection ’PowerTrain.ET.tWaitAfterEngineOn = deltaT’.

Road.VhclStartPos_TrailerMin = MinStartPos_m

Optional, default 10 m. Minimal vehicle road start coordinat when driving with a trailer.

Get Idle DrivMan.GetIdle.Brake = Activation

DrivMan.GetIdle.Brake.d_dt = Velocity Optional, default Activation=0, Velocity=1000.

DrivMan.GetIdle.BrakePark = Activation

DrivMan.GetIdle.BrakePark.d_dt = Velocity Optional, default Activation=0, Velocity=1000.

DrivMan.GetIdle.BrakeLever = Activation

DrivMan.GetIdle.BrakeLever.d_dt = Velocity Optional, default Activation=0, Velocity=1000.

DrivMan.GetIdle.Brake.vVhcl_BrakeEnd = MaxVhclVelocity Optional, default 0.1 m/s. Vehicle velocity to end braking while state GetIdle.

(27)

‘SimParameters’ File

DrivMan.GetIdle.SelectorCtrl = SelectorCtrl

Optional, default 0.

Is Idle DrivMan.IsIdle.Brake = Activation Optional, default 0.0. DrivMan.IsIdle.BrakeLever = Activation Optional, default 0.0. DrivMan.IsIdle.BrakePark = Activation Optional, default 0.0. DrivMan.IsIdle.SelectorCtrl = Position Optional, default 0. DrivMan.IsIdle.SetNeutral = SetNeutral Optional, default 1. Set gear box to neutral position.

Shifting DrivMan.AutoShift.dtDontShift = delatT Optional, default 0.2 s. DrivMan.AutoShift.GasReduction = Reduction Optional, default 0.8. DrivMan.AutoShift.dt_declutch = DeltaT Optional, deafult 0.1 s. DrivMan.AutoShift.dt_keepclutch = DeltaT Optional, default 0.1 s.

(28)

‘SimParameters’ File

DrivMan.AutoShift. dt_enclutch= DeltaT Optional, default 0.5 s.

DrivMan.VelCtrl.tClutchRelease = value Optional, default 1.0 s.

1.7.5

Start of test run

SimStart.TimeLimit = TimeLimit

Maximal duration of state SimStart. Default: 60 s

DrivMan.Start.ExtInp_SteerVel = SteerVelMax_deg

Used for external inputs maneuvers to build up the steering angle at start of input.

1.7.6

End of test run

GetIdle.TimeLimit = TimeLimit Optional. Default 200 s.

GetIdle.Skip = Skip

Optional. Default: 0 for HIL, 1 for non-HIL.

GetIdle.Kl15Off = SwitchOff Optional. Default: 0 for HIL, 1 for non-HIL.

(29)

‘ECUParameters’ File

1.8

‘ECUParameters’ File

InECUParametersall Input/Output, hardware or ECU specific parameters are stored in this parameter set:

• Signal conditioning

• FailSafeTester configuration, see Programmers Guidesection 12.3 ’Configuring the FailSafeTester’ on page 283

(30)

‘OutputQuantities’ File

1.9

‘OutputQuantities’ File

This file keeps a simple list with all quantity names (one per line spelled like they can be looked up in IPG Control). All quantities denoted in this file are stored by the CarMaker´s

Storage of Results functionality.

It is possible to use only one ‘*’ wildcard per pattern.

Example Brake.Trq_FL Brake.Trq_* Car.*FL

(31)

General Parameters for TestRun Files

1.10

General Parameters for TestRun Files

These Parameters can be specified in a CarMaker TestRun file. They apply for all sub mod-els.

Ambient.Temperature = Temperature_K

Optional. Ambient temperature in degree Kelvin. Default 293.15 K.

Ambient.AirDensity = value

Optional. Air density inkg/m3. Default 1.205

Ambient.AirPressure = value

Optional. Air pressure in bar. Default 1.024 bar.

Ambient.AirHumidity = value

(32)

Software Interfaces

1.11

Software Interfaces

The vehicle model uses the model manager to “handle models”. This means:

For a submodel of the car – for example steering system, brake system, tire, engine, ... – more than one implementation (or model) can be available in the simulation program. The model to be used in a testrun is selected by an identifier string in a parameter file, for exam-ple “Brake.Kind = HydESP” in the vehicle parameter set to select the brake model “HydESP”.

The model manager supports the following car submodels, called model classes:c

The model manager is initialized at program start with Listing 1.3: 1: int 2: Brake_Register_HydESP (void) 3: { 4: tModelClassDescr m; 5:

6: /* clear model class description structure */ 7: memset (&m, 0, sizeof(m));

8:

9: /* assign model interface functions */ 10: m.Brake.VersionId = ThisVersionId; 11: m.Brake.CompatVersionId = CompatVersionId; 12: m.Brake.New = Brake_HydESP_New; 13: m.Brake.Calc = Brake_HydESP_Calc; 14: m.Brake.Delete = Brake_HydESP_Delete; 15: m.Brake.DeclQuants = Brake_HydESP_DeclQuants; 16:

17: /* register the model, kind string and interface functions */ 18: return Model_Register (ModelClass_Brake, "HydESP", &m); 19: }

Listing 1.4: Model Classes 1: typedef enum { 2: ModelClass_PTEngine, 3: ModelClass_PTClutch, 4: ModelClass_PTGearBox, 5: ModelClass_PTDriveLine, 6: ModelClass_PowerTrain, 7: ModelClass_PTGenCoupling, 8: ModelClass_Steering, 9: ModelClass_Brake, 10: ModelClass_Tire, 11: 12: } tModelClass; 1: int 2: Model_Init (void);

(33)

Software Interfaces

The model manager is cleaned up before program exits with

Example: Registration and usage of a brake model

The registration function for the brake model with kind key “HydESP” is called once at pro-gram start.

What CarMaker does to start a submodel (example for a brake model): • Look for a model with the corresponding kind string.

• If the model is found byModel_LookUp() theNew() function is called to create an initialized model.

• If the initialization was successful, theDelcQuants() function is called to update the quantities in CarMaker´s data dictionary.

• The functionsCalc() andDelete() are stored to calculate the model and to delete the model parameters before create a new model at the beginning of next simulation 9: int

10: Model_Cleanup (void);

11: tModelClassDescr*md; 12: const char *ModelKind; 13:

14: ModelKind = iGetStr(Inf, KindKey); 15:

16: if ((md=Model_LookUp(ModelClass_Brake, ModelKind)) == NULL) { 17: LogErrF (EC_Init, "Brake: Unknown kind ’%s’",KindKey); 18: goto ErrorReturn; 19: } 20: 21: brake.param = md->Brake.New(inf, ““); 22: if (brake.param == NULL) 23: goto ErrorReturn; 24: 25: if (md->Brake.DeclQuants != NULL) 26: md->Brake.DeclQuants (brake.param); 27: 28: 29: brake.md.Brake.Calc = md->Brake.Calc; 30: brake.md.Brake.Delete = md->Brake.Delete; 31:

(34)

Overview

Chapter 2

Driving Maneuvers

2.1

Overview

The CarMaker testrun is build by one or more maneuver steps, called “mini maneuvers”. The mini maneuver events are composed by

• longitudinal dynamics actions: accelerating, braking, gear shifting, ... • lateral dynamics actions: steering

• additional actions, defined by a list of mini maneuver commands

Parameters

The driving maneuvers and driving behavior can be configured • in the test run (test run specific)

• in the vehicle model parameter set (vehicle specific in) • in the SimParameters parameter set (global).

A prefix is build up for each mini maneuver by the string “DrivMan.”, followed by the mini maneuver number. The keys of all parameters for each maneuver starts with this prefix.

DrivMan.<i>.<xyz> ...

TestRun Data Set

(35)

Overview

Vehicle Data Set

PowerTrain.ET.tWaitAfterEngineOn = deltaT

Optional. Overwrites parameter DrivMan.Engine.tWaitAfterEngineOn from file SimParameters (seesection ’DrivMan.Engine.tWaitAfterEngineOn = deltaT’).

DrivMan.nShift : GearNo_nUp_nDown_table

Optional. Configures the auto shifting module of the speed controller. Each line contains the following values:

Gear number GearNo, positive for forward, negative for backward gears • engine speed to shift up, unit rpm.

(36)

Longitudinal Dynamics Maneuvers

2.2

Longitudinal Dynamics Maneuvers

The following maneuvers are available: • Drive with IPG-DRIVER

• Drive speed profile

• Manual Control: Gas, Brake, BrakeLever (motorcycle), BrakePark, Clutch, Gear • Speed Control (VelControl)

2.2.1

Speed Control (VelControl)

Pre.Long = VelControl Vel_km/h TolVel_m/s Sensity PremEnd

Special Meaning! Pre.Long = VelControl StartVel_kmh GearNo In case of

• first maneuver in the test run • duration time is set to 0.0

this maneuver has a special meaning. It defines longitudinal starting conditions.

In the GUI: Entry fieled “Speed” gives vehicle starting speed, “Max. Deviation” gives the gear number.

(37)

Lateral Dynamics Maneuvers

2.3

Lateral Dynamics Maneuvers

The following maneuvers are available: • Drive the course with IPG-DRIVER • Sinus steering

• Steer step

• Simple steer control

Steering Maneuvers

A smooth transition mode was added for Sinus and Steer Step. The mode can be enabled with a checkbox in the CarMaker GUI’sManeuver dialog, underLateral Dynamics.

During a simulation, mini-maneuver commands can be changed on the fly. An example application of this new feature would be to use ScriptControl (the corresponding

SetMini-ManCmd command is available with this release) to access the FailSafeTester with very

precise timing by using the appropriate mini-maneuver commands for FST control. Steer Step Steer Step Smooth Transition Sinus Sinus Smooth Transition

(38)

Special Maneuvers

2.4

Special Maneuvers

2.4.1

The first Mini Maneuver (Duration 0 Seconds)

If the first mini maneuver (number 0) has the duration 0 seconds, it has a special meaning: Instead of defining a real driving maneuver it defines the test run starting conditions. The following configuration is possible:

• Speed control (VelControl): start velocity, gear number (entry field “Max. Deviation”) • Steer step: steering angle (entry field “Amplitude”)

2.4.2

The last Mini Maneuver (Duration 0 Seconds)

If the last mini maneuver has the duration 0 seconds, it has a special meaning:

This maneuver is called at the end of the test run even if the test run is stopped before (by user, by an error, ...).

(39)

User Accessible Quantities

2.5

User Accessible Quantities

(40)

Overview

Chapter 3

Vehicle Body

3.1

Overview

The simulated vehicle is a multi body system which is characterized through different bod-ies. They are generated and optimized with MESA VERDE.

Description of the bodies:

Body Parts of the body

vehicle’s body All sprung masses beside engine, trimloads and vehicle loads. engine Engine as a separate mass (easily changeable motorization). trimloads Constant loads to be added up to vehicle’s curb load.

vehicle loads Additional loads to define a certain load case, e.g. measuring equipment, luggage... (changeable from GUI).

wheel suspension - front left

- front right - rear left - rear right

All unsprung masses without the wheel, like

link, wheel carrier, suspension leg, wishbone mount...

wheel - front left - front right - rear left - rear right

All rotating masses, like

(41)

Overview

Additionally the vehicle model supports the feature to calculate body fixed sensors for acceleration, velocity, rotational acceleration and rotational velocity.

3.1.1

Configuration of the vehicle model

To obtain the typical behavior of a certain type of vehicle the multi body system is extensive-ly parameterizable. The parameters are selected in a way that all type of vehicles, from a small compact car up to a big SUV can be simulated by only changing the set of parame-ters. There is no need to change the structure of the multi body system (the underlying equations).

3.1.2

Finding the equilibrium state

By pressing the start button and after initialization the vehicle starts at steady state. This is called the start-off configuration. This means the vehicle is in equilibrium state respecting all internal and external forces/torques (no acceleration, but nonzero velocities, in general). Parameters for the vehicle configuration are given in design configuration. The expression design configuration does not only refer to geometric quantities, but includes all other design parameters (masses, spring-stiffnesses, ...) as specified by the car-manufacturer. A

design configuration usually is not a configuration of static equilibrium!

For computation coordinates and parameters are distinguished. Parameters are time invariant, coordinates are not. Parameters need not be geometrical, but also include mass-es, stiffnessmass-es, etc.

The design configuration has the coordinates and parameters . To find the steady state position of the vehicle a procedure called Modify-q-equilibrium (mq-equilibrium) is used.

Mq-equilibrium modifies some of the coordinates q such that:

Parameters p obtain prescribed values.

• The configuration is an equilibrium configuration.However, at this stage no additional charges (trimloads, vehicle loads) are added to the system.

(EQ 1)

Figure 3.1: Finding steady state for the vehicle model

Aerodynamics, VehicleLoads, TrimLoads Design Configuration Static equilibrium Steady state Start-off configuration mq-equilibrium Procedure mq-equilibrium multiple steps mq-equilibrium q p qd,pd ( ) qd,pd ( ) p= p0 ⇒ modifyq(qe,pe)

(42)

Overview

The start-off configuration is a configuration that matches the initial conditions of a particu-lar test-run. It differs from a nominal configuration (static equilibrium) by taking into account: • Trim-loads, vehicle loads

• Start-off (or initial) driving velocity. • Aerodynamics.

The start-off configuration is obtained from the nominal configuration by modifying , keep-ing fixed:

. (EQ 2)

3.1.3

Vehicle Interface

The vehicle body is the central model. It consists of the Mesa Verde multibody vehicle mod-el along with predefined interfaces to other modules. The vehicle body interface is defined inVehicle.h. Alternative vehicle models have to fill this interface with life.

3.1.4

Interaction with other modules

The vehicle body module interferes with other modules from the vehicle library.

Each module has an interface to the vehicle body module. By this interfaces parameters and coordinates of the vehicle body are modified.

q p

qe,pe

( )keep⇒p const

modify q (qs,ps)

Figure 3.2: Modules interfering with the vehicle body Vehicle Body Powertrain Brake System Steer System Tire Trailer Interface

(43)

General Parameters

3.2

General Parameters

RefPointInputSystem = x y z

This parameter specifies the origin of theFr1(inFrDcoordinates). The coordinates XYZ point from the origin ofFrDto the origin ofFr1. (seesection 1.2 ’CarMaker Axis Systems’).

Example RefPointInputSystem = -2.0 0.0 0.0

This means that the origin ofFr1 is 2 m behind (in vehicles longitudinal direction)FrD.

Hitch.pos = x y z

Hitch (trailer coupling device) position at the vehicle expressed inFrD coordinates.

Example Hitch.pos = 0.0 0.0 0.3

Virtual.PoA = x y z

The virtual force/torque attacks the vehicle body inVirtual.PoA. Virtual.PoA is decomposed in FrD.

Default position is the center of mass of vehicle body (seepage 43).

Virtual.PoA_1 = x y z Point of attack of the virtual force/torque. Virtual.PoA_1 is decomposed in Fr1. Virtual.PoA_1 overwritesVirtual.PoA.

Picture.PicFName = FName

File name of the Tcl/Tk Picture you see in the main HIL application. The file is searched in theData/Pic folder. Unimportant for simulation results.

Example Picture.PicFName = VW_NewBeetle.tcl

Movie.Skin.FName = FName

(44)

General Parameters

Vehicle.OuterSkin = rll.x rll.y rll.z fur.x fur.y fur.z

Vehicles outer skin box, defined by the points rear lower left (rll) and front upper right (fur).

Example Vehicle.OuterSkin =-0.1 0.85 0.2 4.05 -0.85 1.6

Jack.fl.pos = x y z

Jack.fr.pos = x y z

Jack.rl.pos = x y z

Jack.rr.pos = x y z Optional. Jack positions at vehicle chassis.

SimParamFName = FName

Optional. Name of the file containing simulation parameters. File is searched in <CMProjectDir>/Data/Config.

DefaultSimParameters orSimParameters.<hostname>.

The usage of the parametersECUParamFNameandSimParamFNamemay lead to incon-sistencies with IO initialization. For experts only!

ECUParamFName = FName

Optional. Name of the file containing parameters of Electronic Control Units (ECU) IO-Sig-nal calibrations. File is searched in<CMProjectDir>/Data/Config.

DefaultECUParameters orECUParameters.<hostname>.

The usage of the parametersECUParamFNameandSimParamFNamemay lead to incon-sistencies with IO initialization. For experts only!

(45)

Mass Geometry

3.3

Mass Geometry

3.3.1

Overview

The representation of the distribution of mass in a material system is called mass geometry. Inertia properties are associated with the vehicle-body, each of the four wheel carriers and each wheels. Additional body loads are modeled via additional masses and inertias as well. Three parameters have to be specified to define a mass element:

• The mass value of the body to define.

The center of mass (CoM) of each body is defined. The center of mass is a geometrical point. The three scalar quantities are the position vector ofCoMdecomposed relative to the origin of the definition frame.

The inertia tensor (= second moments of mass = moments of inertia) is a symmetric second-order tensor, which is specified by six scalar quantitiesI = A B C D E F (Frequently the off-diagonal elements (D, E, F) of the inertia tensor are neglected):

(EQ 3)

3.3.2

Parameters

Parameters The following parameters are required for this model:

Body.pos Body.mass Body.I

The vehicle body without engine. Its center of mass is placed in the design frame at

Body.Pos. The vehicle body has the mass Body.mass and the inertia tensor Body.I. The

ele-ments of the inertia tensor are given in the order A B C D E F. It is sufficient to give the elements A B C (main diagonal elements) only.

A vehicle body with inertia A=360 kg*m2, B=800 kg*m2, C=1800 kg*m2: Body.mass = 375.0 Body.Pos = 1.5 0.0 0.45 Body.I = 360 800 1800 Engine.pos Engine.mass Engine.I

The engine body. The engine is fixed on the Body of the vehicle. For details, see vehicle body. A F E F B D E D C y2+z2 ( )dm Body

xy md Body

xz md Body

– symmetry (z2+x2)dm Body

yz md Body

– symmetry symmetry (x2+y2)dm Body

=

(46)

Mass Geometry

WheelCarrier.fl.pos WheelCarrier.fl.mass WheelCarrier.fl.I

Wheel carrier front left. Represents all unsprung mass in the suspension (except the wheel).

WheelCarrier.fr.pos WheelCarrier.fr.mass WheelCarrier.fl.r

Wheel carrier front right. For details, see wheel carrier front left.

WheelCarrier.rl.pos WheelCarrier.rl.mass WheelCarrier.rl.I

Wheel carrier rear left. For details, see wheel carrier front left.

WheelCarrier.rr.pos WheelCarrier.rr.mass WheelCarrier.rr.I

Wheel carrier rear right. For details, see wheel carrier front left.

Wheel.fl.pos Wheel.fl.mass Wheel.fl.I

Wheel front left. The wheel and all other rotating components (parts of the brake, ...) .

Wheel.fr.pos Wheel.fr.mass Wheel.fl.r

(47)

User Accessible Quantities for Vehicle Body

Wheel.rr.pos Wheel.rr.mass Wheel.rr.I

Wheel rear right. For details, see wheel front left.

TrimLoad.<i>.pos TrimLoad.<i>.mass TrimLoad.<i>.I

Bodies to trim mass contribution to that of a reference vehicle. Trim loads are fixed to vehicle body. <i> := 0, 1, 2, ...

Do not confuse TrimLoads with test run specific additional charges you may want to put on your vehicle.

3.4

User Accessible Quantities for Vehicle Body

(48)

Chapter 4

Suspension Force Elements

The contribution of each suspension force element results in the wheel contact force. Four types of force elements are modeled:

• the suspension spring (Spring),

• the suspension damper (DampPull, DampPush), • the suspension buffer (BufPull, BufPush) and • the stabilizer or anti-roll bar or stabilizer bar (Stabi).

z x y compression tz damper spring buffer push buffer pull stabilizer wheel center

(49)

External Suspension Forces

4.1

External Suspension Forces

External suspension forces are added to the forces generated by the CarMaker build in models for spring/bumpers, damper and stabilizer:

(EQ 4)

There is multiple usage for external suspension forces (according to(EQ 4)):

• Replace suspension forces by external forces. This is used when a custom suspension model (e. g. simulink model) should replace the CarMaker built in model for some or all suspension forces. The original forces have to be set to zero by the “amplify” parame-ters (<Pre>.XXX.Amplify = 0).

• Add forces to forces calculated by the built in model. This can be used to simulate es from a active suspension device which are superpositioned to the conventional forc-es.

ExtSuspFrcs.FName = FileName or ExtSuspFrcs.Kind = ModelKind

The model is selected by the Kind entry ModelKind. Instead of using the Kind key, an exter-nal parameter set can be referenced by its filename FileName. FileName is the path relative to the miscellaneous directory.

General Remarks

• Suspension models has to be registered by CarMakers model management mecha-nism. Each model needs

- a unique kind key to reference exactly this model from the pool of suspension mod-els.

- interface functions to initialize, calculate and delete a model instance

• All parameters other than (*.FName and *.Kind) are model specific. Their keys has to start with the prefix "ExtSuspFrcs."

• Known from earlier CarMaker version (before 2.1) the amplify parameters

*.Spring_ext.Amplify, *.Damp_ext.Amplify, *.Stabi_ext.Amplify doesn’t exist any longer. If they are needed they have to be implemented in the suspension model itselfe.

FSpringTot = FSpring+FSpringExt FDampTot = FDamp+FDampExt FStabiTot = FStabi+FStabiExt

(50)

Springs

4.2

Springs

This module simulates a conventional spring suspension. It calculates the spring compo-nent force .

As shown in Figure 4.3 there is a relation between the deflection of the wheel and the spring. There is a translation between the forces and and between the travel of the wheel and the spring .

When the suspension gets compressed the spring length is decreasing and the resulting spring force is increasing. To accommodate this the following calculation is applied:

. (EQ 5)

The factoramp in(EQ 5)can be used to modify the the spring forces by a given factor. Usu-ally this is for test purposes only and the factor should remain set to one.

The quantity is called relaxed (or unstretched) length of the spring. The resultant spring force depends on the difference between the relaxed length and the actual length . The actual length is the current distance between lower and upper attachment point of the spring.

FSpring

Fz FSpring

tz x

Figure 4.3: Calculation of spring forces

F

Z

F

Spring

x

x

0

x

*

t

z

x FSpring amp f x * ( ) ⋅ = x* = –(x x– 0) x0 x0 x

(51)

Springs

According to(EQ 5)the calculation of needs the actual spring length . It is obtained from the suspension kinematics module according toFigure 4.4. represents the general-ized coordinates of the suspension.

If no spring length is parametrized, minus wheel compression tz is used.

Parameters

SuspF means front axle, SuspR means rear axle

*.Spring.Amplify = Factor

Spring amplification factor Factor.

*Spring.l0 = UnstrechedLength

Unstretched (i.e. force free) length UnstrechedLength of the spring.

*.Spring: DataTable

This characteristic translates compression ( from(EQ 5)) to spring force.

xx

q

Figure 4.4: Transformation of spring deflections and forces

spring suspension kinematics module

f q

( )

x

q

---F

q Spring

,

q

F

Spring

x

F

=

f x

( )

component x*

(52)

Dampers

4.3

Dampers

This module simulates a suspension damper. It calculates the force .

The suspension dampers force depends on the velocity . Different characteristics are taken into account by defining different functions for “pull” ( ) and “push” ( ).

A increasing length of the damper leads to a positive velocity .

. (EQ 6)

Theamp factor in(EQ 6)can be used to to modify the results of the calculation by a given factor. Usually this is for test purposes only and the factor should remain set to one. The dampers pull/push characteristics are defined seperately. Pull is when the damper is getting longer, push is when the damper is getting shorter.

FDamp

FDamp

>0 ≤0

Figure 4.5: Calculation of damper forces

F

Z

F

Damp

x

t

z

x

FDamp( ) = amp⋅FDampPull( ) >0

(53)

Dampers

The velocity is calculated by differentiation of the damper length . It is obtained from the suspension kinematics module according toFigure 4.6. represents the generalized coor-dinates of the suspension.

If no damper length is parametrized, minus wheel compression tz is used.

All characteristics have to be defined in first quadrant. CarMaker takes care of the correct signs.

Parameters

*.Damp_Push.Amplify = Factor

Damper push force amplification factor Factor (see(EQ 6)).

x

q

Figure 4.6: Transformation of damper deflections and forces

damper suspension kinematics module

f q

( )

x

q

---F

q Damp

,

q

F

Damp

F

=

f x˙

( )

push or pull? component

Figure 4.7: Definition of damper push and pull characteristics

F

d e f i n i t i o n i n 1st quadrant

(54)

Dampers

*.Damp_Push: DataTable

This characteristic translates compression velocitiy to damper push force. It has to be defined in first quadrant (positive velocities, positive forces). should be obeyed. The table has two columns, velocity in m/s in the first, the damper forces in N the second.

*.Damp_Push.Amplify = Factor

Damper push force amplification factor Factor (see(EQ 6)).

*.Damp_Push: DataTable

This characteristic translates extention velocitiy to damper pull force. It has to be defined in first quadrant (positive velocities, positive forces). should be obeyed. The table has two columns, velocity in m/s in the first, the damper forces in N the second.

Example SuspF.Damp_Push: 0 0 0.05 90 0.13 140 0.26 250 0.39 330 0.52 410 1.04 790 FDamp( )0 = 0 FDamp( )0 = 0

(55)

Buffers / Bumpers

4.4

Buffers / Bumpers

This module simulates suspension push/pull buffers. is the force of the lower

bump-stop, is the force of the upper bump-stop.

The suspension buffers forces , depend on the buffer compression :

(EQ 7)

. (EQ 8)

, are the relaxed (or unstretched) length of the upper/lower bump-stop. For the calculation of the buffer forces according to(EQ 7)and(EQ 8)the actual buffer com-pression is needed. It is obtained from the suspension kinematics module according to Figure 4.9. represents the generalized coordinates of the suspension.

FBufPull FBufPush

Figure 4.8: Buffer elements shown at left wheel

buffer pull buffer push

t

z

t

z0Pull

t

z0Push

F

BufPull

F

BufPush

x

0

Pull

x

0

Push

FBufPull FBufPush x FBufPush = amp⋅ f x( )∗ x * x0 Push, –x = x*>0 FBufPush = 0 x * 0 < FBufPull = amp⋅( )–f ( )xx * x x– 0 Pull, = x*>0 FBufPull = 0 x * 0 < x0 Push, x0 Pull, x q

Figure 4.9: Transformation of buffers deflections and forces

buffer suspension kinematics module

f q

( )

x

q

---F

q Buf

,

q

F

Buf

x

F

=

f x

( )

push or pull? component

(56)

Buffers / Bumpers

If no buffer length is parametrized, minus wheel compression tz is used.

The following figure illustrates the calculation of the buffer compression from the non-linear kinematics file:

The two paramters and have correspponding buffer compression zero offset values and .The absolut values are unimportant since there is always the dif-ference calculated from the current compression value to its zero offset.

Of importance is that the gradient of the compression curve is always negative, so that according to(EQ 7)and(EQ 8)a positive buffer compression is calculated. Values given between and are ignored from CarMaker and therefore are not important. Theampfactor in(EQ 7)and(EQ 8)can be used to to modify the results of the calculation function by a given factor. Usually this is for test purposes only and the factor should remain set to one.

The buffers pull/push characteristics are defined seperately.

Parameters

SuspF means front axle, SuspR means rear axle

Figure 4.10: Calculating the buffer length out of kinematic data

t

z

x

Push buffer active

Pull buffer active

t

z0 Push

,

t

z0 Pull

,

x

0

Push

,

x

0

Pull

,

max t

( )

z

min t

( )

z

m

ax

x

Push

(

)

m

ax

x

Pull

(

)

p u s h bu ffe r compression

values not important for calculation of buffers p u l l b u f f e r compression tz0 Push, tz0 Pull, x0 Push, x0 Pull, x0 Push, x0 Pull,

(57)

Buffers / Bumpers

SuspF.Buf_Push.tz0 SuspR.Buf_Push.tz0

Push buffer position (defines ride clearance). According to(EQ 7)andFigure 4.8the push buffer only acts for vertical displacements tz (of wheel carrier) greater than tz0(=x0Push).

Example SuspF.Buf_Push.tz0 = 0.055 SuspR.Buf_Push.tz0 = 0.055

SuspF.Buf_Push SuspR.Buf_Push

This characteristic translates buffer compression to buffer push force. It has to be to be defined in first quadrant.

SuspF.Buf_Pull.Amplify SuspR.Buf_Pull.Amplify

Pull buffer amplification factor.

Example SuspF.Buf_Pull.Amplify = 1.0

SuspF.Buf_Pull.tz0 SuspR.Buf_Pull.tz0

Pull buffer mount position (defines rebound clearance). According to (EQ 8) and Figure 4.10the pull buffer only acts for vertical displacements tz (of wheel carrier) smaller than tz0(=x0Pull).

Example SuspF.Buf_Pull.tz0 = -0.09

Syntax

Susp<F|R>.Buf_Push.tz0 =val Unit: m

Syntax Infofile table mapping with 2 columns

<compression [m]> <buffer force [N]>

Example SuspF.Buf_Pushl: 0.002 32.0 0.004 88.0 0.006 167.0 0.008 269.0 0.010 393.0 0.012 596.0 0.015 1085.0 x

(58)

Buffers / Bumpers

SuspF.Buf_Pull SuspR.Buf_Pull

This characteristic translates buffer compression to buffer pull force. It has to be to be defined in first quadrant..

Syntax Infofile table mapping with 2 columns <compression > <buffer force>

Example SuspF.Buf_Push: 0.002 32.0 0.004 88.0 0.006 167.0 0.008 269.0 0.010 393.0 0.012 596.0 0.015 1085.0 x

(59)

Suspension Roll Stabilizer / Anti-Roll Bar

4.5

Suspension Roll Stabilizer / Anti-Roll Bar

This module simulates a roll stabilizer (stabi). A force acts if there is a difference between the right and the left wheel compression.

In general, according toFigure 4.11, the wheel compression ratio is not equal to the stabi-lizer deflection difference ( ).

The stabilizer deflection difference can be defined either by a deflection length difference (EQ 9) or by a deflection angle difference(EQ 10):

, (EQ 9)

. (EQ 10)

The constant has to fit to the selected definition of . The forces calculate to:

, (EQ 11)

with the amplification factor amp. Under normal circumstances the amplification factor should be set to 1 (only for testing and scaling).

FStabi

tzr tzl

Figure 4.11: Roll stabilizer principal stabilizer

t

z

α

r

x

r

t

zl

t

zr

F

Stabi, l

F

Stabi, r

x

l

α

l

F

Stabi2Susp, l

F

Stabi2Susp, r

t∗≠xxt∗ = tzrtzl x∗ = xrxl x∗ = αr–αl t∗ = tzrtzl cStabi xFStabi,l,r

FStabi , l = amp⋅f( )x∗ = amp⋅cStabi⋅x

(60)

Suspension Roll Stabilizer / Anti-Roll Bar

The forces are transformed in direction of the wheel deflection as follows:

. (EQ 12)

For the calculation of the stabilizer forces according to(EQ 11)the actual stabilizer deflec-tion difference is needed. It is obtained from the suspension kinematics module accord-ing toFigure 4.12. represents the generalized coordinates of the suspension.

If no stabi length is parametrized, minus wheel compression tz is used.

Parameters

SuspF means front axle, SuspR means rear axle

SuspF.Stabi.Amplify = value

SuspR.Stabi.Amplify = value Stabilizer amplification factor

Example SuspF.Stabi.Amplify = 1.0 SuspF.Stabi. = value SuspR.Stabi = value FStabi2Susp, l FStabi , l xlql ---⋅ = FStabi2Susp,r FStabi , r xrqr ---⋅ = xq

Figure 4.12: Transformation of stabilizers deflections and forces

stabilizer suspension kinematics module

f q

( )

x

q

---F

q Stabi, l

,

q

F

Stabi, l,

F

Stabi, r

F

=

f x

( )

or

x

zr

, x

zl

α

zr

,

α

zl

component

F

q Stabi, r

,

References

Related documents