silver 2 - moasoft · convert the models into silver modules ( dll) ... as vector canape or etas...

4
Silver is a tool used by development engineers to integrate and test control software virtually on Windows PC using two alternative setups: co-simulation of control software and of hardware simulation models in order to test system-level behavior even before physical prototypes exist rapid control prototyping: controller functions running on laptop under Silver can be connected via CAN to by-pass ECUs functions running in real car or in a HIL simulation Control software and simulation models can be imported from C/C++, MATLAB/Simulink with RTW or TargetLink, ASCET, Dymola, SimulationX, SIMPACK, AMESim or Python. Silver provides built-in support for automotive standards such as ASAP2/A2L, CAN, MDF, FMI, XCP and ISO 26262. Benefits rapid virtual integration on Windows PC excellent debugging and test support extremely fast development cycles executing other's contributions without their tools sharing results without sharing IP parallelize the development process Features fast co-simulation of arbitrarily many modules easy configuration of graphical interfaces with: signal plotters, gauges, sliders, switches excellent debugging support: breakpoints with symbolic conditions on signals, connection to source-code debuggers for step-by-step module execution, comparison of simulations and measurements, code coverage with CTC++ Pause / Step / Inspect / Overwrite / Continue available during simulation simulations driven by: graphical interface, measurement files, scripts reading and writing of measurements, for instance in MDF or CSV format Python scripting, PID controllers, filters, FFT test automation with TestWeaver, TPT or Python range monitoring for all ECU signals monitoring of stack and run-time requirements fault simulation worst-case analysis with TestWeaver ECU calibration interface (XCP) interface to all ECU signals with ASAP2/A2L files interface to CAN configured with DBC files Silver 2.3 Virtual ECU platform for rapid software development on Windows PC QTronic GmbH Alt-Moabit 92 D-10559 Berlin [email protected] www.QTronic.de +49 30 3512 1066 Copyright © QTronic GmbH 2011

Upload: vuongdieu

Post on 22-May-2018

263 views

Category:

Documents


3 download

TRANSCRIPT

Silver is a tool used by development engineers to integrate and test control software virtually on Windows PC using two alternative setups:● co-simulation of control software and of hardware

simulation models in order to test system-level behavior even before physical prototypes exist

● rapid control prototyping: controller functions running on laptop under Silver can be connected via CAN to by-pass ECUs functions running in real car or in a HIL simulation

Control software and simulation models can be imported from C/C++, MATLAB/Simulink with RTW or TargetLink, ASCET, Dymola, SimulationX, SIMPACK, AMESim or Python. Silver provides built-in support for automotive standards such as ASAP2/A2L, CAN, MDF, FMI, XCP and ISO 26262.

Benefits● rapid virtual integration on Windows PC● excellent debugging and test support● extremely fast development cycles● executing other's contributions without their tools ● sharing results without sharing IP● parallelize the development process

Features● fast co-simulation of arbitrarily many modules● easy configuration of graphical interfaces with:

signal plotters, gauges, sliders, switches● excellent debugging support: breakpoints with

symbolic conditions on signals, connection to source-code debuggers for step-by-step module execution, comparison of simulations and measurements, code coverage with CTC++

● Pause / Step / Inspect / Overwrite / Continue available during simulation

● simulations driven by: graphical interface, measurement files, scripts

● reading and writing of measurements, for instance in MDF or CSV format

● Python scripting, PID controllers, filters, FFT● test automation with TestWeaver, TPT or Python● range monitoring for all ECU signals● monitoring of stack and run-time requirements● fault simulation● worst-case analysis with TestWeaver● ECU calibration interface (XCP)● interface to all ECU signals with ASAP2/A2L files● interface to CAN configured with DBC files

Silver 2.3Virtual ECU platform for rapid software development on Windows PC

QTronic GmbHAlt-Moabit 92D-10559 [email protected]+49 30 3512 1066

Cop

yrig

ht ©

QTr

onic

Gm

bH 2

011

Silver

How to virtually integrate modules with Silver

Build models using Simulink, Dymola, SimulationX, AMEsim, Python, C/C++

Convert the models into Silver modules ( dll) using the QTronic export tools.For each ECU, configure a Silver Basic SW adapter using dbc and a2l files.

Load all modules into Silver. Silver connects module outputs to module inputs automatically based on name matching. Potential problems and diagnosis information is given for undefined inputs, unused outputs, and module errors.

Add GUI elements to control simulation or display results. Store the configuration in .sil file for later re-use. Run the simulation to co-execute all the modules. Control and inspect results on-line using the GUI. For off-line analysis, measurement files can be read and written in various formats.

.mdl .c.mo

Silver

Silver

.sil

1

2

3

4

Silver application scenarios

Configure the user interface for your application and drive the system interactively. Silver provides plotters, push buttons, sliders and many more to build up a GUI using drag and drop.

Use this virtual integration to make sure that all modules of your application work together as expected when put into closed-loop with the plant model.

Test automation

.mdf.mdf

Silver

testreport

Silver

.mdf.py

.mdf.csv

To automate testing of your application, drive simulation by Python scripts, or by mdf, dat or csv files. You can also use Silver as execution platform for test automation, for example using TestWeaver or TPT. You can also attach tools (such a CTC++) to measure the code coverage achieved by the tests.

