Multi-domain Model-driven Development Developing Electrical Propulsion System at Volvo Cars



Similar documents
How To Develop A Car For A Car Maker

Model-based Testing of Automotive Systems

Hardware in the Loop (HIL) Testing VU 2.0, , WS 2008/09

Software Production. Industrialized integration and validation of TargetLink models for series production

Part I. Introduction

Development of AUTOSAR Software Components within Model-Based Design

I can make just such ones if I had tools, and I could make tools if I had tools. -Eli Whitney

MathWorks Automotive Conference 2015 Simon Fürst, 2015/09/24. MODEL-BASED SOFTWARE DEVELOPMENT: AN OEM S PERSPECTIVE.

Continuous Integration Build-Test-Delivery (CI-BTD) Framework in compliance with ISO26262

Model Based System Engineering (MBSE) For Accelerating Software Development Cycle

Expectations and Challenges from Scaling Agile in Mechatronics-Driven Companies A Comparative Case Study

Best Practices for Verification, Validation, and Test in Model- Based Design

What is Automotive Software Engineering? What is Automotive Software Engineering? What is Automotive Software Engineering?

Continuous Integration Sprint 6. Agneta Nilsson, Jan Bosch, & Christian Berger

Decomposition into Parts. Software Engineering, Lecture 4. Data and Function Cohesion. Allocation of Functions and Data. Component Interfaces

Customer Experience. Silicon. Support & Professional Eng. Services. Freescale Provided SW & Solutions

Presented by: Jens Svensson, Volvo 3P. Volvo Group

Safety and security related features in AUTOSAR

Physical Modeling with SimScape

Systems-driven Product Development. Overview

Introduction to MATLAB Gergely Somlay Application Engineer

AUTOSAR Seminar WS2008/ Assignment: Simulation of Automotive Systems in the Context of AUTOSAR

Development Process Automation Experiences in Japan

Hardware Virtualization for Pre-Silicon Software Development in Automotive Electronics

A Survey Report by Horst Hientz Hans-Jürgen Kugler

Vehicle Electronics. Services and Solutions to Manage the Complexity

Business Proposal for In-House. Software Development and. Consultancy Services

Performance Study based on Matlab Modeling for Hybrid Electric Vehicles

Automotive Software Development Challenges Virtualisation and Embedded Security

Agile Project Execution

Efficient and Faster PLC Software Development Process for Automotive industry. Demetrio Cortese IVECO Embedded Software Design

Agile Software Development Methodologies and Its Quality Assurance

SYSTEMS, CONTROL AND MECHATRONICS

A. Waterfall Model - Requirement Analysis. System & Software Design. Implementation & Unit Testing. Integration & System Testing.

VELOCITY LAB TM Embedded Development Ecosystem

Integrated electronics for enhanced performance, energy efficiency and reduced emissions

Advanced Techniques for Simulating ECU C-code on the PC

Enterprise SOA Strategy, Planning and Operations with Agile Techniques, Virtualization and Cloud Computing

openmdm an Open Source Platform for Measured Data Management Dr. Dietmar Rapf, Michael Schwarzbach

white paper Modernizing the User Interface: a Smarter View with Rumba+

Cloud-based business innovation, transformation, and the future of enterprise IT

Automated Acceptance Testing of High Capacity Network Gateway

openmdm an Open Source Platform for Measured Data Management Dr. Dietmar Rapf, Michael Schwarzbach

Non-Stop Manufacturing Excellence. Automotive. Answers for industry.

Trends in Embedded Software Development in Europe. Dr. Dirk Muthig

PLM and ALM Getting Together

EB TechPaper. Managing complexity with agile development. automotive.elektrobit.com

Software Center. Customer Data and Ecosystem Driven Development

Advanced Electronic Platform Technologies Supporting Development of Complicated Vehicle Control Software

GENIVI FAQ. What is the GENIVI Alliance?

Virtual Platforms Addressing challenges in telecom product development

Vehicle ICT Arena Competence & Innova5on Node. VICTA Lab Suppor0ng the vehicle so;ware eco- system Kenneth Lind kenneth.lind@viktoria.

Best-Practice Software Engineering: Software Processes to Support Project Success. Dietmar Winkler

TÜ V Rheinland Industrie Service

A Case Study of Application Development and Production Code Generation for a Telematics ECU with Full Unified Diagnostics Services

Fuel Economy Simulation for the Vehicle Fleet

How cloud-based systems and machine-driven big data can contribute to the development of autonomous vehicles

Testing & Assuring Mobile End User Experience Before Production. Neotys

