providing world-wide intranet access to product …...providing world-wide intranet access to...

23
PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission Technology

Upload: others

Post on 20-May-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER

Dirk Twisk

Bosch Transmission Technology

Page 2: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

Using MATLAB Production Server for product lifetime calculations

Bosch Tranmission Technology | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.2

Contents

1. Bosch Transmission Technology

2. The CVT

3. Modelling

4. Implementation with MATLAB

5. Server based calculations

6. MATLAB Production Server solution

7. Next steps

Page 3: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

PS-CT/EAC3 | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.3

Engineering calculations at Bosch Transmission Technology

All engineers should use the same tools.

Many tools are developed in house – what is the latest version?

Quality procedures are used to develop and verify software tools.

Use versioning systems and (unit) tests.

Everybody uses the same data

Multiple channels of communication internally and externally.

Data can be shared between software applications.

Effective use of computational resources.

App 1

App 2

App 3

data

Page 4: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

PS-CT/EAC3 | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.4

Bosch Locations

Ho Chi Minh

Vietnam

Yokohama

Japan

Tilburg

Netherlands

Schwieberdingen

Germany

San Luis Potosi

Mexico

Production

Engineering

Headquarters China

Shanghai

World-Wide Engineering is the key to success!

Page 5: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

PS-CT/EAC3 | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.5

Introduction to the CVT

Page 6: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

PS-CT/EAC3 | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.7

Model calculations for Push Belt CVT

Designs are made by engineers, based on user requirements:

Maximum torque and power, expected lifetime (kms), ratio coverage, package size.

Detailed calculation results are shared with the customer.

Bosch designs and produces the push-belt only.

All other transmissions components are made by the customer.

Integration engineering.

Calculations are made during all stages of the development process.

Initial offering to customer

Product Development.

Verification in Laboratory.

Page 7: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

PS-CT/EAC3 | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.8

Engineering calculations

Geometrical calculations

Achieve a large Ratio Coverage.

‒ Deep LOW is for take-off performance

‒ OD is required for fuel efficiency

Determine build size. Smaller and less weight is better.

Primary speed

Secondary speed Variogram

LOW

OD

Forces and Stresses

Calculate forces and stresses acting on the system.

Calculate expected lifetime of the push belt

‒ Number of stress cycles before most critical part fails.

cycles

Effective stress

L10

SN curveσeff

Page 8: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

PS-CT/EAC3 | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.9

Loop set part Element string part Pulley sheave part

BCP modelDifferentialEquations

Belt Calculation Model

Element

Loops

PulleyPulley ± 400 elements

Physical Model

Page 9: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

PS-CT/EAC3 | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.10

Solving the BCP problem in MATLAB

[R1,R2,exitflag] = fsolve(@(SolvVec) FuncName(SolvVec,ConstVec),InitVec,options);

Call to fsolve

Target function

Differential equations

% -------------------------------------------------------------------------

function [F] = Calc_Solution_Above_Transition(x,y)

fdmax = x(1);

fstrek = x(2);

beta_s = x(3);

faxs = y(1);

F = [Fdsec(alphas,fdmax,fstrek,beta_s)

FaxsA(fdmax,fstrek,beta_s)+FaxsB(fdmax,fstrek,beta_s)-faxs

Msecf(fdmax,fstrek)-Ms];

end

% -------------------------------------------------------------------------

function [F] = Calc_Solution_Below _Transition(x,y)

fdmax = x(1);

fstrek = x(2);

beta_s = x(3);

faxs = y(1);

F = [Fdsec(alphas,0.0,fstrek,beta_s)-fdmax

FaxsA(0.0,fstrek,beta_s)+FaxsB(0.0,fstrek,beta_s)-faxs

Msecf(-fdmax,fstrek)-Ms];

end

%--------------------------------------------------------------------------

function [F] = FaxsB(fdmax,fstrek,b_s)