To debug problems found during test, you can attach a C debugger to the Silver process, step through your code or set breakpoints on signal level and even on code level. Runtime exceptions, such as divisions by zero or access violations, can be easily traced back to the module and the source code that provoked it.

.mdf.a2l .mdf.par .mdf.dcm .mdfCAN

Attach an a2l or pdb file to a module to measure and plot all variables for which the address in the compiled module is known. This way you can access all static variables of a running module, not only its top-level inputs and outputs.

Silver can emulate your ECU: Attach tools such as Vector CANape or ETAS INCA to Silver to measure and calibrate the running application, using the same configuration files that you use for the real ECU hardware. Silver can write ("flash") application parameters given in various formats (par, dcm, hex) into your application. Para-meters can be changed on-line and saved to files.

XCP

.pdb

Our services● Silver setup for development projects● Consulting for test and validation of systems● Development of simulation models

MS Visual C++

A laptop running Silver can be connected via CAN to a hardware-in-the-loop simulation or to a real car. Silver then by-passes the real ECU, which shortens development cycles.

Test automation and debugging

Interactive test

Measurement and calibration.pdb

Rapid prototyping

CANapeINCA

Test Weaver 2.3Higher test coverage with less work

QTronic GmbHAlt-Moabit 92D-10559 [email protected]+49 30 3512 1067

TestWeaver is a tool for automated test and validation of embedded systems using MiL, SiL, HiL simulation.

For testing a system, TestWeaver does not require predefined test scripts. TestWeaver generates, runs and evaluates thousands of tests auto-nomously – using a unique technology for intelli-gent test generation and evaluation of reactive systems.

Features● automatic & intelligent test generation. Also integrated, classical test automation methods based on:

- Interactive scenario recording and replay- Script-based test automation, e.g. with Python

● reactive test execution using MiL, SiL or HiL● automatic evaluation and report generation● positive and negative tests supported● fault injection tests● worst-case analysis● reuse of tests for MiL, SiL and HiL possible● 100% reproducible problems on MiL and SiL● system-state coverage reports● source-code coverage, e. g. with CTC++● source-code debugging for C/C++ with MS Visual Studio

Advanced support for automotive applications via Silver:● ASAP2/A2L, CAN, MDF, XCP, FMI, ISO 26262● flashing of ECU vehicle configuration parameters● range monitoring for all ECU signals● monitoring stack and time required by control functions

Problems that can be found with TestWeaver:● division by zero, access violation, infinite loops,

non-determinism, range violations● oscillations of discrete and continuous signals● algorithmic errors, such as: state estimation significantly

wrong for longer times● system-level problems: poor shift quality, clutch

overheating, inadequate fault reaction Usually coding errors can be found using quite simple models, while quality assessment typically requires closed-loop simulation with a calibrated plant model.

Supported modeling and development environments:● C/C++, for instance Microsoft Visual Studio● MATLAB/Simulink, Real Time Workshop, Dymola● via Silver: AMESim, SimulationX, FMU, Python

TestWeaver runs under Windows on standard PCs.

Benefit● fast development: early problem detection● high test coverage: thousands of high-quality tests ● less work: more automation, less scripting

Cop

yrig

ht ©

QTr

onic

Gm

bH 2

011

How to use TestWeaver

Our services● Consulting for test and validation of systems● Support for developing simulation models● TestWeaver integration in development projects

The starting point is an executable model of the system under test. This model consists typically of (i) a simulation model of the controlled physical components, e. g. a vehicle model, and (ii) the software controlling the system. In model-based development projects, such models are usually available anyway. You can use a wide range of tools to build the model, see frontpage. TestWeaver needs no access to the model source. You can test compiled models without knowing their source code.

Select key inputs and outputs of the system. Typical inputs are acceleration and brake pedal, steering angle, road properties, and variables to control fault injection, e. g. sensor faults. Typical outputs are state variables of the control software, and key variables of the vehicle model, e. g. current and target gears, engine torque, etc. Classify the output values, to enable TestWeaver to distinguish desired from unwanted behavior. Likewise, classify input values, to enable TestWeaver to distinguish nominal inputs from inputs used to activate a component fault, e. g. of a sensor. For real valued inputs and outputs, classification means to partition the real axis in intervals, and assign the above properties to each interval. This turns the infinite space spanned by all inputs and outputs into a grid with a finite number of discrete states.

Connect simulation signals with TestWeaver. Connector libraries are provided, e. g. for C, Simulink, Dymola, Silver and Python.

Run TestWeaver: TestWeaver will autonomously drive the system model using the inputs and observe system response through the outputs. TestWeaver's goal is to drive the system into undesired states and to maximize coverage of the system states in the grid defined above, i. e. to reach every reachable discrete state at least once.

Analyze the problems found by TestWeaver. The problems found and the coverage reached during an experiment is reported using tables and histograms. Every problem found can be replayed in the simulation or development environment for detailed debugging and analysis. Interesting tests can be collected in test databases, e. g. for regression tests, or can be exported into other tools, e. g. for HiL tests.

1

2

3

4