How the emergence of OpenFlow and SDN will change the networking landscape

Make the Leap from ecommerce to Omni- Channel

The Decision Management Manifesto

Scrum and Testing The end of the test role Bryan Bakker 20 maart 2012

Relational Databases in the Cloud

Achieve Economic Synergies by Managing Your Human Capital In The Cloud

Crossing the DevOps Chasm

DEDICATED TO SOLUTIONS. Automotive System and Software Development

Virtual Integration and Consistent Testing of Advanced Driver Assistance Functions

Eliminating End User and Application Downtime. Continuous Availability for your Business Applications

Lecture 26 Enterprise Internet Computing 1. Enterprise computing 2. Enterprise Internet computing 3. Natures of enterprise computing 4.

Cluster, Grid, Cloud Concepts

automated acceptance testing of mobile apps

Wiederverwendung von Testfällen bei der modellbasierten SW-Entwicklung

Herstellerinitiative Software (OEM Initiative Software)

Mild Hybrids. Virtual

Intelligent development tools Design methods and tools Functional safety

A new approach to automotive electric/electronic engineering life-cycle management

December, 7th, 2015, Assises de l Embarqué

SOA + BPM = Agile Integrated Tax Systems. Hemant Sharma CTO, State and Local Government

Core and Pod Data Center Design

Introducing. automated functional testing of mobile apps. Karl Krukow, CTO, LessPainful GotoAMS, May, 2012

Characteristics of a future mechatronic product creation process in the automobile industry

Product Development Flow Including Model- Based Design and System-Level Functional Verification

Get Your Business Moving. In partnership with Nomis Connections

Chapter 9 Software Evolution

Ryan F. Schkoda, Ph.D. Postdoctoral Fellow Wind Turbine Drivetrain Testing Facility Charleston, SC

ABHINAV NATIONAL MONTHLY REFEREED JOURNAL OF RESEARCH IN SCIENCE & TECHNOLOGY

LMS Imagine.Lab AMESim Powertrain Transmission

FPGA Prototyping Primer

Software House Embedded Systems

Automotive Software Engineering at Hella KGaA. Software Engineering for Software Intensive Systems,

Basic Trends of Modern Software Development

How the Emergence of OpenFlow and SDN will Change the Networking Landscape

Oracle Data Centre Rationalisation

Systems Driven Product Development

Transcription:

Multi-domain Model-driven Development Developing Electrical Propulsion System at Volvo Cars Jonn Lantz Technical Specialist, Electric Propulsion Systems @ Volvo Car Group Jonn.Lantz@volvocars.com 1

Partners Ulf Eliasson, (PhD stud) Volvo Car Group/Chalmers Andreas Andersson, (PhD stud) VCG/Chalmers Rogardt Heldal, Chalmers/Göteborg Univ. Agneta Nilsson, Chalmers/Göteborg Univ. Eric Knauss, Chalmers/Göteborg Univ. Patrizio Pelliccione, Chalmers/Göteborg Univ. Jan Bosch, Chalmers About Jonn Lantz, PhD: Failed as physicist, failed as teacher, now working with car electrification, model driven sw (mechatronics) development and continuous integration flows. 2

Development of a complex mechatronic system but only since 1-2 decades. Growth: ~ 10 x software in 7 years! The new SPA platform has over 100 ECUs and is connected (cloud, internet) About Mechatronics is an tricky domain! Real time software and nature in a closed loop. automotive development An integration oriented business;; mainly a mechanical business;; professionals in black box integration of features. Some sw is developed in-house (MBD focus in this talk), other is developed externally. Design ß V-model à Test Product An industry in rapid change V-model strategy System The amount of software grows exponentially! This will continue, autonomous Function driving is approaching... Component 3

Buzzwords (some of them...) Word: Continuous Integration (flows) Cross Functional Teams Meaning: - Maintain 1 (in-house) software and be prepared to deliver at any time. - Minimal time Δt between a new delta, ΔF, integration test of the new code and eventual delivery (to verification). - Fast feedback and Automation are crucial. - Work in teams organized by product functions or tasks. - Organize groups by competence. - Remove handovers Model Driven Development - Utilize Domain Specific Languages to Gain abstraction and reuse - Replace real integration with virtual 4

SPEED is relative* and demands control But, what if the (software-mechatronic) system we have is too complex to control? Can we continue to be an integration company, when the software complexity explodes? And, how can we be more of a software company when so many new functions are mechatronic? electrification, autonomous drive, etc. * Yes, we only have to compare ourselves with competitors as BMW, Audi, etc. Or? Electric cars are simple, but yet a tiny market... 5

