• No results found

Automotive System and Software Architecture

N/A
N/A
Protected

Academic year: 2021

Share "Automotive System and Software Architecture"

Copied!
53
0
0

Loading.... (view fulltext now)

Full text

(1)

Automotive System and Software Architecture

Yanja Dajsuren

2IW80 Software specification and architecture March 25, 2014

(2)

Which one has more software?

PAGE 1 25-3-2014

Boeing 787, the most electronic airliner

Chevrolet Volt, an example modern day car

~8,000,000 LOC ~40,000,000 LOC

(3)

PAGE 2 25-3-2014

Image source: http://www.thetruthaboutcars.com

Why more software?

(4)

Automotive supply chain software integration

Architecture-driven:

• (Partially) Automated

• Early detection of errors

• Less effort/cost to change

Document-centric:

• Manual

• Error prone

• Costly to change

Adapted from http://www.edibasics.hu/edi-resources/edi-by-industry/automotive.htm

(5)

Automotive architecture modeling

PAGE 4 25-3-2014

Top-down system development i.o. bottom up

Separation of concerns in different architectural models/views

Model-driven i.o. document-centric approach

Improved design quality by detecting errors early

/ Department of Mathematics and Computer Science

(6)

Automotive companies and ADLs

Automotive Modeling Language (AML)

COmponent Language (COLA)

EAST-ADL

• Timing Augmented Description Language (TADL)

The ICT MAENAD project EAST-ADL2

/ Department of Mathematics and Computer Science 25-3-2014 PAGE 5

(7)

EAST-ADL

EAST-ADL

• Advancing Traffic Efficiency and Safety through Software Technology 2 (ATESST) project

• Refined EAST-ADL2 language, profile, methodology, tools

• It provides means to represent the embedded system in several abstraction levels.

• Main source: http://www.east-adl.info/

/ Department of Mathematics and Computer Science 25-3-2014 PAGE 6

(8)

EAST-ADL and AUTOSAR

PAGE 7 25-3-2014

http://maenad.eu/

(9)

EAST-ADL Abstraction Levels

/ Department of Mathematics and Computer Science 25-3-2014 PAGE 9

(10)

EAST-ADL Abstraction Levels

/ Department of Mathematics and Computer Science 25-3-2014 PAGE 10

(11)

Example of function-to-component Mapping

/ Department of Mathematics and Computer Science 25-3-2014 PAGE 11

(12)

EAST-ADL Metamodel Structure

/ Department of Mathematics and Computer Science 25-3-2014 PAGE 12

(13)

/ Department of Mathematics and Computer Science 25-3-2014 PAGE 13

(14)

PAGE 14 25-3-2014

(15)

EAST-ADL Summary

Defines several abstraction levels and mapping between them

Extensions to traditional ADLs:

• Requirements

• Variability

• Timing

• Dependability

• Safety (alignment with ISO26262)

• Environment modeling

Not well applied yet in automotive industry

/ Department of Mathematics and Computer Science 25-3-2014 PAGE 15

(16)

SysML and UML

PAGE 16 25-3-2014

(17)

SysML Diagram Taxonomy

SysML Diagram

Structure Diagram Behavior

Diagram

Use Case Diagram Activity

Diagram

Internal Block Diagram Block Definition

Diagram Sequence

Diagram

State Machine Diagram

Parametric Diagram Requirement

Diagram

Modified from UML 2 New diagram type

Package Diagram

Same as UML 2

PAGE 17 25-3-2014

(18)

18

Blocks are Basic Structural Elements

Provides a unifying concept to describe the structure of an element or system

• System

• Hardware

• Software

• Data

• Procedure

• Facility

• Person

Multiple standard compartments can describe the block characteristics

• Properties (parts, references, values, ports)

• Operations

• Constraints

• Allocations from/to other model elements (e.g. activities)

• Requirements the block satisfies

• User defined compartments

Compartment Label

values

DutyCycle : Percentage allocatedFrom «activity»Modulate BrakingForce

«block»

BrakeModulator

(19)

19

Using Blocks