con20 = 0.5*(1-tan(lambda_sec)*mu_lf*sin(gammalfb))./(tan(lambda_sec)+mu_lf*sin(gamm

if model == BOVEN

F = con20*((-1/con10b)*(fdmax+Csch-(fstrek-Csn)*exp(-mu_lr*(alphas-b_s))))*(exp(co

else

F = con20*((-1/con10b)*( Csch-(fstrek-Csn)*exp(-mu_lr*(alphas-b_s))))*(exp(con10

end

end

%--------------------------------------------------------------------------

function [F] = FaxpC(fdmax,fstrek)

con20 = 0.5*(1-tan(lambda_pri)*mu_lf*sin(gammalfc))./(tan(lambda_pri)+mu_lf*sin(gammal

fslos = (fstrek-Csn)*exp(-mu_lr*alphas)+Csn;

if model == BOVEN

F = con20*((fslos-Csn-( Csch))*(alphap-alphas));

else

F = con20*((fslos-Csn-(fdmax+Csch))*(alphap-alphas));

end

end

%--------------------------------------------------------------------------

function [F] = FaxpD(fdmax,fstrek,b_p)

Page 10: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

C/CCB, C/CCD | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.11

Tilburg

Netherlands

Bangalore

India

Bosch PS-CT - Tilburg

Mechanical Engineering

Transmission Design (CVT)

Modelling

MATLAB

Bosch RBEI India - Bangalore

Software Systems Design

Databases

Java

MATLAB

Implementation

PS-CT = Power Systems – Continuous Transmission

RBEI = Robert Bosch Engineering India

Page 11: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

PS-CT/EAC3 | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.12

System Design

• Server stores inputs and outputs for

several applications

• Start with complete variator models:

BCP and VBL

• Data can be accessed by all users

(engineers)

• Different interfaces and business logic

for different applications.Common Database

Java FrontEnd

Java Data Processing

Computatione.g. MATLAB

Output Reports

Page 12: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

PS-CT/EAC3 | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.13

Front End/Business Java Database SQL

Calculations MATLAB Reporting Report Server

System Implementation

Page 13: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

PS-CT/EAC3 | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.14

Development – traditional design

1. Write Code

2. Test Code

3. Compile Code

4. Jar File(s)

Bosch Tilburg

Product Development

Model Development

1. Write Code

2. Test Code

3. Compile Code

4. Create Executable

Bosch India

Software Development

Information Systems

1. Upload to Software Server.

2. Install JAR on users’ PC.

3. [ Install MATLAB Runtime ].

Tilburg IT department

Maintain computer systems

Install Software

Page 14: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

PS-CT/EAC3 | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.15

Local install servers

Netherlands Vietnam Japan

Local installation

Tilburg

Netherlands

Page 15: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

PS-CT/EAC3 | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.16

Drawbacks of the traditional design

Complex release process:

• Updates not synchronized due to the use of different install servers.

• Every user needs to have (correct) MATLAB Runtime installed.

• High maintenance costs (technical support).

• Sending data over the network is slow, so the performance is not acceptable.

• Changes to the MATLAB code requires rebuild of the complete code.

After the second major release, it was decided to change the design

Switch to a web-based approach

Page 16: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

PS-CT/EAC3 | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.17

Web-based Approach

Web-server

http://BCP

Netherlands

Vietnam

Japan

Page 17: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

PS-CT/EAC3 | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.18

Improved Solution

Make the application web-based:

All required components run on a single server.

Only inputs and outputs are sent over the network.

Users do not have to install any software on local computers

The database itself is used to store user data and grant access to users.

Use NT login credentials

Updating software is required at only 1 location

Synchronized updates of software and database.

Minimal disruption of service.

Maximum of 1 hour downtime for major updates.

Page 18: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

PS-CT/EAC3 | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.19

Architecture

BCP Java appletTomcat

MATLAB

Compiled application

Page 19: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

PS-CT/EAC3 | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.20

Initial Implementation

Server (machine)

VM (4 cores)

Tomcat

Tilburg - NL

BCP

App 2

App 3

MATLAB Runtime

Server (machine)

SQL databases

Testing database

BCP production

Tilburg - NL

Training database

network

Only 1process

possible !

Page 20: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

PS-CT/EAC3 | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.21

Limitations …

Job 1

Job 2

Job 3

Job 4

Job 5

Runtime MATLAB module (*.m)Incoming

Requests

by users

(200+) Jobs 2-5 are waiting for execution

Tomcat Server MATLAB

Calculation Times:

Shortest : 2 seconds

Longest : 24 hours Job 2Job 1

1Queue

Proc. 1

2

3

4

3

Job 3

4

Job 4

Proc. 2

Proc. 3

Unused …..

Unused …..

Page 21: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

Server (machine)

SQL databases

Testing database

Server (machine)

VM (4+ cores)

TomcatBCP production

Tilburg - NL

Tilburg - NL

Training databaseBCP

PS-CT/EAC3 | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.22

Infrastructure with Production Server – Final Design

network

MPSWorker

Worker

Worker

Worker

MPS Matlab Production Server

Page 22: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

PS-CT/EAC3 | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.23

Main Benefits of the Matlab Production Server

Multiple MATLAB jobs can be run simultaneously:

Each up to 24 hours per job (vehicle duty cycles).

Scalable:

Add more cores to the server.

Assign different machines for different tasks.

Utilize available (unused) computational resources.

Decoupling of main BCP code and MATLAB code.

Define inputs/outputs between systems.

Independent updates of Java and MATLAB code.

Log output is used to verify communication between the components.

Tomcat

BCP MPS 1

Worker 1

Worker 2

Worker 3

Worker 4

1

MPS 2

Worker 1

Worker 2

Worker 3

Worker 4

2

Page 23: Providing world-wide intranet access to product …...PROVIDING WORLD-WIDE INTRANET ACCESS TO PRODUCT LIFETIME CALCULATIONS USING MATLAB PRODUCTION SERVER Dirk Twisk Bosch Transmission

PS-CT/EAC3 | 2018-03-05

© Robert Bosch GmbH / Bosch Transmission Technology B.V. 2018. All rights reserved, also regarding any disposal, exploitation, reproduction, editing, distribution, as well as in the event of applications for industrial property rights.24

Next Possible Steps

1. Make existing standard programs web-based:

• Model-Viewer-Controller type applications.

2. Create a library of common functions, allow calling from:

• Java, Python, C# (web)

• Excel

• MATLAB

3. Provide functionality to non-MATLAB departments

• Production, Quality, Inspection, …

4. Consider to allow customers to perform calculations

• Eliminate iteration loops with customer

• No access to model and data (IP)

Server

Tomcat

BCP

App 2

App 3

MATLAB

Function LibraryMPS