IPG: CarMakerHeadless

Vendor information

Vendor

Web page

Product name

Version

IPG Automotive GmbH

https://www.ipg-automotive.com

CarMakerHeadless

11.1 to 15.0

Categories

MDL 🛈

APL 🛈

BAN 🛈

BMA 🛈

SVC 🛈

DGN 🛈

FIU 🛈

EES 🛈

FCT 🛈

DBG 🛈

IMG 🛈

AUDIO 🛈

ENVSIM 🛈

ENVCOM 🛈

✓

Signal recordings 🛈

File format

Comment

*.erg, *.erg.info

CarMaker recording file with meta information

Platform

Operating system

Support

Windows

✓

Linux

✓

Ports

Specifics

Basic information on dealing with environmental simulations can be found in section Tab Environment Simulation.

This tool connection allows for starting a new CarMakerHeadless instance as well as connecting to a running one. Afterwards CarMaker TestRuns can be loaded and the simulation can be started and stopped. In addition, it is possible to record and read signals.

Preparation when using CarMaker under Linux

For using the Runner under Linux, the same preconditions as for the GUI version apply.

Configuration

The TBC options should be configured beginning from the top. In particular, the information in the Common section must be set at the beginning.

Python-Executable

The CarMakerHeadless is controlled via the CarMaker-Python-API provided by IPG, which is available for different Python versions. For the API to work, the user must install the appropriate Python interpreter on his/her own system and specify the path to the interpreter in the TBC under Path to the Python executable.

IPG supports the CarMaker Python API starting with Ubuntu 22.04 LTS or Windows 10 with Python 3.9 or higher. From CarMaker 15.0.x onwards, the installation process is divided into two parts. First, during the CarMaker installation, select the option “Python API py3.9..3.13 Add-On 15.0”.

Further information on installing the API can be found in the CarMaker Installation Guide at [CARMAKER_INSTALLATION]/doc/InstallationGuide/Content/Content_Installation-Guide/B-Installing-Topics/Installation-of-Add-on-Packages.htm and [CARMAKER_INSTALLATION]/doc/CMAPI/index.html.

Afterwards, the installation must be completed manually. Depending on the Python version to be supported, a corresponding directory, such as “python3.9”, must be created under C:\IPG\carmaker\win64-15.0.x\Python. On Linux, the directory would be created under /opt/ipg/carmaker/linux64-15.0.x/Python/python3.9. The Python version provided for the CarMaker API may differ from the Python version used to execute ecu.test. However, it must be ensured that the CarMaker API is compatible with the Python version selected in the TBC settings. The necessary steps for manually installing the API are described in the following sections for Windows and Linux.

Windows:

md C:\IPG\carmaker\win64-15.0.1\Python\python3.9
cd C:\IPG\carmaker\win64-15.0.1\Python\python3.9
cp -rf ..\ASAM .
cp -rf ..\IPG .
cp -rf ..\IPGRoad .
tar -xf ..\apoc-2.4.1-cp39-cp39-win_amd64.whl
tar -xf ..\cmapi-15.0.1-cp39-abi3-win_amd64.whl
tar -xf ..\infofiles-2.1-cp39-cp39-win_amd64.whl
del setup.py

Linux:

sudo su
md /opt/ipg/carmaker/linux64-15.0.1/Python/python3.9
cd /opt/ipg/carmaker/linux64-15.0.1/Python/python3.9
cp -rf ../ASAM .
cp -rf ../IPG .
cp -rf ../IPGRoad .
unzip ../apoc-2.4.1-cp39-cp39-win_amd64.whl
unzip ../cmapi-15.0.1-cp39-abi3-win_amd64.whl
unzip ../infofiles-2.1-cp39-cp39-win_amd64.whl
rm setup.py
chown -R <user>:<group> /opt/ipg/carmaker/linux64-15.0.1/Python/python3.9
chmod -R u=rwX,go=rX /opt/ipg/carmaker/linux64-15.0.1/Python/python3.9

Configure with auto start

ecu.test can automatically start the Runner when the configuration is being activated. To do this, the start mode in the section Tool connection needs to be set to Start automatically with ecu.test.

Configure and connect with running instance

The configuration of a connection to a running CarMakerHeadless instance requires that this instance has already been started. This can be achieved as follows:

  1. Start the CarMaker runner.

  2. Set the property Start mode in the Tool connection section to Connect to a running instance.

  3. Refresh the list of available Carmaker instances by clicking the refresh button.

  4. Select the CarMaker runner instance.

Warning

In order to create recordings, when starting CarMaker manually, the project directory must be specified with the -projectDir parameter. If this parameter is not specified, CarMaker uses the directory in which the application is located as the project directory.

Recording modes

This tool connection supports the recording via Auto-Start/Stop as well as manual recording control. When using Auto-Start/Stop, the system will automatically record the entire simulation.

Manual recording control is possible by the individual use of Start Trace and Stop Trace test steps.

It is possible to use the CarMaker headless connection to connect to CarMaker for Simulink. The procedure is identical to the IPG: CarMaker|RealTimeMaker connection.

Name

Available if

Default value

Valid values

Type

Description

Common

CarMaker Lib directory

Common

string

Absolute path to lib directory containing the libapo-dll or corresponding .so-file

CarMaker project directory

Common

string

Project directory as absolute or relative path. Path can be relative to the tool host base path or to the workspace, if no tool host base path is set.

Path to the Python executable

Common

string

Path to Python executable as absolute path

Tool connection

Start mode

Tool connection

Start automatically with ecu.test

[Start automatically with ecu.test, Connect to a running instance]

string

ecu.test either starts a new CarMaker instance or connects to an already started instance

CarMaker instance

Tool connection » Start mode: ‘Connect to a running instance’

[‘<online query>’, ‘<no toollib start>’]

string

CarMaker server instance on the tool host.

Optional

Simulation speed

Optional

‘Use CarMaker settings’

[‘Use CarMaker settings’, ‘0.2x’, ‘0.5x’, ‘1x’, ‘2x’, ‘3x’, ‘5x’, ‘Max’]

string

Sets the simulation speed to the selected multiple of the real time or maximum possible speed for “Max”. “Use CarMaker settings” will maintain the speed set in CarMaker.

Timeout for tool call ❲in sec.❳

‘600’

string

Timeout after which a tool call is aborted.