the adventures of a digital twin in systemsland

13
THE ADVENTURES OF A DIGITAL TWIN IN SYSTEMSLAND The Systems Engineering Group Zürich

Upload: others

Post on 01-Jun-2022

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: The Adventures of a Digital Twin in Systemsland

THE ADVENTURES OF A DIGITAL TWIN IN SYSTEMSLANDThe Systems Engineering Group Zürich

Page 2: The Adventures of a Digital Twin in Systemsland

S E

-

G

RO

U

P

ZH

S E

-

G

RO

U

P

ZH

The Systems Engineering Group Zürich

© Copyright 2019

SE-Group ZürichThe Adventures of a Digital Twin in Systemsland2

Page 3: The Adventures of a Digital Twin in Systemsland

S E

-

G

RO

U

P

ZH

S E

-

G

RO

U

P

ZH

What is a Digital Twin?

■ Digital Twin (DT)A digital representation of some aspects of a (real) thing (the Original).

■ OriginalThe thing (including humans and other lifeforms) that is or will be augmented by a Digital Twin.

© Copyright 2019

SE-Group ZürichThe Adventures of a Digital Twin in Systemsland3

Page 4: The Adventures of a Digital Twin in Systemsland

S E

-

G

RO

U

P

ZH

S E

-

G

RO

U

P

ZH

Potential Capabilities of a Digital Twin

■ MONITOR the Original and its environment.

■ OPERATE: the Original in its environment.

■ DUMP (historical) data from the Original for later analysis.

■ ELABORATE: responses from the Original's observations.

■ LEARN and improve a model of the Original's world.

■ SIMULATE: alternatives and decide for actions on the Original.

© Copyright 2019

SE-Group ZürichThe Adventures of a Digital Twin in Systemsland4

M O D E L S

Page 5: The Adventures of a Digital Twin in Systemsland

S E

-

G

RO

U

P

ZH

S E

-

G

RO

U

P

ZH

© Copyright 2019

SE-Group ZürichThe Adventures of a Digital Twin in Systemsland5

Systemsland

Page 6: The Adventures of a Digital Twin in Systemsland

S E

-

G

RO

U

P

ZH

S E

-

G

RO

U

P

ZH

Example: Schindler Ahead – MSK

From time-based or usage-based to predictive maintenance by using a non-intrusive modular sensor kit (MSK) connecting old portfolios of various brands with modern data analytics. By detecting breakdowns early and using data analytics repairs are initiated more quickly reducing the down time for customers. Learning form data enables predictive maintenance to prevent breakdowns or plan downtime for maintenance in low traffic hours.

© Copyright 2019

SE-Group ZürichThe Adventures of a Digital Twin in Systemsland6

MO D E L S

Page 7: The Adventures of a Digital Twin in Systemsland

S E

-

G

RO

U

P

ZH

S E

-

G

RO

U

P

ZH

Example: TWINJECTOR

TWINJECTOR is a Digital Twin designed for the Injection Molding industry. It integrates live data from multiple sources, from the sensor edge and including ERP and external data. TWINJECTOR is built on a modular and flexible access architecture and therefore allows to fulfil all HiFive criteria for Digital Twins: Providing Variety, Volatility, Velocity, Volume and Visibility of data anywhere, anytime.

© Copyright 2019

SE-Group ZürichThe Adventures of a Digital Twin in Systemsland7

ERP

Order book data

Order planning → Optimization

Maintenance → Service

Production→ Shop floor

interaction

orOn

premises

Reporting→ Auditing

Machines→ Raw data

TWINJECTOR MO D E L S

Page 8: The Adventures of a Digital Twin in Systemsland

S E

-

G

RO

U

P

ZH

S E

-

G

RO

U

P

ZH

Example: Executable Specifications

Complex functionality and behavior is specified using a simplified, yet very precise dialect of the Unified Modeling Language (UML). KnowGravity Inc.'s CASSANDRA/xUML enables early validation by simulation and supports verification of the Original against the simulation (the Digital Twin).

