Software Engineering 2 Project presentation Ekkart Kindler Project - - PowerPoint PPT Presentation

software engineering 2
SMART_READER_LITE
LIVE PREVIEW

Software Engineering 2 Project presentation Ekkart Kindler Project - - PowerPoint PPT Presentation

Software Engineering 2 Project presentation Ekkart Kindler Project in a nutshell Ekkart Kindler Petri net Animation info shape: train animation: move geometry: track1 ... + 3D models ... Simple interactive 3D animation of a


slide-1
SLIDE 1

Software Engineering 2

Project presentation

Ekkart Kindler

slide-2
SLIDE 2

Ekkart Kindler

Project in a nutshell

2 SE2: Project

Petri net Animation info

shape: train animation: move geometry: track1 ... «3D models» ...

+

Simple interactive 3D animation of a system

slide-3
SLIDE 3

Ekkart Kindler

Outline of talk

  • What are Petri nets?
  • What do we need to add for

animating behaviour in 3D?

  • Some more detailed concepts!
  • More detailed requirements!

3 SE2: Project

slide-4
SLIDE 4

Ekkart Kindler

4 SE2: Project

Petri nets: Example

semaphor request1 critical1 idle1 request2 critical2 idle2

slide-5
SLIDE 5

Ekkart Kindler

5 SE2: Project

Petri nets: Example

semaphor request1 critical1 idle1 request2 critical2 idle2

slide-6
SLIDE 6

Ekkart Kindler

6 SE2: Project

Petri nets: Concepts

Places: Transitions: Tokens: Arcs: Marking: A distribution of tokens on the places

(there may be more than one token on a place)

slide-7
SLIDE 7

Ekkart Kindler

7 SE2: Project

Petri nets: Firing rule

before (must be there and are consumed) after (are produced)

slide-8
SLIDE 8

Ekkart Kindler

8 SE2: Project

Firing rule

before (must be there and are consumed) after (are produced) Other tokens might be there (do not change)

slide-9
SLIDE 9

Ekkart Kindler

9 SE2: Project

Example: Toy train

slide-10
SLIDE 10

Ekkart Kindler

10 SE2: Project

Toy train: Simple net

track1 track2 track3 track4 track5 c6.track6 track6

slide-11
SLIDE 11

Ekkart Kindler

11 SE2: Project

Models for components

track

x: semicircle

track

x: line

slide-12
SLIDE 12

Ekkart Kindler

12 SE2: Project

Models for components

track track

x: signal

n1.track x.track

x: switch

n2.track

slide-13
SLIDE 13

Ekkart Kindler

13 SE2: Project

Signal: Detailed model

track stop

x: signal

go

slide-14
SLIDE 14

Ekkart Kindler

14 SE2: Project

Switch: Detailed model

track track

x: switch

left right track

slide-15
SLIDE 15

Ekkart Kindler

Outline of talk

  • What are Petri nets?
  • What do we need to add for

animating behaviour in 3D?

  • Some more detailed concepts!
  • More detailed requirements!

15 SE2: Project

slide-16
SLIDE 16

Ekkart Kindler

16 SE2: Project

Animation info

  • Geometric information
  • arrangement of tracks (geometry)
  • Physical appearance
  • appearance of objects (3D model/shape)
  • appearance of tracks (mostly texture)
  • Animations
  • “Behaviour” of a token while on a place
slide-17
SLIDE 17

Ekkart Kindler

17 SE2: Project

Animation information

x: line

shape: train animation: move id: 1 finished id: 1 geometry: track1

geometry: … line: id = track1 x1, y1, x2, y2 shape: track …

slide-18
SLIDE 18

Ekkart Kindler

Outline of talk

  • What are Petri nets?
  • What do we need to add for

animating behaviour in 3D?

  • Some more detailed concepts!
  • More detailed requirements!

18 SE2: Project

slide-19
SLIDE 19

Ekkart Kindler

19 SE2: Project

Animation information

x: signal

shape: train animation: move shape: sigGo action: appear, trigger shape: sigStop action: appear, trigger id: 1 finished id: 1 id: 2 id: 2 <keep animation> geometry: track2 geometry: sig1 geometry: sig1 geometry: … line: id = track2 x1, y1, x2, y2 shape: track point id = sig1 x3, y3

finished finished

slide-20
SLIDE 20

Ekkart Kindler

20 SE2: Project

Screenshot

38

slide-21
SLIDE 21

Ekkart Kindler

More fancy version

21 SE2: Project

slide-22
SLIDE 22

Ekkart Kindler

22 SE2: Project

Which shape?

  • How do the following shapes look like?
  • train
  • sigGo
  • sigStop
  • track
  • The appearance of each shape is defined in a

separate models file

  • a reference to a VRML model for a dynamic shape

(you are free to use other models)

  • a profile and a texture for a static shape

Shapes corresponding to tokens: dynamic shapes Shapes corresponding to geometry

  • bjects: static shapes
slide-23
SLIDE 23

Ekkart Kindler

23 SE2: Project

Objective

  • Simple extension for equipping a Petri net model

with a 3D-visualization

  • Cheap way of showing a customer what a system

modelled as a Petri net would really do – for validation purposes

slide-24
SLIDE 24

Ekkart Kindler

24 SE2: Project

Task

Re-implementation of PNVis based on a new model-based Petri net tool (the ePNK) and with more modern development technologies (EMF)

slide-25
SLIDE 25

Ekkart Kindler

Outline of talk

  • What are Petri nets?
  • What do we need to add for

animating behaviour in 3D?

  • Some more detailed concepts!
  • More detailed requirements!

(will be continued)

25 SE2: Project

slide-26
SLIDE 26

Ekkart Kindler

Sub tasks

  • Extended Petri net type for the ePNK that covers

the extensions that are needed for the animations

  • Graphical editor for geometries (points and lines

the ”Petri net animations” refers to)

  • Editor for defining the appearance of objects and

tracks (refering to external 3D-models and textures)

  • Simulator for the extended Petri net type that

interacts with the 3D animation engine

  • 3D animation engine that interacts with the Petri

net simulation (and with the end user)

  • GUI for starting and controlling 3D animations

from a simple configuration file

26 SE2: Project

slide-27
SLIDE 27

Ekkart Kindler

27 SE2: Project

Further information

  • SE2 project page:

http://www2.imm.dtu.dk/courses/02162/e13/project/

  • Ekkart Kindler and Csaba Páles: 3D-Visualization of

Petri Net Models. In: J. Cortadella and W. Reisig (eds.): ICATPN 2004, LNCS 3099, pp. 464–473, Springer 2004: http://www2.imm.dtu.dk/courses/02162/e13/project/ PDF/PNVis-PN04.pdf

  • ePNK home page:

http://www2.imm.dtu.dk/~eki/projects/ePNK/