Based on UML Class from UML Composite Structure

• Supports unique features (e.g., flow ports, value properties)

Block definition diagram describes the relationship among blocks (e.g., composition, association,

specialization)

Internal block diagram describes the internal

structure of a block in terms of its properties and connectors

Behavior can be allocated to blocks

Blocks Used to Specify Hierarchies and Interconnection

(20)

20

Block Definition vs. Usage

Definition

Block is a definition/type

Captures properties, etc.

Reused in multiple contexts

Usage

– Part is the usage of a block in the context of a

composing block – Also known as a role

Block Definition Diagram Internal Block Diagram

(21)

21

Internal Block Diagram (ibd)

Blocks, Parts, Ports, Connectors & Flows

Enclosing Block

Connector

Port Item Flow

Internal Block Diagram Specifies Interconnection of Parts

Part

(22)

22

Reference Property Explained

•S1 is a reference part*

•Shown in dashed outline box

*Actual name is reference property

s

(23)

23

SysML Ports

Specifies interaction points on blocks and parts

• Integrates behavior with structure

• portName:TypeName

Kinds of ports

• Standard (UML) Port

− Specifies a set of required or provided operations and/or signals

− Typed by a UML interface

• Flow Port

− Specifies what can flow in or out of block/part

− Typed by a block, value type, or flow specification

− Atomic, non-atomic, and conjugate variations

Standard Port and Flow Port Support Different Interface Concepts

(24)

24

Port Notation

Standard Port

Flow Port

provided interface (provides the operations)

required interface (calls the operations)

item flow

Flow Port

part2:

part1:

part1: part2:

(25)

25

State Machines

Typically used to represent the life cycle of a block

Support event-based behavior (generally asynchronous)

• Transition with trigger, guard, action

• State with entry, exit, and do-activity

• Can include nested sequential or concurrent states

• Can send/receive signals to communicate between blocks during state transitions, etc.

Event types

• Change event

• Time event

• Signal event

(26)

26

stm HSUVOperationalStates

Operate

Idle

Accelerating/

Cruising Braking

engageBrake/

accelerate/

when (speed = 0)

releaseBrake/

shutOff/stop engine Off

start[in neutral]/start engine Nominal

states only keyOff/

Operational States (Drive)

Transition notation:

trigger[guard]/action

(27)

DEMO

/ Department of Mathematics and Computer Science 25-3-2014 PAGE 27

(28)

PAGE 28 25-3-2014

(29)

Adaptive Cruise Control (ACC) in SysML

Modeling the ACC system for an E-truck with a top- down approach in SysML

/ Department of Mathematics and Computer Science 25-3-2014 PAGE 29

Image: http://www.extremetech.com/

(30)

PAGE 30 25-3-2014

Requirements Diagram

Source: Artisan Software Tools

(31)

Use Case diagram

Provides means for describing basic

functionality in terms of usages of system by actors

Generally elaborated via other behavioral

representations to describe detailed scenarios

/ Department of Mathematics and Computer Science 25-3-2014 PAGE 31

Source: Artisan Software Tools

(32)

System architecture

PAGE 32 25-3-2014

(33)

System integration

Software

Hardware

PAGE 33 25-3-2014

(34)

Running ACC_UI on Freescale board

PAGE 34 25-3-2014

(35)

SysML summary

SysML provides a general purpose modeling language to support specification, analysis, design and verification of complex systems

Subset of UML 2 with extensions

4 Pillars of SysML include modeling of requirements, behavior, structure, and parametrics

Intended to improve communications, tool interoperability, and design quality

Multiple tools available

IBM –Rhapsody

Sparx Systems -Enterprise Architect

Atego –Artisan Studio etc.

/ Department of Mathematics and Computer Science 25-3-2014 PAGE 35

(36)

Automotive supply chain software integration

Adapted from http://www.edibasics.hu/edi-resources/edi-by-industry/automotive.htm

• Hardware dependent SW

• Not efficient software reuse and exchange

• Costly integration

Electronic Control Unit (ECU)

ECU