© Copyright 2019

SE-Group ZürichThe Adventures of a Digital Twin in Systemsland8

idle

Entry/'DOS_route' := #false;

'signal_cleared' := #false;

residual release

route

overlap

not timing release timing

not locked

Entry/foreach 'TVPs in overlap' do send '<ic> release locking';

timer stopped

bodytrain at exit signal

Entry/foreach 'TVPs in path' where

('/is_route_body_locked') do send '<ic> release locking';

occupied

after( 'entry signal'.'signal'.'replacement_delay' )/call 'entry signal'.'signal'.'<ic> set signal to stop';

route set up

revocable disruption

Entry/call 'entry signal'.'signal'.'<ic> set signal to stop';

proceed

Entry/if 'DOS_route' then send 'entry signal'.'signal'.'<ic> set DOS proceed'

else send 'entry signal'.'signal'.'<ic> set full proceed'; 'signal_cleared' := #true;

distruption

unused

turned back

monitor

Exit/foreach 'signals in path'.'signal' where (not '/is_at_stop') do call '<ic> set signal to stop';

route release timer

timer stopped

cancellation

Entry/foreach 'TVPs in path' where ('/TVP_marked' or '/is_locked') do send '<ic> release locking';

pending

initiate

Route

w hen( exists 'main route tvp' is_true ('/occupied_physically ') )/

w hen( 'exit signal'.'signal'.'/is_at_stop' and

exists 'TVPs in overlap' is_true ('tvp'.'/occupied') )/

w hen( '/monitoring' )/

w hen( '/train_in_route' )/

w hen( not

'/train_in_route' )/

