Building Your Virtual Vehicle with Simulink

Virtual vehicle development is a multidisciplinary and complex process. It includes vehicle dynamics and powertrain systems as main subjects and extending these subjects with automated driving, thermal, fluid analysis, software integration, calibration, optimization, and validation. As described, these multidisciplinary areas need a cross-product platform to design and analyse this development process with a powerful graphical tool. At this point, MATLAB and Simulink product family emerges as a solution to unite whole complexity in a single environment.

This paper introduces the challenges of virtual vehicle development process and using model-based design with MathWorks products, how these challenges can be managed, and necessary solutions can be designed and implemented. User stories will be given to understand how industry applies MathWorks solutions in their need.

Why Virtual Vehicle?

Companies want to discover problems before system level integration because it reduces physical test requirements. This means that less physical system level integration tests lead less amount of time and money loss.

Virtual vehicle applications such as attribute development, software validation, calibration require simulation of embedded software. Last years, the place of the software development in automotive industry increases its share amount critically. This means that virtual vehicle tests became a requirement instead of an option.

MathWorks also offers to use model-based design workflow. Components of this workflow are not different from traditional workflows but there are two different ideas. First approach is that some parts of the workflow are automated, and this causes less amount of time effort. Automatic code generation and report generation is a good example for this step. Second approach says that system model needs to be at the centre of development, from system requirements design to implementation tests.

Workflow for Model-Based Design.

This workflow idea is commonly used by MathWorks and its customers. Especially, this approach is very useful for virtual vehicle development to well-organize its multidisciplinary and complex process.

“V Model”, is also the traditional way to describe an engineering project’s stages. The V-model is a representation of system development that highlights V&V (Verification and Validation) steps in the system development process. The left side of the ‘V’ identifies steps that lead to code generation, including system specification and detailed software design. The right side of the V focuses on the V&V of steps cited on the left side, including software and system integration.

V-Model for System Development

Depending on your application and its role in the process, you might focus on one or more of the steps called out in the V-model or repeat steps at several stages of the V-model. Code generation technology and related products provide tooling that you can apply to the V-model for system development.

Case Study: Ford

“The problem is that we are attempting to build systems that are beyond our ability to intellectually manage.”

Nancy Leveson (MIT), The Coming Software Apocalypse (The Atlantic, September 2017)

Challenge

Automating the left side of the V.

Solution

Use MathWorks products to create Network Interface Builder, Vehicle Interface Builder and Qt HMI Integration to save time and eliminate modelling failures.

 Results

  • 76 engineering hours (9 days) saved per feature model
  • For a program concurrently developing 10 features, this equates to 90 days of saved engineering time!
  • In addition to saving time, the automated processes eliminate modelling mistakes

Lastly, the automated methods free up the time of valuable simulation engineers to focus on simulating and testing to improve our quality and robustness rather than tedious model-building tasks

Development Process Challenges

Virtual vehicle development process occurs from five different steps. These steps are create vehicle, integrate software, author scenarios, simulate & analyse and deploy simulation. In follow, each step is explained:

Create Vehicle

Modelling interested virtual vehicle with its vehicle dynamics, powertrain systems, and sensor properties.

  • Availability of appropriate vehicle level model
  • Access to plant and sensor models with ‘right’ level of fidelity
  • Model calibration

Integrate Software

Designing proper controllers for each component in modelled virtual vehicle. Basic controllers are ECU controller, transmission controller, brake controller, active differential controller, etc.

  • Standardizing interfaces and data management
  • Access to software components across different teams
  • Assembly of software components from multiple sources

Author Scenarios

Environment modelling to test virtual vehicle model and driver modelling for driving virtual vehicle with desired trajectory.

  • Creation of virtual 3D environment
  • Definition of scenarios to test
  • Linking test cases to requirements

Simulate & Analyse

After designing every detail for virtual vehicle, whole system needed to be tested and analysed.

  • Post-processing and visualizing results
  • Automatically generating reports
  • Running large numbers of simulations efficiently

Deploy Simulation

Completed virtual vehicle model can be shared or used by user as an exported application. Test whole system for HIL, SIL, etc.

  • Sharing models across the organization
  • Deploying models to users who aren’t tool expert
  • Deploying models for SIL, HIL, etc.

Virtual vehicle development process

Virtual Vehicle Development

As mentioned in previous chapter, there are many challenges to create a virtual vehicle and design environmental scenarios to test vehicle performance criteria. Here are some solutions of MathWorks for different application areas.

Vehicle Dynamics

For example, vehicle dynamics models can be designed to analyse vehicle’s ride & handling performance, to develop chassis controllers, to implement virtual vehicle for automating driving features or to test system integration for understanding characteristic properties of the vehicle. In this way, early testing process rapids development process, finds mistakes before system integration level and takes lower prototyping costs for manufacturers.