# Project File.

[SYSTEM]
Manufacturing-Example-Simple

[HIGH]
High-LevelSubsystem

[LOW]
1
Manuf-Cells
################################################
#Sub system: High-LevelSubsystem

[SYSTEM]
2
2

[PLANT]
Packaging-System
Path-Flow-Model
[SPEC]
Exit-Buffer
Sequence-Tasks
################################################

#-------DES: cell-protocol ---------
[States]
5
s1
s2
s3
s4
s5

[InitState]
s1

[MarkingStates]
s1

[Events]
start-polish	Y	R
attach-part-a	Y	R
attach-part-b	Y	R
start-case	Y	R
finish-attach-a	Y	A
complete-polish	N	A
finish-attach-b	Y	A
complete-case	N	A

[Transitions]
s1
(start-polish s2)
(attach-part-a s3)
(attach-part-b s4)
(start-case s5)
s2
(complete-polish s1)
s3
(finish-attach-a s1)
s4
(finish-attach-b s1)
s5
(complete-case s1)
################################################

#-------DES: Sequence-Tasks ---------
[States]
17
s1
s2
s3
s4
s5
s6
s7
s8
s9
s10
s11
s12
s13
s14
s15
s16
s17

[InitState]
s1

[MarkingStates]
s1

[Events]
part-arrive-1	N	H
part-enter	Y	H
finish-exit	N	H
part-leave-1	Y	H
part-arrive-2	N	H
start-exit	Y	H
recognize-part-a	N	H
part-leave-exit	Y	H
recognize-part-b	N	H
part-leave-2	Y	H
part-arrive-3	N	H
part-leave-3	Y	H
start-polish	Y	R
attach-part-a	Y	R
attach-part-b	Y	R
start-case	Y	R
finish-attach-a	Y	A
complete-polish	N	A
finish-attach-b	Y	A
complete-case	N	A

[Transitions]
s1
(part-enter s2)
(finish-exit s1)
s2
(part-arrive-1 s3)
s3
(start-polish s4)
s4
(complete-polish s5)
s5
(part-leave-1 s6)
s6
(part-arrive-2 s6)
(recognize-part-a s7)
(part-leave-exit s6)
(recognize-part-b s8)
s7
(attach-part-a s9)
s8
(attach-part-b s10)
s9
(finish-attach-a s11)
s10
(finish-attach-b s11)
s11
(part-leave-2 s12)
s12
(part-arrive-3 s13)
s13
(start-case s14)
s14
(complete-case s15)
s15
(part-leave-3 s16)
s16
(part-arrive-1 s17)
s17
(part-leave-1 s17)
(start-exit s1)
################################################

#-------DES: Path-Flow-Model ---------
[States]
10
s1
s2
s3
s4
s5
s6
s7
s8
s9
s10

[InitState]
s1

[MarkingStates]
s1

[Events]
part-arrive-1	N	H
part-enter	Y	H
finish-exit	N	H
part-leave-1	Y	H
part-arrive-2	N	H
start-exit	Y	H
recognize-part-a	N	H
part-leave-exit	Y	H
recognize-part-b	N	H
part-leave-2	Y	H
part-arrive-3	N	H
part-leave-3	Y	H

[Transitions]
s1
(part-enter s2)
s2
(part-arrive-1 s3)
s3
(part-leave-1 s4)
s4
(start-exit s10)
(part-leave-exit s5)
s5
(part-arrive-2 s6)
s6
(recognize-part-a s7)
(recognize-part-b s7)
s7
(part-leave-2 s8)
s8
(part-arrive-3 s9)
s9
(part-leave-3 s2)
s10
(finish-exit s1)
################################################

#-------DES: Exit-Buffer ---------
[States]
3
s1
s2
s3

[InitState]
s1

[MarkingStates]
s1

[Events]
take-item	Y	H
finish-exit	N	H
start-exit	Y	H

[Transitions]
s1
(finish-exit s2)
(start-exit s1)
s2
(take-item s1)
(finish-exit s3)
(start-exit s2)
s3
(take-item s2)
################################################
#Sub system: Manuf-Cells

[SYSTEM]
4
2