ECU

(37)

AUTOSAR (AUTomotive Open System Architecture)

• An open and standardized automotive software architecture

• Architecture

• Methodology

• Application Interfaces

(38)

AUTOSAR Milestones

/ Department of Mathematics and Computer Science 25-3-2014 PAGE 38

http://autosar.org/

(39)

AUTOSAR Layered Architecture

http://autosar.org/

(40)

AUTOSAR Methodology

http://autosar.org/

(41)

PAGE 41 25-3-2014

http://autosar.org/

AUTOSAR Application Interface

(42)

AUTOSAR Use Case

http://autosar.org/

(43)

PAGE 43 25-3-2014

AUTOSAR Benefits

http://autosar.org/

(44)

Automotive Standards

ISO 26262:

• Absence of unreasonable risk due to hazards caused by malfunctioning behavior of E/E systems

IEC 61508:

• Part of the overall safety related to the equipment under control (EUC) that depends on the correct functioning of the safety-related system.

MISRA C:

• Software development standard 25-3-2014 PAGE 44

(45)

ISO 26262

/ Department of Mathematics and Computer Science 25-3-2014 PAGE 45

KoenLeekens, ISO-26262 introduction, 2012

(46)

Safety in V cycle

/ Department of Mathematics and Computer Science 25-3-2014 PAGE 46

(47)

Safety Analysis in ISO 26262

PAGE 47 25-3-2014

KoenLeekens, ISO-26262 introduction, 2012

(48)

MISRA C

MISRA C is a software development standard for the C programming language developed by MISRA

(Motor Industry Software Reliability Association).

Its aims are to facilitate code safety, portability and reliability in the context of embedded systems,

specifically those systems programmed in ISO C

As with many standards the MISRA C guideline documents are not free to users or developers

/ Department of Mathematics and Computer Science 25-3-2014 PAGE 48

(49)

Summary

In the automotive industry, more and more software and electronics system require system and software architecture methods.

Automotive specific and generic purpose ADLs are being developed and applied.

Many stakeholders, functionalities, safety and environment requirements require automotive specific standards.

/ Department of Mathematics and Computer Science 25-3-2014 PAGE 49

(50)
(51)

Contact for comments and questions:

Tel: +31(0)402475052 Email: [email protected] Address:

MF 7.123, Eindhoven University of Technology 5612 AZ Eindhoven, The Netherlands

(52)

Automotive Modeling Exercise

Design a PowerWindow System of a vehicle:

A. Elicit requirements

B. PowerWindow system architecture (decompose the system into software and hardware components)

/ Department of Mathematics and Computer Science 25-3-2014 PAGE 52

(53)

Required Software Tools

IBM Rational Rhapsody 8.0.5

/ Department of Mathematics and Computer Science 25-3-2014 PAGE 53

Matlab R2011b

References

Related documents

A page has a record A at level 0 (parent level) and a record b at level 1 (scroll area and child level), if SaveEdit event of a field in both record has PeopleCode program written

The builder installs these loads in order to satisfy safety codes, provide security, support basic building services, and provide features that attract potential

Entry to you the state, was lost to our digital experience possible while the conference title game schedule is looking for the western colorado state rams and the school.. Subject

followed fairly closely in seven of the sectors (coal, irrigation, oil/gas, power, roads, telecommaunications and water/sewerage), but in the other six the focus is heavily

AND CONTROL (CFO) CREDIT CARDS AND CONSUMER LENDING CREDIT CARDS AND CONSUMER LENDING CORPORATE AND COMMERCIAL BANKING CORPORATE AND COMMERCIAL BANKING RETAIL BANKING

Furthermore, SysML consists of requirements diagrams and parametric diagram for supporting the requirements analysis and other engineering analysis (i.e. sensitivity

The study found that professional qualification has a positive relationship with academic achievement of Senior Secondary School students in Chemistry within Owerri West LGA..

This limitation requires patterns designed to allow the setter to set the best spiker in the left-front position.. (Reprinted from Coaching Volleyball, Kinda S. Indianapolis, IN: