CarSim is software for simulating and analyzing the behavior of four-wheeled vehicles in response to steering, braking, and acceleration inputs. CarSim runs faster than real-time using ordinary PC's. The basic CarSim packages require no other software, although full compatibility with other simulation environments is included for MATLAB/Simulink, LabView, ETAS ASCET, and programming languages such as Visual Basic and C.
For information about system requirements and software compatibility, see this specification sheet.
Additional packages offer extra capabilities.
- Basic CarSim
- Engine Mounts
- Frame Twist
- Interface to AVL Cruise
- Real Time
- Driving Simulators
- Source Code
A basic Windows CarSim package includes the VehicleSim (VS) browser with GUI and database, engineering plotter, animator, and vehicle models.
The vehicle models are contained in VS Solver programs. These are dynamically linked libraries (DLLs). The same DLL is used for stand-alone runs (the core vehicle model running with no external software), or with other software on Windows. The DLL always runs at high speed, giving results much faster than real-time on typical PCs.
The basic CarSim license supports four VS solvers, each with custom equations for a specific combination of suspension types. They cover four-wheeled vehicles with these combinations:
- Independent front, Independent rear
- Independent front, solid-axle rear
- Independent front, twist-axle rear
- Solid axle front, solid-axle rear
The basic package includes interfaces between the CarSim DLL files and Simulink, LabVIEW, and ASCET. Of course, identical behavior is obtained regardless of the simulation environment, because there is just one DLL used in different contexts.
All VS solvers fully support the VS command scripting language, for automation and model extension. They also support the VS API, providing access to the math models from external programs written in languages such as MATLAB, Visual BASIC, C/C++, Python, etc.
All solvers support 99 programmable moving objects (traffic vehicles, crossing vehicles, pedestrians, etc.). Movement is controlled with VS commands or external software (e.g., Simulink).
The sensor option provides up to 20 range and detection sensors. The sensors provide 11 variables for each detected object (range, range rate of change, bearing angles, elevation, magnitude, etc.). The detection variables are typically sent to Simulink for use in user-defined advanced driving assistance systems (ADAS) or other advanced controllers. The sensors have sensitivity to range, bearing, elevation, and reflectiveness. Targets can be rectangular or cylindrical. Occlusion (blocking of view) is supported, to simulated conditions where some objects block others, or when part of a large object (building, parked car, etc.) is partly outside the range of the sensor field.
Demo: Sensors and Traffic
July 2009. CEO Dr. Michael Sayers demonstrates how CarSim provides traffic vehicles and ranging and detection sensors. The same capabilities also apply in BikeSim and TruckSim.
CarSim Trailer allows eight more solvers to be used, to cover the above four configurations when towing one- and two-axle trailers.
The engine-mount option treats the powertrain as a rigid body with additional degrees of freedom (DOF), supported by mounts with stiffness and damping.
Presentation: CarSim Engine Mount Option
Nov. 2010. Dr. Yukio Watenabe repeats the presentation made made at the Japan 2010 User Conference in Tokyo, where he demonstrated and explained the CarSim engine mount model.
CarSim with frame twist allows alternate DLL's to run with math models that include torsional compliance in the body. The frame twist can be significant for some utility and motorsport vehicles.
The CarSim models include an option for low-level integration with the commercial powertrain simulation software Cruise from AVL. With this option, the internal powertrain model in CarSim is replaced with a model from AVL Cruise.
CarSim Real-Time (RT) provides math models compiled to run on "target" computers with real-time operating systems such as QNX, Linux RT, dSPACE, etc. A Windows "host" machine is used for the CarSim database, animator, and plotter. Files are automatically sent to and received from the target, where the Hardware-in-the-Loop (HIL) testing is controlled. (See the RT page for more information.) RT versions are available as off-the-shelf CD's for these platforms:
- dSPACE (DS1005, DS1006, DS1103, MicroAutoBox)
- Opal-RT RT-Lab systems (version 7 and higher)
- National Instruments LabVIEW RT
- ETAS LabCar RT
- Fujitsu-Ten CRAMAS
- A&D (AD5410, AD5440)
Input and output files from CarSim RT can be exchanged with users of offline (Windows, non-RT) CarSim. This lets you follow the same design and evaluation from preliminary design to HIL evaluation.
CarSim vehicle math models have been used in many driving simulators. Here are several ways to use CarSim in a driving simulator.
- The CarSim DS desktop package includes the basic CarSim software and a license that activates the "live" RT mode of the CarSim animator, plus an RT control that slows the math model down to "wait" for real time, plus a GUI that supports several supported controllers for steering, braking, and shifting the transmission. Options for this package include a higher-quality steering system for more accurate steering feel, and additional live animations for multiple-screen systems.
- CarSim can be used to replace the math models in existing Windows-based simulator systems. It is often possible to run the regular CarSim math model DLL's from your simulation environment using the VehicleSim API. If not, the CarSim source can be obtained and modified as needed.
- The regular RT systems support live animation and are sometimes uses as driving simulators, especially when the simulator is intended to include HIL controllers.
- CarSim runtime is an option for companies that develop driving simulators. Using CarSim source or RT to get started, the math models can be modified as needed and then a multiple-copy license is arranged with Mechanical Simulation for the customized copies.
Source code is available for math model equations, to support custom projects such as driving simulators and advanced software projects. All of the source code for the multibody kinematics and dynamics (machine-generated by VehicleSim Lisp, a symbolic multibody program) is provided, along with some of the hand-written library routines for the springs, controllers, etc. A precompiled library file is also provided that provides low-level runtime support for reading input files, processing VS commands, and handling the proprietary 3D VS road model.
Note that you might not need the full source. Even the basic CarSim package comes with limited source that allows you to extend the models using the VehicleSim application program interface (API).