[INTERFACE]
Polishing-Sequence
[PLANT]
Attach-Case-to-Assembly
Attach-Part-to-Assembly
Augmentation
Polish-Part
[SPEC]
Affix-Part
Polishing-Sequence
################################################

#-------DES: Polishing-Sequence ---------
[States]
6
s1
s2-pol-seq
s3
s4
s5
s6

[InitState]
s1

[MarkingStates]
s1

[Events]
start-polish	Y	R
dip-acid	Y	L
polish	Y	L
start-release	Y	L

[Transitions]
s1
(start-polish s2-pol-seq)
s2-pol-seq
(dip-acid s3)
s3
(polish s4)
s4
(dip-acid s5)
s5
(polish s6)
s6
(start-release s1)
################################################

#-------DES: Polish-Part ---------
[States]
3
s1
s2-polish
s3

[InitState]
s1

[MarkingStates]
s1

[Events]
start-polish	Y	R
complete-polish	N	A
dip-acid	Y	L
polish	Y	L
start-release	Y	L

[Transitions]
s1
(start-polish s2-polish)
(dip-acid s1)
s2-polish
(dip-acid s2-polish)
(polish s2-polish)
(start-release s3)
s3
(complete-polish s1)
################################################

#-------DES: Attach-Case-to-Assembly ---------
[States]
3
s1
s2-atc-case
s3

[InitState]
s1

[MarkingStates]
s1

[Events]
start-case	Y	R
complete-case	N	A
attach-case	N	L

[Transitions]
s1
(start-case s2-atc-case)
s2-atc-case
(attach-case s3)
s3
(complete-case s1)
################################################

#-------DES: cell-protocol ---------
[States]
5
s1
s2
s3
s4
s5

[InitState]
s1

[MarkingStates]
s1

[Events]
start-polish	Y	R
attach-part-a	Y	R
attach-part-b	Y	R
start-case	Y	R
finish-attach-a	Y	A
complete-polish	N	A
finish-attach-b	Y	A
complete-case	N	A

[Transitions]
s1
(start-polish s2)
(attach-part-a s3)
(attach-part-b s4)
(start-case s5)
s2
(complete-polish s1)
s3
(finish-attach-a s1)
s4
(finish-attach-b s1)
s5
(complete-case s1)
################################################

#-------DES: Augmentation ---------
[States]
1
s1

[InitState]
s1

[MarkingStates]
s1

[Events]
attach-part-a	Y	R
attach-part-b	Y	R
finish-attach-a	Y	A
finish-attach-b	Y	A

[Transitions]
s1
(attach-part-a s1)
(attach-part-b s1)
(finish-attach-a s1)
(finish-attach-b s1)
################################################

#-------DES: Affix-Part ---------
[States]
11
s1
s2-affix
s3
s4
s5
s6
s7-af-part
s8
s9
s10
s11

[InitState]
s1

[MarkingStates]
s1

[Events]
attach-part-a	Y	R
attach-part-b	Y	R
finish-attach-a	Y	A
finish-attach-b	Y	A
take-part	Y	L
start-part-a	Y	L
complete-part-a	N	L
start-part-b	Y	L
complete-part-b	N	L
return-part	N	L

[Transitions]
s1
(attach-part-a s2-affix)
(attach-part-b s7-af-part)
s2-affix
(take-part s3)
s3
(start-part-a s4)
s4
(complete-part-a s5)
s5
(return-part s6)
s6
(finish-attach-a s1)
s7-af-part
(take-part s8)
s8
(start-part-b s9)
s9
(complete-part-b s10)
s10
(return-part s11)
s11
(finish-attach-b s1)
################################################

#-------DES: Attach-Part-to-Assembly ---------
[States]
5
s1
s2-attch-pt
s3
s4
s5

[InitState]
s1

[MarkingStates]
s1

[Events]
take-part	Y	L
start-part-a	Y	L
complete-part-a	N	L
start-part-b	Y	L
complete-part-b	N	L
return-part	N	L

[Transitions]
s1
(take-part s2-attch-pt)
s2-attch-pt
(start-part-a s3)
(start-part-b s4)
s3
(complete-part-a s5)
s4
(complete-part-b s5)
s5
(return-part s1)
################################################
