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

41  Download (0)

Full text

(1)
(2)

“I can make just such ones if I had tools, and I could make tools if I had tools to make them with.”

to make them with.”

(3)

Automotive Software Development and Model Based Design

(Matlab & Simulink)

(4)

Outline

Common Software Design Life Cycle

• AGILE

• WATERFALL • V-MODEL

V-Model SDLC and LEAR

• People • Process

• Tools for the right job

MATLAB and Lear

(5)

Software Design Life Cycle

AGILE

WATERFALL

WATERFALL

V-MODEL

(6)

Constraints

Validated and

100% Working

Software

Validated and

Verified

Safety Critical

Safety Critical

(7)

Constraints

Recalls

Recalls

(8)

Constraints

Global Team

SPAIN THAILAND GERMANY

Global Team

SOFTWARE

PHILIPPINES INDIA USA AUSTRALIA

SOFTWARE

PHILIPPINES AUSTRALIA

(9)

Software Design Life Cycle

(10)

AGILE

WATERFALL

V-MODEL

• Changing Requirements • Customer Transparency

• High quality software in least

possible time

• Simple to implement • High visibilty

• Quality

• Resources are minimal

• Simple to implement

• Higher success rate than the

Waterfall

• Validation and Verification • Issues are found early

• Difficult to manage on a

large project

• Lack empahsis on designing

and documentation

• No place for newbies

• Dependent on each phase • Rigid / Not flexible

• Roadblocks

• Changes in specification

• Issues are found early • Needs a lot of resources • No early prototypes

• More documents • No place for newbies

(11)

Software Design Life Cycle

(12)

The Vehicle

Body Control

Module

Interior

Lighting

Lighting

Engine Control

Module

Infotainment

Infotainment

Anti-lock Brake

System

Exterior

Lighting

(13)

Wayne Enterprises

Body Control

Module

(14)

Basic Software

Hardware

Application

Software

(15)
(16)

V-Model SDLC (Requirement Analysis)

Process

• Needs of the costumer • Behavior of the software • Guildline for the Software

Architect • Ideal System • Ideal System • Customer • Specification Engineer • Software Architect

People

• Software Architect • Software Engineer • Validation Engineer

(17)

V-Model SDLC (Requirement Analysis)

Park Brake Switch

Alarm Theft Protection

Central Locking System

Central Locking System

Immobilizer

Remote Start

(18)

V-Model SDLC (High Level Design)

Process

• List of modules

• Functionality of the modules • Communcation

• Interface Relationships

• Software Architect

(19)

V-Model SDLC (High Level Design)

Application Layer

Application Layer

Application Layer

Runtime Environment

Runtime Environment

• Vehicle Features

• Relevance to the Application Layer • Access to I/O Layer

Services Layer

Runtime Environment

Runtime Environment

Complex

Drivers

Complex

Drivers

Services Layer

ECU Abstraction Layer

• Diagnostics

• Vehicle Network Communcation • Access to peripherals of the uC

ECU Abstraction Layer

Drivers

Drivers

Microcontroller

Microcontroller

Microcontroller Abstraction Layer

Microcontroller Abstraction Layer

• Direct access to Internal peripherals • Internal Drivers

(20)

V-Model SDLC (High Level Design)

Application Layer

Application Layer

Runtime Environment

Runtime Environment

Application Operating System Communication

Runtime Environment

Runtime Environment

Complex

Drivers

Complex

Drivers

Services Layer

ECU Abstraction Layer

Software

Basic Software

Hardware I/O

Drivers

Drivers

Microcontroller

Microcontroller

Microcontroller Abstraction Layer

Microcontroller Abstraction Layer

Basic Software

Diagnostics Hardware I/O

(21)

V-Model SDLC (Detailed Specification)

Process

• Detailed function of the

application

• Signal Inputs and Outputs • Interface with other

applications applications

• Software Engineer

(22)

V-Model SDLC (Detailed Specification)

• Park Brake Switch

• Park Brake Switch Indicator

Input and Output

Functional Behavior

• When Park Brake SwitchSwitchSwitchSwitch == ON • Park Brake Switch IndicatorIndicatorIndicatorIndicator = ON

Functional Behavior

• When Park Brake SwitchSwitchSwitchSwitch == OFF • Park Brake Switch IndicatorIndicatorIndicatorIndicator = OFF • Park Brake Switch IndicatorIndicatorIndicatorIndicator = OFF

