Port MODELACCESS - ESI¶
ESI-XIL-API-MAPort
Stimulation¶
Restrictions:
Trace files being referenced by a DataFileSegment in an STI file are not converted automatically by ecu.test.
It is up to the user to check whether the trace format being used is supported by the tool.
Supported execution modes¶
See also: Specifics of time modes
Preferred time source/mode: Real-time
- Real-time:
To use real-time mode, the Test configuration in the Execution tab must be configured as the source ‘real time’.
- Stepwise simulation time:
To use the stepwise simulation mode, the port in the Test configuration in the Execution tab must be selected and the mode set to ‘stepwise’. Wait-until-true expressions are evaluated - if possible - by the tool. If the tool cannot evaluate them, the evaluation will be done by ecu.test. This can lead to lower performance. Invalid expressions are only noted in the log if the log level is set to “Maximum”.
- Continuous simulation time:
To use the continuous simulation mode, the port in the Test configuration in the Execution tab must be selected and the mode set to ‘continuous’.
Specifics¶
SILVER solely offers complex data structures like vectors or matrices by their child elements in
the model, e.g. VectorA is represented by the elements VectorA[0], VectorA[1], VectorA[2] and
VectorA[3]. To simplify working with complex data structures so-called *.esi files
can be created and finally added to the test configuration as Additional Files.
These files are model specific and have to be created for every new model by hand. Afterwards
vectors and matrices can be read and written directly. However recording these complex signals
is currently not supported.
The syntax is shown in the following example:
# ecu.test + SILVER configuration file
# This file lists all in SILVER available variables of type vector and matrix that have to
# be written by ecu.test
# VECTOR
# Syntax: SILVERname[firstIndex:lastIndex|*]
# Example intern ABF counter:
# Abf_EventCounter[0], Abf_EventCounter[1], ..., Abf_EventCounter[19]
Abf_EventCounter[0:19]
# Example VectorA with four elements:
VectorA[0:3]
# Example Vector[1] (in this case, [1] ist part of the name) with 18 elements:
# Vector[1][3], Vector[1][4], ..., Vector[1][20]
Vector[1][3:20]
# Example dynamic VectorD. Its length is fixed only at runtime.
# VectorD[0], ...
VectorD[0:*]
Vector[1][3:20]
# MATRIX
# Syntax: SILVERname[firstRowIndex:lastRowIndex|*][firstColumnIndex:lastColumnIndex|*]
# Example data buffer:
# Data_Buffer_ABW_NEw1[0][0], Data_Buffer_ABW_NEw1[0][1], ..., Data_Buffer_ABW_NEw1[0][19],
# Data_Buffer_ABW_NEw1[1][0], Data_Buffer_ABW_NEw1[1][1], ..., Data_Buffer_ABW_NEw1[1][19],
# ...
# Data_Buffer_ABW_NEw1[12][0], Data_Buffer_ABW_NEw1[12][1], ..., Data_Buffer_ABW_NEw1[12][19],
Data_Buffer_ABW_NEw1[0:12][0:19]
# Example dynamic Table. Its column count is fixed only at runtime.
# Matrix[0][0], ...
# Matrix[1][0], ...
Table[0:1][0:*]
Info
Indices do not have to start with 0.
Info
Only last indices can be declared as dynamic (*). For matrices, row and column count may both be declared as dynamic at once, too.
Info
In SILVER variable names often end with squared brackets, that has to be mentioned as a part of the name in the configuration file.
Properties 🛈¶
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
Configuration file |
string |
Path to the configuration file of the MAPort. Path has to be either absolute, or relative to the model directory. If <auto>, the configuration file the TCF references to will be used. |
|||
Overwrite configuration parameters |
‘<none>’ |
string |
Allows the port configuration parameters in the specified configuration file to be overwritten. The parameter paths, including the new values, must be specified in a JSON format, e.g. ‘{“sample.path”: value}’. The parameter paths to be overwritten must already be defined in the port configuration file.When overwriting the configuration via ‘{“SimulationConfiguration.VariableConfig.PersistentWrite”: “true”}’, changes in Silver from within ecu.test will be set permanently and not be changed again by other Silver modules. |
||
Replace current configuration |
☐ |
bool |
“True” replaces the current configuration with the selected one. Otherwise the running configuration will be used. |
||
Start simulation |
‘start’ |
[‘start’, ‘test start’, ‘no start’] Display values:
|
string |
Specifies when the simulation is started. “Start”: The simulation is started when the configuration starts. “On start of test”: The simulation is started when the execution of a test case starts. “Do not start”: The simulation will not be started. The resulting port state depends on the “Replace current configuration” setting. An already running and simulating application will not be stopped. |
|
Stop simulation |
‘stop’ |
[‘stop’, ‘test stop’, ‘no stop’] Display values:
|
string |
Specifies when the simulation is stopped. “Stop”: The simulation is stopped when the configuration stops. “At test stop”: The simulation is stopped when the execution of the test case stops. “Do not stop”: The simulation is not stopped implicitly. |
|
Recording format |
MF4 |
[CSV, MDF, MF4] |
string |
File format for recording |
|
Delimiter |
Recording format: ‘CSV’ |
‘;’ |
[‘;’, ‘,’] |
string |
Delimiter of CSV file |
Recording down-sampling rate |
<default> |
int |
This value can be specified to store only every N-th signal value. “<default>” means that the down-sampling rate is not specified and the vendor default is to be used. |
||
Recording start timeout ❲s❳ |
30 |
int |
Maximum allowed duration until the tool has actually started the capture after manually starting a capture. |
||
Default recording acquisition rate |
‘Tool-Default’ |
string |
Recording acquisition rate to use as fallback, if no acquisition rate has been provided for the variable (”*” and “?” may be used as wildcards). “Tool-Default” uses the first available acquisition rate. |
||
Enforce default recording acquisition rate |
☐ |
bool |
The default recording acquisition rate is enforced for all quantities when recording. |
||
Model time refresh rate |
0 |
float |
Defines the interval (in seconds) at which the model time should be queried for synchronization with the test case. Value 0 causes a query after each simulation step. |
||
Parameter files |
string |
A comma separated list of parameter files. The files will be transferred to the XIL server on start of configuration. Paths can be absolute or relative to the tool host base path. |
|||
Adapt matrix layout |
☐ |
bool |
Convert matrices from row layout (XIL) to column layout (ecu.test). In contrast to ASAM XIL, which implements the row layout for storing matrices, ecu.test uses the column layout. If this option is set, matrices are adapted to the internally implemented column layout when they are read in and before they are used in ecu.test. As a result, matrices are displayed correctly and indexing is done consistently according to the scheme [column][row]. If this option is not set, the missing adaptation of the layout causes that one works with the transposed matrix (see e.g. display in report). Thus, indexing the transposed matrix according to the above scheme in ecu.test is equivalent to indexing the (non-transposed) original matrix using the scheme [row][column] from the tool’s point of view. An unset option corresponds to the former behavior. It is recommended to set this for new test cases. |
||
ecu.test/Silver configuration file |
string |
Optional. This file defines descriptions to map in SILVER available scalars as vectors or matrices in ecu.test. |
Jobs 🛈¶
DownloadParameterSets¶
Loads a single or multiple parameter files to the XIL server.
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
parameterFilePaths |
string |
A comma separated list of parameter files. |
ExecuteTargetScript¶
Loads a target script to the target system and executes it. The execution time is limited by the tool’s setting “Timeout for tool call”.
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
customProperties |
{} |
object |
Custom properties for Target Script as dictionary, e.g. {“ApplicationProcessor”: “leaderAppl”}. |
||
inputParameters |
{} |
object |
Input parameters for Target Script as dictionary {“parameterName”: “parameterValue”}. Only primitive data types are supported. |
||
outputParameterNames |
[] |
object |
List of output parameters to be returned. These are read from the target script after execution. To be entered as a list of strings. Only primitive data types are supported. |
||
targetScriptPath |
uri |
Absolute or relative path to target script on this machine. Relative paths are resolved relative to the workspace directory. |
Return value
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
result |
object |
Values of output parameters as dictionary {“outputParameter”: “valueAfterExecution”}. The target script parameters to be returned need to be specified before execution with the respective job parameter. |
GetAllStimulations¶
Get list of initialized stimuli files
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
RunningOnly |
False |
[False, True] |
bool |
Return only active (running and paused) Stimuli. |
Return value
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
return |
object |
List of active stimulation files |
GetConfigState¶
Returns the current status of the specified configuration parameter. The parameter must be given as a complete path.
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
configParam |
string |
Path of the configuration parameter within the configuration file of the port, e.g. “sample.path.value”. |
Return value
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
return |
string |
Value of the configuration parameter |
GetRecordingFilesStates¶
Get dictionary containing all recording files and their corresponding recording state
Parameterization
Return value
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
return |
object |
Dictionary containing file names and corresponding state (“activated”,”configured”, “running” or “finished”) |
GetSimulationState¶
Get status of simulation
Parameterization
Return value
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
return |
string |
“disconnected”, “running”, “paused”, “stopped”, “not initialized” or “unknown: <MAPortState>”. The state “paused” is available since XiL-version 2.1. |
GetSimulationTime¶
Request simulation time
GetStimulationState¶
GetStatus of stimulation
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
InstanceIdentifier |
string |
Instance identifier of the stimulus of which to query the state. |
Return value
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
return |
string |
“configuration”, “ready”, “running”, “paused”, “finished”, “stopped”, “not started” or “unknown: <SignalGeneratorState>” |
PauseSimulation¶
Pauses the simulation and sets the state to “paused”.
PauseStimulation¶
Pause stimulation
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
InstanceIdentifier |
string |
Instance identifier of the stimulus that is to be paused. |
ResumeStimulation¶
Resume paused stimulation
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
InstanceIdentifier |
string |
Instance identifier of the stimulus that is to be resumed. |
StartSimulation¶
Starts the simulation. If the connection is operated in SiL mode, the port state is set to “paused”. In HiL mode, the state “running” is established directly.
StopSimulation¶
Ends the simulation and sets the state to “stopped”.
TriggerClientEvent¶
Inserts an event into all running recordings of the port.
Parameterization
Parameter
Name |
Available if |
Default value |
Valid values |
Type |
Description |
|---|---|---|---|---|---|
description |
string |
Description of the event (freely selectable). |
|||
eventId |
0 |
int |
ID of the event (freely selectable). Range of valid values: 0-18446744073709551615. |