The age of software Is here for the automotive business What if we have a new class of electric premium/luxury cars driven mainly by software development? Electricity is simplicity is speed. Thus, if we want to play on this market we better learn about electrification. Fast. 6

Actually... The main challenge is: Design ß V-model à Test Product V-model strategy System Function Continuous Integration Component 7

From planning to experimentation! This is a software business trend, but we see it as well. Time is valuable and requirements change rapidly. New function Integrate hw & sw Flanders Drive: Wireless charging Small & Fast!! Ev. platform integration New product Platform (baseline) Mechatronic, complex & slooow 8

Speed by [Model based] Continuous Integration Quality Eliminate the delivery The software strategy of massive automation is translated to the automotive mechatronics domain Stable delivery Implemented Verification (manual) Stable build Integration Complete HIL test! Stable model ECU MIL test! ECU Build HIL test! ok Automation! update! work Function Model Requirements Tests and test framework SIL test! MIL test! ok Δt time 9

Continuous Integration in vehicles Cars are complex systems. We can consider them as Product Clusters more than individual products The product cluster may also change during the car s lifetime. Some parts will be hidden (Tier1 software, of the shelf-parts) but in-house software can be integrated in the latest vehicle (baseline) Hence, it is possible to have Continuous Integration and even Continuous Deployment of sub system functionality - Imagine a build button in your model, initiating a build flow finishing with an 4G sw-upload to one or several cars. build < 24h is realistic Unit test Codegen Code check Integration build Model check SIL b2b test MIL test HIL b2b HIL test Car upload! 10

From one product to a cluster! From one integration to multiple integratables (including the platform) Innovation years time cycle days mechanics Classical automotive Control systems, Hybrid systems,... Cell phones Autonomous driving OS Infotainment system applications facebook Automotive apps Cell phone apps?! Candy crush (fb game) Continuous/mechatronic, complex interfaces, Large distance to customer Technical level Well defined, simple interfaces Small distance to customers 11

The evolving product Legacy & Incremental development. A project is a The popular understanding of a project, developing from scratch to a successful product, is wrong. Popularized development: Product evolution: development 100% Remaining knowledge gap New functionality Improved existing functionality knowledge 0 100% time In-house software and modeling makes sense! Reuse is important! knowledge time Legacy functions ( carry over ) 12

So, how can modelling help us? 100% knowledge Remaining knowledge gap New functionality Improved existing functionality Legacy functions ( carry over ) For developing new functions: It works! In the SPA platform (the new XC90) a significant part of the control software (combustion powertrain, active safety, hybrid system, body functions) are developed using Simulink using code generation to AUTOSAR platforms. Rapid [agile] development/feedback/learning before real hardware/mechanics is available. Maintaining knowledge as executable specifications A cross functional team working with one common test bench time Design ß V-model à Test Product System Function This was the old part. Now its time to take over the System level! Component 13

So, how can modelling help us? 100% knowledge Remaining knowledge gap New functionality Improved existing functionality Legacy functions ( carry over ) For software platform* development: It works! In the SPA platform the body functionality is now in-house. ECU-platform independence we can switch Tier1 without loosing knowledge. Rapid [agile] development is possible. (Essential for integrating new functions) Extremely important with (full) AUTOSAR support and design transparency, and Maintaining knowledge as executable specifications readability (a challenge with AUTOSAR) A cross functional team working with one common test bench time * Tricky definition: base functionality required in the car and for other (new) functions 14

Let s take it further! For virtual verification: The hybrid system in the new XC90 T8 is developed using Simulink with Simscape plant models. This approach helps rapid learning and experimentation on subsystem level (e.g. a battery or a motor) and brings people together. A cross functional team working with one common test bench! Other groups at VCG, e.g. at Powertrain, are using other similar languages (Dymola/Modelica, etc.) Simulink controllers Message: The Domain Specific Language (DSL) is here to stay! Physical DSLs 15

Introduction to (physical) DSL Domain Specific Languages Optimize the language for your modeling, not the modeling for the language! Optimize for readability and abstraction which is similar to text book modeling. Hide conservation laws and basic constraints from the design. We gain speed and maintenance (simpler models!) but pay in (virtual) integration effort and simulation effort. Acausal DSLs require more from solver and integration. There is no free lunch! 16

Virtual development test, industrialized Using Simulink and Simscape DSLs we can create an all-white box work bench: A common model, work bench, for the cross functional team. Automated linking. The work bench is and interface to three domains Design ß V-model à Test Product System - Plant model (Simscape or Simulink) - Oracle model (Requirement model, Simulink) - SW model (AUTOSAR Simulink model ref) CAE Function Component Benefits: One model, transparent, no confusion Transparency Advanced test tools can be used (as Design Verifier) Easy maintenance SW model Plant (physical) model Test tool Oracle (logic) model 17

An opportunity: Formal test methods on continuous systems Formal methods are well known in software business but the closed loop with mechanical (continuous) system creates an infinite state space! A numerical approach is required, but the model can still be analyzed. Some tools exist (e.g. testweaver from qtronic and Quickcheck from Quviq are tested) This is an Executable Specification (if documented) SW model Oracle (logic) model New research project (2015) (VCG + Chalmers Univ.) Plant (physical) model Test tool Analyze model Generate test vectors Execute Analyze result 18

Another challenge: MIL HIL back to back test! Verify transformations of your SW model! (and follow ISO 26262-6) code check Modelling Codegen integration build Release MIL test SIL b2b HIL test HIL b2b - Verify that the control code running on target behaves as expected, as in the PC environment. - Automated framework for functional (requirement based) HIL test. FM available HIL rig with ECU Oracle SW model Oracle (logic) model SW (code) Plant Plant (physical) model Test tool Test tool Abbreviations MIL: test Model in the Loop SIL: test (generated) Software in the Loop HIL: test (code in ECU-) Hardware in the Loop Verify identical (enough) behavior for all test cases 19

Let s scale it even more! Virtual System level test (manual HIL) has been used in SPA (XC90), for e.g. active safety functions. What if we could have the vehicle baseline in the cloud? and move test from HIL to MIL (cheaper, faster, white box) Design ß V-model à Test Product System The library challenge (maintain numerous models and domains) à The VVA, Virtual Vehicle Architecture, project is initiated CAE Function Component The architecture challenge (extend system models to include mechatronics)? In general tricky with system architectures. Now we need a mechatronic one... The build challenge (integrate external DSLs, perhaps using FMIs) The simulation challenge (large acausal models(?), overall performance) à This is a potential tool market, and business opportunity. Present demos are built in (causal) Simulink, using ad-hoc PC to PC-communication. 20

Experimenting with Virtual Integration Full product simulation;; complete vehicle MIL in Simulink (demo 2015) - A complement to real vehicle integration (fast, cheap) - Can be used for variant coverage in a broad product line Simulator (parallelized over N PCs) multi domain bus SW and Mechatronic architecture Note the challenge of keeping this bus up to date! In the (near) future this will be generated from the real car architecture (database) subsystem control sw Production software (models) subsystem control sw subsystem control sw subsystem control sw Test bench (module) used by the cross plant functional development plant plant plant models team models models models 21

The Gap system architecture vs. component development A huge challenge to keep High level (descriptive) architecture and low level (prescriptive) architecture up to date with each other A common problem within (automotive) organizations developing complex mechatronic products!? The overview is lost when the details explode. This may become a problem when the speed is increased and continuous integration enables frequent updates on ECU level. Abstraction High level design High level design High level architecture Overview, decoupling, domains, architecting large deltas Working architecture Low level, detailed generates code missing updates Working Architecture Up to date High-level Architecture Updated IO, communication, little information flow Time U. Eliasson et. al., Architecting in the Automotive Domain, WISCA 2015 22

The Gap can models help us to extend the cross functional team to system design? An updated system model, generated from the current low level architecture could be used for system level design (and fast feedback) Has to be combined with a proper architectural design modeling language to be useful? is quite different from the abstract models expected on this side Design ß V-model à Test The (executable) system model on this side Development of architectural deltas must be based on the present, true, architecture! An executable model of the present arch will be very useful. A challenge for development ecosystems (as MATLAB)! CAE Allmost complete... Product System Function Component This is agile: Less (no) handovers, Teamwork, Transparency... 23

Conclusions The automotive business is transforming into agile mechatronics, at least for key functions, VCG-DNA This while the software complexity explodes Agile methods, Continuous Integration, etc. are introduced and spread rapidly The automotive business is different, but not special! - The mechatronics domain is nontrivial. Agile methods from sw business will not work right away. - The car is more of a cluster of closely interacting sub products, in-house made and external. - Time scales for mechanics, in-house sw, externally developed sw are very different. Executable Modelling is an enabler for agile mechatronics. Proven on component level, and growing Continuous integration to product combined with continuous virtual integration seems to be a good approach, but several challenges remain. The Volvo will be better and better for every day. At least vital parts of it. Thanks for listening! 24