(23)
(24)

V-Model SDLC (Coding)

MATLAB

• Simulink

• Embedded Coder • Stateflow

• Verification and Validation

• Software Engineer

People

(25)

V-Model SDLC (Coding)

main(){

Do Task1();

Start Task If Task

Do Task1();

Do Task2();

If Task3 == TRUE{

Do Task4();

}

}

If End Task

}

(26)

V-Model SDLC (Coding)

main(){ while(){

if(Park Brake Switch == TRUE){

Park Brake Switch Indicator = TRUE; }

Traditional Coding

}

else{

Park Brake Switch Indicator = FALSE; }

} }}

(27)

V-Model SDLC (Coding)

Model Based Design

Model Based Design

(28)

COMPLEX

EVOLVING

EVOLVING

READABILITY

MAINTAINANCE

MAINTAINANCE

(29)

“ Any code of your own that you haven't looked at for six or more months might as well

have been written by someone else. ”

- Eagleson's law

(30)

V-Model SDLC (Code Generation)

Auto Generated Code

Auto Generated Code

• Switch Case • Optimized

Park Brake Switch

Model

Source Codes

Model

MATLAB

(31)

V-Model SDLC (Unit Testing)

MATLAB

• Simulink • Stateflow

• Stateflow Coder

(32)

V-Model SDLC (Unit Testing)

Unit Testing

REMOTE START ALARM PARK BREAK SWITCH

• Individual units of source code • Smallest Testable part of the

software

• White Box Testing

APPLICATION • Software Engineer

People

INTERIOR LIGHTS CENTRAL LOCKING SYSTEM IMMOBILIZER • Software Engineer

(33)

V-Model SDLC (Unit Testing)

MATLAB Signal Builder

Lear MVT

Park Brake

Lear MVT

Park Brake Switch

Indicator

Park Brake

Switch

(34)

V-Model SDLC (Integration Testing)

MATLAB

• Simulink • Stateflow

• Stateflow Coder

CAN(Controller Area Network)

CAN(Controller Area Network)

Bus Simulation Tool

• Test all the modules of the

vehicle

• Black box testing

Process

• Software Engineer • Validation Engineer

People

(35)

V-Model SDLC (Integration Testing)

Flap Brake

Body

Anti-Lock

Weapons

Module

Flap Brake

Module

Body

Control

Module

Anti-Lock

Brake

System

Instrument

Module

Instrument

Panel

Module

Telematics

Control

Module

Seat

Module

Stealth

Module

Exterior

Lights

(36)

V-Model SDLC (IntegrationTesting)

CAN – Controller Area Network

LIN – Local Interconnect Network

Weapon Module

Flap Brake Module

Body Control

Module

Seat Module

LIN – Local Interconnect Network

Stealth Module

Anti – Lock Break

System

Telematics Control

(37)

V-Model SDLC (IntegrationTesting)

Telematics Control Module

Flap Brake Module

Stealth Module

Telematics Control Module

(HARDWARE)

Body Control Module

CAN BUS

Weapon Module

Flap Brake Module

Stealth Module

Anti – Lock Break

System

Body Control Module

(HARDWARE)

Software Simulation

Software Simulation

CAN BUS

(38)

V-Model SDLC (IntegrationTesting)

Telematics Control Module

Weapon Module

Flap Brake Module

Telematics Control Module

(HARDWARE)

Body Control Module

Matlab

Matlab Simulink

Simulink

Model (Simulated)

Model (Simulated)

CAN BUS

Weapon Module

Stealth Module

Anti – Lock Break

Body Control Module

(HARDWARE)

Model (Simulated)

Model (Simulated)

CAN BUS

Seat Module

Anti – Lock Break

System

Exterior Lights

Software Simulation

Software Simulation

(39)

V-Model SDLC (Operational Testing)

Process

• Actual vehicle testing

• Customer acceptance test

• Validation Engineer • Customer

(40)

Summary

Software Design Life Cycle

Model Based Design

• AGILE

• WATERFALL • V-MODEL

Matlab and Lear

• Readable • Tracability

• Faster development time • Early detection of issues

Model Based Design

• Simulink

• Real-Time Workshop

(Research)

• Verfication and Validation • Stateflow

• Stateflow

(41)

Ian M. Alferez

Software Development Engineer

Cebu Electronics

ialferez@lear.com

ialferez@lear.com

Figure

Updating...

References

Related subjects : I had to just get on with it