<c> set route[ 'route_type' = #shunt]/

send 'entry signal'.'signal'.'<c> reclear signal'

w hen( '/available' and exists 'main route tvp' is_true ('/DOS_route_occupation') )/

foreach 'main route tvp' do send '<ic> prepare track element';w hen( not (exists 'main route tvp' is_true ('/DOS_route_occupation')) )/

when( exists 'opposing signals' is_true '/train_turned_back' )/

foreach 'TVPs in path' where ('/is_route_body_locked' and '/preceeding_tracks_free')

do send '<ic> release locking';

<c> cancel residual route[

'/residual_releaseable']/<c> cancel residual route[

'/residual_releaseable']/<c> em ergency cancel[

'/cancel_with_delay ']/

w hen( not (exists 'track elements in path' is_true ('/is_locked')) )/

w hen( not exists 'track elements in path' is_true ('/is_locked') )/

after( 'entry s ignal'.'s ignal'.'residual_timer' )/

Route/'direction' := 'pDirection'; 'route_type' := 'pType'; 'DOS_permitted' := 'pDosPermit'; opposing_permitted := 'pOpposePermit';

if pOverlapReleaseTime = #pOverlapReleaseTime then 'overlap_release_timer' := 0 else 'overlap_release_timer' := pOverlapReleaseTime;

'/signalling_conditions' := (forall 'track elements in path' is_true '/monitoring_condition_ok');

'/immediately_cancellable' := ((not '/signalling_conditions' and not 'signal_cleared') or

('signal_cleared' and not (exists 'approach track' where ('next' = []) is_true '/valid_approach_occupation') and

forall 'main route tvp' is_true ('/is_main_route_locked' and not '/change_in_occupation')));

'/cancel_with_delay' := ('signal_cleared' and (exists 'approach track' where ('next' = []) is_true '/valid_approach_occupation') and

forall 'main route tvp'.'tvp' is_true (not ('/track_became_occupied')));

'/all_train_in_DT' := ('/initiated' and not (exists 'TVPs in path' is_true ('/is_route_body_locked' and not 'destination_tvp')));

'/destination_release' := (exists 'exit signal'.'signal'.'track in rear' is_true ('/occupied') and '/all_train_in_DT' and not exists 'TVPs in path' is_true '/moveable_element_in_DT');

'/residual_releaseable' := (exists 'main route tvp' is_true (not '/is_main_route_locked') or exists 'main route tvp'.'tvp' is_true '/track_became_occupied');

'/train_in_route' := (exists 'TVPs in path' is_true '/occupied_logically');

'/disrupted' := (in_state(#'monitor'.'unused'.'revocable disruption'));

'/available' := (forall 'track elements in path' is_true '/route_precondition_ok');

'/monitoring' := (forall 'TVPs in path' is_true '/subroute_monitoring_ok');

'/initiated' := (not (in_state(#'idle')));

<c> set route[ '/available']/

foreach 'TVPs in path' do send '<ic> prepare track element';

after( 'entry signal'.'s ignal'.'cancellation_timer_route' )/

/

<c> cancel route[

'/immediately_cancellable']/

w hen( '/monitoring' and

'entry signal'.'/reclearing' )/

w hen( '/destination_release' )/

w hen( '/all_train_in_DT' and 'TVPs in overlap' \= [] )/

<c> cancel ro ute/

after(

'overlap_release_timer' )/w hen( '/s ignalling_conditions ' )/

<c> set DOS route[

'DOS_permitted']/

'DOS_route' := #true

w hen( not '/s ignalling_conditions ' )/

/

MO D E L SLCL

...

TVP in path

/subroute_monitoring_ok+

/occupied_logically+

/preceeding_tracks_free+

TVP in main route

/change_in_occupation+

/DOS_route_occupation+

TVP in shunt

route

TVP in overlap

Route locker in path

/is_main_route_locked+

/is_shunt_route_locked+

/is_overlap_locked+

/is_locked+

/is_route_body_locked+

/element_correct_for_route#

Track element in path

/route_precondition_ok+

/monitoring_condition_ok+

locking_type+

Signal in path

/manually_replaced+

/element_set_up+

/path_initiated+

Flank locker in path

/is_flank_locked+

/element_correct_for_flank+

/is_dependency_locking+

/is_dependency_locked+

/dependency_active+

Signal flanking route

Lockable point in path

/point_to_move-

Point in main route

Point in shunt route

Point in overlap

Subroute signal in path

/advance_subroutes_at_proceed-

Entry signal

/reclearing+

/berth_occupied+

TVP in route

not_permitted_occupied-

destination_tvp-

occupied_for_DOS-

/TVP_marked+

/moveable_element_in_DT+

Reserved path

/available+

/monitoring+

/immediately_cancellable+

/initiated+

Track section in path

/occupied_physically+

Point in path

route position-

LSA active-

/point_marked+

Point flanking LSA

SR key-locked point

Signal flanking LSA

Exit signal

Point in

approach

Track in path

Flank zone

safe_direction-

Track in approach

/valid_approach_occupation+

Route

/signalling_conditions+

/residual_releaseable+

/cancel_with_delay+

/disrupted+

/train_in_route+

/all_train_in_DT-

/destination_release-

route_type-

overlap_release_timer-

signal_cleared-

direction-

DOS_route-

DOS_permitted-

opposing_permitted-

Point in LSA

/is_locally_released+

/local_release_suspended+Signal in LSA

/is_cancelled+

/is_cancellable+

Lockable device in path

Point flanking route

Logical line block

Opposing signal

/train_turned_back+

turnback-

*

1 route

signals in path*

1

rp from track elements

track elements in path

0..1 0..1

routeline block for route

*

1

route from opposing signals

opposing signals

0..10..1

releasing

providing

1

1

route from exit

exit signal

1

1route from entry

entry signal

*

1

track in activation zone

protecting point

1* assoc tvp subroute signal

*

1 route

TVPs in path

1

* provider

releaser

0..1 0..1prev next

*

1route from overlap

TVPs in overlap

1

1..*

main route tvp

route from main tvps

*

1

associated tvp

moveable element in route

* 1route from approach

approach track

1

0..1device in path

track from device

*

1

route

points in path

Page 9: The Adventures of a Digital Twin in Systemsland

S E

-

G

RO

U

P

ZH

S E

-

G

RO

U

P

ZH

Example: Railigent® on Locomotives

Railigent® makes intelligent use of rail data and allows rail operators to improve the return from their assets. Artificial intelligence and sophisticated data analytics are the key to achieve up to 100% availability, optimized maintenance and improved operations. Railigent gives better understanding of rail data, generates valuable information and get more out of the system.

© Copyright 2019

SE-Group ZürichThe Adventures of a Digital Twin in Systemsland9

MO D E L S

1011

1001

011010101101000111011010

0010101101000111011001100110100111011010

101010110100

01101110

011010101

10100

0111011010

01101010101010110111

0010010111011010111011001111

00100101111010

01110

Management

Dispatcher

Maintenance engineer

Data visualizationData evaluationData processingData transmission

Connectivity Toolbox

MindConnect Rail

Advanced

algorithms

Expertise domain

Know-how

Best practises

Secure data transmission

from sensor to central

data storage

Powered by

MindSphere –

the underlying IoT

operating system

Railigent – the rail specific

solution and application suite Turning data into value and enabling Digital

Services solutions (Smart Monitoring,

Smart Data Analysis and Smart Prediction)

Page 10: The Adventures of a Digital Twin in Systemsland

S E

-

G

RO

U

P

ZH

S E

-

G

RO

U

P

ZH

Example: TH06 Helicopter Simulator

Full-Flight Simulator (EASA Level D) for the TH06 Super Puma transport helicopter to train the whole range of missions, including winch rescue, cargo flight and technical breakdowns (emergency situations). This saves fuel and avoids noise; normal procedures and dangerous situations can be trained safely and reproducibly.

© Copyright 2019

SE-Group ZürichThe Adventures of a Digital Twin in Systemsland10

MO D E L S

Page 11: The Adventures of a Digital Twin in Systemsland

S E

-

G

RO

U

P

ZH

S E

-

G

RO

U

P

ZH

Challenges

Technical Aspects■ Integration of multiple technologies from

different vendors

■ Validation of Digital Twin

■ Synchronization of Digital Twin and Original

– configuration management

– connectivity

■ Adequate cyber security

■ Assuring safety while evolving complexity

■ Identity & access management (IAM)

Management Aspects■ Lifecycle management of Digital Twin

■ Finding a feasible business case

■ Evaluate total cost of ownership

■ Governance of complex configurations

■ Ensure intellectual property

■ Consider legal aspects in a multi-stakeholder environment

© Copyright 2019

SE-Group ZürichThe Adventures of a Digital Twin in Systemsland11

Page 12: The Adventures of a Digital Twin in Systemsland

S E

-

G

RO

U

P

ZH

S E

-

G

RO

U

P

ZH

Opportunities

© Copyright 2019

SE-Group ZürichThe Adventures of a Digital Twin in Systemsland12

Design

• Refine requirements to reduce

engineering rework

• Simulate for acceptance,

verification & validation

• Allow for variant exploration

• Support/enable the evaluation of

change requests

Production

Monitor and optimize

• production equipment

• process parameters

• product quality

Retirement

• Opportunity to triage

parts for reuse or

recycle

• De-commissioning

based on recorded

history

Concept & Sales

Early simulation to

• identify opportunities

• elicit customer needs

• validate business cases

Utilization & Support

• Accelerate ramp-up by

• early training

• assisted configuration

• Preventive maintenance to

increase availability

• Increase operational

efficiency

Page 13: The Adventures of a Digital Twin in Systemsland

S E

-

G

RO

U

P

ZH

S E

-

G

RO

U

P

ZH

Thank you for your attention!

© Copyright 2019

SE-Group ZürichThe Adventures of a Digital Twin in Systemsland13

M O D E L S

(and don't forget to take your handout)